jueves, 28 de febrero de 2008

Programador de pic´s en Linux

¿Qué es un pic?
Un pic, para que todo el mundo lo entienda, es un chip electrónico que podemos programar a nuestro gusto para que haga cosas, en ámbito electrónico claro.El más conocido por su sencillo de uso y su bajo coste es el pic16f84. Más claro en wikipedia.
¿Qué me hace falta?
Lo primero de todo un pic que lo podemos comprar en cualquier tienda de electrónica. Lo segundo un programador para el pic. Esto es un poco más complicado. El programador en concreto para el 16f84 es el t-20. Esto hace años lo podiamos comprar en cualquier tienda de electrónica pero yo he preguntao en casi todas las que conozco (unas 5) y eso ya no lo tienen en stock. Otra opción es mirar por ebay que siempre puede haber uno. Y otra opción y la más barata es hacerselo uno mismo.¿Cómo hago un programador t-20?
Lo primero de todo los esquemas eléctricos son estos:Cara de componentes
Free Image Hosting at www.ImageShack.usCara de pistas
Free Image Hosting at www.ImageShack.us

Y los componentes a usar son:

CN1 Conector hembra 9 pines
C2 Condensador 100uf /16v
C3 Condensador 22uf / 16v
D2 Diodo Zener 5v1
D3, D4, D5,D7 Diodo 1N4148
D6 Diodo Zener 8V2
Q2, Q1 Transistor BC237
Q3 Transistor BC307
R1 Resistencia 10K
R2 Resistencia 1K5
R3 Resistencia 100K
U1 Zocalo 18 pines
U2 Zócalo 8 pines
Circuito impreso 77×50mm

¿Cómo programo el pic?

Una vez que tenemos el programador y el pic es hora de meterle el programa (normalmente fichero .hex). Primero hay que hacer un fichero .asm con cualquier editor de texto, una vez lo tengamos, lo compilamos a un fichero .hex con gpasm (disponible en el paquete gputils).

editando el fichero .asm

Antes de programar el pic hay que editar un poco el fichero .asm para decirle que vamos a usar el pic16f84 y la configuración. Arriba del todo añadimos al fichero .asm las siguientes lineas.Link con fichero p16f84.inc

INCLUDE

LIST P=16F84
__CONFIG _CP_OFF & _WDT_OFF & _XT_OSC

Lo guardamos y ahora si lo compilamos.

$gpasm -p 16f84 fichero.asm

con el parámetro ‘-p 16f84′ le decimos para qué pic queremos el fichero hex.

Una vez compilado tenemos que grabar el .hex en el pic. Para ello usaremos el programa picprog(incluido en los repositorios). Lo primero de todo es borrar el contenido del chip con el comando:

$picprog –erase –burn -d pic16f84 –pic /dev/ttyS0

para luego grabar el fichero .hex que compilamos anteriormente:

$picprog –burn –device=pic16f84 –input led_on.hex –pic /dev/ttyS0

Y si no da ningún error, el pic estará preparado para poder usarlo en el circuito que hayamos diseñado.

Bibliografia:

Recomendada

http://netandtech.wordpress.com/hardware/empezando-con-pics/

Libro Microcontrolador PIC16f84 de la editorial RA-MA (isbn8478976914)
http://crysol.org/node/65
http://acm.escet.urjc.es/documentos/acmlux/html/x303.html
http://www.iearobotics.com/personal/andres/proyectos/picmin/pic1.html

Escrito por darkomen
Archivado en electronica DIY, pic1
  1. Herramientas: Básicamente una fuente de alimentación estable de entre 2 y 5V de poca potencia (los PIC’s consumen muy poco): puedes usar 3 pilas de 1.5V, una fuente de alimentación estabilizada regulable, etc. Además te sería útil un polímetro, unos alicates y unas pinzas.
  2. Software: GNU/Linux. A ser posible Debian. Por mi parte, prefiero hacer las cosas con herramientas libres. Existen muchas utilidades libres disponibles. Si no tienes Debian pero si otro GNU/Linux, puedes buscar los binarios empaquetados para tu distribución o las fuentes para compilarlas tu mismo. Si usas Debian, todas las herramientas están disponibles en los repositorios oficiales. Si no tienes GNU/Linux, lo siento por ti :-(. Tienes IDE’s de desarrollo disponibles, como el MPLAB de Microchip para Windows, o el IcProg, e incluso las gputils están portadas para Windows y Mac OS X, pero yo no te puedo dar soporte para ninguna porque yo no uso Windows :-). Las herramientas son:
    1. GPUTILS
    2. GPSIM
    3. (G)PICP

    Cada una se explicará en su momento. Algo que quiero reseñar es que todas estas herramientas se pueden englobar bajo GNUPIC, en donde puedes encontrar muchos proyectos libres para trabajar con PICS, desde programadores (hardware y software), simuladores… hasta librerías e IDE’s.

    Si visitas la página de GNUPIC verás que decantarse por un entorno de trabajo libre es una buena opción. Recuerda que siempre puedes instalarte GNU/Linux

No hay comentarios: