{"id":42,"date":"2010-05-04T23:24:51","date_gmt":"2010-05-04T21:24:51","guid":{"rendered":"http:\/\/pinguino.walii.es\/archives\/42"},"modified":"2010-10-09T21:08:23","modified_gmt":"2010-10-09T18:08:23","slug":"como-comenzar-con-pinguino","status":"publish","type":"post","link":"https:\/\/pinguino.walii.es\/?p=42","title":{"rendered":"Como comenzar con PINGUINO"},"content":{"rendered":"

\"\"
\n<\/span><\/p>\n

Aunque fue dise\u00f1ado originalmente en LINUX, es mejor comenzar con WINDOWS, se facilita mucho la instalaci\u00f3n y puesta en marcha. Luego si deseamos m\u00e1s potencia podr\u00edamos migrar a LINUX.
\n<\/span><\/p>\n

Pero para verlo funcionando de una forma r\u00e1pida\u2026 lo mejor es el dichoso WIN2.
\n<\/span><\/p>\n

Lo primero ser\u00e1 cargar el firmware en el PIC 18f2550 o 18f4550, recomiendo este ultimo por tener muchas m\u00e1s aplicaciones posibles, aunque un poco m\u00e1s caro, en EBAY se puede conseguir por $8 d\u00f3lares.
\n<\/span><\/p>\n

Igual necesitar\u00edan un programador, pero omito este pas\u00f3 ya que supongo que alg\u00fan experimento han hecho con PICs y ya tendr\u00e1n uno. J<\/span>
\n<\/span><\/p>\n

El firmware a cargar \u00abcompatible con ambos PICs\u00bb se encuentra en la siguiente direcci\u00f3n<\/a>, en si se denomina BOOTLOADER porque sirve para iniciar el pic y que este escuche al programa PING\u00dcINO.
\n<\/span><\/p>\n

Este firmware est\u00e1 basado en el proyecto VASCOBOOTLOADER<\/a>\u2026 y modificado para este micro-controlador.<\/span><\/p>\n


\n<\/span><\/p>\n

CIRCUITOS DE PING\u00dcINO
\n<\/span><\/p>\n

\"\"
\n<\/span><\/p>\n

\"\"
\n<\/span><\/p>\n

En Windows necesitaremos cuatro programas para ejecutar la interface grafica de PING\u00dcINO
\n<\/strong><\/span><\/p>\n

PYTHON, WXPYTHON, PYUSB y LIBUSB
\n<\/span><\/p>\n

Estos se pueden conseguir desde los v\u00ednculos siguientes
\n<\/span><\/p>\n

PYTHON (cualquier versi\u00f3n, pero necesitaremos la versi\u00f3n de WXpython complementaria)
\n<\/span><\/p>\n

PYTHON 2.6 LINK<\/span><\/a>
\n
http:\/\/www.python.org\/ftp\/python\/2.6.5\/python-2.6.5.msi<\/a>
\n<\/span><\/p>\n

WXPYTHON<\/span><\/a>
\n
http:\/\/downloads.sourceforge.net\/project\/wxpython\/wxPython\/2.8.10.1\/wxPython2.8-win32-unicode-2.8.10.1-py26.exe?use_mirror=switch<\/a>
\n<\/span><\/p>\n

PYUSB<\/span><\/a>
\n
http:\/\/downloads.sourceforge.net\/project\/pyusb\/PyUSB%200.x\/0.4.3\/pyusb-0.4.3.win32-py2.6.exe?use_mirror=heanet<\/a>
\n<\/span><\/p>\n

LIBUSB-WIN32<\/span><\/a>
\n
http:\/\/downloads.sourceforge.net\/project\/libusb-win32\/libusb-win32-releases\/0.1.12.2\/libusb-win32-device-bin-0.1.12.2.tar.gz?use_mirror=mesh<\/a>
\n<\/span><\/p>\n

Una vez instalados todos los programas necesarios, podremos descargar la \u00faltima versi\u00f3n de PING\u00dcINO.
\n<\/span><\/p>\n

PING\u00dcINO 8<\/span><\/a>
\n
http:\/\/www.hackinglab.org\/pinguino\/download\/pinguino%20beta%208\/<\/a>
\n<\/span><\/p>\n

Y el controlador para que Windows reconozca el PING\u00dcINO como tal.
\n<\/span><\/p>\n

Este es el link del controlador.<\/span><\/a>
\n
http:\/\/www.hackinglab.org\/pinguino\/download\/driver%20pinguino%20windows\/driver%20pinguino%20windows.tar.gz<\/a>
\n<\/span><\/p>\n

Otro LINK<\/span><\/a>
\n<\/span><\/p>\n

AQU\u00cd OS DEJO UN PAQUETE COMPLETO CON TODO LO NECESARIO POR SI ALGUNA VEZ ALG\u00daN REPOSITORIO SE ENCUENTRA CAIDO.<\/span><\/a>
\n<\/span><\/p>\n

Una vez descomprimido donde queramos que resida nuestra aplicaci\u00f3n (necesitaremos el WINRAR<\/a>) si todo ha ido como corresponde, con solo ejecutar \u00abpinguinobeta8windows.py\u00bb con doble click del raton, si no funciona correctamente o no vemos que ocurra nada\u2026 entonces recomiendo reiniciar WIN2, he intentar nuevamente ejecutar el programa.
\n<\/span><\/p>\n

\"\"
\n<\/span><\/p>\n

Tras ejecutar y llegar a la pantalla principal, veremos varias opciones\u2026
\n<\/span><\/p>\n

Lo primero que haremos ser\u00e1 ir a ARCHIVO, ABRIR, y buscar en el directorio EXAMPLES alg\u00fan c\u00f3digo de ejemplo para probar y cargar en nuestro pic.
\n<\/span><\/p>\n

Por ejemplo TESTBLINK que funciona en cualquiera de los dos PICs 18f2550 o 18f4550
\n<\/span><\/p>\n

[sourcecode language=\u00bbpy\u00bb]
\n\/\/ Test blink with Pinguino
\n\/\/ jean-pierre MANDON 2008
\nint led1; \/\/ led1 is an integer ( Pin )
\nint led2; \/\/ led2 is an integer ( Pin )
\nint tempo; \/\/ tempo is an integer
\nvoid setup()
\n{
\n led1=1; \/\/ led 1 is connected on pin 1
\n led2=7; \/\/ led 2 is connected on pin 2
\n tempo=500; \/\/ tempo for blink is 500 mS
\n pinMode(led1,OUTPUT); \/\/ pin 1 is an output
\n pinMode(led2,OUTPUT); \/\/ pin 7 is an output
\n}
\nvoid loop()
\n{
\n while (1)
\n {
\n digitalWrite(led1,HIGH); \/\/ led 1 high
\n digitalWrite(led2,LOW); \/\/ led 2 low
\n delay(tempo); \/\/ wait 0,5 second
\n digitalWrite(led1,LOW); \/\/ led 1 low
\n digitalWrite(led2,HIGH); \/\/ led 2 high
\n delay(tempo); \/\/ wait 0,5 second
\n }
\n}<\/p>\n

[\/sourcecode]<\/p>\n

Este ejemplo es muy pr\u00e1ctico y grafico a la vez, vemos que de indican las variable, y determina los leds (patillas del PIC), que actuaran como salidas. Y m\u00e1s tarde en el LOOP vemos como enciende un led, espera un tiempo y enciende el siguiente.
\n<\/span><\/p>\n

Cuando presionamos el bot\u00f3n de PLAY (triangulo) el sistema analiza el c\u00f3digo y nos informa si tenemos alg\u00fan error. O si todo esta correcto. En este \u00faltimo paso si todo se encuentra correcto, genera un archivo HEX que ser\u00e1 el que m\u00e1s adelante env\u00ede al PIC.
\n<\/span><\/p>\n

\"\"
\n<\/span><\/p>\n

Una vez pasado este punto, podremos enviarle al PIC el c\u00f3digo generado.
\n<\/span><\/p>\n

Conectaremos por USB el PIC al PC, y presionando en el \u00faltimo bot\u00f3n de la derecha, obtendremos la siguiente ventana.
\n<\/span><\/p>\n

\"\"
\n<\/span><\/p>\n

Aqu\u00ed podremos observar el archivo HEX generado, y la direcci\u00f3n USB del PIC en vendorRID y productID.
\n<\/span><\/p>\n

Tendremos en este momento que presionar el bot\u00f3n de reset del PIC, y el bot\u00f3n de escribir WRITE varias veces hasta que veamos el mensaje de \u00abPIC FOUND\u00bb, y luego el mensaje de \u00abfila.hex uploaded\u00bb. No importa que lo presionemos varias veces, ya que esto no genera problemas. Como ven en la imagen yo lo he presionado casi 10 veces antes que el PIC sea reconocido por el sistema.
\n<\/span><\/p>\n

\"\"
\n<\/span><\/p>\n

El resultado deber\u00eda ser el siguiente, claro dependiendo el circuito ya que el m\u00edo es algo voluminosoJ<\/span>:
\n<\/span><\/p>\n


\n<\/span><\/p>\n

Y ya tenemos nuestro PING\u00dcINO funcionando, ahora necesitamos experimentar cuanto podamos. J<\/span>
\n<\/span><\/p>\n

\n

<\/embed><\/object><\/p>\n


\n<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"

Aunque fue dise\u00f1ado originalmente en LINUX, es mejor comenzar con WINDOWS, se facilita mucho la instalaci\u00f3n y puesta en marcha. Luego si deseamos m\u00e1s potencia…<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[],"_links":{"self":[{"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=\/wp\/v2\/posts\/42"}],"collection":[{"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=42"}],"version-history":[{"count":2,"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=\/wp\/v2\/posts\/42\/revisions"}],"predecessor-version":[{"id":312,"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=\/wp\/v2\/posts\/42\/revisions\/312"}],"wp:attachment":[{"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=42"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=42"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pinguino.walii.es\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=42"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}