Cómo programar PIC 16f84 en linux

Voy a intentar recopilar en un solo sitio toda la información que hay en internet acerca de programar pics en linux


“NO voy a contestar a ningún comentario preguntando sobre cómo piratear ningún tipo de aparato electrónico lease, tarjetas del digital, consolas, etc… no porque no quiera, si no porque no tengo ni idea y como digo, este tutorial lo he hecho a partir de otros de internet y a mi personalmente no me ha dado ningún problema y no se como resolver ningún problema que de..”


¿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 77x50mm

¿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<P16F84.INC>

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

Anuncios
Cómo programar PIC 16f84 en linux

24 comentarios en “Cómo programar PIC 16f84 en linux

  1. piesdefuego dijo:

    Querido D4rkom3n:

    Esto es la ostia!!!No eniendo nada, eres un pro. Solo queria darte la enhorabuena por tu nueva tibia metalica, ya formas parte de los hombres rotos semi Cyborg. Y tambie npor las increibles fotos que hiciste la otra noche.

    Un saludote.

  2. Anda que molon!
    Yo todavia sigo usando el ICProg en Windows… no conocia esta alternativa, asi que me guardo la entrada para ponerla en practica este veranito 🙂

    Saludos!

  3. pos yo todavía “no he tenido tiempo” y no lo he mirado a fondo, pero vamos que la información se graba bien en el chip. Ya me contaras si haces algo chulo!! un saludo

  4. Darkito, eres un monstruo. Me meto en el google ‘programar 16f84’ y la sexta entrada es tu blog…xD bueno, mientras llega mi regalo de ebay voy a ir cacharreando un poco en windows :S Por cierto, si a alguien le interesa, en la web de Microchip se pueden hacer pedidos gratuitos de PICs como el 16f84A

    Un saludete!

  5. juanitux dijo:

    Hola chaval:

    Ante todo felicitaciones por la página. Tengo una duda, al hablar sobre el 16F84 también te refieres al 16F84A? necesito cambiar la directiva INCLUE… 16Fxx
    por 16F84A o el header(.inc) es compatible con la serie `A’ del uChip.

  6. Phot Blogs Deals on Demand

    Phot Blogs Deals on Demand
    Phot Blogs Deals on DemandHaving recently carried out the exercise this article illustrates step-by-step how to get a small business blog up and running in a very short space of time. Blogging has become a viable alternative …

  7. jorge dijo:

    dejense de mamadas sis on principiantes en linux y en pic descargense mplab vercion 5.6 y el noppp para linux o el icprog para linux y dejen de hacerse sus chaquetas mentales con los editores de texto

  8. Mau dijo:

    Hola hermano, ayúdame por favor:
    No entiendo bien tus instrucciones ni donde las metiste, pero me gustaría saber si me puedes mandar todos los pasos para quemar un pic16f628a, es muy parecido al pic16f84 pero mejorado. Tengo un MasterProg como tarjeta programadora.
    Mi correo es aero.msr @hotmail.com.
    gracias

  9. Juan David dijo:

    Saludos AMigos, un favor, necesito que me ayuden, busco un programa que corra en ubunto para programar en asembler, compliarlo y luego grabarlo en un pic 16f84, lo necesito con urgencia, por favor alguien me de un link para emplearlo, tengo un proyecto que terminar lo mas pronto, pero me exigen que sea para ubuntu

  10. Hace nada decidí dar el salto por completo a Debian, y claro, ahora me toca buscar programas Linux equivalentes a los que usaba en Win.

    Ahora me toca buscar todo lo necesario para cacharrear con los Pics, y mira por donde, me encuentro que la guia mas completa hasta ahora la has escrito precisamente tu! jaja. Que pequeño es el mundo. Y que grande eres Darkomen.

    Un saludo, ¡ya nos veremos!

  11. Te re-contesto por aquí de nuevo! jeje

    Así que te has pasado a la zona noble de los S.O….. mírale , que aristócrata el tio XD.
    La cosa de ponerme Linux es que estoy montando una maquina para cacharrear. Sobre todo para usar en cosas de electronica… la idea es que al estar hecha de componentes reciclados, si un dia se me va la pinza y algun puerto sufre un pequeño accidente, no me suponga una gran pena.
    El caso es que es un P4 a 1.6Ghz. Así que tampoco se le puede pedir mucho, con Ubuntu le pesaba un poco el culo, pero con la básica mas básica que he podido (o he sabido) montar de Debian con entorno gráfico, va como un rayo.

    En cuanto a los PICs… pues la verdad es que mezcla. Empece a usarlos por estudios, y me he aficionado, así que ahora lo hago como Hobby. He visto las cosas de Arduino, pero ya me he acostumbrado a usar PICs y se me hace un poco caro un sistema de Arduino, pese a que tiene de todo. También me he estado informando sobre los PICAXE (http://www.rev-ed.co.uk/picaxe/es/index.htm) que tienen buena pinta. Pero no he encontrado ninguna tienda que los vendan, así que no he podido probarlos 😦

    Ahora me queda armarme de valor y atreverme a montar la programadora, porque ya no puedo usar las de la uni fuera del recinto…… jeje

    1. jeje, te recomiendo muuuuuuuuy mucho arduino en serio, te olvidas de todo ese tema de programadores y demás, y la programación más sencilla imposible, 🙂 yo ahorre un poco y me lance a la piscina y es una maravilla en serio 🙂
      Tienes gmail o algo para añadirte? 🙂
      santiago.lopez.pina@gmail.com
      Un salkudo!!

  12. My programmer is trying to persuade me to move to .net from PHP.
    I have always disliked the idea because of the expenses.
    But he’s tryiong none the less. I’ve been using Movable-type on various websites for about
    a year and am concerned about switching to another platform.
    I have heard very good things about blogengine.net. Is there a way I can import all my wordpress posts into it?
    Any help would be really appreciated!

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s