TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Axel_18 en 02 de Junio de 2009, 21:56:29

Título: Ayuda con PIC C COMPILER
Publicado por: Axel_18 en 02 de Junio de 2009, 21:56:29
Hola a todos....

me estoy iniciando en C y habia empezado con MikroC, pero me di cuenta que el CCS tiene mas cobertura y ayuda y decidi cambiar de programa...
Tengo el la version 4.068 de ccs, e intento programar cualquier cosa...pero no puedo, el programa no me deja...
el codigo que intento programar es de un ejemplo que sale en el mismo foro

Código: [Seleccionar]
#include <16f628a.h>         //pic a utilizar         
#fuses XT,NOWDT,NOPROTECT,PUT      //ordenes para el programador
#use delay (clock=4000000)         //Fosc=4Mhz
#use fast_io(b)

///PROGRAMA
void main(void)
{
   set_tris_b(0xFE);   //portb como salida(RB0,las demas desactivadas)
   disable_interrupts(GLOBAL);   //todas las interrupciones desactivadas
   
   do{   
      output_low(PIN_B0);   //led off
      delay_ms(500);           
      output_high(PIN_B0);   //led on
      delay_ms(500);
   }while(TRUE);         //bucle infinito
}

Le agradeceria a cualquiera que me guiara para poder programar y generar el archivo .hex

saludos

Título: Re: Ayuda con PIC C COMPILER
Publicado por: PalitroqueZ en 02 de Junio de 2009, 23:04:20
...pero no puedo, el programa no me deja...
...


¿podrías ser mas explicito? no entiendo a que te refieres.

Título: Re: Ayuda con PIC C COMPILER
Publicado por: MGLSOFT en 02 de Junio de 2009, 23:25:55
Deberias ponerlos errores y warnings que tira el compilador, asi e ayudamos..
Título: Re: Ayuda con PIC C COMPILER
Publicado por: Axel_18 en 02 de Junio de 2009, 23:47:34
Bueno..al tratar de escribir un codigo trate de crear un nuevo archivo  (que fue lo primero que hice al instalar el programa) y trate de compilarlo precionando los tres botones de "compile", "build" y "build all". Luego aparecio una ventanita que decia haber compilado con exito...creo un archivo .C un .H y otros, pero ningun .hex y luego borre todos los archivos que genero en la carpeta

Despues cree un nuevo archivo de codigo para generar otro programa, pero no me dejaba compilarlo y me pide aun el primer programa que hise.

Mi duda es que si tengo que abrir de algun lado el archivo para que lo reconozca para compilarlo
Título: Re: Ayuda con PIC C COMPILER
Publicado por: Axel_18 en 02 de Junio de 2009, 23:52:44
mmm...me di cuenta que el codigo de la imagen tiene un problema...
En esta esta arreglado pero sigue arrojando el mismo error
Título: Re: Ayuda con PIC C COMPILER
Publicado por: migsantiago en 03 de Junio de 2009, 13:18:14
A mi me ha dado problemas similares cuando intento compilar un archivo.c cuyo nombre ya había usado en un anterior proyecto.

Ejemplo:
- Compilo archivo.c ubicado en c:\programa1\ y no hay problema
- Compilo archivo.c ubicado en c:\programa2\ y el compilador se niega a compilar o compila el anterior

La solución fue nombrar los archivos.c siempre con nombres diferentes y así el compilador ya no se confunde.

archivo1.c
archivo2.c

Eso también me solucionó el error (0,0) illegal C character in line 0.
Título: Re: Ayuda con PIC C COMPILER
Publicado por: Axel_18 en 03 de Junio de 2009, 21:21:56
Problema solucionado ejejeje.....era muy simple!! solo debia abrir el proyecto con la opccion "proyect" y no directamente del archivo.

Otra duda, como genero el archivo .HEX con CCS? o que tengo que descargar para generarlo?
Título: Re: Ayuda con PIC C COMPILER
Publicado por: Suky en 03 de Junio de 2009, 21:40:27
Al compilar te crea el archivo *.hex!
Título: Re:Ayuda con PIC C COMPILER
Publicado por: Berto en 21 de Enero de 2016, 11:34:10
Creo que tengo el PCW 5.01
Citar
La solución fue nombrar los archivos.c siempre con nombres diferentes y así el compilador ya no se confunde.

archivo1.c
archivo2.c
Si esto es lo que hago, los dos dentro de la misma carpeta, a un a si solo compila el 1º programa que cargo. Todos los demas aunque haga modificaciones en ellos ni siquiera guarda los canvios, a menos que pinche yo directamente en guardar.
Que le pasa??
Título: Re:Ayuda con PIC C COMPILER
Publicado por: MGLSOFT en 21 de Enero de 2016, 13:15:01
Para obligar al compilador a compilar un nuevo archivo en la misma carpeta de otro proyecto, te paras sobre la etiqueta del nombre del archivo .c elegido y le das a botón derecho, se abrirá el menú contextual y allí eliges Make File Proyect.
y después compilas y deberías tener el archivo Hex en la carpeta, salvo que le hayas dado una ruta diferente donde poner el archivo compilado. :mrgreen: :mrgreen:
Título: Re:Ayuda con PIC C COMPILER
Publicado por: Berto en 21 de Enero de 2016, 13:57:06
Antes no avia que "obligarle" a nada. Y lo tengo que hacer constantemente, pero funciona gracias es todo un paso. Estaba arto de cerrar y abrir codigos una y otra vec
Título: Re:Ayuda con PIC C COMPILER
Publicado por: MGLSOFT en 21 de Enero de 2016, 16:00:40
Eso cambio desde que CCS adopto los proyectos con múltiples compilaciones, adaptado a ANSI C.
Cuando se normalizan los critican, je..je!! :D :D

Recomiendo que le pongas la etiqueta Resuelto al titulo del tema. ;-) ;-)
Título: Re:Ayuda con PIC C COMPILER
Publicado por: leonardotri en 17 de Mayo de 2016, 10:28:36
Buenos dias estoy teniendo un pequeño problema al compilar mi proyecto y no se como solucionarlo, al compilarlo me salta un error saben que puede estar causando esto?

*** Error 128 "C:\Users\ltriador\Desktop\firm ultimo reportadores\checks.h" Line 6(9,15): A #DEVICE required before this line
C:\Users\ltriador\Desktop\firm ultimo reportadores\checks.o ===>  1 Errors,  0 Warnings.
Build Failed.

y corresponde a esta linea del codigo

#ifndef _CHECKS_H_
#define _CHECKS_H_ linea de error
Título: Re:Ayuda con PIC C COMPILER
Publicado por: KILLERJC en 17 de Mayo de 2016, 14:37:28
Esa no es la linea de error, podrias poner el codigo de este archivo?:

C:\Users\ltriador\Desktop\firm ultimo reportadores\checks.h
Título: Re:Ayuda con PIC C COMPILER
Publicado por: leonardotri en 17 de Mayo de 2016, 14:44:24
aqui esta
Título: Re:Ayuda con PIC C COMPILER
Publicado por: KILLERJC en 17 de Mayo de 2016, 15:17:47
Y eso lo tenes en un check.c ?

Por que es raro que intente "compilar" a un arhivo objeto un .h ( checks.o ), no veo nada malo en el .h

Lo que vos marcaste antes es una guarda, para que no se incluya si es que ya esta incluido. Nada mas, pero no levantaria ningun error. Si tenes el .c que le pertenece a ese .h genial. que es ahi donde tira el error.

Aunque viendo algun problema de otra persona:
https://www.ccsinfo.com/forum/viewtopic.php?t=35724

No le vi solucion, tal ves hay algo mal en como lo tenes realizado. Alguien con mas experiencia en CCS te podra responder mejor. Veo que no es un problema de archivos sino compilador.
Título: Re:Ayuda con PIC C COMPILER
Publicado por: leonardotri en 17 de Mayo de 2016, 15:33:21
si esta en un check.c por eso me parece raro
Título: Re:Ayuda con PIC C COMPILER
Publicado por: leonardotri en 17 de Mayo de 2016, 15:47:39
aqui esta el checks.c
Título: Re:Ayuda con PIC C COMPILER
Publicado por: KILLERJC en 17 de Mayo de 2016, 16:06:25
Si contamos las 3 lineas del .h + las lineas del .c, lo que seria que levanta error es el set_adc_channel()

Proba comentarla, y fijate si cambia de "linea" el error. De todas formas es algo "interno" a CCS, es como si no hubieras especificado el dispositivo con el cual se esta trabajando. ( O tal ves se definio varias veces por demas )

Por si las dudas otra cosa a probar segun el link que te pase: es que si estas usando MPLAB, pone unicamente el main.c en "Source Files" los demas ponelos en "Other Files".
Título: Re:Ayuda con PIC C COMPILER
Publicado por: leonardotri en 17 de Mayo de 2016, 16:14:48
probe comentando esa linea del codigo y sigue ocurriendo el mismo error, actualmente estoy tratando de compilar con el ccs c de pic
Título: Re:Ayuda con PIC C COMPILER
Publicado por: PicBurner en 19 de Mayo de 2016, 00:52:30
CCS es un cross-compiler, no es un ANSI C compiler, por lo tanto desconoce la plataforma para la cual debe generar código. La estructura de tu programa, previo a la información de la biblioteca standard (archivos.h) y las definiciones de funciones, necesita brindar al compilador, información del entorno, porque el compilador no conoce el tipo de microcontrolador, (#DEVICE, #INCLUDE) ni la frecuencia de operación, (#USE) ni la configuración del oscilador, (#FUSES) ni los parámetros de la UART, etc, etc, etc
Los errores del compilador reflejan fielmente el problema. 

Por otro lado, los errores que entrega el compilador, refieren a la linea donde se detectó algún error en tiempo de compilación, no significa que el error esté necesariamente en esa linea de código, como ocurre en éste caso.
Por lo tanto, tienes que completar las directivas al compilador que faltan en el código de tu programa.

Saludos,

PicBurner