Errores al compilar en MPLAB X

hola si tengo el compilador CCs, pero no me compila en MPLAB, me marca errores, desintale MPLAB y lo volvi a instalar y nada, sabrian donde puedo descargar MPLAB, tal ves el que yo tengo esta mal
 
Hola a todos
Tengo un problema ccs c compilado en mplab.
al compilador me da este error

Executing: "C:\Ar..\PICC\Ccsc.exe" +FH "Neutronic_USB.c" +DF +LN +T +A +M +Z +Y=9 +EA
*** Error 111 "D:\PIC\Neo_USB.c" Line 12(7,70): Unknown keyword in #FUSES "CPUDIV1"
*** Error 100 "D:\PIC\Neo_USB.c" Line 14(5,54): USE parameter value is out of range Not a number: PIN_C6
*** Error 128 "C:\ARCHIV~1\PICC\drivers\usb.h" Line 263(1,11): A #DEVICE required before this line

estas son las primeras 4 lineas del programa

Desde ya gracias por la respuesta.

#include <18F2553.h>
#fuses NOWDT,NOPROTECT,NOLVP,NODEBUG,VREGEN,HSPLL,USBDIV,PLL5,CPUDIV1
#use delay(clock=48000000)
#use RS232(baud=4800,xmit=PIN_C6,rcv=PIN_C7,PARITY=O)
 
Última edición:
Si compila... aveces eso es por la versión del compilador ya que no actualizan los detalles de los PIC... revisa en "Tools > Device Editor", busca el PIC y revisa que todo esté declarado...

Sobre los errores no reconoce "CPUDIV1", PIN_C6 no lo considera pin... no existe ese puerto y el tercer error se debe a la libreria en la linea 263 algo le falta...

PD: La versión que use es la CCS V4.104
 
No, no lo compìla, yo compilo a traves de MPLab, pero verifique a traves del PCW, segun indicas y no esta el Pic18F2553, como ubico el header del Pic 18F2553 y como se actualiza en el PCW

Gracias.
 
ByAxel si cuento con el PCWH version 4.023, lo que sucedde que no cuenta con el H Pic18F2553, si bien la pagina indica que lo soporta no se de donde bajar los header y como actualizar.

Gracias.
 
Adjunto el archivo, lo que no se, es si eso es suficiente (debería serlo) para compilar. Es posible que si eso no funciona, tendrás que escribir los parámetros en "Tools > Device Editor"...

saludos.
 

Adjuntos

  • 18F2553.rar
    3.4 KB · Visitas: 27
El archivo es el correcto, lo que no pude es ingresar los parametros en "Tools > Device Editor"..., conoces algun manual de como ingresar los nuevos parametros del pic ??.
Gracias de antemano
 
En la ventana puedes probar seleccionando un PIC similar (P18F con USB, con los mismos puertos, etc) y usas el botón "Copy" (Copy this entry to a new entry); pide el nuevo nombre del dispositivo, lo pones y ya se puede editar puesto que todos los parámetros se pueden cambiar. Mas no e intentado, si no funciona creo que tendrás que descargar una versión más actual del compilador.

saludos.
 
Buenas, estoy trabajando en un robot que debería realizar diferentes acciones según las entradas que reciba.

El problema es que no consigo que lea las entradas correctamente y, por lo tanto, no me es posible manipular las salidas según mis necesidades.


Este es el código:

; Revision : 1.0 Programa para : PIC16F628A
; Velocidad del reloj : 4 MHz Reloj instrucci¢n: 1 MHz = 1 us, T= 4 us
; Perro Guardian : Deshabilitado Tipo de reloj : XT
; Proteccion del codigo : OFF
;
;
;****************************************************************************************************

LIST P=16F628A ;EL PIC QUE VAMOS A UTILIZAR.

;****************************** IGUALIDADES *********************************************************

w EQU 0X00 ;DESTINO w (REGISTRO DE TRABAJO)
f EQU 0X01 ;DESTINO f (REGISTRO A USADO)
ESTADO EQU 0X03 ;ESTADO, ESTA EN LA DIRECCION 3
RP0 EQU 0X05 ;RP0 EQUIVALE A 5.
PCL EQU 0x02 ;DIRECCION DEL PCL (CONTADOR DEL PC)
TRISA EQU 85h
TRISB EQU 86h
PUERTAA EQU 0X05 ;PUERTAA SE ENCUENTRA EN LA DIRECCION 5.
PUERTAB EQU 0X06 ;PUERTAB SE ENCUENTRA EN LA DIRECCION 6.

;***************** AQUI EMPIEZA EL PROGRAMA. ********************************************************

ORG 0 ;ORIGEN DEL PROGRAMA, AQUI EMPIEZA.

