Errores al compilar en MPLAB

Hola que tal, estoy iniciandome en la programacion en mplab para el cual uso la version 8.10 y el toolsuite MPLAB C30 C Compiler, el primer programa que estoy haciendo es muy facil, el cual solo enciende y apaga un LED:

#include <p33fj12GP201.h>

int main (void)
{
TRISA=0;
while(1)
{
PORTAbits.RA2=1;
PORTAbits.RA2=0;
}
}

El porblema es cuando lo intento compilar me muestra este error:

---------------------------------------------------------------------
Debug build of project `C:\Documents and Settings\Varo\Escritorio\dghjh\1.mcp' started.
Preprocessor symbol `__DEBUG' is defined.
Wed Sep 02 20:52:14 2009
----------------------------------------------------------------------
Clean: Deleting intermediary and output files.
Clean: Deleted file "C:\Documents and Settings\Varo\Escritorio\dghjh\1.mcs".
Clean: Done.
Executing: "C:\Archivos de programa\Microchip\MPLAB C30\bin\pic30-gcc.exe" -mcpu=33FJ12GP201 -x c -c "C:\Documents and Settings\Varo\Mis documentos\LED\1.c" -o"1.o" -D__DEBUG -g -Wall
Microchip MPLAB C30 License Manager Version v3_11 (Build Date Jul 16 2008).
Copyright (c) 2008 Microchip Technology Inc. All rights reserved.
The dsPIC language tools key is not in the registry.
pic30-coff-cc1.exe: error: General License error, please install a license
Halting build on first failure as requested.
----------------------------------------------------------------------
Debug build of project `C:\Documents and Settings\Varo\Escritorio\dghjh\1.mcp' failed.
Preprocessor symbol `__DEBUG' is defined.
Wed Sep 02 20:52:15 2009
----------------------------------------------------------------------
BUILD FAILED


Desinstale y volvi a instalar el mplab y sigue sin compilar. Ademas este programa lo volvi a hacer en la PC de un amigo y si lo compilo pero en la mia no funciona, ¿Acaso tambien tiene que ver alguna caracteristica de la computadora para que me pase esto, o estoy haciendo algo mal?. Si me pudieran ayudar les estaria muy agradecido.
 
Verifica que este seleccionado el pic correcto, en el menu configure > select device
 
Estimado Varo, muy claramente te esta diciendo que las herramientas para el lenguaje propio del microcontrolador tipo dsPic no las tiene en su registro... es decir no has instalado una licencia para usar el compilador para ese tipo de micros.
"The dsPIC language tools key is not in the registry.
pic30-coff-cc1.exe: error: General License error, please install a license"

Por lo tanto requieres alguna licencia que permita hacer uso de ese tipo de herramienta, te sugiero busques en el site de microchip y veas si hay algo disponible, que seguro debe de haber.
Saludos

 
Que mas compañeros.

tengo una pregunta de un error q me sale al tratar de generar el codigo asm de un algoritmo que hice en niple 5.2, al tratar de general el condigo asm me aparece "error '341' en tiempo de ejecucion: el indice de la matriz de controles no es valido". alguien me podria ayudar? alguein sabe por que sale este error? le agradeceria a quien me pudea colaborar.

gracias
 
Gracias por responder tan rapido, hize lo que me recomendaron pero aun asi el problema persistia.

Pero acabo de solucionar mi problema, la razon se debia a que la bateria de mi PC se acabo y como saben al pasar esto el reloj y la fecha pierden la configuracion que tienen y vuelve a ponerse la hora y fecha de hace varios años. Esto aparentemente afecta al compilador C30 ya que la fecha de la version de este es mas nueva que la fecha que se pone como default y no se muy bien pero se crea un conflicto que impide al Mplab C30 compilar y para resolverlo hay que volver a poner la fecha y hora actual o cambiar la pila de la PC por una nueva y listo..

Gracias de todos modos por su ayuda.

Saludos desde Aguascalientes, Mexico!!!!
 
hola e estado intentando crear un proyecto en mplab y c18 vercion demo y me tira este error

Clean: Deleting intermediary and output files.
Clean: Done.
Executing: "C:\MCC18\bin\mcc18.exe" -p=18F452 "cbasico.c" -fo="cbasico.o" /i"C:\MCC18\h" -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
MPLAB C18 v3.33 (evaluation)
Copyright 2000-2009 Microchip Technology Inc.
Days remaining until evaluation becomes feature limited: 59
Skipping link step. The project contains no linker script.
BUILD FAILED: Thu Oct 22 12:08:24 2009

alguien tiene idea por que sera , ya e probado varias veces y siempre lo mismo , agradesco su ayuda de antemano
 
Tenés que agregar un "linker script" al proyecto. Para eso en el mplab ide fijate en la ventana Project (donde estan los archivos, los .c, los .h) en donde dice "Linker Script" botón derecho -> "Add Files...", anda a la carpeta MCC18\lkr y ahí elegí el que corresponda a tu microcontrolador. En este caso para el pic18f452 sería 18f452.lkr.

¿Que es el linker script?, lo podes abrir en el mismo mplab ide y darte cuenta, es un archivo que fundamentalmente le dice al compilador (el C18) las zonas de memoria ram/rom/eeprom, el tamaño de pila, también se puede poner nombres a determinadas zonas de memoria...
Saludos
 
