# Problema con PIC16F877A y cristal de 20 Mhz.



## Nike77 (Jul 31, 2010)

Buenas...

no soy de escribir pero leo el foro es muy interesante desde ya les agradesco su ayuda.

les cuento este año me recibo de tecnico electronico.

bueno el problema en si, lo tengo con Pic 16f877a con un crystal de 20Mhz.

sin los dos capacitores de 22p funciona perfecto el diseño, pero cuando se los agrego falla no respetando tiempos o directamente se "tilda". probe con diferentes valores de capacitores y pasa lo mismo.
tengo una configuracon con HS y solamente PWRTEN.

bueno al que tenga una idea sera bienvenida.

si necesitan algun dato mas pidanlo.

otra vez desde ya gracias.


----------



## sbjcm (Ago 23, 2010)

Si solo tienes activados los fuses HS y PWRTEN, es que tu WDT esta habilitado (con su valor por defecto) y tu pic se resetea a cada rato. Lo mas probable es que sea eso.


----------



## megatron (Ago 24, 2010)

Esto es lo que me han explicado a mi sobre los cristales:
https://www.forosdeelectronica.com/f24/pic-arranca-18f2550-42066/

Mi experiencia me dice que un cristal de 20Mhz con condensadores de 15pf funciona perfectamente y el de otro fabricante le tengo que quitar los condensadores para que funcione, parece que alguno ya los lleva incorporado.


----------



## AbrahamMtz (Jun 14, 2016)

Hola igual soy nuevo en este foro, de igual manera tengo un problema con un microcontrolador 16f877a no me reconoce el Osc de 20MHz igual lo estoy definiendo en el programa del micro, ya cheque la fuente que los 5v esten bien regulados, solo me agarra el de 4MHz, y estoy usando todos los puertos del micro, estoy utilizando 4 entradas de convercion analogico digital, y el programa que estoy usando es pic basic pro, si alguien pudiera orientarme por favor
Gracias.


----------



## roberttorres (Jun 14, 2016)

AbrahamMtz dijo:


> Hola igual soy nuevo en este foro, de igual manera tengo un problema con un microcontrolador 16f877a no me reconoce el Osc de 20MHz igual lo estoy definiendo en el programa del micro, ya cheque la fuente que los 5v esten bien regulados, solo me agarra el de 4MHz, y estoy usando todos los puertos del micro, estoy utilizando 4 entradas de convercion analogico digital, y el programa que estoy usando es pic basic pro, si alguien pudiera orientarme por favor
> Gracias.



Buenas.
Tendrías que poner mas información, el código por ejemplo, asumo que has configurado los fuses como:

```
@ DEVICE pic16F877A, HS_OSC
   DEFINE OSC 20    ; Definir que se trabajará con 20MHz. (Osc. EXTERNO)
```
si no defines los fuses y el oscilador pic basic pro pondrá el que es por default 4mhz


----------



## ricbevi (Jun 14, 2016)

AbrahamMtz dijo:


> Hola igual soy nuevo en este foro, de igual manera tengo un problema con un microcontrolador 16f877a no me reconoce el Osc de 20MHz igual lo estoy definiendo en el programa del micro, ya cheque la fuente que los 5v esten bien regulados, solo me agarra el de 4MHz, y estoy usando todos los puertos del micro, estoy utilizando 4 entradas de convercion analogico digital, y el programa que estoy usando es pic basic pro, si alguien pudiera orientarme por favor
> Gracias.



Hola...¿programa?,¿ circuito?,¿simulación?, puede ser que el cristal este dañado.
Si le pones capacitores grande a ese cristal se negara a oscilar.
Saludos.

Ric.


----------



## AbrahamMtz (Jun 15, 2016)

roberttorres dijo:


> Buenas.
> Tendrías que poner mas información, el código por ejemplo, asumo que has configurado los fuses como:
> 
> ```
> ...



hola si en mi programa ya lo estoy definiendo lo del oscilador para que trabaje a 20 y aun asi no hace nada



			
				AbrahamMtz dijo:
			
		

> hola si en mi programa ya lo estoy definiendo lo del oscilador para que trabaje a 20 y aun asi no hace nada



este es mi codigo de programacion inicial

include "modedefs.bas"
DEFINE OSC 20 ' Define Oscilador a 20 Mhz
DEFINE LCD_DREG PORTD ' Indica que el Bus estará conectado en el Puerto D
DEFINE LCD_BITS 4 ' El bus será de cuatro bits.
DEFINE LCD_DBIT 4 ' Selección del Bit de inicio del puerto (0 o 4) en caso
' de utilizar los cuatro Bits mas significativos de la LCD
DEFINE LCD_RSREG PORTB ' Indica al uC que el pin "RS" estará en el Puerto B
DEFINE LCD_RSBIT 1 ' "RS" estará conectado en RB1
DEFINE LCD_EREG PORTB ' Indica al uC que el pin "E" estará en el Puerto B
DEFINE LCD_EBIT 0 ' "E" estará conectado en RB0
DEFINE LCD_LINES 2 ' Define el número de líneas de la pantalla
Define ADC_BITS 10 ' Define la conversión A/D a 10 Bits
DEFINE ADC_SAMPLEUS 50 ' Tiempo de muestreo en el conversor A/D es 50 uS


----------



## roberttorres (Jun 15, 2016)

Buenas.
Mmmm no veo en tu configuración el tipo de oscilador que estas utilizando, ¿como configuras los fusibles de tu micro?. Los tipos de osciladores pueden ser LP, XT y HS.


----------



## AbrahamMtz (Jun 15, 2016)

roberttorres dijo:


> Buenas.
> Mmmm no veo en tu configuración el tipo de oscilador que estas utilizando, ¿como configuras los fusibles de tu micro?. Los tipos de osciladores pueden ser LP, XT y HS.



Pues es lo que igual quisiera saber, por que si le indico como me mencionaste con anterioridad de lo del " @ DEVICE pic16F877A, HS_OSC " me marca error a la hora de compilar mi programa, y en simulación solo con *DEFINE OSC 20MHz* si lo hace pero al momento de pasarlo en fisico no hace ninguna función, y ya cambie un buen de veces el cristal y los cap y revice que la fuente este dando el voltaje que necesita para poder usarlo.


----------



## D@rkbytes (Jun 15, 2016)

AbrahamMtz dijo:


> En mi programa ya estoy definiendo lo del oscilador para que trabaje a 20 MHz y aún así no hace nada.


No hace nada porque te hace falta la palabra de configuración.
Si no la declaras, el compilador usará la que tiene por defecto en el archivo "16F877A.INC"

```
__config _XT_OSC & _WDT_ON & _LVP_OFF & _CP_OFF
```
Y en esa configuración se está usando _XT_OSC (Oscilador a cristal <= 4 MHz.)
Si usas un cristal superior debes usar el fuse _HS_OSC

Usa esta configuración en la cabecera del programa:

```
;*******************************************************************************
@ Device PIC16F877A     ; Microcontrolador utilizado
; Palabra de configuración:
@ Device HS_OSC, WDT_OFF, PWRT_ON, LVP_OFF
;*******************************************************************************
Define OSC 20           ; Definir que se trabajará con 20 MHz.
```
Nota:
La palabra de configuración definida en los archivos *.INC, está escrita en lenguaje ensamblador.
En el entorno del editor se debe escribir con la sintaxis del compilador.

Si el compilador te muestra un error al compilar usando la palabra de configuración, debes actualizarlo a la versión 2.60C


----------



## AbrahamMtz (Jun 16, 2016)

D@rkbytes dijo:


> No hace nada porque te hace falta la palabra de configuración.
> Si no la declaras, el compilador usará la que tiene por defecto en el archivo "16F877A.INC"
> 
> ```
> ...



ya hice el intento como me indicaste con anterioridad y me marca error y la version 3.0


----------



## roberttorres (Jun 16, 2016)

AbrahamMtz dijo:


> ya hice el intento como me indicaste con anterioridad y me marca error y la version 3.0



Buenas
En PBP 3.0 la configuración de los fuses es diferente, por eso es importante que des la máxima información posible.
prueba con esta configuración en tu cabecera del código:

```
;.......................................configuracion de fuses PBP3.0......................................
#CONFIG
      __config _HS_OSC & _WDT_OFF & _LVP_OFF & _CP_OFF
#ENDCONFIG

include "modedefs.bas"
DEFINE OSC 20 ' Define Oscilador a 20 Mhz
DEFINE LCD_DREG PORTD ' Indica que el Bus estará conectado en el Puerto D
DEFINE LCD_BITS 4 ' El bus será de cuatro bits.
DEFINE LCD_DBIT 4 ' Selección del Bit de inicio del puerto (0 o 4) en caso
' de utilizar los cuatro Bits mas significativos de la LCD
DEFINE LCD_RSREG PORTB ' Indica al uC que el pin "RS" estará en el Puerto B
DEFINE LCD_RSBIT 1 ' "RS" estará conectado en RB1
DEFINE LCD_EREG PORTB ' Indica al uC que el pin "E" estará en el Puerto B
DEFINE LCD_EBIT 0 ' "E" estará conectado en RB0
DEFINE LCD_LINES 2 ' Define el número de líneas de la pantalla
Define ADC_BITS 10 ' Define la conversión A/D a 10 Bits
DEFINE ADC_SAMPLEUS 50 ' Tiempo de muestreo en el conversor A/D es 50 uS
```


----------



## AbrahamMtz (Jun 16, 2016)

roberttorres dijo:


> Buenas
> En PBP 3.0 la configuración de los fuses es diferente, por eso es importante que des la máxima información posible.
> prueba con esta configuración en tu cabecera del código:
> 
> ...



Me marca igual error en estas lineas:
#CONFIG
      __config _HS_OSC & _WDT_OFF & _LVP_OFF & _CP_OFF
#ENDCONFIG


----------



## roberttorres (Jun 16, 2016)

AbrahamMtz dijo:


> Me marca igual error en estas lineas:
> #CONFIG
> __config _HS_OSC & _WDT_OFF & _LVP_OFF & _CP_OFF
> #ENDCONFIG



Podrías subir tu programa completo con la simulación en un archivo.rar para ver si puedo compilarlo.


----------



## AbrahamMtz (Jun 16, 2016)

roberttorres dijo:


> Podrías subir tu programa completo con la simulación en un archivo.rar para ver si puedo compilarlo.



listo

Ver el archivo adjunto serialCFE.rar





			
				AbrahamMtz dijo:
			
		

> listo
> 
> Ver el archivo adjunto serialCFE.rar



cuando lo simulo en proteus si lo hace, el problema es al pasarlo al protoboard
Ver el archivo adjunto CFE.rar


----------



## D@rkbytes (Jun 16, 2016)

AbrahamMtz dijo:


> ya hice el intento como me indicaste con anterioridad y me marca error y la version 3.0





AbrahamMtz dijo:


> Me marca igual error en estas líneas:
> #CONFIG
> __config _HS_OSC & _WDT_OFF & _LVP_OFF & _CP_OFF
> #ENDCONFIG


Es muy extraño.
Sería interesante saber que versión de PBP estás usando realmente.
Cuando compilas se debe generar un archivo .asm en la misma carpeta de tu proyecto.
Dentro de ese archivo se puede ver la versión del compilador, que no es la misma que la del editor.
El editor o entorno de desarrollo, se llama MicroCode Studio, (MCS) y el compilador se llama PICBasic Pro. (PBP)

Para versiones anteriores o igual a la versión 2.60C, debe tener algo así en la cabecera del archivo:

```
; PICBASIC PRO(TM) Compiler 2.60C, (c) 1998, 2011
```
Y para la versión 3.X.X.X debe tener algo así:

```
; PICBASIC PRO(TM) Compiler 3.0.9.1, (c) 1998, 2016
```
La versión del entorno de desarrollo e igualmente la del compilador, también se puede ver en el "Acerca de..."

Nota:
También se generan errores al compilar cuando se usa Windows a 64 bits y PBP 2.XX.
Pero eso ya no sucede con PBP3.


----------



## AbrahamMtz (Jun 16, 2016)

D@rkbytes dijo:


> Es muy extraño.
> Sería interesante saber que versión de PBP estás usando realmente.
> Cuando compilas se debe generar un archivo .asm en la misma carpeta de tu proyecto.
> Dentro de ese archivo se puede ver la versión del compilador, que no es la misma que la del editor.
> ...



Ya lo encontre es Pic Basic Pro 2.50A
y la  versión de microcode studio es 3.0.0.5

Entonces tengo que buscar una actualización para que funcione correctamente.


----------



## roberttorres (Jun 16, 2016)

AbrahamMtz dijo:


> Ya lo encontre es Pic Basic Pro 2.50A
> y la  versión de microcode studio es 3.0.0.5
> 
> Entonces tengo que buscar una actualización para que funcione correctamente.



Efectivamente tienes que actualizar el Pic Basic Pro a 2.6c para compilar correctamente.
PD: yo compile sin problemas el programa que subiste con el pic basic pro 2.6:

```
;*******************************************************************************
@ Device PIC16F877A     ; Microcontrolador utilizado
; Palabra de configuración:
@ Device HS_OSC, WDT_OFF, PWRT_ON, LVP_OFF
;*******************************************************************************
Define OSC 20           ; Definir que se trabajará con 20 MHz.  
include "modedefs.bas"
DEFINE LCD_DREG PORTD ' Indica que el Bus estará conectado en el Puerto D
DEFINE LCD_BITS 4 ' El bus será de cuatro bits.
DEFINE LCD_DBIT 4 ' Selección del Bit de inicio del puerto (0 o 4) en caso
' de utilizar los cuatro Bits mas significativos de la LCD
DEFINE LCD_RSREG PORTB ' Indica al uC que el pin "RS" estará en el Puerto B
DEFINE LCD_RSBIT 1 ' "RS" estará conectado en RB1
DEFINE LCD_EREG PORTB ' Indica al uC que el pin "E" estará en el Puerto B
DEFINE LCD_EBIT 0 ' "E" estará conectado en RB0
DEFINE LCD_LINES 2 ' Define el número de líneas de la pantalla
Define ADC_BITS 10 ' Define la conversión A/D a 10 Bits
DEFINE ADC_SAMPLEUS 50 ' Tiempo de muestreo en el conversor A/D es 50 uS
```


----------



## AbrahamMtz (Jun 17, 2016)

Hola ya actualice la versión de pic basic pro y me sigue marcando error en lo de @ device hs_osc
pero ya trabajo el oscilador de 20mhz solo con el define osc 20

Pero en la versión anterior no trabajaba, esto es un poco extraño, pero al fin y acabo se soluciono.

Pero ahora tengo otra pregunta, es que ahora quisiera probar con otro pic el 18f452 en el pic basic no hay problema o eso pienso yo, pero al momento de querer grabar el pic mi programador me dice que faltan los bits de hexadecimal.


----------



## D@rkbytes (Jun 17, 2016)

¿A qué versión actualizaste, qué Windows tienes y cuál programador estás usando?


----------



## AbrahamMtz (Jun 17, 2016)

D@rkbytes dijo:


> ¿A qué versión actualizaste, qué Windows tienes y cuál programador estás usando?



Actualice el microCode a la version 4.0.0.0
Pic basic Pro a la version 2.60
y mi lap es windows 7 a 64 bits
Mi programador es un Master Prog


----------



## D@rkbytes (Jun 17, 2016)

AbrahamMtz dijo:


> mi lap es windows 7 a 64 bits


He ahí el problema.
Mira por aquí: *pic basic pro en windows 7?*


AbrahamMtz dijo:


> Mi programador es un Master Prog