goto INICIO ;VA A INICIO PARA SOBREPASAR
;EL VECTOR DE INTERRUPCION.
ORG 5

INICIO bsf ESTADO,RP0 ;Cambio al banco 1
movlw b'11111111' ;puerto A como entrada
movwf TRISA
movlw b'00000000' ;puerto B como salida
movwf TRISB
bcf ESTADO,RP0
movlw b'00000000'
movwf PUERTAA
movlw b'00000000'
movwf PUERTAB

;******************** Leer las entradas *************************************************************

LEE_ENTRADA movf PUERTAA,w ;Mueve el valor de la entrada al registro w (Lee entradas)
addwf PCL,1 ;Sumo este valor al PCL
goto FELIZ ;Si es 000
goto IZQUIERDA ;Si es 001
goto DERECHA ;Si es 010
goto ATRAS ;Si es 011
goto LOCO ;Si es 100
goto IZQUIERDA ;Si es 101
goto DERECHA ;Si es 110
goto ATRAS ;Si es 111




FELIZ movlw b'0000000101' ;101
movwf PUERTAB
goto LEE_ENTRADA

IZQUIERDA movlw b'00001001'
movwf PUERTAB
goto LEE_ENTRADA

DERECHA movlw b'00000110'
movwf PUERTAB
goto LEE_ENTRADA

ATRAS movlw b'00001010'
movwf PUERTAB
goto LEE_ENTRADA

LOCO movlw b'00001001'
goto LEE_ENTRADA

END

Cuando simulo el circuito el código ejecuta directamente FELIZ independientemente de las entradas que reciba, y siempre las salidas son las que especifíca esa función.

Si pudieran ayudarme estaría muy agradecido, es un para un tranajo que debo presentar en tres semanas.
 
Que tal:
1) Este PIC tiene oscilador interno/externo por lo que te sugiero que lo configures bien en los fuses.
2) Más importante... en este PIC el PORTA comparte sus pines con los comparadores análogos internos que por defecto usan los pines del PORTA como entradas análogas. Debes de configurar para que sean entradas digitales en el registro CMCON; si ves el datasheet hay un ejemplo de como hacerlo.

Código:
movlw 0x07
movwf CMCON   ; Todas en PORTA cono I/O digitales
luego configuras el TRISA y listo.

saludos.
 
Gracias por la ayuda!! pero todavía no consigo resolver el problema.

Error[113] D:\FERNANDO\ARCHIVOS DEL PROYECTO OGGY\OGGY1.ASM 42 : Symbol not previously defined (CMCON)

El MPLAB me tira un error cuando intento compilar y me dice que el símbolo debe definirse previamente.
¿Será un error mío?

Esto es lo que hice:

INICIO bsf ESTADO,RP0 ;Cambio al banco 1
movlw 0x07
movwf CMCON ; Todas en PORTA cono I/O digitales
movlw b'11111111' ;puerto A como entrada
movwf TRISA
movlw b'00000000' ;puerto B como salida
movwf TRISB
bcf ESTADO,RP0 ; cambio al banco 0
movlw b'00000000'
movwf PUERTAA
movlw b'00000000'
movwf PUERTAB



EDITO: ya solucioné el problema de que debo definirlo previamente. Debía establecer la equivalencia entre 1Fh y CMCON. Sin embargo, todavía no lee las entradas.
 
Última edición:
1) Has escogido bien el PIC?? en "Configure" >> "Select Device".
2) No es necesario definir ningún registro si incluyes en la cabecera
#include <p16F628A.inc> que en ese archivo están todos los registros declarados...
3) El registro CMCON está en el banco '0' y tal y como lo has echo ya está mal.

saludos.
 
Si, he elegido bien el pic, y gracias por el consejo de #include <p16F628A.inc>

¿Podrías darme un ejemplo de como debería extactamente escribir el código de esa parte? Me ayudaría a orientarme mejor.
 
Un ejemplo, directo del datasheet:
PHP:
	PROCESSOR 16F628A
	
	; Libreria donde están declarados todos los registros del PIC
#include <P16F628A.inc>

	; Algunos fuses y Oscilador externo tipo XT que soporta de 4Mhz a 10Mhz
	__CONFIG _WDT_OFF & _LVP_OFF & _MCLRE_OFF & _XT_OSC
	errorlevel -302
	
	org		0x00	; Vector de inicio
	goto	Inicio
	
	org		0x05
Inicio:
	banksel	TRISA	; TRISA está en el banco 1
	movlw	.7		; Binario 0b00000111
	movwf	TRISA
	clrf	TRISB
	banksel	CMCON	; CMCON están ene l banco 0
	movlw	.7
	movwf	CMCON	; Desactiva entradas análogas
	clrf	PORTB
	
TuCode:
	;...
	;...
	goto	TuCode
	END

saludos.
 
saludos

