# Iniciar un proyecto C en MPLab



## ELIUSM (Jul 25, 2009)

Hola a todos!

Justamente que ando aprendiendo a programar en C, ando debatiendo esto en otros temas de aqui en el foro.

Pero, tengo una pregunta, cuya respuesta no he encontrado específicamente, ni tampoco manualmente:

Cómo se inicia un proyecto en C en el MPLab?
O sea,

Paso1: se crea un proyecto en blanco,
Paso2: ... ?
Paso3: ... ?

Ya instalé el Plugin de C (de CCS) para MPLab. Pero no sé, como llegar a usarlo.

Alguien me puede guiar un poco?
Agradezco mucho!


----------



## george.manson.69 (Jul 25, 2009)

1.-crea un proyecto elije el pic que vas a usar, y luego el lenguaje en este caso el CCS C, y lo grabas en una carpaeta el proyecto.
(al hacer eso, se debe abrir una ventanita a la izquierda) si no solo abrea en el boton enseguida de view.
2.-creas una hoja en blanco
3.-la hoja en blanco la grabas en la misma carpeta donde guardaste el workspace que hiciste con la exietensión " .c"
4.-has Click derecho en cualquier carpetita en la ventanita que se habia abierto y agregas la hoja que guardaste.(debe de aparece en la extensión .c
5.-y otra vez haces click en las carpetes de la ventanita y y te vas donde instalaste el ccs c, y buscas el pic que usaras y lo agregas. y listo para programar....


----------



## ELIUSM (Jul 25, 2009)

Agradezco muchísimamente tu respuesta, y que te hayas molestado en responderme esta tonterita de novatos.

Ahora si, un pequeño detalle.

Al momento de agregar archivos a una de las carpetas, me permite agregar cualquier cosa _menos_ cualquier_cosa.c

Para bypasear esto, le pongo "Todos los archivos *.*", y aún así no aparece.

Acto seguido: escribo el nombre completo del archivo con su terminación .c

Ahora aparece el archivo, pero al lado aparece (not found), siendo que está, y que está bien escrito el nombre.

Que extraño..... me está tomando del pelo este programa. Quién sabe qué es lo que pasa?

El CCS se supone que está bien instalado.

Agradecería mucho cualquier ayuda.
Saludos!


----------



## Vegetal Digital (Jul 25, 2009)

cambia el compilador que tiene el mplab configurado, seguramente esta en asm y por eso no te reconoce los archivos C.
anda a proyect/select language toolsuite y selecciona el ccs
saludos


----------



## ELIUSM (Jul 25, 2009)

Muchas muchas gracias denuevo!

Creo que lo he logrado. Estoy feliz. He hecho el proceso de compilación hasta el final. (Eso creo)

Igual me gustaría conocer algún comentario sobre lo que sale al final de este párrafo, que son mensajes del compilador:

Clean: Deleting intermediary and output files.
Clean: Done.
Executing: "C:\Archivos de programa\PICC\Ccsc.exe" LED_por_1segundo.c -m
No Errors
Halting build on first failed translation as user preferences indicate.
BUILD FAILED: Sat Jul 25 22:53:21 2009

Algo falló, porque el archivo HEX no apareció. Saben dónde puedo ver esas "User preferences", para verificar el problema? He estado dando varias vueltas por MPLab para buscar eso, sin respuestas.

Gracias por su ayuda!
Saludos!


----------



## Vegetal Digital (Jul 26, 2009)

Va a ser mas facil buscar el archivo (inicio/buscar) pone led_por_1segundo y en algun lugar va a aparecer el .hex. No se si se guarda en donde esta el archivo original en .c o donde esta el proyecto, te conviene poner todos los archivos en una misma carpeta.
Que raro que no te dice cuanta memoria del micro usaste...

Proba cambiar algo en el programa que vos sepas que esta mal (por ejemplo saca un ; ) y te va a dar el error y no genera el .hex.

Saludos


----------



## ELIUSM (Jul 26, 2009)

Hola!

Misma cosa. Busqué con el argumento " *.hex ", y claro, encontró todos los que hay. Todos, menos el que busco.

Entonces, tal como me recomendaste, le puse un error a propósito: le saqué un ;, y me manda el siguiente mensaje:

Clean: Deleting intermediary and output files.
Clean: Done.
Executing: "C:\Archivos de programa\PICC\Ccsc.exe" LED_por_1segundo.c -m
Error[20]   D:\AlBrand\MPLab\LED_por_1segundo.c 2 : Filename must start with " or <
Halting build on first failed translation as user preferences indicate.
BUILD FAILED: Sun Jul 26 12:35:54 2009

Ahora, ya sea que haya error o se haya compilado bien, la ventana del compilador, esa que dice cuánta memoria se está usando, aparece y desaparece tan rápido que apenas se alcanza a reconocer que fue esa ventana...

Hay algo mal aqui...

Te agradezco mucho tu respuesta! Yo mismo no he llegado a más conclusiones...

.
Yo lo podría compilar desde otro programa, pero después no lo podría grabar en el Pic, ya que estoy usando el grabador PicStart Plus de MPLab, el cual tiene que ser utilizado por este. Por eso mi interés de que funcione en el MPLab.

Gracias nuevamente!
Saludos!

EDICIÓN:
Logré atrapar la ventana del compilador con un ImprPant. La imágen se encuentra adjunta.
En ella también pueden ver casi todo el programa, y se me ocurre que puede ser culpa de un fuse mal seteado. Es posible? Se trata del PIC 16F628A.
Gracias!


----------



## Vegetal Digital (Jul 26, 2009)

Porque no subis el programa completo y pruebo de compilarlo. Esa ventana que aparce un tiempo muy breve es normal, despues en la ventana donde dice si hay errores, si no hay ningun error y compilo correctamente te aparece cuanto gasta de memoria.
Por que pusiste include led_por_1segundo ese debee ser el error.
saludos


----------



## ELIUSM (Jul 27, 2009)

Hola!

Adjunto está el código, en la imágen.

Lo puse como imágen, para pode rmostrar al mismo tiempo, todas las ventanas relevantes en este caso.
El código es tan corto, que se alcanza a ver entero allí.

Probé con acortar el nombre a "Led1seg.c", y lo mismo con trodos los demás archivos, pero el problema permanece.

Muchas gracias por el tiempo!

Saludos!


----------



## Vegetal Digital (Jul 27, 2009)

Proba abrir el ccs, desde allí abrí el programa en c y dale compilar para ver si te lo compila, si lo hace el problema lo tenes en el mplab, se que para grabar en el pic tenes que hacerlo desde el mplab, pero proba así sabes que no es problema del programa que hiciste.


----------



## ELIUSM (Jul 27, 2009)

Hm. Tengo una nueva:

A pesar del error que sale en el Output del compilador, apareció un archivo HEX. Lo simulé y funciona. Pero eso me sirve hasta allí nomás, ya que el MPLab no me libera los botones para grabarlo con el PicStart Plus.

Tengo el "Device" bien seteado, y todos los bits de configuración como corresponde.

Lo probé entonces además, desde el compilador CCS por separado, y este me lo compila sin ningún problema. Esto lamentablemente no me sirve, ya que el CCS por si solo no es capaz de grabar el programa en el Pic finalmente. Pero compila.

Eso...

agradezco nuevamente.


----------



## Vegetal Digital (Jul 27, 2009)

Ya no te puedo ayudar ya que yo uso otra grabadora. Seguro que con los drivers si te vienen en un cd, hay algún otro programa que cargue el .hex en el pic.


----------



## victormgt (Feb 1, 2010)

buenas muchachos, tengu una duda, cómo instalo el programita que me permite programar en ccs para mplab, lo abro, le doy ejecutar y listo??? gracias y disculpen la molestia, se que esto es una tontería.


----------



## ELIUSM (Feb 1, 2010)

HOla!

Lo que tienes que hacer, es instalar el CCS, asi nomás.

Después abres el MPLab, poner arribe "Project >> Set language tool locations..." encuentras el CCS en la lista, verificas que las ubiciaciones de los .exe estén buenas.

Después "Project >> Select language toolsuite", eliges el CCS y listo.

Todo quedó configurado en C.

Si tienes más dudas, escribes!, que como puedes ver en este post, me costó harto, y recibí ayuda, que agradezco mucho. Ya que yo ya pasé por ese pantano, te puedo ayudar.
Saludos!


----------



## jhony85 (Jun 10, 2010)

Aprovecho este thread para lanzar mi duda:

estoy iniciando con este programa y kiero simular un programa que tenia hecho en uVision, pero al darle a built all, en la ventana OUTPUT me sale:

BUILD FAILED: Wed Jun 09 13:49:09 2010


y no puedo simular.

¿que ocurre?

Otra cosa, quiero programar un pic16f84a, ¿hay alguna parte comun que se repita en todos los programas para los pics? es decir, alguna cabecera especial o algo, 

Un saludo


----------