Como tendrás que compilar usando MPASM, vas a tener que modificar el archivo .inc del PIC.
Tienes que hacer lo que se menciona aquí: *Me gustaría que me ayudaran con Microcode*

Si tienes dudas sobre la modificación de los fuses para el PIC16F877A, no dudes en consultar.

Suerte.


----------



## AbrahamMtz (Jun 17, 2016)

D@rkbytes dijo:


> He ahí el problema.
> Mira por aquí: *pic basic pro en windows 7?*
> 
> Como tendrás que compilar usando MPASM, vas a tener que modificar el archivo .inc del PIC.
> ...



si ya vi como. Pero el problema es con el pic18f452 no me deja quemarlo el Master Prog, nada mas me sale un mensaje de " AVISO: Faltan los bits de Configuración en el archivo HEX!


----------



## D@rkbytes (Jun 17, 2016)

OK, eso sucede porque faltan los bits de la palabra de configuración.
El procedimiento es el mismo de ese post, pero con el archivo "18F452.INC" y modificando los fuses que requieras para ese PIC.


----------



## AbrahamMtz (Jun 20, 2016)

D@rkbytes dijo:


> He ahí el problema.
> Mira por aquí: *pic basic pro en windows 7?*
> 
> Como tendrás que compilar usando MPASM, vas a tener que modificar el archivo .inc del PIC.
> ...



Hola buen dia, ya cheque bien mi compilador y si tengo activado el MPASM y sigue trabajando igual. Pero tengo una duda para que necesito el MPLAB


----------



## D@rkbytes (Jun 20, 2016)

AbrahamMtz dijo:


> Hola, buen día. Ya chequé bien mi compilador y si tengo activado el MPASM y sigue trabajando igual.


¿A qué te refieres con que sigue trabajando igual?


AbrahamMtz dijo:


> Pero tengo una duda. ¿Para qué necesito el MPLAB?


Lo que necesitas es compilar con MPASM que es el compilador de Microchip.
MPLAB es un entorno de desarrollo integrado (IDE) y en él se pueden usar varios lenguajes de programación usando plugins.

MPASM forma parte de MPLAB, y si no lo tienes, necesitarás instalarlo. (110 MB)
También se puede conseguir por separado: (565 KB) *MPASM™ Assembler*

Después de descomprimirlo, necesitas indicarle a MicroCode Studio, en dónde se encuentra el compilador.
Para eso debes ir al menú "View/Compile and Program Options"
En la ventana que aparecerá,  busca la pestaña "Assembler", activas la casilla "Use MPASM"
Después debes buscar manualmente la carpeta de MPASM, o dejar que MCS la busque automáticamente.


----------



## AbrahamMtz (Jun 20, 2016)

D@rkbytes dijo:


> ¿A qué te refieres con que sigue trabajando igual?
> 
> Lo que necesitas es compilar con MPASM que es el compilador de Microchip.
> MPLAB es un entorno de desarrollo integrado (IDE) y en él se pueden usar varios lenguajes de programación usando plugins.
> ...



Asi es como tengo operando MicroCode, si tengo activado el MPASM, al momento de compilar los programas ya no hay problema, lo unico seria como antes te habia comentado es que al momento de grabar el pic 18f452 en Master Prog, no reconoce los bits de Hex, y eso no me ocurre con el 16f877A .
Pero lo del MPASM ya esta resulto. Gracias por la información.


----------



## D@rkbytes (Jun 20, 2016)

¿Y qué tipo de oscilador y frecuencia requieres para el PIC18F452?


----------



## AbrahamMtz (Jun 20, 2016)

D@rkbytes dijo:


> ¿Y qué tipo de oscilador y frecuencia requieres para el PIC18F452?



Yo a lo que investigue el micro 18f452 soporta un oscilador de 40MHz y quiero hacer pruebas con ese, pero igual estoy probando con los otros cristales de 10 y 20 y no trabaja, solo con el de 4MHz, pero esta bien raro porque aunque me pida los bits en hex el master pro, si carga el pic, pero no trabaja bien, porque le coloco el oscildor de 4mhz y trabaja bien por unos minutos y despues se espiesan a alocar las señales y trabaja mal. Asta que le de un reset, vuelve a operar correctamente.


