Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
+4
Mr.Javi3r
arcachofo
Risanti
Pikitin
8 participantes
Página 1 de 1.
Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Primero, se supone que tienes Ubuntu Hardy o posterior, aunque seguro que funciona con versiones anteriores, también debes tener un programador de los habitualmente utilizados.
Solo tienes que instalar los siguientes paquetes disponibles en los repositorios:
Para programar solo en ASM: gputils, gpsim, piklab
Para programar en C, además de los anteriores: sdcc (Piklab también se integra con otros compiladores C )
Esto lo puedes hacer desde synaptic o mucho más rápido desde una terminal:
_____________________________________________
sudo apt-get install gputils gpsim piklab sdcc
_____________________________________________
Para programar en BASIC no hay ninguna herramiente opensource (actualizado 23/01/09: ver GCBASIC), pero se puede utilzar el software de SourceBoost, que tiene una versión gratuita, completamente funcional aunque con algunas limitaciones de memoria utilizada y las versiones de pago tienen precios razonables.
BoostBasic corre bajo windows, pero funciona perfectamente integrado en Piklab con Wine:
1- Instalar los paquetes anteriormente mencionados.
2- Instalar wine desde repositorios.
3- descargar y ejecutar el instalador de SourceBoost: SourceBost V 6.90 (También trae un compilador C, otro C++ y Novo, un Rtos para PIC).
Una vez instalado todo lo necesario busca Piklab en el menú "Aplicaciones" y lo lanzas.
Ahora puedes actuar de dos maneras:
- Crear un proyecto (RECOMENDADO) donde indicas el compilador y PIC a utilizar y añadir los archivos utilizados. Una vez que los archivos estan listos, en el menú "construir (Build)" seleccionar "Construir proyecto".... vuestro archivo .hex ya está listo para ser grabado al pic.
- Compilar un archivo suelto (algunos compiladores requieren abrir un proyecto), entonces no creas ningún proyecto sino que directamente abres el archivo a compilar, tienes que seleccionar el compilador que quieres en el menú abajo a la derecha; luego en el menú "construir (Build)" seleccionar "Compilar archivo" .... vuestro archivo .hex ya está listo para ser grabado al pic.
Ahora tienes que seleccionar el programador que estés usando en el menú de abajo, a la izquierda de los compiladores; entonces darle al icono que se vé un chip con la flechita hacia adentro o hacerlo desde el menú: "Programador - programar".
Si en vez de seleccionar un programador seleccionas "GPSim" (en el menú de abajo donde los programadores) entras en modo simulación, se activan los iconos de comenzar simulación, avanzar un paso, etc. En la ventana de izquierda, al lado de "proyecto" hay una pestaña donde puedes seleccionar los registros que quieres seguir.
Gpsim también se puede lanzar independientemente de Piklab, ofreciendo más posiblidades.
Solo tienes que instalar los siguientes paquetes disponibles en los repositorios:
Para programar solo en ASM: gputils, gpsim, piklab
Para programar en C, además de los anteriores: sdcc (Piklab también se integra con otros compiladores C )
Esto lo puedes hacer desde synaptic o mucho más rápido desde una terminal:
_____________________________________________
sudo apt-get install gputils gpsim piklab sdcc
_____________________________________________
Para programar en BASIC no hay ninguna herramiente opensource (actualizado 23/01/09: ver GCBASIC), pero se puede utilzar el software de SourceBoost, que tiene una versión gratuita, completamente funcional aunque con algunas limitaciones de memoria utilizada y las versiones de pago tienen precios razonables.
BoostBasic corre bajo windows, pero funciona perfectamente integrado en Piklab con Wine:
1- Instalar los paquetes anteriormente mencionados.
2- Instalar wine desde repositorios.
3- descargar y ejecutar el instalador de SourceBoost: SourceBost V 6.90 (También trae un compilador C, otro C++ y Novo, un Rtos para PIC).
Una vez instalado todo lo necesario busca Piklab en el menú "Aplicaciones" y lo lanzas.
Ahora puedes actuar de dos maneras:
- Crear un proyecto (RECOMENDADO) donde indicas el compilador y PIC a utilizar y añadir los archivos utilizados. Una vez que los archivos estan listos, en el menú "construir (Build)" seleccionar "Construir proyecto".... vuestro archivo .hex ya está listo para ser grabado al pic.
- Compilar un archivo suelto (algunos compiladores requieren abrir un proyecto), entonces no creas ningún proyecto sino que directamente abres el archivo a compilar, tienes que seleccionar el compilador que quieres en el menú abajo a la derecha; luego en el menú "construir (Build)" seleccionar "Compilar archivo" .... vuestro archivo .hex ya está listo para ser grabado al pic.
Ahora tienes que seleccionar el programador que estés usando en el menú de abajo, a la izquierda de los compiladores; entonces darle al icono que se vé un chip con la flechita hacia adentro o hacerlo desde el menú: "Programador - programar".
Si en vez de seleccionar un programador seleccionas "GPSim" (en el menú de abajo donde los programadores) entras en modo simulación, se activan los iconos de comenzar simulación, avanzar un paso, etc. En la ventana de izquierda, al lado de "proyecto" hay una pestaña donde puedes seleccionar los registros que quieres seguir.
Gpsim también se puede lanzar independientemente de Piklab, ofreciendo más posiblidades.
Última edición por Pikitin el Vie 23 Ene 2009 - 22:34, editado 4 veces
No olvidemos Pikdev
Pikdev es un sencillo Software que permite programar en ASM, soporta varios tipos de programador seriales lpt y usb..
Se puede instalar en ubuntu
sudo aptitude install pikdev
o desde la pagina web
http://pikdev.free.fr/
Atte.
Risanti
Se puede instalar en ubuntu
sudo aptitude install pikdev
o desde la pagina web
http://pikdev.free.fr/
Atte.
Risanti
Pikdev
Cometi un pequeño error ...
Pikdev no esta a traves de fuentes de aptitude..
Pero si lo pueden bajar directamente desde la pagina ya sea en deb para ubuntu o debian.
Risanti
Pikdev no esta a traves de fuentes de aptitude..
Pero si lo pueden bajar directamente desde la pagina ya sea en deb para ubuntu o debian.
Risanti
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Hice un video demostrativo de como instalar lo necesario: SDCC, Piklab, GPutils, Gpsim, luego descargar la última versión de Piklab: 0.15.4, instalarla, descargar los programas test de Piklab, compilar un ejemplo y programar un pic, todo en Ubuntu desde 0.
Pero al subirlo a youtube pierde tanta calidad que no se vén los textos, he puesto algunos comentarios explicativos, pero no es lo mismo...
De todas formas ahí vá, al menos para que los escépticos vean que no es tan dificil programar PICs en Linux:
Pero al subirlo a youtube pierde tanta calidad que no se vén los textos, he puesto algunos comentarios explicativos, pero no es lo mismo...
De todas formas ahí vá, al menos para que los escépticos vean que no es tan dificil programar PICs en Linux:
arcachofo- Participante Activo
- Mensajes : 91
Fecha de inscripción : 26/11/2008
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Estuve leyendo el tutorial de Pikitin (muy bueno por cierto) y tambien vi el video de arcachofo (muy explicativo) y pues estoy por comprar un programador de pics, le hechado el ojo a este que es por usb:
http://articulo.mercadolibre.com.mx/MLM-51098620-programador-pic-usb-economico-_JM
Pero no se si me recomiendan uno en especifico o si tal vez este no me sirva para Ubuntu.
El pic en el que voy a trabajar es el 16f84.
Gracias.
http://articulo.mercadolibre.com.mx/MLM-51098620-programador-pic-usb-economico-_JM
Pero no se si me recomiendan uno en especifico o si tal vez este no me sirva para Ubuntu.
El pic en el que voy a trabajar es el 16f84.
Gracias.
Mr.Javi3r- Participante
- Mensajes : 17
Fecha de inscripción : 01/10/2010
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Hola..
El problema de usar ciertos programadores, es que no hay soporte en linux, te recomiendo que trates de contruir o quiza comprar el programador pickit2 el cual es compatible en linux, y de hecho funciona bien..
Es mas un poco mas costoso $$, pero construirse un clon no es tan dificil. o bien revisa los programadores compatibles con piklab..
Saludos
RiSanti
El problema de usar ciertos programadores, es que no hay soporte en linux, te recomiendo que trates de contruir o quiza comprar el programador pickit2 el cual es compatible en linux, y de hecho funciona bien..
Es mas un poco mas costoso $$, pero construirse un clon no es tan dificil. o bien revisa los programadores compatibles con piklab..
Saludos
RiSanti
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Muchos de esos programadores son clones del PICkit 2 de Microchip, aunque difícilmente lo mencionan. Incluso te entregan un software que es prácticamente el de Microchip pero traducido al español :p. Puedes preguntar si es compatible con el software para PICkit 2 de Microchip, si lo es, puede funcionar en Linux.
Ojo, estoy diciendo "puede" porque, siempre existe la posibilidad de que no sea completamente un clon.
Ojo, estoy diciendo "puede" porque, siempre existe la posibilidad de que no sea completamente un clon.
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Estaba checando en la sección de programadores (creo que no buscado del todo bien) y me topé con el aporte de arcachofo sobre el "Programador paralelo muy sencillo alimentado por USB" pero no entiendo como funciona, lo único que veo es el inversor 74HC04M, un diodo y un condensador, a pesar de ser muy simple no alcanzo a comprender su lógica. Mi intención era trabajar con el 16f84, pero creo que seria mejor con el 16f628a.
La verdad soy muy novato en esto, les pido una disculpa si les hago perder el tiempo.
De igual forma si me pueden recomendar algún tutorial por donde empezar estaría MUY agradecido.
Gracias de todas formas.
La verdad soy muy novato en esto, les pido una disculpa si les hago perder el tiempo.
De igual forma si me pueden recomendar algún tutorial por donde empezar estaría MUY agradecido.
Gracias de todas formas.
Mr.Javi3r- Participante
- Mensajes : 17
Fecha de inscripción : 01/10/2010
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Mr.Javi3r escribió:Estaba checando en la sección de programadores (creo que no buscado del todo bien) y me topé con el aporte de arcachofo sobre el "Programador paralelo muy sencillo alimentado por USB" pero no entiendo como funciona, lo único que veo es el inversor 74HC04M, un diodo y un condensador, a pesar de ser muy simple no alcanzo a comprender su lógica. Mi intención era trabajar con el 16f84, pero creo que seria mejor con el 16f628a.
La verdad soy muy novato en esto, les pido una disculpa si les hago perder el tiempo.
De igual forma si me pueden recomendar algún tutorial por donde empezar estaría MUY agradecido.
Gracias de todas formas.
No se si te sirva de algo, pero hace unos días construí un programador RCD que funciona espectacularmente bien para el 16F628/628A bajo piklab. La verdad, es muy económico (lo he armado sobre el protoboard) y recomendable si tienes un puerto serie disponible.
fclad- Nuevo Usuario
- Mensajes : 6
Fecha de inscripción : 11/10/2010
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
fclad escribió:
No se si te sirva de algo, pero hace unos días construí un programador RCD que funciona espectacularmente bien para el 16F628/628A bajo piklab. La verdad, es muy económico (lo he armado sobre el protoboard) y recomendable si tienes un puerto serie disponible.
Muchas gracias, claro que me sirve, afortunadamente tengo un pto serie en la pc de escritorio.
Creo que voy a crear un hilo donde voy a postear el proyecto que tengo entre manos para la materia de sensores y actuadores para actualizarlo conforme avance, para si a alguien le puede servir lo tome de referencia y claro, para que me aconsejen.
Mr.Javi3r- Participante
- Mensajes : 17
Fecha de inscripción : 01/10/2010
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Hola Mr.Javi3r.
La diferencia con otros programadores es que para conseguir la tensión de programación utiliza un elevador de tensión: el condensador y diodo.
Cuando la salida del pic que va al condensador está a 0v, el condensador se carga a 5v a traves del diodo, en el momento de la programación esa salida se pone a 5v por lo que al otro lado del condensador tendremos 5+5=10v, suficiente para programar muchos pics, pero no todos, por ejemplo el p16f84 creo que necesita 12v por tanto no sirve para ese programador. Al final del post tienes un enlace para ver las tensiones de programación de muchos pics.
La ventaja de este programador es que solo necesitas 5v que puedes sacar del usb y muy pocos componentes, te ahorras problemas de alimentación mal filtrada y se monta en un rato.
De todas formas todos estos programadores por puerto serie o paralelo tienen sus limitaciones y es normal que den fallos de vez en cuando, a veces según modelo de pic.
Está bien hacerse alguno porque te suele obligar a comprender un poco el proceso de programación y sirve para ir empezando sin mucho gasto, pero si quieres un programador que no te de problemas, sea rápido y además sirva para algunas otras cosas, también te recomiendo el pickit2, está ya muy probado en linux y se pueden conseguir clones baratos que suelen funcionar bien.
Si te buscas un clon barato fíjate que sea una copia del pickit2 y no una variante.
Hay algunos chinos alrededor de 30$(usa) con gastos de envío incluidos que están bastante bien, aunque normalmente no son tan buenos como los originales, por ejemplo no pueden programar dispositivos a 3,3v y cosas así; pero por ese precio es mucho mejor que uno por puerto paralelo o serie.
Saludos.
Es muy sencillo, como la mayoría de los programadores paralelos lo único que hace es "darle potencia" a las salidas del puerto paralelo que normalmente no tienen tensión y/o corriente sufiente para conectarlo directo al pic."Programador paralelo muy sencillo alimentado por USB" pero no entiendo como funciona, lo único que veo es el inversor 74HC04M, un diodo y un condensador, a pesar de ser muy simple no alcanzo a comprender su lógica. Mi intención era trabajar con el 16f84, pero creo que seria mejor con el 16f628a.
La diferencia con otros programadores es que para conseguir la tensión de programación utiliza un elevador de tensión: el condensador y diodo.
Cuando la salida del pic que va al condensador está a 0v, el condensador se carga a 5v a traves del diodo, en el momento de la programación esa salida se pone a 5v por lo que al otro lado del condensador tendremos 5+5=10v, suficiente para programar muchos pics, pero no todos, por ejemplo el p16f84 creo que necesita 12v por tanto no sirve para ese programador. Al final del post tienes un enlace para ver las tensiones de programación de muchos pics.
La ventaja de este programador es que solo necesitas 5v que puedes sacar del usb y muy pocos componentes, te ahorras problemas de alimentación mal filtrada y se monta en un rato.
De todas formas todos estos programadores por puerto serie o paralelo tienen sus limitaciones y es normal que den fallos de vez en cuando, a veces según modelo de pic.
Está bien hacerse alguno porque te suele obligar a comprender un poco el proceso de programación y sirve para ir empezando sin mucho gasto, pero si quieres un programador que no te de problemas, sea rápido y además sirva para algunas otras cosas, también te recomiendo el pickit2, está ya muy probado en linux y se pueden conseguir clones baratos que suelen funcionar bien.
Si te buscas un clon barato fíjate que sea una copia del pickit2 y no una variante.
Hay algunos chinos alrededor de 30$(usa) con gastos de envío incluidos que están bastante bien, aunque normalmente no son tan buenos como los originales, por ejemplo no pueden programar dispositivos a 3,3v y cosas así; pero por ese precio es mucho mejor que uno por puerto paralelo o serie.
Saludos.
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Hola, también soy un poco novato en esto de los pic's, ya he trabajado con el arduino pero quiero algo mas, ya me instalé los paquetes y el piklab bajo gnu/linux, ví la respuesta de fclad y es lo que buscaba, los programadores de pic's son algo caros, además yo quiero construir el mio, ya he investigado de varios y tengo los esquemas de un JDM, pero me llamó la atención de el que puso fclad que dice que para los pic 16f628a hay que quitarle unas patas al soquet, es esto necesario?
carlostex- Participante
- Mensajes : 19
Fecha de inscripción : 30/10/2010
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
carlostex escribió:Hola, también soy un poco novato en esto de los pic's, ya he trabajado con el arduino pero quiero algo mas, ya me instalé los paquetes y el piklab bajo gnu/linux, ví la respuesta de fclad y es lo que buscaba, los programadores de pic's son algo caros, además yo quiero construir el mio, ya he investigado de varios y tengo los esquemas de un JDM, pero me llamó la atención de el que puso fclad que dice que para los pic 16f628a hay que quitarle unas patas al soquet, es esto necesario?
Yo probé el JDM con un 16f628 y con el 16f628a. Tal cual como dice la página, si no le desconectas los pines que te indica para el 16f628a no es capaz de grabar. De todas maneras, yo he estado pensando hacer el grabador en una plaquita de fenólico, y pensé ponerle un par de jumpers, con tal de poder conectar y desconectar esas patas. Por ahora estoy muy contento, funciona espectacularmente bien y es recomendable, para empezar.
Saludos!
fclad- Nuevo Usuario
- Mensajes : 6
Fecha de inscripción : 11/10/2010
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Hola, gracias por responder. Decidí comprar un programador jdm por serial, no voy a construir un por ahora, el modelo esta en esta pagina aqui pero en las características no dice que admita el pic16f628a supongo que es por lo de los pines, pero quiero confirmarlo con ustedes, así solo compro un socalo y le quito los que no van, en esa tienda voy a comprar el pic, y de hecho también venden el 16f84 pero no se si sea normal que este sea mas caro que el pic16f628a.
Gracias por su ayuda
Edito:
Tengo otra duda, estuve viendo el pic16f819 que tiene mas memoria por unos cuantos pesos más.
En el datasheet de este dice que admite programación a bajo voltaje, ¿podría usar un conversor de usb a serial?
Gracias por su ayuda
Edito:
Tengo otra duda, estuve viendo el pic16f819 que tiene mas memoria por unos cuantos pesos más.
En el datasheet de este dice que admite programación a bajo voltaje, ¿podría usar un conversor de usb a serial?
carlostex- Participante
- Mensajes : 19
Fecha de inscripción : 30/10/2010
Re: Como empezar a programar PICs en Ubuntu en 10 minutos (Asm, C, Basic)...
Hola carlostex
Si quieres un programmador que funciona con el USB, hay un proyecto libre usbpicprog
http://usbpicprog.org/
con hardware libre (kicad) y software libre que funciona con linux, y también windows (no he probado con windows)
Se puedo comprar también 20€ (euros) y 5 € de gastos de envio ,en España, Francia y Mexico.
Cuando puedo, prefiero ayudar proyecto libre.
Saludos,
Per
Si quieres un programmador que funciona con el USB, hay un proyecto libre usbpicprog
http://usbpicprog.org/
con hardware libre (kicad) y software libre que funciona con linux, y también windows (no he probado con windows)
Se puedo comprar también 20€ (euros) y 5 € de gastos de envio ,en España, Francia y Mexico.
Cuando puedo, prefiero ayudar proyecto libre.
Saludos,
Per
Temas similares
» Empezar a programar con SDCC y Piklab desde cero
» Como empezar a utilizar PIC-GCC
» como compilar piklab, pikloops y pk2cmd para programar con pickit 2
» como configurar pickit2 y piklab en ubuntu 11.04
» MATRIX DE LED EN PIC BASIC PRO
» Como empezar a utilizar PIC-GCC
» como compilar piklab, pikloops y pk2cmd para programar con pickit 2
» como configurar pickit2 y piklab en ubuntu 11.04
» MATRIX DE LED EN PIC BASIC PRO
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.