estoy tratando de compilar un programa en MPLAB. es un programa sencillo con LCD, pero cuando lo compilo me aparecen los errores 113 y 105.

e qui mi trabajo.


; ZONA DE DATOS **********************************************************************

LIST P=16F873
INCLUDE <P16F873.INC>
__CONFIG _WDT_OFF & _BODEN_OFF & _PWRTE_OFF & _HS_OSC & _LVP_OFF & _CPD_OFF

CBLOCK 0x20
Frecuencia
ContA
ContB
ContC
ENDC

;************************************************************************
BANK_0 macro ;Macros de selección de bancos
BCF STATUS,RP0
BCF STATUS,RP1
endm

BANK_1 macro
BSF STATUS,RP0
BCF STATUS,RP1
endm
;************************************************************************

; ZONA DE CÓDIGOS *******************************************************
org 0x00 ;Vector de Reset
goto Inicio
;************************************************************************
Inicio
call LCD_Inicializa
movlw Mensaje0 ; Apunta al mensaje.
call LCD_MensajeMovimiento
call Retardo_2s
movlw Mensaje01 ; Apunta al mensaje.
call LCD_MensajeMovimiento
call LCD_Linea2 ; Pasa a la segunda línea.
movlw MensajeParpadeante ; Apunta al mensaje parpadeante.
call LCD_Mensaje ; Lo visualiza.
call Retardo_500ms ; Durante este tiempo.
call Retardo_500ms
call Retardo_2s
goto Inicio

;=============================================================================


; Subrutina "Mensajes" =======================================================
Mensajes
addwf PCL,F
Mensaje0
DT " "
DT " *BIENVENIDOS*", 0x0
Mensaje01
DT " "
DT " ECCI-ING LUIS", 0x0
MensajeParpadeante
DT " $$FELIZ DIA$$ ", 0x0;


INCLUDE <RETARDOS.INC>
INCLUDE <BIN_BCD.INC>
INCLUDE <LCD_16FXXX.INC>
INCLUDE <LCD_MENS.INC>
END

y estos son los errores que me aparecen al compilarlo:

Debug build of project `C:\Archivos de programa\Microchip\MPASM Suite\menu.mcp' started.
Language tool versions: mpasmwin.exe v5.37, mplink.exe v4.37, mplib.exe v4.37
Preprocessor symbol `__DEBUG' is defined.
Wed Nov 03 19:28:28 2010
----------------------------------------------------------------------
Clean: Deleting intermediary and output files.
Clean: Done.
Executing: "C:\Archivos de programa\Microchip\MPASM Suite\mpasmwin.exe" /q /p16F873 "lcd2.asm" /l"lcd2.lst" /e"lcd2.err" /d__DEBUG=1 /c-
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 31 : Symbol not previously defined (LCD_INICIALIZA)
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 33 : Symbol not previously defined (LCD_MENSAJEMOVIMIENTO)
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 34 : Symbol not previously defined (RETARDO_2S)
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 36 : Symbol not previously defined (LCD_MENSAJEMOVIMIENTO)
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 37 : Symbol not previously defined (LCD_LINEA2)
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 39 : Symbol not previously defined (LCD_MENSAJE)
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 40 : Symbol not previously defined (RETARDO_500MS)
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 41 : Symbol not previously defined (RETARDO_500MS)
Error[113] C:\PROGRAMAS MPLAB\LCD2.ASM 42 : Symbol not previously defined (RETARDO_2S)
Error[105] C:\PROGRAMAS MPLAB\LCD2.ASM 61 : Cannot open file (Include File "RETARDOS.INC" not found)
Error[105] C:\PROGRAMAS MPLAB\LCD2.ASM 62 : Cannot open file (Include File "BIN_BCD.INC" not found)
Error[105] C:\PROGRAMAS MPLAB\LCD2.ASM 63 : Cannot open file (Include File "LCD_16FXXX.INC" not found)
Error[105] C:\PROGRAMAS MPLAB\LCD2.ASM 64 : Cannot open file (Include File "LCD_MENS.INC" not found)
Halting build on first failure as requested.
----------------------------------------------------------------------
Debug build of project `C:\Archivos de programa\Microchip\MPASM Suite\menu.mcp' failed.
Language tool versions: mpasmwin.exe v5.37, mplink.exe v4.37, mplib.exe v4.37
Preprocessor symbol `__DEBUG' is defined.
Wed Nov 03 19:28:31 2010
----------------------------------------------------------------------
BUILD FAILED

alguien me dijo que podría ser que en project- select language toolsuite y que depronto algunao de las 3 direcciones que aparecen en toolsuite contents, estuvieran con una equis roja, pero no me funciono.

agradeceria al maestro que me pudiera indicar que debo hacer.

muchas gracias de antemano
 
Atrás
Arriba