----------



## D@rkbytes (Jun 20, 2016)

Debe ser porque ese programador hace un checksum en cierto rango de los bits de la palabra de configuración.
Y como la palabra de configuración que se encuentra originalmente, no está completa, muestra ese error.

Usa ésta palabra de configuración:

```
CONFIG OSC = HS, OSCS = ON, PWRT = ON, BOR = ON, BORV = 45, WDT = OFF
    CONFIG WDTPS = 128, CCP2MUX = ON, STVR = ON, LVP = OFF, DEBUG = OFF
    CONFIG CP0 = OFF, CP1 = OFF, CP2 = OFF, CP3 = OFF
    CONFIG CPB = ON, CPD = OFF, WRT0 = OFF, WRT1 = OFF, WRT2 = OFF, WRT3 = OFF
    CONFIG WRTC = OFF, WRTB = ON, WRTD = OFF
    CONFIG EBTR0 = OFF, EBTR1 = OFF, EBTR2 = OFF, EBTR3 = OFF
```
Debe quedar así, dentro del archivo "18F452.INC"

```
NOLIST
    ifdef PM_USED
        LIST
        "Error: PM does not support this device.  Use MPASM."
        NOLIST
    else
        LIST
        LIST p = 18F452, r = dec, w = -311, w = -230, f = inhx32
        INCLUDE "P18F452.INC"   ; MPASM  Header
        ;__CONFIG    _CONFIG1H, _OSCS_OFF_1H & _XT_OSC_1H
        ;__CONFIG    _CONFIG2H, _WDT_ON_2H & _WDTPS_128_2H
        ;__CONFIG    _CONFIG4L, _LVP_OFF_4L
[B]        CONFIG OSC = HS, OSCS = ON, PWRT = ON, BOR = ON, BORV = 45, WDT = OFF
        CONFIG WDTPS = 128, CCP2MUX = ON, STVR = ON, LVP = OFF, DEBUG = OFF
        CONFIG CP0 = OFF, CP1 = OFF, CP2 = OFF, CP3 = OFF
        CONFIG CPB = ON, CPD = OFF, WRT0 = OFF, WRT1 = OFF, WRT2 = OFF, WRT3 = OFF
        CONFIG WRTC = OFF, WRTB = ON, WRTD = OFF
        CONFIG EBTR0 = OFF, EBTR1 = OFF, EBTR2 = OFF, EBTR3 = OFF[/B]
        NOLIST
    endif
        LIST
EEPROM_START    EQU    0F00000h
BLOCK_SIZE    EQU    8
```
Nota que comenté la palabra de configuración original con ";" (Punto y coma.)
Esa sintaxis ya es obsoleta y ahora se escribe como lo hice abajo de la que está comentada.


----------



## AbrahamMtz (Jun 20, 2016)

D@rkbytes dijo:


> Debe ser porque ese programador hace un checksum en cierto rango de los bits de la palabra de configuración.
> Y como la palabra de configuración que se encuentra originalmente, no está completa, muestra ese error.
> 
> Usa ésta palabra de configuración:
> ...


Ok deja lo reviso y ya despues comento que fue lo que paso. Gracias.!


----------



## AbrahamMtz (Jun 22, 2016)

AbrahamMtz dijo:


> Ok deja lo reviso y ya despues comento que fue lo que paso. Gracias.!



Hola ya lo probe varias veces y manda errores y no me permite compilar. A lo mejor tengo un problema con mi software o el compilador y ya lo desinstale e instale varias veces.


----------



## roberttorres (Jun 22, 2016)

AbrahamMtz dijo:


> Hola ya lo probe varias veces y manda errores y no me permite compilar. A lo mejor tengo un problema con mi software o el compilador y ya lo desinstale e instale varias veces.


Buenas.
¿Que errores te marca el compilador?, al modificar la configuración del archivo 18f452.inc que esta en C:\PBP ya debería de compilar.


----------



## AbrahamMtz (Jun 23, 2016)

Ver el archivo adjunto PIC18F452.pdf

Ok aqui subo un pdf con las imagenes donde me muestra los errores
Ver el archivo adjunto PIC18F452 programa.txt
y aqui esta el programa, es un programa simple de una secuencia de 2 salidas, nada mas para pruebas del micro.


----------



## D@rkbytes (Jun 23, 2016)

Así no fue como te dije que agregaras la palabra de configuración.
Tienes que modificar el archivo 18F452.INC, tal y como lo describí en el post #30.


----------



## AbrahamMtz (Jun 23, 2016)

D@rkbytes dijo:


> Así no fue como te dije que agregaras la palabra de configuración.
> Tienes que modificar el archivo 18F452.INC, tal y como lo describí en el post #30.



igual lo intente de esa manera y me marcan igual los errores y no me deja compilar


----------



## D@rkbytes (Jun 23, 2016)

Si no tienes instalado MPLAB, deberás instalarlo, ya que posiblemente MPASM no está encontrado su archivo de referencia "p18f452.inc"

Ya instalado MPLAB, deberás nuevamente ubicar MPASM en MicroCode Studio.

​


----------



## roberttorres (Jun 23, 2016)

AbrahamMtz dijo:


> igual lo intente de esa manera y me marcan igual los errores y no me deja compilar


También podrías subir una imagen de tu archivo 18f452.inc con los fuses modificado para ver si lo estas haciendo bien.


----------



## AbrahamMtz (Jun 24, 2016)

D@rkbytes dijo:


> Si no tienes instalado MPLAB, deberás instalarlo, ya que posiblemente MPASM no está encontrado su archivo de referencia "p18f452.inc"
> 
> Ya instalado MPLAB, deberás nuevamente ubicar MPASM en MicroCode Studio.
> 
> Ver el archivo adjunto 145148​



mi panel de las opciones de programa sale muy distinto
 y ya tengo instalado el MPLAB tambien


----------



## roberttorres (Jun 24, 2016)

AbrahamMtz dijo:


> mi panel de las opciones de programa sale muy distintoVer el archivo adjunto 145170
> y ya tengo instalado el MPLAB tambien



Ok, debes pulsar sobre le botón "Find Manualy", En la lista de opciones debes abrir Archivos de programa, luego abrir la carpeta Microchip, seleccionar la carpeta MPASM Suite y pulsar el botón Aceptar.
Debería de quedar asi:


----------



## AbrahamMtz (Jun 24, 2016)

roberttorres dijo:


> Ok, debes pulsar sobre le botón "Find Manualy", En la lista de opciones debes abrir Archivos de programa, luego abrir la carpeta Microchip, seleccionar la carpeta MPASM Suite y pulsar el botón Aceptar.
> Debería de quedar asi:



Si de esa manera lo tengo amigo roberttorres.


----------



## D@rkbytes (Jun 24, 2016)

No. Tú estás usando el MPASM para PIC16 y necesitas usar el que viene con MPLAB que si tiene los .inc de la serie PIC18.

Ya se te dijo cómo hacerlo y necesitas cambiarlo por el MPASM de MPLAB.


----------



## pilm (Jun 24, 2016)

Cordial saludo... Me permito incluirme en la discusión, esperando poder aportar con una solución al problema.
  Es mucho tiempo de que ya no uso PicBasic, pero cuando lo hacía, prefería no especificar la configuración de los fuses dentro del programa, justamente para no tener problemas de sintaxis relacionados con la versión de compilador usado; acostumbraba hacerlo justo en el momento de grabar el pic. Todos los programadores de “pics” con los que me he topado tienen una sección en su interface de usuario donde se puede especificar el estado de cada bit (fuse) de configuración.
  Te sugiero @AbrahamMtz, que lo intentes de esta manera y nos cuentes como te fue…


----------