gracias por tu respuesta adrogan esos pasos ya los hice pero no pasaba nada , despues instale el mplab 8.33 y anduvo el anterior hera el 7.2 no se tal vez tenia errores , con este engancha el icd2 clon por supuesto y va como piña , gracias deberia haber editado el post pero me olvide jeje
 
Hola a todos y vuelvo al foro para pedir un poco de ayuda al respecto:

mi problema es el siguiente:
estoy empezando en esto de la programación y me mande de lleno a un robot que estoy diseñando para competir en Sumo. La programación en sí ya estaria resuelta pero en el MPLAB veo lo siguiente:

al escribir un comando CORRECTAMENTE el mismo se pone azul, lo mismo pasa con los registros y bits que se usan para indicar de donde muevo y hacia donde...PERO cuando se escribe una instrucción erroneamente se pone roja.

lo que escribo a continuación es el arranque de mi programa en ASM y cuales cosas me aparecen en rojo....

cuando coloco #INCLUDE todo azul pero <P16F84A.INC> eso queda rojo
luego al colocar ejemplo: movf 0x0C,W la W queda roja.
luego cuando coloco STATUS,Z todo eso queda rojo...
tambien con el goto Comp1 - el Comp1 queda rojo.
 

Adjuntos

  • 490 bytes Visitas: 41
He buscado en el foro sobre este asunto, pero ninguno socorre a mi problema. Estoy haciendo un codigo en assembler y uso 3 archivos include, algo extensos cada uno, sobrepasando la linea 300 en alguno , pero el ultimo tuve que acortarlo para poder compilarlo, ya que me aparecia warning [220] Address exceeds maximum range for this processor varias veces en el archivo output, y tambien el error [126] Argument out of range (040E not between 0000 and 03FF).

Quisiera ver, que otra solucion tengo para poder compilar el programa, ya que necesito completar todo el archivo .INC, pero tuve que acortarlo. Y a que se debe este problema.
Uso el pic 16f84A.

Gracias.

Saludos.
Cerebro
 
Se debe a que tu programa es demasiado largo y excede el rango de memoria interna del PIC que es de 1024 palabras y va de la direccion 0000 a la 03FF, si no te es posible acortar tu programa, dudo mucho que lo puedas compilar simplemente por que no "cabe" en la memoria del PIC
 
hola,yo no voy a respder porq no se nada,de hecho recien empiezo a tratar de programar,pero tengo un problema con el mplab.....:cuando recien configuro el programa y creo el .asm,(con el save as); no me aparece como source file,sino como others...hay algo q no configure bien?uso el mplab v.8.15,y segui todas las instrucciones segun los tutoriales
 
Hola

Estoy haciendo un proyecto con el el pic 16f877a que consiste en construir un equipo que verifique la conductividad de un cable con 24 cabelcillos dentro de punta a punta,

Resulta que el programa los estoy haciendo en assembler y, siendo la primera vez que hago algo en esto, tengo el siguiente problema.

Dado que al compilar en modo absolute, me debe entregar un .hex para cargarlo en el pic o algun simulador no socede esto, sino que me entega un.O como si fuera un programa relocatable.

Ahora bien, si me entrega esto como lo haria para cargarlo en el pic o en el proteus o bien como arreglar el programa para que me entregue el archivo correcto.


Adjunto:
Los archivos fuente y el esquematico del circuuito.

EL circuito va ademas conectado a una pantalla LCD y a un teclado 4x4

Si me ayudan, podrian verificar ademas el correcto uso de las funcionalidades de estos aparatos


PD: Programe a pura intuicion, sin experiencia.

Saludos
 

Adjuntos

Hola Dpineda,

No he mirado muy a fondo el programa pero... yo creo que en la línea siguiente a ORG 0x00 debería decir GOTO inicio. Insisto en que no he mirado nada mas.

Saludos
 
tampoco he visto el programa pero tiene razon chyryes despues de org 0 va goto inicio y si hay interrupciones vas a org 4 escribes la interrupcion despues y si no hay org 5 y empiezas con el programa. para compilaro a .hex yo utilizo el mpaswin es sencillo solo tienes que instalarlo en una direccion corta como por ejemplo en c:/ ( en tu disco duro) no pesa casi nada. solo seleccionas el microcontrolador q utilizas y el programa en .asm y compilas
 
Muchas gracias.

Con la correccion que me dicen aun permance el problema.
Algo que note es que, segun el manual, una vez compilado aparece una flecha verde en donde parte el programa, esto no parece.
Si se fijan el "peso finaL" al observar el archivo .o es de 5k tal vez algo grande pero inferior a los 8kb limite. Sin embargo tal vez tenga que ver.
Pienso tal vez en disminuir el include del pic, dejando solo las etiquetas usadas, de los port y tris y algo mas.
Otra cosa que arregle y aun me confunde son las subrutinas.

Siempre deben llevar ":"?
Deben necesariamente que terminar en "return"??

Tengo que añadir que tal vez sea un problema con los archivos include


Al hacer un debuggeo comentando las referencias a los .inc el progrma se compila bien y aparece la flecha roja....

Uf,,,tak vez tenga que ver con las direcciones de memoria no?=
 
Última edición:
Hola necesito su ayuda por favor uso el mplab ide 8.43 pero necesito compilar en C, ya mi proyecto esta en lenguaje C, pero al compilarlo me aparece este error espero puedan ayudarme, gracias

 
Arriba