Autor Tema: problemas al definir tipo de pic  (Leído 3334 veces)

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado gongonni

  • PIC10
  • *
  • Mensajes: 6
problemas al definir tipo de pic
« en: 15 de Julio de 2010, 09:44:28 »
hola. Primero de todo agradecer este gran foro, estoy desesperado al intentar encontrar una solucion. Estoy haciendo un programa y ya estaba casi todo solucionado cuando se murieron los 2 unicos PIC24HJ128GP5602 que tenia y ahora debo adaptarlo a los PIC18F2523 que tengo. ¿EL problema? que me lanza error el MPLAB. en concreto, el siguiente error:
*** Error 24 "C:\Program Files\PICC\devices\18F2523.h" Line 2(9,19): Unknown device type    -- Try PCH
donde yo tengo definido al principio del programa:
#DEFINE(__PCH__)
#INCLUDE <18F2523.h>

#DEVICE ADC=12
#INCLUDE <MATH.h>

#FUSES NOWDT, NOPROTECT, PUT
#USE DELAY(CLOCK=8000000)

He buscado por internet, he probado otras cosas y no encuentro solucion. Es raro porque uso el MPLAB con C de CCS y me da este error. En cambio, si traspaso el programa al PCWHD, no me da ningun error.
Pero tampoco se como subirlo al pic..

salu2

Desconectado bmb

  • PIC18
  • ****
  • Mensajes: 423
Re: problemas al definir tipo de pic
« Respuesta #1 en: 15 de Julio de 2010, 10:20:46 »
Hola gongonni, a primera vista te faltan fusibles necesarios como por ejemplo #FUSES HS que le dice al compilador la velocidad de oscilador que vas a usar.  Por que no intentas crear el encabezado de tu programa con el PIC Wizard, en la pestaña Proyectos del CCS C?  Este wizard te crea los encabezados básicos, te vas a ahorrar muchos problemas y te va a quedar más ordenado el código.  Por ejemplo, sin saber cuales son los requerimientos reales para tu programa ejecuté el PIC Wizard y me crea estos dos archivos:

main.h
Código: [Seleccionar]
#include <18F2523.h>
#device adc=12

#FUSES NOWDT                    //No Watch Dog Timer
#FUSES WDT128                   //Watch Dog Timer uses 1:128 Postscale
#FUSES HS                       //High speed Osc (> 4mhz for PCM/PCH) (>10mhz for PCD)
#FUSES NOPROTECT                //Code not protected from reading
#FUSES NOBROWNOUT               //No brownout reset
#FUSES BORV21                   //Brownout reset at 2.1V
#FUSES PUT                      //Power Up Timer
#FUSES NOCPD                    //No EE protection
#FUSES STVREN                   //Stack full/underflow will cause reset
#FUSES NODEBUG                  //No Debug mode for ICD
#FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOWRT                    //Program memory not write protected
#FUSES NOWRTD                   //Data EEPROM not write protected
#FUSES NOIESO                   //Internal External Switch Over mode disabled
#FUSES NOFCMEN                  //Fail-safe clock monitor disabled
#FUSES NOPBADEN                 //PORTB pins are configured as digital I/O on RESET
#FUSES NOWRTC                   //configuration not registers write protected
#FUSES NOWRTB                   //Boot block not write protected
#FUSES NOEBTR                   //Memory not protected from table reads
#FUSES NOEBTRB                  //Boot block not protected from table reads
#FUSES NOCPB                    //No Boot Block code protection
#FUSES NOLPT1OSC                //Timer1 configured for higher power operation
#FUSES MCLR                     //Master Clear pin enabled
#FUSES NOXINST                  //Extended set extension and Indexed Addressing mode disabled (Legacy mode)

#use delay(clock=8000000)

main.c
Código: [Seleccionar]
#include "main.h"
#include <math.h>

void main()
{

   setup_adc_ports(NO_ANALOGS|VSS_VDD);
   setup_adc(ADC_CLOCK_DIV_2|ADC_TAD_MUL_0);
   setup_spi(SPI_SS_DISABLED);
   setup_wdt(WDT_OFF);
   setup_timer_0(RTCC_INTERNAL);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   setup_ccp1(CCP_OFF);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);

   //TODO: User Code
}

Saludos!

Desconectado pablomanieri

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 639
Re: problemas al definir tipo de pic
« Respuesta #2 en: 15 de Julio de 2010, 10:45:46 »
Eso pasa porque en Configure-> Select Device, todavía tienes seleccionado el pic24. De ahí el error. Selecciona el pic18 que vas a usar y prueba de compilarlo, debería funcionar

Desconectado gongonni

  • PIC10
  • *
  • Mensajes: 6
Re: problemas al definir tipo de pic
« Respuesta #3 en: 15 de Julio de 2010, 10:49:36 »
gracias por el aporte, pero copio SOLO el codigo (evitando el tener que crear el archivo main.h) y me lanza el mismo error. que tiriri, que pruebe con PCH... me voy a pegar un tiro xD

Solo me quedara programar todo en PCWHD... qué programador para subir el .hex al pic me recomiendas?? tendré las mismas ventajas que con el MPLAB? es decir, el PICKIT2 mira primero si hay alimentacion al circuito sino se lo suministra él.. cosas de estas tambien estarán activadas fuera de MPLAB??

sino un programador "cualquiera" que pueda subir el .hex. Pero he visto que debes configurar tambien el wdt, si pones oscilador interno o externo, .... o cosas asi.
gracias por contestar!

Desconectado gongonni

  • PIC10
  • *
  • Mensajes: 6
Re: problemas al definir tipo de pic
« Respuesta #4 en: 15 de Julio de 2010, 10:52:27 »
pablomanieri, no soy homosexual, pero tio, te amo  :D :D :D :D

porrrr fiiiinnnnnn !!!  :-/ :-/ :-/ :-/

soys unos cracks! ya compila  :mrgreen:

Desconectado gongonni

  • PIC10
  • *
  • Mensajes: 6
Re: problemas al definir tipo de pic
« Respuesta #5 en: 15 de Julio de 2010, 13:28:43 »
aun asi, no consigo que encienda... O lo he fundido y no me he dado ni cuenta, o no consigo hacerlo andar :S
la el aparato debe estar listo para el sabado y aun tengo que hacer el PCB y montaje.. es un proyecto humanitario, no son deberes de la uni (puesto que estoy de vacaciones xD) pero el avion sale el sabado con o sin la maquina :S

El conexionado de un pic es el mismo para todos, no?
Para el esquema más básico utilizo éste:


salu2