Está en la página 1de 91

Rep Argentina: $15

México: $30 M.N. Nº de Colección 7


EDITORIAL
QUARK Otros Países: U$S 6
Editorial - Editorial - Editorial - Editorial

PROYECTOS CON
MICROCONTROLADORES
Nº 7
Director de la Colección Club Saber Electrónica
PIC Y PICAXE
Ing. Horacio D. Vallejo
Jefe de Redacción
Pablo M. Dodero Sin dudas, los microcontroladores son las verdaderas “estrellas” de la
Club Saber Electrónica es una publicación de electrónica actual, especialmente en lo que se refiere a equipos de consu-
Saber Internacional SA de CV de México y
Editorial Quark SRL de Argentina
mo, electrónica educativa y proyectos.
En los últimos años, en Saber Electrónica explicamos el funcionamien-
Editor Responsable en Argentina y México:
Ing. Horacio D. Vallejo to de diferentes familias (Motorola, National, Microchip, etc) y diseñamos
Administración Argentina: proyectos con circuitos integrados fáciles de conseguir en el mercado local
Teresa C. Jara
Administración México: y no muy caros. Siguiendo esta línea, prestamos especial atención a los
Patricia Rivero Rivero PICs de Microchip, ya que son ƒáciles de manejar, “muy duros” a la hora
Comercio Exterior Argentina:
Hilda Jara de su manipulación (tienen muchas protecciones) y la mayoría de las he-
Comercio Exterior México: rramientas son gratuitas. Tanta atención prestamos a estos microcontrola-
Margarita Rivero Rivero
Director Club Saber Electrónica: dores, que publicamos hasta la fecha 5 libros de texto que hablan sobre
Luis Leguizamón ellos, haciendo hincapié en el PIC16F84 por ser el componente más difun-
Responsable de Atención al Lector:
Alejandro A. Vallejo dido en Internet.
Coordinador Internacional Ahora bien, para trabajar con los PICs de Microchip, el lector debe po-
José María Nieves
Publicidad ser un circuito cargador con su correspondiente software de gestión, debe
Argentina: 4301-8804 - México: 5839-5277 saber manejar un entorno de desarrollo que no se encuentra en español y
Staff tiene que aprender a programar en assembler (lenguaje de instrucciones),
Victor Ramón Rivero Rivero
Ismael Cervantes de Anda lo cual muchas veces puede resultar engorroso.
Olga Vargas Hace aproximadamente 2 años y medio descubrí un sistema microcon-
Natalia Ferrer
Valeria Marino trolador con todas las ventajas de Microchip y mucho más, nos referimos
Diego Pezoa a PICAXE, un chip “especial” que facilita aún más la tarea del técnico pro-
Gastón Navarro
Fernando Ducach yectista y armador. Los microcontroladores PICAXE son PICs comunes (he-
Areas de Apoyo chos por Microchip) a los que se le ha grabado un pequeño programa inter-
Catalina Jara no, denominado firmware (firmware o programación en firme, es un
Teresa Ducach
Diego Bougliet bloque de instrucciones de programa para propósitos específicos, grabado
Fernando Flores en una memoria tipo ROM, que establece la lógica de más bajo nivel que
Claudio Gorgoretti
Paula Vidal controla los circuitos electrónicos de un dispositivo de cualquier tipo) para
Raúl Romero que no precise de un circuito externo para ser grabado y para que el pro-
Javier Isasmendi
Gustavo Zurwerra grama a grabar pueda ser escrito en BASIC y hasta en diagrama de flujo.
Internet: www.webelectronica.com.ar Y si todo esto “ya es un lujo”, el utilitario que permite hacer todo esto, y
Web Manager: Luis Leguizamón que se conecta entre la placa donde esta el PICAXE y la computadora con
Club Saber Electrónica. Fecha de publicación: julio de 2005. un cable muy simple de 3 hilos, está en español y es gratuito.
Publicación mensual editada y publicada por Editorial Como ya es posible conseguir los PICAXE en las principlaes plazas de
Quark, Herrera 761 (1295) Capital Federal, Argentina
(005411-43018804), en conjunto con Saber Internacional SA América Latina, decidimos editar esta obra, que contiene mucha informa-
de CV, Av. Moctezuma Nº 2, Col. Sta. Agueda, Ecatepec de ción útil, explica todos los pasos que debe saber para trabajar con PICAXE
Morelos, México (005255-58395277), con Certificado de Lici-
tud del título (en trámite). Distribución en México: REI SA y desarrolla una serie de proyectos completos para que monte equipos su-
de CV. Distribución en Argentina: Capital: Carlos Cancella- mamente útiles y que de no ser por PICAXE, serían muy costosos.
ro e Hijos SH, Gutenberg 3258 - Cap. 4301-4942 - Interior:
Distribuidora Bertrán S.A.C. Av. Vélez Sársfield 1950 - Cap. – Como puede observar, son muchas ventajas y muy pocas desventajas
Distribución en Uruguay: Rodesol SA Ciudadela 1416 – (sinceramente no se me ocurre ninguna), por lo tanto ¡Manos a la Obra!
Montevideo, 901-1184 – La Editorial no se responsabiliza por
el contenido de las notas firmadas. Todos los productos o Me despido comentándoles que el próximo número de la colección Club
marcas que se mencionan son a los efectos de prestar un ser- Saber Electrónica estará dedicado al funcionamiento, mantenimiento y re-
vicio al lector, y no entrañan responsabilidad de nuestra par-
te. Está prohibida la reproducción total o parcial del material paración de los televisores de útima generación, así que “resérvela ya a
contenido en esta revista, así como la industrialización y/o
comercialización de los aparatos o ideas que aparecen en los
su canillita (voceador) amigo”.
mencionados textos, bajo pena de sanciones legales, salvo ¡Hasta el mes próximo!
mediante autorización por escrito de la Editorial.
Revista Club Saber Electrónica, ISSN: 1668-6004
ISBN Nº: 987-1116-53-5 Ing. Horacio D. Vallejo
PROYECTOS CON
MICROCONTROLADORES
PIC Y PICAXE
INDICE DE LA OBRA COMPLETA

PICs: Diagrama en Bloques, Carga y Programación ..............................3 Cómo se leen las entradas analógicas .........................................................50
Introducción ..................................................................................................3 Programación por organigramas o diagramas de flujo ...............................51
Descripción de sus pines...............................................................................3 Dibujando organigramas.............................................................................52
Organización de la memoria .........................................................................4 Uniendo bloques .........................................................................................53
La memoria EEPROM o memoria de programa...........................................4 Simulación de pantalla................................................................................53
La memoria RAM.........................................................................................4 Convirtiendo organigramas.........................................................................53
Registros internos..........................................................................................5 Utilizando símbolos ....................................................................................53
Pero...¿Qué es un PIC? .................................................................................7 Guardando e imprimiendo organigramas....................................................53
Diagrama en bloques del PIC16F84 .............................................................8 Sistemas de números...................................................................................54
Programación y carga de PICs....................................................................13 Visualizando cifras analógicas en el display de 7 segmentos .....................54
Habilitación del reset ..................................................................................15 Controlando motores paso a paso ...............................................................55
Circuito de vigilancia (perro guardián).......................................................16 Subrutinas ...................................................................................................56
Quark Pro2: circuito cargador de PICs y mucho más.................................16 El circuito del entrenador............................................................................57

Los Microcontroladores PICAXE: un sistema muy fácil de programar que Proyectos Completos con Microcontroladores PICAXE........................59
no precisa de costosos cargadores y en los que el programa puede hacerse Armado y programación de una mascota virtual ........................................59
en BASIC o en diagrama de flujo ...........................................................21 Diagrama de bloques de un sistema microcontrolado ................................59
Introducción ...............................................................................................21 Cómo programar el sistema PICAXE.........................................................62
Ventajas del sistema PICAXE.....................................................................22 El diagrama y el circuito impreso de la mascota ........................................64
El sistema PICAXE.....................................................................................24 Probando el circuito ....................................................................................64
El editor de programas................................................................................24 Programa 1..................................................................................................66
Comenzando a trabajar con PICAXE .........................................................27 Programa 2..................................................................................................66
Entrenador para PICAXE-18 ......................................................................30 Armado y programación de una central de alarma .....................................68
Primeras prácticas con PICAXE.................................................................33 Diagrama de bloques del sistema de alarma...............................................68
Uso y prueba de leds: primeros programas en BASIC ...............................33 Algunos conceptos para recordar................................................................69
Uso y prueba de timbres y zumbadores ......................................................35 Prueba y uso de transistores........................................................................69
Prueba y uso de sensores digitales..............................................................37 El circuito de la alarma ...............................................................................71
Prueba y uso de fotorresistencias................................................................38 Algunas consideraciones para principiantes ...............................................72
Ideas de programación ................................................................................76
Trabajando con Microcontroladores PICAXE de 18 pines....................41 Programa 1..................................................................................................76
Más sobre el sistema PICAXE....................................................................41 Programa 2..................................................................................................76
Entrenador PICAXE-18..............................................................................43 Armado y programación de un sistema de luces de seguridad ...................77
Preparando el tablero tutorial......................................................................43 Utilizando leds ............................................................................................78
El software gratuito para trabajar con PICAXE .........................................44 El circuito del juego de luces de seguridad.................................................79
Ejecutando un programa de muestra...........................................................44 Programa 1..................................................................................................82
Instrucciones para uso en Windows............................................................44 Programa 2..................................................................................................83
Aprendiendo a hacer programas en BASIC................................................45 Armado y programación de un juego electrónico.......................................83
Utilizando el comando Symbol...................................................................45 Algunas cosas para tener en cuenta ............................................................84
El circuito del “entrenador” PICAXE-18 ...................................................46 El circuito del juego electrónico .................................................................84
Utilizando Bucles For...Next.......................................................................47 Consejos útiles para el principiante ............................................................85
Controlando la velocidad de un motor........................................................47 Resumen de microcontroladores PICAXE.. ...............................................89
Uso de timbres y zumbadores electrónicos en el sistema PICAXE............48 Circuito serie de descarga ...........................................................................89
Uso de entradas con sensores digitales .......................................................49 PICAXE, preguntas más frecuentes............................................................90
Uso de entradas con sensores analógicos ...................................................50

2 CLUB SABER ELECTRONICA


PIC S :
D IAGRAMA EN B LOQUES , C ARGA Y
P ROGRAMACIÓN
Introducción Las características más representativas del
PIC16F84 son:
Con este capítulo pretendo introducir al lector
en el mundo de la programación de microcontrola- Opera a una frecuencia máxima de 10MHz
dores PIC de forma práctica y sencilla. Aclaramos Posee 1kbyte de memoria EEPROM para nues-
que Editorial Quark ha editado varios textos sobre tro programa
los microcontroladores de Microchip y que este li- Tiene 68 bytes (de 8 bits) de memoria RAM adi-
bro está dedicado a los microcontroladores PICA- cionales
XE que son PICS que tienen grabados un pequeño También tiene 64 bytes de memoria EEPROM
programita (firmware) para que sean más fáciles de para datos (no volátiles)
programar que los PICs y sin necesidad de quitar- Se puede operar con sólo 35 instrucciones
los de la placa de circuito impreso donde están ope- Dispone de 13 pines de entrada/salida (un
rando. puerto completo de 8 bits + otro de 5 bits)
Se dan por sabidos algunos conocimientos muy Tiene un timer/contador de 8 bits
básicos sobre electrónica digital. Hablaremos de
Instrucciones, registros de memoria RAM, memo-
ria EEPROM (un tipo de ROM), de niveles lógicos Descripción de sus Pines
"0" ó "1" y cosas por el estilo.
Basamos esta introducción en el PIC16F84 por En la figura 1 podemos apreciar el diagrama de
ser uno de los componentes más conocidos y que patas o terminales del PIC16F84, la función de ca-
mayor cantidad de proyectos tiene en la web. da pin es la siguiente:
Un PIC (Programmable Integrated Circuit =
Circuito Integrado Programable) es un microcon- RA0, RA1, RA2, RA3 y RA4: son los pines del
trolador, una especie de "computadora en miniatu- puerto A
ra" que podremos programar a voluntad. En su in- RB0, RB1, RB2, RB3, RB4, RB5, RB6 y RB7:
terior posee un microprocesador, una memoria son los pines del puerto B.
RAM (volátil) donde guardaremos las variables y MCLR: Pin de reseteo del PIC, cuando se pone
manejaremos los datos (de hecho los puertos son a "0" el PIC se resetea.
direcciones de memoria de este bloque), una me- Vdd y Vss: pines de alimentación (Vdd 5V y Vss
moria EEPROM (no volátil) donde guardaremos a masa)
nuestro programa, un timer o contador que nos fa- OSC1/CLKIN y OSC2/CLKOUT: son para el
cilitará algunas tareas, y puertos para comunicarse oscilador. Los tipos de osciladores más usados son
con el exterior y algunas otras cosas… el XT (cristal de cuarzo) y el RC (resistencia y con-
densador), el modo de conexionado para cada uno
de los dos osciladores mencionados se muestra en
Figura 1
la figura 2.

Para el oscilador a cristal C1 = C2 = 33pF y la


frecuencia del cristal debe ser inferior a 4MHz.
Para el oscilador RC C1 debe ser superior a
20pF e inferior a 10nF y R1 debe estar comprendi-
da entre 3k3 y 100kΩ
Cabe aclarar que el oscilador también puede
funcionar con un resonador o con un filtro cerámi-

CLUB SABER ELECTRÓNICA 3


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

co y hasta se le puede “inyectar” una señal por la Figura 2


pata 16, quedando libre (en ese caso) el terminal
15.

Organización de la Memoria

En primer lugar tenemos que distinguir clara-


mente entre tres tipos de memoria, a saber:

1) La memoria EEPROM donde almacenare-


mos el programa que haremos, esta memoria solo
podrá ser leida por el PIC (el PIC va leyendo las
instrucciones del programa almacenado en esta la 00h (dirección 00 expresada en hexadecimal)
memoria y las va ejecutando). Al apagar el PIC es- hasta la 0Bh están ocupadas por registros del PIC,
ta memoria no se borra. por lo que tendremos que empezar a guardar nues-
tras variables a partir de la dirección 0Ch.
2) La memoria RAM en cuyos registros se irán Se puede acceder al resto de registros para cam-
almacenando los valores de las variables que noso- biar la configuración o el estado del PIC.
tros carguemos y cuando nosotros deseamos (por Debemos agregar a este cuadro el registro más
programa), al apagar el PIC esta memoria se borra. utilizado de todos, el acumulador (W) o registro de
trabajo. No se trata de un registro propiamente di-
3) La memoria EEPROM para datos, es un es- cho ya que no tiene dirección, pero se usa constan-
pacio de memoria EEPROM en la que se pueden temente para mover datos y dar valores a las varia-
guardar variables que queremos conservar aunque bles (registros). Por ejemplo, si queremos copiar la
se apague el PIC. No se tratará aquí por ser una información del registro 0Ch en el registro 0Dh no
memoria mas difícil de emplear.

La memoria EEPROM o memoria de programa Figura 3


En la figura 3 podemos observar la “estructura”
de esta memoria.
El espacio marcado como "User Memory Spa-
ce" es el espacio de memoria donde irá nuestro pro-
grama, comprende las direcciones de memoria des-
de la 0000h hasta la 3FFh (3FFh en decimal es
1023, más la dirección 0000h hacen 1024 direccio-
nes, es decir, 1Kbyte)
"Reset Vector" es la primera dirección a la que
se dirige el PIC al encenderlo o al resetearlo.
"PC" y los "Stack Level" son empleados por el
PIC y nosotros no tenemos acceso a ellos.

La memoria RAM
La memoria RAM (figura 4) se usa para alma-
cenar las variables, pero también se almacenan una
serie de registros que configuran y controlan el
PIC.
Esta memoria está dividida en dos bancos, el
banco 0 y el banco 1, antes de acceder a un registro
de esta memoria tenemos que preguntarnos en qué
banco estamos, generalmente se trabaja en el ban-
co 0, ya veremos más adelante como cambiamos de
banco de memoria.
Fijándonos en el banco 1, las direcciones desde

4 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PIC: P EQUEÑAS C OMPUTADORAS M ULTIPROPÓSITO

apunta el registro FSR (dir. 04h) que veremos más


adelante.
TMR0 (Timer/contador): Dirección 01h, Aquí
se puede ver el valor en tiempo real del Timer/con-
tador. También se puede introducir un valor y alte-
rar así el conteo. Este conteo puede ser interno
(cuenta ciclos de reloj) o externo (cuenta inpulsos
introducidos por RA4).
PCL (Parte baja del contador de programa): Di-
rección 02h, Modificando este registro se modifica
el contador de programa, este contador de progra-
ma es el que señala al PIC en qué dirección (de EE-
PROM) tiene que leer la siguiente instrucción. Es-
to se utiliza mucho para consultar tablas (ya vere-
mos más adelante).
STATUS: Dirección 03h, éste es uno de los re-
gistros más importantes y el que más va a utilizar.
Hay que analizar el funcionamiento de este registro
bit a bit:
CARRY, Dirección STATUS,0 (bit 0):
bit de desbordamiento. Este bit se pone a
"1" cuando la operación anterior ha reba-
sado la capacidad de un byte. Por ejem-
plo, si sumo dos números y el resultado no
cabe en 8 bits el CARRY se pone a "1", Pa-
sa lo mismo cuando resto dos números y
el resultado es un número negativo. Se
puede usar para saber si un número es
mayor que otro (restándolos, si hay aca-
rreo es que el segundo era mayor que el
primero). Una vez que este bit se pone a
Figura 4 "1" no se baja solo (a "0"), hay que hacerlo
por programa si queremos volverlo a utili-
zar.
podremos hacerlo directamente, deberemos usar DC (digit carry), Dirección STATUS,1
una instrucción para cargar el valor del registro (bit 1): lo mismo que el anterior, pero esta
0Ch en el acumulador y después otra instrucción vez nos avisa si el número no cabe en cua-
para cargar el valor del acumulador en el registro tro bits.
0Bh. Z (zero), Dirección STATUS,2 (bit 2):
Se pone a "1" si la operación anterior ha si-
do cero. Y pasa a "0" si la operación ante-
Registros Internos rior no ha sido cero. Se usa para compro-
bar la igualdad entre dos números (restán-
A continuación se explican todos los registros dolos, si el resultado es cero ambos núme-
de configuración y control de la memoria RAM. ros son iguales).
Estos registros se usan para controlar los pines del PD (Power - Down bit), Dirección STA-
PIC, consultar los resultados de las operaciones de TUS,3 (bit3) se pone a "0" después de eje-
la ALU (unidad aritmética lógica), cambiar de ban- cutar la instrucción SLEEP*, se pone a "1"
co de memoria, etc. después de ejecutar la instrucción CLR-
Los registros ubicados en el BANCO "0" son WDT* o después de un power-up*.
los siguientes: TO (Timer Up), Dirección STATUS,4
(bit4) se pone a "0" cuando se acaba el
INDF (direccionamiento indirecto): Dirección tiempo del WATCHDOG*, Se pone a "1"
00h, sirve para ver el dato de la dirección a la que después de ejecutar las instrucciones,

CLUB SABER ELECTRÓNICA 5


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

CLRWDT* o SLEEP* o después de un po- programa se compone de 13 bits, los 8 bits de me-
wer-up*. nor peso se pueden modificar con PCL (dir. 02h) y
RP0 y RP1 (selección de banco), Di- los 5 bits de mayor peso se pueden modificar con
rección STATUS,5 y STATUS,6. Como el PCLATH.
PIC16F84 sólo tiene dos bancos de memo- INTCON (controla las interrupciones), Direc-
ria, el RP1 no se usa para nada, la selec- ción 0Bh. Se estudia bit a bit:
ción del banco se hace mediante RP0 RBIF (Flag de interrupción por cam-
(STATUS,5), si está a "0" nos encontramos bio de PORTB) Dirección INTCON,0 (bit 0)
en el banco 0, y si está a "1" nos encontra- se pone a "1" cuando alguno de los pines
mos en el banco 1. RB4, RB5, RB6, o RB7 cambia su estado.
IRP, Dirección STATUS,7, En este PIC Una vez que está a "1" no pasa a "0" por sí
no se usa para nada. mismo: hay que ponerlo a cero por progra-
ma.
FSR (Puntero), Dirección 04h, se usa para di- INTF (Flag de interrupción de RB0) Di-
reccionamiento indirecto en combinación con el re- rección INTCON,1. Si está a "1" es que ha
gistro INDF (dir. 00h): se carga la dirección del re- ocurrido una interrupción por RB0, si está
gistro que queremos leer indirectamente en FSR y a "0" es que dicha interrupción no ha ocu-
se lee el contenido de dicho registro en INDF. rrido. Este bit es una copia de RB0.
PORTA (Puerto A), Dirección 05h. Con este TOIF (Flag de interrupción por desbor-
registro se puede ver o modificar el estado de los damiento de TMR0) Dirección INTCON,2.
pines del puerto A (RA0 - RA4). Si un bit de este Cuando TMR0 se desborda este Flag avi-
registro está a "1" también lo estará el pin corres- sa poniéndose a "1". Poner a "0" por pro-
pondiente a ese bit. El que un pin esté a "1" quiere grama.
decir que su tensión es de 5V, si está a "0" su ten- RBIE (Habilita la interrupción por cam-
sión es 0V. bio de PORTB) Dirección INTCON,3. Si es-
Correspondencia: tá a "1" las interrupciones por cambio de
RA0 ==> PORTA,0 PORTB son posibles.
RA1 ==> PORTA,1 INTE (Habilita la interrupción por RB0)
RA2 ==> PORTA,2 Dirección INTCON,4. Si lo ponemos a "1" la
RA3 ==> PORTA,3 interrupción por RB0 es posible
RA4 ==> PORTA,4 TOIE (Habilita la interrupción por des-
bordamiento de TMR0) Dirección INT-
PORTB (Puerto B), Dirección 06h igual que CON,5. Si este bit está a "1" la interrupción
PORTA pero con el puerto B por desbordamiento de TMR0 es posible.
Correspondencia: EEIE (Habilita la interrupción por fin de
RB0 ==> PORTB,0 escritura en la EEPROM de datos) Direc-
RB1 ==> PORTB,1 ción INTCON,6. Cuando este bit está a "1"
RB2 ==> PORTB,2 la interrupción, cuando acaba la escritura
RB3 ==> PORTB,3 en la EEPROM de datos, es posible.
RB4 ==> PORTB,4 GIE (Habilita las interrupciones global-
RB5 ==> PORTB,5 mente) Dirección INTCON,7. Este bit per-
RB6 ==> PORTB,6 mite que cualquier interrupción de las an-
RB7 ==> PORTB,7 teriores sea posible. Para usar alguna de
las interrupciones anteriores hay que ha-
Dirección 07h, No utilizada por este PIC. bilitarlas globalmente e individualmente.

EEDATA, Dirección 08h. En este registro se Veamos ahora qué sucede con el banco 1. Vea
pone el dato que se quiere grabar en la EEPROM en la figura 4 que los registros del banco 0 y los del
de datos. banco 1 tienen direcciones distintas, en realidad po-
EEADR, Dirección 09h. En este registro se po- demos utilizar las mismas direcciones para referir-
ne la dirección de la EEPROM de datos donde que- nos a registros que están en uno u otro banco, el
remos almacenar el contenido de EEDATA. PIC las diferenciará sin problemas gracias al bit de
PCLATH, Dirección 0Ah. Modifica la parte al- selección de banco (RP0). Por ejemplo, la direc-
ta del contador de programa (PC), el contador de ción 05h se refiere a PORTA si estamos en el ban-

6 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PIC: P EQUEÑAS C OMPUTADORAS M ULTIPROPÓSITO

PCL, Dirección 02h, igual que en el banco 0


STATUS, Dirección 03h, Igual que en el banco 0
FSR, Dirección 04h, Igual que en el banco 0
TRISA, Dirección 05h, Configura el puerto A
como entrada o salida. Si un bit de este registro se
pone a "0" el pin correspondiente en el puerto A se-
rá una salida, por el contrario, si se pone a "1" el pin
correspondiente en el puerto A será una entrada.
TRISB, Dirección 06h, Igual que el anterior pe-
ro con el puerto B
Dirección 07h, No usada en este PIC
EECON1, Dirección 08h, Controla la lectura y
escritura en la EEPROM de datos. Se estudia bit a
Fig. 5 bit:
RD, Dirección EECON1,0 (bit 0) A "1" inicia-
co 0 y a TRISA si estamos en el banco 1. Sabiendo mos el ciclo de lectura, cuando acaba el ciclo se po-
esto, damos a continuación la descripción de los re- ne a "0".
gistros del BANCO 1: WR, Dirección EECON1,1 (bit 1) A "1" indica-
INDF, Dirección 00h, Igual que en el Banco 0 mos que comienza el ciclo de escritura, cuando aca-
OPTION, Dirección 01h, (configuración del ba el ciclo se pone a "0".
prescaler, Timer, y alguna cosa más) Se estudia bit WREN, Dirección EECON1,2 (bit 2) si lo po-
a bit: nemos a "1" se permite la escritura, a "0" no se per-
PS0, PS1 y PS2 (Bits del 0 al 2) Confi- mite.
guración del preescaler: El preescaler es WRERR, Dirección EECON1,3 (bit 3) error de
un divisor de pulsos que está a la entrada escritura, si está a "1" indica que no se ha termina-
del Timer-contador. El prescaler divide el do el ciclo de escritura.
número de pulsos que le entran al timer- EEIF, Dirección EECON1,4 (bit 4) interrup-
contador o al Wachtdog. El factor de divi- ción de ciclo de escritura de la EEPROM, si está a
sión es el que se muestra en la tabla de la "1" indica que el ciclo de escritura ha terminado,
figura 5 (según los valores de PS2, PS1 y hay que ponerlo a "0" por programa.
PS0 respectivamente) Bits del 5 al 7 no se utilizan.
PSA, Dirección OPTION,3. Bit de asig- EECON2, Dirección 09h, se utiliza para la es-
nación de prescaler: si está a "1" el presca- critura en la EEPROM de datos como medida de
ler se asigna a WDT (Wachtdog), si está a seguridad: para poder guardar algo en la EEPROM
"0" se asigna al TMR0 hay que cargar el valor 55h en este registro.
TOSE, Dirección OPTION,4. Bit de se- PCLATH, Dirección 0Ah, igual que en el ban-
lección del tipo de flanco para TMR0. A "1" co 0.
se incrementa TMR0 por flanco descen- INTCON, Dirección 0Bh, igual que en el ban-
dente de RA4, a "0" se incrementa TMR0 co 1.
por flanco ascendente de RA4.
TOCS, Dirección OPTION,5. Selecciona
la entrada de reloj de TMR0. A "1" la entra- ¿PERO... QUÉ ES UN PIC?
da de reloj de TMR0 es por flanco de la pa-
tilla RA4, a "0" la entrada de reloj de TMR0 Los circuitos integrados programables (Pro-
es por ciclo de reloj interno. grammable Integrated Circuits = PIC) son compo-
INTEDG, Dirección OPTION,6. Tipo de nentes sumamente útiles en la Electrónica de Consu-
flanco para la interrupción por RB0: A "1" mo. Aún cuando son conocidos desde hace más de
la interrupción será por flanco ascendente, veinte años, existen en la actualidad nuevos tipos que
a "0" la interrupción será por flanco decen- cumplen con una serie de requisitos y características
dente. sumamente útiles. Como una primera aproximación
RBPU, dirección OPTION,7. Carga Pull- podemos definir a un PIC como “un chip que me per-
Up en puerto B. A "0" todas las salidas del mite obtener un circuito integrado a mi medida”, es
puerto B tendrán una carga de pull-Up in- decir puedo hacer que el PIC se comporte como un
terna. procesador de luminancia o un temporizador o cual-

CLUB SABER ELECTRÓNICA 7


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

quier otro sistema mediante un programa que le gra-


bo en una memoria ROM interna.
Los microcontroladores PIC son en el fondo pro-
cesadores similares a otros tipos, como por ejemplo
la familia de los microprocesadores X86, 80486,
Pentium y muchos otros que usan una arquitectura
interna del tipo Von Neumann. En este tipo de arqui-
tectura, los datos y la memoria del programa se en-
cuentran en el mismo espacio de direcciones.
En realidad, un microprocesador y un micro-
controlador no son la misma cosa. Los PICs son
microcontroladores, es decir, una unidad que posee
en su interior al microprocesador y a los elementos
indispensables para que pueda funcionar como Figura 6
una minicomputadora en un solo chip.
Un microprocesador es solamente la unidad cen-
tral de procesos o CPU, la memoria, los puertos y to- tegrado analógico, tiene entradas, salidas y algunos
dos los demás periféricos son exteriores. La progra- componentes exteriores necesarios para procesar las
mación de un microprocesador es, por lo tanto, una señales de entrada y convertirlas en las señales de sa-
tarea compleja porque deben controlarse todos estos lida. El 16F84 requiere un cristal con dos capacito-
dispositivos externos. res y como mínimo un resistor para el reset. Por su-
Un microcontrolador integra la CPU y todos los puesto necesita una tensión de fuente de 5V (VDD)
periféricos en un mismo chip. El programador se de- aplicada con respecto al terminal de masa (VSS). Po-
sentiende de una gran cantidad de dispositivos y se see dos puertos de salida, el A y el B, cuyos termina-
concentra en el programa de trabajo. Esta circunstan- les son marcados RA0 al RA4 y RB0 al RB7. Estos
cia da lugar a una gran pérdida de tiempo porque los puertos pueden ser programados como de entrada o
datos tienen que ser retirados de la memoria y lleva- de salida. El terminal 4 opera como reset, pero tam-
dos a la CPU (Central Processor Unit) y viceversa. bién cumple funciones de carga de memoria de pro-
Esto significa que la computadora dedica la mayor grama cuando es excitado con pulsos de 15V. El ter-
parte del tiempo al transporte de datos de ida o de minal RA4 (pata 3) también tiene funciones como
vuelta, en lugar de usar este tiempo para trabajar so- entrada de un temporizador y RBO (pata 6) cumple
bre los datos. también funciones como entrada de interrupción.
Los PICs emplean un conjunto de instrucciones
del tipo RISC (Reduced Instruction Set Computer).
Con el RISC se suele ejecutar la mayoría de las ins- Diagrama en Bloques del PIC16F84
trucciones con un solo pulso del clock. Con las ins-
trucciones que se usan en otros equipos del tipo Ahora bien, la mayoría de los microcontrolado-
CISC (Complex Instruction Set Computer), se lo- res (sean de Microchip, National, Motorola, Philips,
gran instrucciones más poderosas, pero a costa de etc.) se comportan de forma similar, por ello nos va-
varios ciclos del clock. En el bien conocido procesa- mos a referir a los microcontroladores PIC16F84 cu-
dor 68HC11 de Motorola, se requieren a veces, has- ya arquitectura interna puede observarse en la figura
ta 5 ciclos del clock para ejecutar una instrucción. 7. Observe primero los bloques externos. Existe un
A los fines prácticos nos vamos a referir a los mi- cristal que se conecta en OSC1 y OSC2 para generar
crocontroladores como bloques que poseen una me- el CLOCK del sistema. Luego una señal de entrada
moria de programa, que es el lugar donde deben alo- llamada MCLR negada, que es un nombre de fanta-
jarse los datos que le indiquen al chip qué es lo que sía para nuestro conocido RESET (debido a que esa
debe hacer; una memoria de datos donde ingresen pata tiene un doble uso) y, por último, dos puertos
las señales que debe procesar el programa, una uni- paralelos de I/O (entrada o salida) llamados puerto A
da aritmética y lógica donde se desarrollen todas las y puerto B. Una de las patas del puerto A puede ser
tareas, una unidad de control que se encargue de su- utilizada como entrada de interrupciones (esta pata
pervisar todos los procesos y puertos de entrada y sa- especial hace que el microprocesador deje de reali-
lida para que el PIC tenga contacto con el exterior zar la tarea que estaba ejecutando y pase a realizar
(figura 6). otra tarea alternativa; cuando la termina vuelve a su
Un microcontrolador, como cualquier circuito in- programa original).

8 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PIC: P EQUEÑAS C OMPUTADORAS M ULTIPROPÓSITO
Figura 7
CLUB SABER ELECTRÓNICA 9
P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Analicemos el bloque más grande (temporizado- de instrucción del loop secundario en otro registro de
res), en éste observamos un grupo de bloques dedi- la pila.
cados a mejorar el funcionamiento, pero sin influir Analicemos ahora la sección inferior derecha. En
directamente en el flujo de señales. Vemos un tem- ese sector se ubican los bloques responsables de
porizador de encendido, un temporizador de arran- efectuar operaciones matemáticas y lógicas binarias;
que del oscilador de CLOCK, un circuito de reset y recordemos que el nombre ALU proviene de Aritme-
un circuito llamado de vigilancia o WATCHDOG. tic Logic Unite (unidad arimética y lógica). En este
Los dos primeros bloques procuran un arranque or- sector es imprescindible utilizar un registro, ya que
denado para no producir una carga al mismo tiempo una operación aritmética o lógica siempre se efectúa
sobre la fuente. Por último, existe un circuito con un entre dos números. Los números binarios que deben
nombre curioso: “perro guardián”. Su función es es- procesarse se toman de la memoria de datos, el pri-
tar vigilante el máximo de tiempo que tarda el micro- mero se acumula en el registro de trabajo o registro
procesador en completar su programa (o mejor sería W (de Work = trabajo) el segundo es el presente en
decir, la derivación más larga de su programa) y en el instante en que se invoca la memoria de datos. Co-
caso de superarse ese tiempo, provocar un reset au- mo las operaciones pueden ser encadenadas (cuando
tomático porque el microprocesador se quedó traba- el resultado sirve como operando de la siguiente
do en alguna parte de su programa. También se dice operación, tal como el caso de un producto) el regis-
que el microprocesador se quedó colgado o congela- tro W tiene un retorno a la ALU.
do. Vemos además que la ALU está comandada por
Este bloque de circuitos no trabaja independien- el bloque MUX (MUltipleXador). En efecto, la ALU
temente sino que requiere conexiones al exterior y al requiere que se le envíen números para procesar que
interior del dispositivo. Por ejemplo, no siempre son le lleguen desde la memoria de datos, pero antes se
utilizados y es el programa quien determina su utili- la debe predisponer para que efectúe la operación re-
zación y además ajusta sus parámetros. Esto se rea- querida (comparación, rotación de dígitos, etc.).
liza a través del bloque de control o decodificador de El registro de estado o estatus colabora durante
instrucciones. las operaciones matemáticas. Piense cómo opera Ud.
Analicemos ahora la sección de arriba a la iz- para realizar una resta: primero ubica el primer nú-
quierda en donde observamos la memoria de progra- mero, luego el segundo y después comienza a anali-
ma, el contador de programa, el registro de instruc- zar los bits menos significativos (las unidades), pero
ciones y la pila o STACK de 8 niveles. Cuando ha- si el número de arriba es menor que el número de
blamos de registros nos referimos a pequeñas unida- abajo, entonces toma prestado de la columna de las
des de memoria transitoria, construida por lo general decenas, luego debe recordar esto porque el número
con un registro de desplazamiento como los analiza- de arriba en la columna de las decenas se redujo en
dos en “el rey micro”. Son memorias volátiles que se una unidad. En realidad, aunque se trate de una ope-
utilizan para guardar información por un tiempo mí- ración entre dos números su ejecución requiere guar-
nimo, con el fin de realizar una operación compleja dar lo que se llama acarreo en otro registro y éste no
de varios pasos. es otra cosa más que el registro STATUS.
El contador de programa es el responsable de que El PIC16C84 contiene además de todo lo visto,
el microprocesador vaya analizando las instruccio- una memoria RAM de registros que puede ser llama-
nes en orden ascendente. Este guarda el número de da desde el registro de instrucción a través de un
instrucción en el STACK y la instrucción misma la multiplexador de direcciones. Esta sección sólo se
pasa al registro de instrucciones, desde donde se en- utiliza en desarrollos avanzados. Ahora bien, un mi-
vía al resto del microprocesador. El STACK es, en crocontrolador sin programa no sabe hacer nada, es
realidad, una pila de registros (en nuestro ejemplo como un niño recién nacido; tiene algunos reflejos
hay 8), debido a que el programa puede tener deriva- condicionados como el de succión que le permite ali-
ciones (en la jerga LOOPS, rulos o subprogramas). mentarse pero no sabe hacer más que eso. Nosotros
Cuando se termina de ejecutar un loop se debe vol- deberemos enseñarle a realizar acciones y lo vamos
ver al mismo punto del programa en donde se había a hacer como a un bebé, paso a paso. Su capacidad
producido la bifurcación y eso es posible porque ese de aprendizaje es enorme y sumamente variada. Le
número de instrucción quedó guardado en uno de los vamos a enseñar a llorar a intervalos regulares, a en-
registros de la pila. Es común que un loop tenga, a su cender luces, a sumar, a restar, etc.
vez, un loop secundario y cuando se ejecuta ese loop Enseñarle significa programarlo y eso se realiza
secundario se debe volver al mismo punto del loop con una plaqueta de programación que depende de
primario, eso se consigue con guardar ese número cada marca y modelo de microcontrolador. Antigua-

10 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PIC: P EQUEÑAS C OMPUTADORAS M ULTIPROPÓSITO

grama y cuando se produce una inte-


rrupción, a la posición 004. Estos retor-
nos forzados deben ser considerados al
diseñar el programa del microprocesa-
dor; es decir que el reset se produce por-
que la señal externa pone el contador de
programa en 000 y todo el programa se
reinicia. En cambio, cuando ingresa una
señal por la pata de interrupción el con-
Figura 8 tador de programa va a 004 y la acción
que, en general ocurre, es que se co-
mienza a leer un subprograma particu-
lar. Cuando este subprograma termina,
el contador de programa recupera el nú-
mente los microprocesadores tenían una ventanita mero que tenía en el momento de arribar la interrup-
transparente y era necesario exponerlos a la luz ultra- ción.
violeta para borrar su memoria e introducir un pro-
grama nuevo. Actualmente cuentan con memorias 2) La Memoria de Datos (Random Access Me-
que no tienen este requisito. Basta con cargarlos con mory = memoria de acceso aleatorio) es una memo-
un programa para que se borre el anterior. Esto sig- ria de lectura y escritura de 128 posiciones pero que
nifica que, con el mismo integrado, podremos cons- sólo tiene implementados las primeras 48 posiciones
truir diferentes dispositivos que realicen funciones (desde 00 a 2F en hexadecimal). De estos 48 regis-
totalmente distintas unas de otras. tros, los primeros 12 son fijos y cumplen un propósi-
Recuerde que: to determinado, en tanto que desde el 13 hasta el 48
son registros de propósito general, en donde el pro-
1) La Memoria de Programa es una memoria grama puede indicar que se almacene un dato para
EEPROM, es decir, de lectura solamente (ROM = ser tomado más tarde.
Read Only Memory) que se programa por tensión
(no necesita luz ultravioleta); es decir que basta con 3) El PIC16C84 tiene dos puertos paralelos de
introducir los datos con cierto nivel de tensión para entrada o salida: el puerto “A” de 8 patas y el “B” de
que éstos borren el programa anterior y graben uno 5 patas. Cada pata puede ser predispuesta por el pro-
nuevo. grama para operar como de entrada o de salida. Ca-
¿Por qué esta memoria se llama ROM, si se pue- da pata tiene un resistor de pull-up (resistor conecta-
den grabar datos sobre ella? do a fuente) interno que puede ser desconectado me-
Se llama ROM porque para grabarla se debe co- diante el programa. Estos resistores se desconectan
nectar el PIC al programador; luego de que el PIC automáticamente si una pata se predispone como pa-
coloca estos datos en la plaqueta del dispositivo, só- ta de salida debido a que las salidas ya tienen posibi-
lo pueden ser leídos, ya que entonces forman el pro- lidad de entregar corriente desde fuente con un tran-
grama del PIC. sistor. Todos los resistores de pull-up se conectan o
Esta memoria tiene una longitud de 1 Kbyte con desconectan al mismo tiempo (no existe un coman-
palabras de 14 bits. Digamos que tiene un ancho de do que los conecte independientemente).
14 bits y una altura de 1.000 Bytes o que es una me- Como puerto de salida, una pata puede tomar
moria de 1.000 x 14. Observe que los números de 25mA del circuito o entregar 20mA al mismo, sin
instrucción en hexadecimal van desde el 000 al 3FF, embargo, en el puerto “A” sólo se pueden consumir
lo cual implica que existen 1.040 posiciones de me- 80mA en total o entregar 50mA, esto significa que
moria, valor obtenido empleando la fórmula: sólo algunas patas pueden trabajar al máximo porque
si todas lo hicieran (y son 8) el consumo total sería
3 x 162+16 x 161+16 x 160 de 25 x 8 = 200mA. El puerto “B” tiene otras carac-
terísticas máximas, ya que en total puede tomar
Observe que dos de las posiciones de memoria 150mA o entregar 100mA. Como vemos, las salidas
tienen las indicaciones “vector de reset” y “vector de admiten suficiente carga como para alimentar direc-
interrupción”. tamente a un led (figura 8).
Eso significa que, cuando se provoca un reset, el Los puertos no utilizados siempre se deben co-
microprocesador vuelve a la posición 000 del pro- nectar a la fuente de 5V a través de un resistor de

CLUB SABER ELECTRÓNICA 11


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

10kΩ debido a que se trata de un dispositivo CMOS


que, de otro modo, podría deteriorarse por captación
electrostática.
La pata 3 perteneciente al puerto “A” puede ser
configurada como de entrada/salida o como de
arranque de un temporizador/contador. Cuando se
programa como entrada esta pata funciona como un
disparador de SCHMITT o Schmitt trigger ideal pa-
ra reconocer señales distorsionadas o con crecimien-
to lento. Esta misma pata también tiene una caracte- Figura 11
rística distinta cuando opera como salida. Ella es la
única que trabaja a colector abierto, es decir, que no
puede emplearse como fuente, en este caso siempre
se utilizará un resistor externo. de por 4, por lo tanto, es muy común la utilización de
un cristal de 4MHz para obtener un CLOCK interno
4) Los PICs poseen un oscilador configurable de 1MHz que garantiza que cada instrucción dure
por programa de características muy amplias. Cuan- exactamente 1mS. Para temporizadores de período
do no se re- largo se utilizan cristales de baja frecuencia.
Figura 9 quiere mucha
precisión se 5) El PIC “se resetea” cuando la pata 4 (MCLR
puede trabajar negada) se pone a potencial bajo. Para simplificar el
con un oscila- circuito de reset, el PIC posee un temporizador inter-
dor a RC co- no que permite realizar un reset automático cuando
nectado según se aplica tensión de 5V. En estos casos el circuito ex-
la figura 9. terno de reset sólo implica el uso de un resistor de
Para circuitos 10kΩ entre la pata 4 y fuente tal como se muestra en
que requieran la figura 11.
una gran preci- En muchos circuitos es necesario realizar un re-
sión se puede set manual y para ello existen dos posibilidades, una
trabajar con un es utilizar sólo el temporizador interno (por progra-
cristal de fre- ma) y la otra es agregar una constante de tiempo ex-
cuencia baja, terior como se muestra en la figura 12. En el segun-
media o alta do circuito C1 provee un retardo al encendido o pos-
(figura 10). terior al pulsado de reset porque C1 se cargará lenta-
Como máximo mente a través de R1 con una constante de tiempo de
el PIC16C84 22kΩ x 10µF = 220mS.
puede trabajar El resistor R3 limita la corriente de descarga de
con un cristal C1 a valores compatibles con sus características de
de 10MHz. In- corriente de pico máxima.
Figura 10 ternamente la D1 descarga a C1 cuando la tensión de fuente de-
frecuencia del cae para permitir un reset inmediato cuando la fuen-
cristal se divi- te se apaga y se enciende en rápida sucesión. R2 li-
mita la corriente de re-
set, tomada desde el mi-
Figura 12 croprocesador. Este se-
gundo sistema se suele
utilizar cuando se re-
quiere un reseteado re-
moto a través de varios
metros de cable que po-
drían captar zumbido
(C1 reduce la impedan-
cia del circuito de re-
set).

12 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PIC: P EQUEÑAS C OMPUTADORAS M ULTIPROPÓSITO

Programación y Carga de PICs Insistimos, un cargador de PIC debe poseer por


un lado el circuito que permita cargar el programa
Para que un PIC funcione como nosotros quere- desde una computadora (hardware) y el programa
mos es preciso “cargarle” un programa en la “memo- que permita manejar a dicho circuito para realizar la
ria de programa”. El programa debe estar en un len- operación de carga (software). El circuito debe ser
guaje comprensible por el chip o sea un lenguaje de muy simple.
máquina en código binario aunque en realidad al PIC Usaremos un software gratuito llamado NOPPP
debemos introducirle un programa en código hexa- que puede bajarse por Internet. Ud. puede bajar este
decimal e internamente lo convierte a binario para programa, el MPLAB, el MPASM y otros programas
realizar su interpretación. El programa que debemos y utilitarios, siguiendo los pasos que daremos y, lo
cargarle al PIC en código hexadecimal tiene que te- que es más importante, en forma totalmente GRA-
ner la terminación “hex”. TUITA.
Sin embargo, normalmente se debe escribir “edi- Para ello diríjase a: www.webelectronica.co-
tar” el programa en un lenguaje entendible por el m.ar (si no tiene Internet o no sabe cómo se hace,
usuario, normalmente conocido como “assembler”. lleve este escrito a cualquier cybercafé y pídale al
Los PICs basan su programación en un set reducido encargado que le baje los programas). Haga doble
de instrucciones que permiten editar el programa ge- click sobre el ícono password y luego digite la clave
nerando un archivo con extensión “asm”. aiwa15.
Existen programas que se encargan de “traducir”
el programa escrito en lenguaje assembler (asm) a Recuerde que cuando decimos “programar” nos
programa escrito en lenguaje de máquina (hex); a es- estamos refiriendo a diseñar un programa para un
tos programas se los denomina traductores o ensam- PIC y a la persona que realizó ese trabajo la llama-
bladores. mos “programador”; cuando decimos “cargar” nos
Por lo tanto, para escribir un programa y cargar- estaremos refiriendo a llenar con datos la memoria
lo en un PIC precisamos: de un PIC y el dispositivo que realiza esta función lo
llamaremos “cargador de PICs”.
* Un utilitario o programa que nos permita es-
cribir el juego de sentencias a cargar en la memoria Aunque parezca increíble nuestro amplio idioma
de programa del PIC. Este utilitario es un “editor” no tiene una palabra precisa que diferenciara a la ac-
y como ejemplo tenemos el MPLAB. ción del aparato y se suscitaban graves confusiones
* Un utilitario o programa que nos permita “tra- al leer, por algo tan simple. En realidad, sí estaba
ducir” el programa escrito en assembler a lenguaje acuñado un término práctico para el dispositivo:
de máquina para que podamos cargarlo en el PIC. A “quemador de PICs”, pero el mismo sólo se puede
ese programa se lo denomina “ensamblador” y co- aplicar a aquellos PICs que sólo se pueden grabar
mo ejemplo tenemos al MPASM. una sola vez. Para comenzar a “practicar” con el ar-
* Un utilitario para “cargar” el archivo que tie- mado de circuitos con PIC, es preciso contar con al-
ne el programa en lenguaje de máquina (archivo con gún sistema “verificador” o “entrenador” que mues-
extensión hex) en la memoria del PIC. A estos pro- tre los efectos del integrado que hayamos cargado.
gramas se los denomina “cargadores” y como ejem- Un circuito con PIC siempre se compone de dos sec-
plo tenemos al NOPPP, al Quark Pro 2 y a tantos ciones. El circuito del dispositivo deseado y los com-
otros. ponentes periféricos imprescindibles para que el PIC
funcione: clock y reset (la primer sección cambia
con cada proyecto, en tanto que la segunda puede ser
común a muchos proyectos). Ambos circuitos perifé-
ricos tienen diferentes opciones: el clock puede ser a
cristal cuando se requiera precisión, o a RC (como en
nuestro caso) cuando sólo se requiere que la secuen-
cia de encendido tenga un tiempo aproximado. En
cuanto al reset, éste puede ser externo con un pulsa-
dor o interno y automático, cada vez que se conecta
la alimentación de 5V.
Una vez definidas estas cosas se puede dibujar el
circuito completo, tal como lo mostramos en la figu-
Figura 13 ra 13. Observemos primero la sección periférica im-

CLUB SABER ELECTRÓNICA 13


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

prescindible. El clock está generado por un oscilador proveerlo el fabricante del mismo.
RC realizado con el PIC, R1 y C1 (elegidos para ob- Programadores y software de aplicación de los
tener una secuencia completa que dure un segundo mismos hay muchos. Algunos son muy simples y
aproximadamente), en tanto que el reset se realiza en económicos (tan económicos que muchos se entre-
forma automática, cada vez que se enciende el equi- gan gratuitamente por Internet, es decir que el autor
po, por intermedio de R6. Nuestro circuito de aplica- regala el software y da las explicaciones para armar
ción no puede ser más sencillo, sólo utilizamos cua- el hardware) y otros son muy complejos y caros. La
tro LEDs sobre las patas RB0 a RB3 (puerto “B” to- diferencia entre unos y otros suele ser la posibilidad
mado parcialmente) y sus correspondientes resisto- de aceptar más tipos de PICs (además del 16C84 y
res de pull up (resistores a fuente). Nada más simple 16F84 existen muchos otros) e inclusive micropro-
y fácil de armar en un panel protoboard. cesadores o memorias de otras marcas. También se
diferencian en la velocidad a la cual cargan el PIC;
¿Qué ocurriría si compro los componentes, los los hay de alta productividad que trabajan con un
armo y pruebo directamente el circuito? elevado flujo de datos y otros más lentos que sólo
No va a funcionar porque como el PIC no está sirven para tareas de aprendizaje.
instruido para realizar ninguna función y los LEDs En nuestro caso vamos a trabajar con un softwa-
van a permanecer todos encendidos. El PIC tiene una re que se llama NOPPP, que es absolutamente gratui-
memoria interna que debe cargarse con números bi- to y se puede bajar desde Internet. Este software es-
narios de 8 dígitos; exactamente tiene 48 posiciones tá previsto para ser usado sólo con los PIC16C84,
de memoria (numeradas desde el 0 hasta el 2F en nú- PIC16C83 y PIC16F84 que son los más utilizados.
meros hexadecimales), en donde se le indicará qué Con respecto al hardware, Ud. puede usar el que
tarea debe realizar o qué datos fijos debe cargar para propone el autor del software que es muy sencillo, o
ejecutar esas tareas. usar otro que le propongo yo más adelante y que tie-
En nuestro caso activar transistores internos en ne algunas ventajas con respecto a una mejor forma
algunas patas del puerto “B” (predispuestas como de los pulsos de programación. El NOPPP es sufi-
salidas), de modo de generar cortocircuitos momen- cientemente sencillo como para implementarlo en un
táneos a masa en forma secuencial. panel protoboard, pero como es un hardware que de-
El dispositivo con un zócalo para conectar el PIC beremos usar más adelante para programar otros
e instruirlo (cargarle los datos en la memoria de pro- PICs conviene armarlo en forma más definitiva, uti-
grama) se llama genéricamente “Programador de lizando una plaqueta de circuito impreso o una pla-
PICs”, pero nosotros convenimos en llamarlo “Car- queta ojalillada.
gador de PICs” y es como un apéndice de nuestra El PIC, como una memoria, tiene una pata que
PC, conectado con un cable al puerto paralelo de la predispone el dispositivo para leer o para escribir. Si
misma. la pata 4 del PIC está a un potencial comprendido en-
Si la PC tiene dos puertos paralelos de salida se tre 13 y 14V, el PIC está preparado para escribir los
usará uno para la impresora y el otro para nuestro datos que provienen de la PC. Si la pata 4 está por
programador, si sólo tiene uno, se desconectará pro- debajo de 6V, el dispositivo está previsto para ser leí-
visoriamente la impresora para conectar el progra- do. Los datos a leer o escribir se ponen/obtienen de
mador, o mejor aún, se conectarán ambos dispositi- la pata 13 del PIC con la pata 12 del mismo que ope-
vos a través de una caja selectora que se consigue en ra como clock.
los negocios de computadoras y se usa para conectar Aquellos que conocen el proceso de carga de da-
dos impresoras a la misma PC. tos en una memoria serie, no tendrán mayores incon-
Si Ud. tiene un mínimo conocimiento sobre com- veniente en entender la frase anterior. Para aquellos
putadoras, sabrá que un dispositivo conectado a la que no conocen el proceso, explicamos lo siguiente:
PC es totalmente inútil si no está acompañado de un Un PIC se lee/escribe accediendo a las diferentes
programa instalado en el disco rígido de la misma. posiciones de memoria por la misma pata por la que
En algunos casos se necesitan dos programas, a sa- se obtienen/ingresan los datos (la pata 13). La señal
ber: el driver del dispositivo y un programa de apli- primero elige la posición de memoria a ser leída/es-
cación que utilice dicho dispositivo. En el caso de crita, y luego que esa posición está accesible se es-
dispositivos que se conectan en el puerto paralelo, el criben/leen los datos. El clock que se coloca en la pa-
programa driver no es necesario porque dicho puer- ta 12 sirve para indicar en qué momento se debe
to ya está debidamente habilitado para usar la impre- transferir la información. Los datos pueden estar so-
sora. Lo que sí se requiere obligatoriamente, es un bre la pata 13 todo el tiempo que Ud. desee, ya que
software de aplicación del programador que suele no serán ni leídos ni escritos por la PC hasta que se

14 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PIC: P EQUEÑAS C OMPUTADORAS M ULTIPROPÓSITO

Por sobre todas las cosas debe respetarse el crite-


rio de no sacar un PIC de su zócalo con las fuentes
conectadas, porque puede desprogramarse o, peor
aún, dañarse definitivamente. También es muy im-
portante respetar las tensiones de fuente y no demo-
rar la llegada de datos, luego conectar VPP (porque
podrían cargarse datos falsos por interferencias elec-
tromagnéticas).
Como usted puede observar de la descripción an-
terior, la entrada RB6 es utilizada como clock y la
RB7 como entrada de datos en una clásica operación
de transferencia de datos en serie.
Observe que hay un tiempo entre el momento en
que MCLR NEGADO sale de la condición de reset,
Figura 14 hasta que aparece el primer dato o el primer pulso de
clock. También hay un tiempo mínimo para la per-
manencia de un dato en la entrada (la representación
produzca un cambio de estado (de alto para bajo) en usada para un dato significa que el mismo puede ser
la pata 12. En cada palabra “a programar” existe una alto o bajo, depende del bit que se esté grabando). Lo
primera sección de 6 bits que indica la posición de que no hay es un tiempo máximo, pero evidentemen-
memoria a ser leída/escrita y luego la línea de datos te cuando mayor es este tiempo, más lenta será la
permanece en estado de alta impedancia por un inter- carga del programa.
valo de tiempo que depende de la operación (duran- El tiempo más adecuado depende de factores ta-
te ese tiempo el clock está apagado). Por último in- les como el largo del cable utilizado para conectar el
gresan/egresan los datos (cada palabra tiene 8 datos, programador a la PC. Si el cable es largo, los pulsos
así, una palabra de programa se compone de 8 bits de tienden a deformarse y atenuarse, sobre todo cuando
datos y 6 bits de direccionamiento). Las conexiones son de corta duración (100nS equivalen a una fre-
de fuente y las señales deben ser aplicadas según una cuencia de 10MHz). Para evitar problemas, todos los
secuencia predeterminada que debe respetarse inva- programadores trabajan a velocidades inferiores a la
riablemente. Los nombres de las señales se aclaran máxima, sobre todo considerando que la capacidad
en la figura 14. de memoria no es muy grande y para el uso no co-
mercial no son imprescindibles grandes velocidades
A) El primer paso es colocar el PIC en el zócalo de grabación.
del programador con señales y fuentes a potencial Un cargador de PIC debe permitir, una operación
de masa. de verificación para cuando el usuario tiene dudas
B) Levantar la tensión de fuente VDD a un poten- respecto de la condición de un determinado PIC (va-
cial de 5V ± 0,2V por la pata 14 (VDD). cío o lleno). Solo que el programa almacenado debe
C) Levantar la tensión de fuente VPP a un poten- ser inviolable en caso de que la persona que lo cargó
cial de 13V ± 0,3V por la pata 4 (MCLR NEGADO). así lo haya dispuesto.
D) Esperar en esas condiciones un tiempo supe-
rior a 1mS. Habilitación del reset
E) Posicionar el primer dato en la pata 13 (RB7) En el pinup del PIC se puede observar que la pa-
con un potencial alto (mayor a 4V) o bajo (menor a ta llamada MCLR negado (4) tiene un doble uso. En
1V). principio sirve para predisponer el PIC en grabación
F) Cuando la pata 12 (RB6) pase a un estado ba- o lectura, como ya fuera comentado; pero cuando su
jo, inferior a 1V, el dato se carga en la memoria. tensión cae por debajo de 1V, el PIC se resetea y co-
G) Continuar cargando los datos con el mismo mienza la lectura del programa por el principio. Este
criterio a un ritmo tal que el dato esté presente, por tipo de reset se llama reset a pulsador y se utiliza pa-
lo menos, durante 100nS. ra provocar alguna acción como, por ejemplo, co-
H) Cuando todos los datos fueron cargados se menzar una secuencia de encendidos de LEDS o en-
debe esperar 1 segundo. cender un LED por un tiempo predeterminado. Este
I) Desconectar la fuente de 13V. modo de funcionamiento requiere una acción exter-
J) Desconectar la fuente de 5V. na de reset (apretar un pulsador). La misma acción
K) Retirar el micro grabado. de reset se puede conseguir en forma automática ca-

CLUB SABER ELECTRÓNICA 15


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

da vez que se conecta la fuente de 5V. Este modo de Existen, en Internet, muchos programadores de
trabajar sólo requiere que la pata MCLR (pata 4) es- PICs de uso libre, como el JDM, el TAIT, el PROPIC
té permanentemente conectada a 5V (con un puente 2 y el TAFE, entre otros muchos. Sin embargo, nin-
o un resistor de 1kΩ) y que el PIC esté predispuesto gún quemador (programador) funciona sin un pro-
con el Power-up Timer en ON (temporizador de en- grama que lo opere, para ello existen también mu-
cendido conectado). Cuando el temporizador está chos utilitarios como el IC-PROG, el PIC-ALL, el
habilitado, luego de conectar la fuente de 5V, co- NOPPP, el PONY-PROG, etc. (muchos de uso libre).
mienza un conteo interno (que dura 72ms) durante el Cada programador y cada programa posee sus pro-
cual el PIC pone todas sus compuertas internas en pias ventajas y desventajas, lo importante es escoger
cero (reset) y recién después comienza a efectuar los un programa que sea compatible con el programador
pasos que le indica el programa. A propósito, el nom- elegido.
bre MCLR proviene de MASTER CLEAR (literal-
mente, limpiador maestro). ¿Por qué basar el diseño en el programador JDM?
En principio, para programar un PIC se requiere
Circuito de vigilancia (perro guardián) de una fuente de 5 volt para alimentarlo (Vdd) y otra
En realidad, el PIC tiene un reset extra que opera fuente de 13 volt para programar o “quemar” el PIC
luego de un cierto tiempo si no se realiza la opera- (Vpp) lo que implica que debemos tener dos fuentes
ción final del programa. Es como una especie de ru- de voltaje para realizar la operación, lo que de entra-
tina automática de descongelamiento que opera en da nos elevaría el costo.
caso de falla del programa. Eventualmente puede in- En el JDM (véase www.jdm.homepage.dk) cabe
gresar algún pulso de energía al sistema que envíe al destacar “lo ingenioso del diseño” ya que emplea los
programa a un loop (rizo) eterno (una derivación o voltajes disponibles del puerto serie de la computa-
camino cerrado sobre sí mismo). Una vez que el pro- dora para que, mediante un arreglo con diodos y ca-
grama ingresó en ese camino no puede salir de él sal- pacitores (llámese multiplicador de tensión integra-
vo que se produzca un reset. Si pasa un tiempo con- do por D3, D4, D5, D6, C1 Y C2) se puedan obtener
siderable sin que se llegue a la última sentencia del los más de 13V necesarios para programar cualquier
programa, el PIC analiza su predisposición y si el PIC. Esto nos ofrece una gran ventaja, ya que no re-
Watchdog timer (literalmente perro guardián) está querimos fuente de alimentación externa alguna,
habilitado, provoca un reset programado. En los pro- convirtiendo el programador en un circuito “parási-
gramas más simples y donde se producen loops infi- to” que, en nuestro caso, se alimenta del puerto se-
nitos a propósito (de los que sólo se sale tocando un rie de la computadora, logrando así abatir el costo
pulsador), se suele dejar el perro guardián desconec- más alto que representan las fuentes de alimentación.
tado para evitar un funcionamiento errático. Otra ventaja que ofrece este programador es que
no requerimos de un limitador de corriente para el
caso de insertar un PIC dañado, ya que el circuito
RS232 del puerto serie de la PC tiene su propio limi-
Quark Pro 2: tador de corriente. Sin embargo, no podemos tener
Circuito Cargador de PICs y mucho más... toda la gloria, ya que para los que se dedican a la
programación “in situ”, es decir, los que programan
Hemos desarrollado un prototipo económico, pe- los PIC’s en el mismo circuito donde opera y el cual
ro de alto desempeño para programar PICs. El cir- se diseña con un conector especialmente destinado
cuito está basado en el hardware del programador para la programación, este programador o cargador
JDM y en el software de IC-PROG, realizando las de PIC’s no funciona ya que la tierra del circuito no
modificaciones y adiciones necesarias para hacerlo es compatible con la tierra flotante de nuestro pro-
tan funcional como los programadores profesionales gramador. Para tal caso, se supone que los que reali-
con muy bajo costo. zan este tipo de programación se dedican profesio-
En Saber Electrónica se ha publicado el cargador nalmente a ello, y por ende contarán también con un
NOPPP y el QUARK PIC BASIC entre otras, sin programador profesional que tenga sus propias fuen-
embargo, desarrollamos este prototipo para usuarios tes de alimentación. Cabe recordar que el objetivo
de PICs más exigentes. Si bien los cargadores publi- principal de nuestro prototipo es que sea económico,
cados han sido de mucha utilidad, este nuevo proto- fácil de usar y confiable.
tipo les permitirá programar PICs más poderosos co-
mo el PIC16F873 (de 28 pins), el PIC16F874 (de 40 ¿Por qué utilizar el programa IC-PROG?
pins) o PICs mejorados como el PIC16F627. Con el mismo criterio que seleccionamos el hard-

16 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PIC: P EQUEÑAS C OMPUTADORAS M ULTIPROPÓSITO

de todo el mundo, está traducido a


varios idiomas y tercero es que es
compatible con la mayoría de los
sistemas operativos de la PC, ade-
más que con frecuencia están dispo-
nibles de manera gratuita versiones
actualizadas (véase www.ic-prog-
.com). En la figura 15 se muestra el
ambiente de trabajo de este progra-
ma. Si usted ha trabajado con am-
bientes de programas diferentes, po-
drá observar que el ambiente del IC-
Prog dispone de herramientas de tra-
bajo muy completas.
Para cargar un programa en un mi-
Figura 15 crocontrolador PIC se requiere de
una serie de parámetros básicos a
saber:

ware (programador JDM), seleccionamos el softwa- VDD = Voltaje de alimentación de 5V


re (IC-PROG), basados en el que fuera más compa- VSS = Referencia de tierra del circuito
tible. El IC-PROG ofrece varias ventajas: La prime- VPP = Voltaje de programación de 14V
ra es que dentro de su menú ofrece opciones impor- PGD = Datos de programación
tantes como la posibilidad de seleccionar el puerto a PGC = Pulsos de reloj para la sincronización
utilizar, así como el prototipo de programador a uti-
lizar; la segunda es que el programa ofrece un am- En la figura 16 se muestra el circuito eléctrico del
biente de trabajo muy amigable, ya que este progra- programador QUARK-PRO 2. Como puede obser-
ma y gracias a los aportes de muchos colaboradores var, no existe ninguna fuente de alimentación exter-

Figura 16

CLUB SABER ELECTRÓNICA 17


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

na. El circuito se ali-


menta del puerto serial
de la PC a través del
conector DB9. El vol-
taje de alimentación
VDD se obtiene de los
mismos pulsos de reloj
(pin 7 del DB9), los
cuales son rectificados
por los diodos D3 y
D4 y estabilizados a 5
volt mediante el diodo
zener D5 (5.1V) y el
capacitor C1. De la
misma manera, se ob-
tiene el voltaje de pro-
gramación VPP, car-
gando el capacitor C2
y estabilizando con el Figura 17
diodo zener D6
(8.2V) el cual se suma
al voltaje del zener D5
(5,1V), obteniéndose
así 13.3 Volt suficien-
tes para realizar la pro-
gramación del PIC. Se
han adicionado el
LED L1 para visuali-
zar el proceso de gra-
bación o lectura del
PIC, así como el LED
L2 para indicar que el
circuito se encuentra
alimentado, además, si
se colocara un PIC en
corto, este LED se
apagará o bajará signi-
ficativamente su intensidad. una carpeta de su disco rígido. También descargue el
Más adelante explicaremos en detalle el proceso archivo IC-Prog NT/2000 driver y guárdelo en la
completo de trasmisión (grabación) y recepción (lec- misma carpeta, porque puede serle útil en caso de
tura) de datos, así como la función de cada uno de que esté usando un sistema operativo Windows XP y
los componentes del programador. tenga conflictos en la ejecución del IC-Prog.
En la figura 17 se muestra el circuito impreso su- Abra el archivo con Win-Zip y ejecute el progra-
gerido para nuestro prototipo. ma icprog.exe (figura 19) para instalarlo. Una vez
Una vez que haya armado el programador (que- que haya hecho esto, aparecerá un ícono de acceso
mador) QUARK-PRO 2, ya tiene listo su hardware, directo a su programa (figura 20) que le permitirá
ahora le falta el software, que para nuestro caso he- abrir directamente el programa cuando desee utili-
mos sugerido el IC-PROG. zarlo. Al ejecutar este ícono aparecerá una ventana
Vaya a la página de Internet www.ic-prog.com e del programa (figura 15). Ahora sólo queda probar
ingrese al área de descargas (download), ahí encon- su proyecto. Conecte al puerto serial de su PC el pro-
trará varias versiones de este programa tal como se gramador y el led rojo (L2) deberá encender. Selec-
sugiere en la figura 18. cione cualquier dispositivo y elija la opción “progra-
Descargue la última versión (a la fecha de redac- mar”, ejecute y observe el led verde (L1). Este debe-
tar este artículo era la versión1.05C) y guárdela en rá encender conforme se lleve a cabo el proceso. Si

18 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PIC: P EQUEÑAS C OMPUTADORAS M ULTIPROPÓSITO

todo va bien: ¡felicidades!, su proyec-


to funciona. Si tiene algún problema
o duda, por favor escriba a ateclien-
@webelectronica.com.ar y con gus-
Figura 18 to lo ayudaremos.
Si lo prefiere puede solicitar el mon-
taje completo armado o el kit para
que Ud. lo arme, los cuales se pro-
veen con el instructivo de trabajo y un
CD completísimo, con un Curso de
Microcontroladores PIC, varios pro-
totipos completos, un curso de pro-
gramación, un montón de programas,
un clip completo en VCD, además in-
cluimos la última versión del progra-
ma de desarrollo para PIC’S MPLAB
de Microchip, a entornos de Desarro-
llo (MPLAB, MPASM, etc.) y gran
cantidad de aplicaciones.

Lista de Materiales
U1 - Base (zócalo) para CI de 8 pins
U2 - Base para CI de 18 pins
U3 - Base para CI de 28 pins (usar 2
bases de 14 pins)
U4 - Base para CI de 40 pins
DB9 - Conector DB9 hembra
DI, D2, D3, D4 - Diodo 1N4148
D5 - Diodo zener de 5.1V 1W
D6 - Diodo zener de 8.2V 1W
Q1, Q2 - Transistor BC547C
Q3 - Transistor BC557C
C1, C2 - Electrolíticos de 1000µF x
25V
Figura 19 C3, C4 - Cerámicos de 0.001µF
R1 - Resistencia de 100kΩ
R2 - Resistencia de 10kΩ
R3 - Resistencia de 1.5kΩ
R4 - Resistencia de 1kΩ
R5 - Resistencia de 2.7kΩ
L1 - Diodo Led verde y L2 - Diodo Led
rojo

Varios
Placas de circuito impreso, gabinete
para montaje, estaño, *cable de red de
computadoras tipo PC para el conec-
tor DB9, conector macho y hembra
DB9 para conectar a la PC, etc.

*El cable está incluido en el kit arma-


do o para armar.
Figura 20

CLUB SABER ELECTRÓNICA 19


L OS M ICROCONTROLADORES
PICAXE:
UN SISTEMA MUY FÁCIL DE PROGRAMAR QUE NO PRECISA DE COSTOSOS CARGADORES Y
EN LOS QUE EL PROGRAMA PUEDE HACERSE EN BASIC O EN DIAGRAMA DE FLUJO.

Un PIC es un microcontrolador que precisa un equipamien-


entorno de desarrollo (el MPLAB) para editar pro- to mínimo
gramas, simularlos, convertir el programa en un un micro- Figura 1
archivo hexadecimal y realizar la simulación que procesador,
verifique que está todo bien. Luego, se precisa un memoria
cargador para “descargar” el programa en la me- RAM, y dis-
moria del PIC, y por último se debe quitar el PIC tintas ver-
del cargador y colocarlo en el circuito donde va a siones de
funcionar. memoria
Un PICAXE “no precisa nada de todo eso...” es ROM. Los
un PIC al que se le ha grabado un programa inter- microcon-
no (firmware) para que pueda ser “cargado” en la troladores más avanzados, aparte de lo mencionado
misma placa donde va a funcionar por medio de un anteriormente, también llegan a poseer temporizado-
software gratuito y en el que los programas pueden res ADC, DAC, Comunicación en paralelo, USAR,
escribirse en BASIC o en diagrama de flujo. etc.
Un microcontrolador, desde el punto de vista de
Introducción operación, puede considerarse como si fuera una PC,
ya que cuenta con el conjunto básico de implemen-
Desde que el primer microprocesador vio la luz tos que necesita para realizar sus funciones, esto es,
del mundo (el 4004), y cuya única y principal opera- microprocesador, disco duro, memoria RAM, etc.
ción era una suma de 1 bit, se comenzó con una ca- Clásicamente, cuando programamos un microcon-
rrera tecnológica que lejos de ver el fin, día a día va trolador, de forma implícita se tiene que desarrollar
logrando cosas inimaginables, tal es el caso de los un programa que trabaja a manera del BIOS de una
microcontroladores que vendrían a ser el ejemplo PC, ya que lo primero que debemos tomar en cuenta
resumido y en miniatura, de una computadora per- es la configuración de sus puertos, ya sea como de
sonal (PC). entrada o de salida, configurar sus demás herramien-
tas como pueden ser los temporizadores, los ACD,
Un microcontrolador del sistema PICAXE puede etc.
ser de 8, 18, 28 o 40 terminales o más (figura 1), in- Han aparecido en el mercado, sistemas de desa-
ternamente dentro de su encapsulado, posee como rrollo que permiten la programación del microcon-
trolador de una manera relativamente fácil, en la cual
se puede emular el proceso que nos interesa desarro-
Figura 2 llar. Para la mayoría de estos sistemas de desarrollo,
una vez que se tiene terminada la aplicación, el paso
siguiente es armar el prototipo e insertar el micro-
controlador debidamente programado. En la figura 2
se puede observar un kit de desarrollo para trabajar
con microcontroladores, en este caso con el sistema
PICAXE. Tenga en cuenta que no es preciso que
compre programa alguno para empezar a trabajar,
dado que lo puede bajar gratis de Internet, además,
Ud. puede armar el cable de conexión a la PC y la
placa de circuito impreso del dispositivo que desee.
Hace apenas un tiempo, se ha lanzado al merca-

CLUB SABER ELECTRÓNICA 21


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

cuenta con dos opciones de diseñar una aplicación:


Figura 3 una por medio de diagramas de flujo y otra por me-
dio de “BASIC”, y aunque esto no es ninguna nove-
dad, (ya que estas herramientas existían con anterio-
ridad), lo ventajoso del PICAXE radica en el hecho
de que se trata de un microcontrolador PIC que, en
un segmento de memoria ROM interna le ha sido
grabado desde su fabricación, un firmware a manera
de BIOS que simplifica la forma de programarlo.
Al igual que en todos los sistemas de desarrollo,
existen ya predefinidas toda una serie de tarjetas de
prácticas sobre las cuales podemos emular las apli-
caciones que hemos diseñado, pero gracias al firm-
ware que poseen los microcontroladores PICAXE
“se puede armar la aplicación comple-
ta incluyendo al microcontrolador”, y
Figura 4
sobre la aplicación programarlo sin ne-
cesidad del sistema de desarrollo, ni
del circuito programador de microcon-
troladores (vea la figura 3).
De hecho, el sistema PICAXE hace
más accesible la programación de mi-
crocontroladores a todas aquellas per-
sonas que tan sólo cumplan con el úni-
co e indispensable requisito que es el
de querer aprender. Vea en la figura 4
una “pantalla” de la aplicación que nos
permitirá realizar el programa que va-
mos a cargar adentro del PIC.
Aquí no vamos a mencionar las venta-
jas y desventajas del sistema PICAXE
con respecto a otros, lo único que po-
do el sistema de desarrollo para programar micro- demos agregar es que se trata de otra manera de pro-
controladores PIC llamado PICAXE, que de por sí, gramar microcontroladores PIC, empleando diagra-
quien ha utilizado estos microcontroladores, puede mas de flujo y/o lenguaje BASIC (figura 5), con los
constatar lo sencillo que resulta su programación, el cuales, ya sea de manera consciente o totalmente im-
sistema de desarrollo PICAXE hace las cosas toda- plícita, recurrimos a ellos para elaborar un programa.
vía más sencillas para el programador. A lo largo de estas páginas, iremos aprendiendo
El sistema de desarrollo PICAXE hace las cosas paso a paso la forma de cómo programar los micro-
todavía más sencillas para el programador, ya que controladores bajo el sistema PICAXE. Para ello,
como primer paso, emplearemos una tarjeta de desa-
rrollo de la cual proporcionaremos su circuitería pa-
ra que ustedes la puedan armar, posteriormente des-
pués de realizar algunas prácticas, avanzaremos so-
bre aplicaciones en donde se tenga al microcontrola-
dor como elemento principal y al cual programare-
mos en sitio.

Ventajas del Sistema Picaxe

Como dijimos, el PICAXE es un sistema de mi-


crocontroladores PIC muy fácil de programar ya que
Figura 5 utiliza un lenguaje BASIC muy sencillo, además de

22 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

terminales (PICAXE-08), 18 ter-


Figura 6 minales (PICAXE-18) y 28 ter-
minales (PICAXE-28). En estos
microcontroladores ya se tienen
definidas las terminales que tie-
nen la función de entrada y salida
de datos, además de las termina-
les que sirven para programar al
PICAXE en sitio, o en otras pala-
bras sobre la misma aplicación.
En las figuras 6, 7 y 8 se mues-
tran los circuitos esquemáticos de
la disposición de cada uno de los
microcontroladores PICAXE.
En la figura 6 se muestra el cir-
cuito esquemático para un PICA-
XE de 8 terminales, de las cuales
las que están identificadas como
Pin1 E/S, Pin2 E/S, Pin3 E/S y
Pin4 E/S, son terminales que pue-
den funcionar como entradas o
salidas de datos del exterior hacia
el microcontrolador. Las termi-
nales identificadas como Serial
En y Serial Sal, se utilizan para
programar al microcontrolador a
través del puerto serie de una PC,
para lo cual las terminales del co-
Figura 7 nector identificado como CON1
se hacen llegar al conector DB9
de la PC, tal como se muestra en
la figura 9. Por otra parte, de la
misma figura 6 se observa que la
terminal identificada como Serial
Sal, cumple con una doble fun-
ción, y dependiendo de dónde se
ubique un jumper selector en el
conector CON2, se podrá progra-
mar al PIC o esa misma terminal
una vez programado el PIC ten-
drá la función de una terminal de
salida de datos.
Del circuito esquemático de la fi-
gura 7 se observa la forma en que
están dispuestas las terminales de
un PICAXE de 18 terminales, de
Figura 8 las cuales las que se encuentran
identificadas como En 0, En 1,
En 2, En 6 y En 7 son dedicadas
contar también con la posibilidad de programarlos exclusivamente para adquirir datos del exterior hacia
con diagramas de flujo. Aprovecha todas las caracte- el microcontrolador. Las terminales que se encuen-
rísticas de los microcontroladores de bajo costo que tran identificadas de la Sal 0 a Sal 7 son exclusiva-
incorporan memoria FLASH. mente para enviar datos hacia afuera del microcon-
Está disponible en tres versiones que son el de 8 trolador, mientras que las terminales identificadas

CLUB SABER ELECTRÓNICA 23


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Ya se ha mencionado que el sistema PICAXE no


Figura 9
requiere de programador o borrador, ya que utiliza
únicamente tres alambres conectados al puerto serie
de una computadora, tal como se describe en la si-
guiente figura 9.
Una vez que han sido identificadas las terminales
a utilizar en el conector del puerto serie de la PC,
ahora lo que sigue es preparar la conexión hacia el
PIC tomando en cuenta las terminales, tal como se
Puerto serie de las Puerto serie de las aprecia en la figura 10.
nuevas PC PC antiguas Como se puede observar en la figura 10, se pue-
de emplear (es recomendable) un plug
de los utilizados para conectar los au-
dífonos a la salida de audio de un
walkman o discman, y tener un cable
con un conector DB9 en un extremo y
un plug de audio en el otro, tal como
se ilustra en la figura 11.

El Sistema PICAXE

“PICAXE” es un sistema que emplea


un micro fácil de programar que utili-
za un lenguaje BASIC muy simple, el
cual la mayoría de los estudiantes pue-
Figura 10 den aprender rápidamente. Los micro-
controladores (con memoria FLASH)
pueden ser programados una y otra
como Serial Sal y Serial En, se utilizan para progra- vez sin la necesidad de un costoso programador PIC.
mar al microcontrolador. El sistema no necesita de ningún programador,
En el circuito de la figura 8 se muestra la forma borrador o complejo sistema electrónico. El progra-
de conectar a un PICAXE de 28 terminales, en don- ma puede escribirse en BASIC o por medio de un
de aparte de las terminales de entrada que se encuen- diagrama de flujo y se carga mediante una conexión
tran definidas como En 0 a En 7, también se cuenta de tres cables conectada al puerto serie de la compu-
con las terminales de salida identificadas como Sal 0 tadora. El sistema PICAXE consiste en tres compo-
a Sal 7, además de 4 terminales para entrada de da- nentes principales:
tos analógicos, y por último las terminales de progra-
mación del microcontrolador. 1) El software editor de programación.
2) El cable de conexión al puerto serial de la PC
3) El chip PICAXE
Figura 11
Ya retornaremos con este tema, cuando sepamos
más acerca de las características prinicipales de estos
chips. Veamos ahora en qué consiste el software gra-
tuito.

El Editor de Programas

Lo diferente del sistema de microcontroladores


PICAXE, con respecto a la programación tradicional
de los microcontroladores PIC, radica en la progra-

24 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

Figura 12 Carpeta progedit. Figura 13 Software de instalación “Programming Editor”.

mación basada en un lenguaje BASIC y diagramas


de flujo. Esto hace que los microcontroladores del
sistema PICAXE sean muy fáciles de programar, en
un ambiente amigable.
Para programar los microcontroladores PICAXE
debemos, en primera instancia, instalar el software
que contiene el ambiente de programación, por lo
que describiremos la forma de hacerlo.
Si bien a lo largo de este texto vamos a explicar
paso por paso cómo se emplea el “Programming Edi-
tor” (Editor de Programas), es necesario que ya lo
tenga en su computadora.
Figura 14 Ventana de bienvenida para la instalación del software de los PICAXE. El software lo puede bajar de nuestra página de
internet que usted ya conoce www.webelectronica-
.com.ar, debe hacer click en el ícono password e in-
gresar la clave PICAXEPRO. Recuerde que para
bajar cualquier información debe ser socio del club
SE, lo cual es gratuito y puede inscribirse por Inter-
net en sólo un par de minutos (siga las instrucciones
que dimos para bajar el programa y encontrará có-
mo hacerse socio, si aún no lo es).
Una vez que se tenga el software, se contará con
una carpeta con el nombre de “progedit”, a la cual
debemos acceder (observe la figura 12).
Luego debemos ingresar a la carpeta progedit y
tenemos que ubicar el programa identificado como
Figura 15 Acuerdo de licencia. “Programming Editor”, al cual debemos hacerle un
doble click con el ratón de la PC para que éste se eje-
cute y se pueda instalar el programa de los PICAXE,
tal como se muestra en la figura 13.
Una vez que ejecutamos el programa de instala-
ción Programming Editor aparecerá la ventana que
se muestra en la figura 14, sobre la cual debemos de
oprimir con el ratón el cuadro identificado como
“next” para que continúe la instalación.
Posteriormente será desplegada la ventana donde
se muestra la licencia que debemos aceptar, porque
de otra manera no podremos continuar con la insta-
lación del software, por lo que nuevamente oprimire-
Figura 16 Información del usuario. mos el cuadro identificado como “next”, esta acción

CLUB SABER ELECTRÓNICA 25


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Figura 17 Destino del software. Figura 18 Ventana de confirmación de datos.

se indica en la figura 15.


Como paso siguiente, pregunta por el nombre del
usuario que normalmente utilizará el software, aquí
podemos instalar la aplicación para que pueda ser
utilizada por todas las personas que utilicen la com-
putadora, y después de seleccionar esta acción tene-
mos que oprimir el cuadro identificado como “next”,
tal como se muestra en la figura 16.
Posteriormente debemos decir en dónde se guar-
dará el software de programación, que por lo gene-
ral, aquí no tenemos que modificar dato alguno, a
menos de que querramos asignar otra localidad, tal
Figura 19 Ventana de instalación del software.
como se ilustra en la figura 17. Una vez selecciona-
da la opción correspondiente procederemos a hacer
click sobre el cuadro identificado como “next”.
Por último, aparecerá una ventana de confirma-
ción para estar seguros de que los datos que introdu-
jimos se encuentran correctos, si es así debemos
oprimir el cuadro identificado como “next” para que
continúe la
instalación, tal
como se apre-
cia en la figura
18.
Cuando se está
Figura 20 Ventana final. instalando el
software se in-
dica gráfica-
Figura 21 Icono de acceso rápido en el mente, tal co-
escritorio de la PC.
mo se ilustra
en la figura 19,
aquí debemos
esperar hasta
que se termi-
nen de instalar,
tanto el soft-
ware de pro-
gramación co-
Figura 22 Lenguaje BASIC para pro- mo todas las
Figura 23 Diagrama de flujo para programar los PICAXE. gramar los PICAXE. utilerías que

26 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

serán empleadas por los PICAXE. En la figura 20 se trolador, y se trata


muestra la ventana que nos indica que ya se ha con- de un interruptor
cluido con la instalación, por lo que debemos oprimir con reposición au-
el cuadro identificado como “finish”. Una vez insta- tomática (push-bo-
lado el software de programación de los PICAXE, en ton), el cual se
el escritorio de nuestra PC encontraremos un ícono muestra en el cir-
de acceso directo identificado como “PICAXE Pro- cuito de la figura
gramming Editor”, al cual, para comenzar a progra- 25.
mar los microcontroladores, debemos hacer un doble De igual mane-
click con el mouse para que se ejecute el programa, ra que en el caso
tal como se muestra en la figura 21. En la figura 22 del circuito de la
y 23 se observa un ejemplo del ambiente gráfico tan- figura 1, se puede
to en lenguaje BASIC como en diagrama de flujo. reproducir el cir- Figura 24
cuito de la figura
25 tantas veces co-
mo entradas tenga
disponible el mi-
Comenzando a Trabajar crocontrolador.
con PICAXE Para realizar el
primer ejercicio
vamos a elegir uno
Para empezar a utilizar el sistema de microcon- de los tres tipos de
troladores PICAXE comenzaremos con una aplica- microcontrolado-
ción muy sencilla, por lo que en primera instancia res PICAXE que
nos dedicaremos a encender y apagar leds, de acuer- se tienen disponi-
do al estado que guarden las terminales de entrada de bles, que en este Figura 25
datos del microcontrolador. Cabe aclarar que confor- primer ejercicio se
me se avance en los temas de PICAXE podremos in- trata del PICAXE-
corporar controles para motores, utilización de con- 18; pero posteriormente se realizarán ejercicios con
vertidores analógico - digital (ADC), etc. Recorde- todos los tipos de microcontroladores PICAXE.
mos que el sistema PICAXE está disponible en tres El circuito propuesto para esta primera experien-
versiones que son el de 8 terminales (PICAXE-08), cia se muestra en la figura 26, en la cual se tiene 1
18 terminales (PICAXE-18) y 28 terminales (PICA- entrada y 1 salida.
XE-28), y en función de las terminales que tienen Para programar el microcontrolador PICAXE, la
disponibles para la entrada y salida de datos, serán primera acción que tenemos que realizar es abrir el
las que ocuparemos para
comunicar al microcon-
trolador con el exterior.
Comencemos pues,
con el primer circuito pa-
ra visualizar la salida de
datos, y se trata de un cir-
cuito muy sencillo para
encender leds, el cual se
muestra en la figura 24.
Este circuito lo podemos
reproducir tantas veces
como terminales de salida
se tengan disponibles.
Ahora veamos cuál
sería el primer circuito
que se recomienda para
ingresar datos discretos Figura 26
(digitales) al microcon-

CLUB SABER ELECTRÓNICA 27


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

software de programación llamado “PICAXE Pro-


gramming Editor” y que previamente tuvo que ser
instalado.
Una vez que hacemos doble click sobre el ícono
del software de programación y accedemos al am-
biente de programación, aparece una ventana en
donde se configuran las opciones con las cuales tra-
Figura 27
bajaremos.
Como primer paso, ya que es la primera vez que
utilizamos este software, es conveniente seleccionar
el menú identificado como “Language” ya que aquí
es donde se configura el lenguaje con el cual estare-
mos interactuando, si desea más detalles sobre esta
parte del programa, puede bajarlo de Internet o ad-
quirir la revista Saber Electrónica Nº 215. De inter-
net, puede bajarlo desde nuestra web con la clave Figura 28
“picaxepro”.
Para empezar a trabajar debemos configuar el
programa (es muy sencillo, ya lo veremos más ade-
lante), seleccionando la opción “Modo” del menú
para elegir el PICAXE que vamos a emplear en
nuestro proyecto, qué frecuencia de operación ten-
dremos (generalmente 4MHz), etc. Luego, debemos
elegir la opción “modo” del menú para indicar en
qué puerto tendremos el circuito para descargar el
programa.
De la figura 27 observamos el ambiente de traba-
jo que presenta el software de programación de los
microcontroladores PICAXE, en el cual se aprecia Figura 29
un espacio en blanco que es donde se ingresan las
instrucciones en forma de “BASIC”.

¿Qué instrucciones son las que utilizaremos?


Si no sabemos, no es el fin del mundo y vamos
paso a paso. Para comenzar utilizaremos una opción
que se cuenta en este software para programar a los
microcontroladores que son los diagramas de flujo,
por lo que como se indica en la figura 27, seleccio-
namos de la barra de herramientas la opción “Archi-
vo”, posteriormente “Nuevo” y por último “Nuevo
Organigrama”, y lo que aparecerá será el ambiente
de trabajo para ingresar el diagrama de flujo de nues- Figura 30
tro programa.
Para comenzar, éste va a ser nuestro campo de
trabajo ya que de forma intuitiva todos sabemos ha-
cer diagramas de flujo. Pues bien, antes de seleccio-
nar los bloques que lo constituirán, vamos a descri-
bir cuál es el algoritmo del programa que queremos
desarrollar:

“Cuando se oprima un push - boton se encien-


da un led, y cuando se suelte el push - boton se apa-
gue el led”.

28 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

Figura 31 área de trabajo, siempre se coloca la entrada 0 (ter-


minal 17 del microcontrolador). Este bloque tiene la
tarea de leer el estado lógico de la terminal de entra-
da y la compara con un 1 lógico y dependiendo de si
la entrada es igual o no, tiene dos posibles salidas
“Y” por si es igual a 1 lógico y “N” por si la entrada
es 0 lógico. Y por último, oprimimos el recuadro que
tiene una flecha en forma de U para regresar al me-
nú principal.
De acuerdo al algoritmo que planteamos líneas
atrás, lo que tenemos que hacer es que se encienda
un led cuando en la terminal de entrada se encuentre
un 1 lógico, o que el led se apague cuando en la en-
trada se encuentra un 0 lógico. Para esta actividad re-
currimos al recuadro identificado con la palabra
Figura 32 “Out”, ya que es ahí donde se encuentran los blo-
ques que actúan sobre las terminales de salida del
microcontrolador. Una vez en el interior del menú de
bloques de salida, tenemos que seleccionar la acción
que hará que el led se encienda o se apague, por lo
que en primer instancia seleccionamos el bloque
identificado con a palabra “High” el cual quiere de-
cir que la salida se encenderá, por cierto cuando se-
leccionamos este bloque, por defecto se ubica la sa-
lida 0 (terminal 6 del microcontrolador), tal como se
ilustra en la figura 30.
Ya se tiene entonces, el bloque que encenderá el
led por lo que ahora requerimos la acción correspon-
Figura 33 diente con su apagado, y ésta corresponde al recua-
dro identificado con la palabra “Low” que es preci-
samente el bloque que realizará la tarea de apagar el
led, y también por defecto al seleccionarlo por pri-
mera vez, se ubica en la salida 0 (figura 31).
Una vez que ya tenemos los bloques que necesi-
tamos para ingresarle o sacarle datos al microcontro-
lador PICAXE, procedemos ahora a unir los bloques
para que realicen el algoritmo que fue planteado lí-
neas atrás, para ello existe una herramienta que se
encuentra en un recuadro identificado con una línea
vertical que en sus extremos tiene un “*”.
Cuando seleccionamos esta herramienta (figura
Existen bloques prediseñados que nos auxilian en 32) y acercamos el puntero del ratón sobre alguno de
el manejo del estado que guardan las terminales de los bloques que ya se encuentran en el área de traba-
entrada del microcontrolador de manera indepen- jo, se les aparece un círculo de color rojo en aquel
diente, por lo que como se muestra en la figura 28 se- punto que requiere una conexión. Ya seleccionado el
leccionamos el recuadro que tiene indicado un rom- punto de conexión trazamos la línea hasta el siguien-
bo y dentro de este la palabra “if”. te punto de conexión de un bloque para realizar la
Ahora lo que tenemos que hacer es seleccionar unión lógica del flujo de datos, cabe aclarar que pa-
qué condición es la que utilizaremos, que para este ra cada unión que se necesite realizar, se tiene que
ejercicio será la que se encuentra dentro del recuadro volver a seleccionar la herramienta de conexión, en
que tiene una figura de un rombo y dentro de este la la figura 33 podemos apreciar la conexión completa
palabra “Pin” (observe la figura 29), esto es, estare- de todos los bloques. Si ya terminamos de diseñar
mos leyendo la condición de una terminal de entrada nuestro diagrama de flujo y antes de programar el
que, por defecto cuando lo ubicamos sobre nuestra microcontrolador, es importante saber si el programa

CLUB SABER ELECTRÓNICA 29


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

va a funcionar, plen (encender un led cuando se tiene un 1 lógico en


porque recuer- la entrada y apagar el led cuando se tiene un 0 lógi-
den que no es lo co en la misma entrada), ya estamos listos para dar el
mismo “desear” siguiente paso, que es convertir el diagrama de flujo
que el micro- a instrucciones de BASIC, para lo cual en la barra de
controlador ha- herramientas seleccionamos el menú identificado
ga lo que según como “Organigrama” y después la opción “Conver-
nosotros pro- tir el Organigrama a Basic” (de manera rápida pudi-
gramamos, a lo mos presionar la tecla F5).
que realmente Ahora lo que tenemos que hacer es conectar el
Figura 34 hace en función cable tanto al puerto serie de la PC como a las termi-
del programa nales del microcontrolador que se indican en el dia-
que ingresamos. grama de la figura 26 para programar al PICAXE, ya
Existe en el software de los PICAXE la posibili- propusimos la manera en cómo se debe construir el
dad de simular el programa, y eso es lo que vamos a cable de programación tomando en cuenta las termi-
hacer, por lo que seleccionamos el recuadro que tie- nales que se deben ocupar.
ne el símbolo de una punta de flecha tal como se Para grabarle el programa al microcontrolador
ilustra en la figura 32, lo seleccionamos y enseguida debemos dirigir la flecha del ratón a la barra de he-
aparecerán 2 ventanas, una de ellas indica el estado rramientas y seleccionar el menú “PICAXE”, des-
lógico que guardan las salidas y entradas del micro- pués la instrucción “Ejecutar” (o de manera rápida
controlador, esta ventana aparece en la parte inferior F5), tal como se muestra en la figura 34. En ese mis-
de la imagen de la figura 33. mo instante aparecerá una ventana indicando que se
Los recuadros verdes que se iluminan indican está llevando a cabo la programación del microcon-
qué salidas están siendo activas con un 1 lógico, trolador PICAXE. Cuando se encuentra en la fase de
mientras que los que aparecen debajo de los cuadros programación, una barra que irá creciendo nos dirá
verdes, indican la posición de las señales de entrada la cantidad de códigos que está siendo descargado
al microcontrolador, los cuales cuando se encuentran hacia el microcontrolador. Cuando se termina de gra-
en la posición inferior significa que la entrada se en- bar el microcontrolador aparecerá una ventana que
cuentra en 0 lógico, y si están en la posición superior nos indica la finalización del proceso de programa-
la entrada se encuentra en 1 lógico. Por otra parte ción, figura 35. Ahora podemos verificar en el mi-
también se observa que, dependiendo dónde se en- crocontrolador que el programa que diseñamos se
cuentre la posición del switch, se iluminará en color encuentra perfectamente bien, por lo que tenemos
rojo la línea que une los diferentes bloques que son que oprimir el push - boton y esta acción debe encen-
afectados por la respuesta del estado lógico de entra- cer el led, y cuando soltemos el push - boton el led
da, y de esta manera podemos visualizar qué es lo se debe apagar.
que está sucediendo con nuestro programa.
Una vez que simulamos nuestro programa y ob-
servamos que las condiciones del algoritmo se cum-
Entrenador para PICAXE-08
En esta oportunidad diseñaremos nuestra prime-
ra tarjeta de entrenamiento universal para programar
microcontroladores PICAXE, y como en todo co-
mienzo daremos inicio por lo más sencillo y más pe-
queño, esto es, los microcontroladores de 8 termina-
Figura 35 les denominados PICAXE – 08.
En primera instancia recordemos cuál es la con-
figuración de un PICAXE–08, para en función de
ello tomar en cuenta de cuántas entradas y cuántas
salidas podemos echar mano y aprovecharlas al má-
ximo. En la figura 36 tenemos el circuito de un “en-
trenador” para comenzar a trabajar con este micro-
controlador.

30 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

Figura 36

Tenemos la oportunidad de programa del PICAXE–08. La


disponer de un total de 4 E/S (4 Fig. 37A tarjeta entrenadora que propone-
entradas y 4 salidas), pero no nos mos tiene la posibilidad de explo-
confundamos, si sumamos el nú- tar al máximo las propiedades del
mero de salidas con el número de PICAXE–08, y será por medio de
entradas tendremos un total de 8 y jumpers como se podrá configurar
el PICAXE–08 que manejaremos la circuitería, tanto para progra-
tiene solamente 8 terminales. mar como para fijar entradas o sa-
lidas de datos (vea nuevamente el
¿Esto quiere decir que las ter- circuito de la figura 36).
minales de salida y de entrada A continuación describiremos ca-
ocupan todas las que posee? da parte de esta tarjeta entrenado-
La respuesta es “no”, ya que ra para que podamos sacarle el
en esas 8 terminales deben estar máximo provecho.
las 4 entradas, las 4 salidas ade- En primer término identificare-
más de las 2 terminales de ali- mos la ubicación de donde insta-
mentación y 2 para programarlo. lar el microcontrolador PICA-
Específicamente para los PICA- XE–08, este debe encontrarse en
XE–08 las terminales 3, 5, 6 y 7 la base identificada como IC1 res-
cumplen con una doble función, petando la identificación de las
por lo que debemos tener cuidado terminales (vea la placa de circui-
cuando los programemos, porque to impreso para este entrenador en
por ejemplo la terminal 3 puede la figura 37).
comportarse como una terminal Los conectores identificados co-
de entrada o una terminal de sali- mo ES1, ES2 y ES4 tienen 3 ter-
da, todo depende cómo la con- minales, de las cuales, la del me-
Figura 37 B
templemos cuando realicemos el dio de cada uno de ellos se hace

CLUB SABER ELECTRÓNICA 31


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

llegar hacia la correspondiente terminal del microcon- En el conector identificado como “Salidas” se en-
trolador PICAXE, las 2 terminales restantes de cada cuentra el reflejo de las 4 salidas digitales que posee el
conector (ES1, ES2 y ES4), una va hacia el bloque microcontrolador PICAXE–08, las cuales pueden ha-
destinado para conectar las entradas de datos, y la se- cerse llegar a circuitos externos en donde se refleje la
gunda se dirige hacia el bloque de terminales de sali- actividad del microcontrolador, o pueden ser utilizadas
da de datos. Pues bien, para seleccionar si la terminal los 2 circuitos con leds que se encuentran en el área de
del microcontrolador será configurada como salida o experimentos, estos circuitos se muestran en la figura
entrada, será a través de un jumper que, dependiendo 23. Para utilizar estos circuitos lo que tiene que hacer-
de cómo se conecte, unirá la terminal del medio del se es conectar el borne correspondiente ya sea S1 o S2
conector ya sea ES1 ó ES2 ó ES4, con el bloque de a cualquiera de las terminales de salida que son Sal0 ó
terminales de entradas o al bloque de terminales de Sal1 ó Sal2 ó Sal3 del conector “Salidas”.
salida, y de esta forma quedará configurada la circui- El espacio identificado como PROGRA se encuen-
tería del microcontrolador PICAXE para que esté lis- tra ocupado por un conector de audio estéreo tipo mini
to a recibir el programa con el cual trabajará el micro- Jack, el cual puede tener formas diferentes. El conec-
controlador. tor de audio estéreo tan sólo tiene 3 terminales, mismas
El conector identificado como PROG/SAL0 posee que serán utilizadas para comunicar al microcontrola-
3 terminales de las cuales la del medio se hace llegar a dor con una PC a través del puerto serie (vea nueva-
la terminal 7 del microcontrolador PICAXE, esta ter- mente en la figura 10 de este capítulo el diagrama de
minal cumple con la doble función tanto de programar cómo se deben identificar las terminales tanto en la tar-
al microcontrolador, como de fungir como terminal de jeta de entrenamiento como en el conector DB9 que se
salida de datos si así se requiere, esta selección se lle- conecta al puerto serie de una PC). Las terminales del
va a cabo mediante la conexión de un jumper hacia la conector de audio realizarán las siguientes actividades:
ubicación que se requiera.
Cuando se va programar un microcontrolador PI- La línea identificada con el número 1 sirve para
CAXE–08, es necesario que el jumper esté ubicado ha- verificar que el microcontrolador PICAXE se encuen-
cia la posición “Prog” en el conector PROG/SAL0, tra conectado al puerto serie de la PC.
porque de otra manera la programación será imposible La línea identificada con el número 2 sirve para
ya que no se tendrá comunicación entre la PC y el mi- programar al microcontrolador PICAXE.
crocontrolador. La línea identificada con el número 3 es la referen-
Cuando el jumper se encuentra ubicado hacia la po- cia GND o también conocida como tierra eléctrica.
sición “Sal0” en el mismo conector PROG/SAL0, se
tendrá configurada la terminal del microcontrolador Por último, la tarjeta entrenadora tiene incorporado
como salida. un regulador de voltaje identificado como IC2 que po-
El procedimiento para ubicar el jumper del conec- see la matrícula LM7805, y cuya misión es la de man-
tor PROG/SAL0 será de acuerdo a lo siguiente: tener un voltaje de 5 VCD para energizar al microcon-
trolador PICAXE y toda su circuitería, por lo tanto po-
1º paso.- Ubicar el jumper hacia la posición demos energizar nuestra tarjeta de entrenamiento con
“Prog” en el conector PROG/SAL0 para programar al una pila de 9 VCD.
microcontrolador PICAXE–08.
2º paso.- Cambiar el jumper hacia la posición Sal0 Lista de componentes para armar la
en el conector PROG/SAL0 si se va a utilizar esa ter- tarjeta controladora.
minal del microcontrolador PICAXE–08 como salida. IC1 ........Base de 8 terminales
IC2 ............................LM7805
En el conector identificado como “Entradas” se tie- D1, D ..................Leds Verdes
ne la posibilidad de hacerle llegar al microcontrolador D3 ............................Led Rojo
PICAXE–08, el estado lógico de 4 diferentes entradas S1, S2 Interruptores Push boton
digitales, las cuales pueden ser insertadas mediante cir- R1, R3, R4 ......10kΩ 1/4 Watt
cuitos externos o bien utilizar cualquiera de los 2 cir- R2 ...................22kΩ 1/4 Watt
cuitos con push-boton que se tienen en el área de expe- R5, R6, R7 .....390Ω 1/4 Watt
rimentos, estos circuitos se muestran en la figura 25 y
lo único que se tiene que hacer es conectar el borne co- Varios:
rrespondiente ya sea E1 ó E2 a cualquiera de las termi- Conector mini jack de audio, conector mini plug de
nales de entrada que son Ent1 ó Ent2 ó Ent3 ó Ent4 del audio, alambres de conexión (cables), broche (conec-
conector “Entradas”. tor) para pila de 9 VCD y circuito impreso.

32 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

Primeras Prácticas con PICAXE ¿Qué tamaño de batería se utilizan en electrónica?


Las baterías vienen en todo clase de tipos y tama-
ños. La mayoría de las baterías consisten en un gru-
Con lo leído hasta aquí, ya debe tener una idea de
po de pilas, en donde cada pila provee cerca de 1.5V
lo que es un microcontrolador PICAXE y de cómo se
(figura 38). Por lo tanto 4 pilas crean una batería de
“abre” el Programa de Edición a los efectos de escri-
6V y 3 pilas una de 4.5V.
bir un programa para descargar en la memoria del PI-
Como regla general, mientras más grande es la
CAXE.
batería, más tiempo durará (ya que contiene más quí-
Si bien más adelante vamos a explicar cómo se ha-
micos y por lo tanto será capaz de convertir más
cen diagramas de flujo, a continuación diremos la for-
energía). Una batería de mayor voltaje no dura más
ma de utilizar algunos componentes básicos y cómo se
que una batería de menor voltaje. Por lo tanto, una
los puede probar en el entrenador que vimos en la figu-
batería de 6V formada por 4 pilas AA dura mucho
ra 36 luego de realizar la descarga de programas muy
más que una batería PP3 de 9V (batería de 9V co-
sencillos.
mún), ya que por ser físicamente más grande contie-
Veremos cómo se puede verificar el funcionamien-
ne una mayor cantidad total de energía química. Por
to de un LED por medio de programas escritos en BA-
lo tanto, aquellos equipos que requieren mucha po-
SIC, también probaremos interruptores, zumbadores,
tencia para operar (por ejemplo un reproductor por-
interruptores y fotorresistencias.
tátil de CDs, el cual tiene un motor y un láser para
Estas primeras experiencias serán de utilidad a la
leer los CDs) siempre utilizarán pilas AA y no bate-
hora de realizar la presentación de los chips de 18 ter-
rías PP3.
minales para que luego pueda armar distintos proyec-
Los microcontroladores PICAXE generalmente
tos como alarmas, juegos de luces, mascotas electróni-
requieren entre 3 a 6V para operar, y por lo tanto es
cas, dados, etc.
mejor utilizar una batería formada por tres a cuatro
pilas AA. Nunca utilice una batería PP3 de 9V ya
que la alimentación de 9V puede dañar el microcon-
Uso y Prueba de Leds:
trolador.
Primeros Programas en BASIC
¿Qué tipo de batería debo utilizar?
Para que un microcontrolador desarrolle una ta-
Los distintos tipos de baterías contienen diferen-
rea mediante la ejecución del programa que tiene
tes químicos. Las baterías de carbón-zinc son las más
grabado en su memoria, es preciso que el mismo es-
baratas, y son adecuadas para utilizarse en muchos
té alimentado y posea componentes externos que
circuitos de microcontroladores. Las baterías alcali-
permitan su funcionamiento. Normalmente se em-
nas son más costosas, pero tienen una vida mucho
plean resistencias, diodos emisores de luz, capacito-
res, buzzers piezoeléctricos (zumbadores), interrup-
tores, etc.

El objetivo de este texto es que Ud. utilice al mi-


crocontrolador PICAXE como un elemento multi-
propósito y le saque “el mayor jugo posible”.

Antes de explicar cómo se puede realizar la prue-


ba de los componentes que trabajan con el microcon-
trolador, daremos algunas consideraciones generales
sobre las fuentes de energía que usaremos para ali-
mentar a nuestro circuito. Figura 38

¿Qué es una batería?


Una batería es una fuente de energía eléctrica (es
una fuente de potencia portátil). Las baterías están
constituidas por elementos químicos que almacenan
energía. Al conectarlas a un circuito, esta energía
química se convierte en energía eléctrica que puede
luego alimentar al circuito.

CLUB SABER ELECTRÓNICA 33


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

más larga y se las debe emplear Un diodo es un componente que só-


cuando se necesita alimentar dispo- lo permite el flujo de corriente en
sitivos que requieren mucha co- una dirección. Por lo tanto al utili-
rriente tales como motores. Las ba- Figura 39 zar un diodo, el mismo debe estar
terías de litio son mucho más costo- conectado en la dirección correcta.
sas pero tienen una larga vida, y por La pata positiva (ánodo) de un LED
lo tanto se utilizan comúnmente en es más larga que la pata negativa
circuitos de computadoras, video- (mostrada por una barra en el sím-
caseteras, etc. Otro tipo de baterías bolo). La pata negativa también po-
son las baterías recargables, las see un extremo plano en la cubierta
cuales pueden recargarse cuando se plástica del LED. En la figura 39 se
agotan. Estas están hechas, usual- puede observar el aspecto y el sím-
mente, de níquel y cadmio (Ni-cad) ó de hidróxido bolo de un led.
de metal cadmio (NiMH).
Atención: Nunca haga corto-circuito en los ter- ¿Para qué se utilizan los LEDs?
minales de una pila o una batería. Las baterías alca- Los LEDs se utilizan principalmente como luces
linas y las recargables pueden suministrar corrientes indicadoras. Los LEDs rojos y verdes se utilizan co-
muy grandes, y pueden calentarse tanto que pueden múnmente, en artefactos electrónicos tales como te-
llegar a “explotar” o derretir la carcasa. Siempre ase- levisores para mostrar si el televisor está encendido
gúrese de conectar la batería en el sentido correcto o si está en el modo stand-by (en espera). Los LEDs
(rojo positivo (V+) y negro negativo -0V ó tierra-). están disponibles en una variedad de colores diferen-
Si las baterías se conectan al revés, el microcontrola- tes, incluyendo rojo, amarillo, verde y azul. Existen
dor corre peligro de calentarse y dañarse. también LEDs ultra-brillantes, los cuales se utilizan
Los paquetes de baterías se conectan a menudo, en luces de seguridad tales como las luces intermi-
al circuito integrado mediante cables con conectores tentes utilizadas en bicicletas. Los LEDs infrarrojos
adecuados. Asegúrese siempre que los cables rojo y producen una luz infrarroja que no es visible al ojo
negro estén conectados en la dirección correcta. humano, pero que puede utilizarse en dispositivos ta-
También es de mucha utilidad pasar los cables de la les como mandos a distancia de equipo de video.
batería a través de los agujeros del tablero antes de
soldarlos en su lugar (esto proveerá una unión mu- ¿Cómo se usan los LEDs?
cho más fuerte la cual será mucho menos propensa a Los LEDs sólo necesitan una pequeña cantidad
soltarse). de corriente para operar, esto los hace mucho más
Nunca use una batería PP3 de 9V para alimentar eficientes que las lamparitas eléctricas (esto signifi-
directamente a un microcontrolador, ya que el mis- ca, por ejemplo, que si se tuviera una alimentación
mo sólo trabaja con voltajes entre 3 y 6V. por baterías un LED alumbraría por mucho más
Algunos soportes de baterías pequeñas requieren tiempo que una bombilla eléctrica). Si se pasa dema-
la soldadura de cables a contactos metálicos en la ca- siada corriente por un LED el mismo se puede dañar,
ja. En este caso debe ser muy cuidadoso de no sobre- es por esto que los LEDs normalmente se utilizan
calentar los contactos metálicos. Si junto con una resistencia en serie,
los contactos se calientan mucho, para protegerlos de corrientes excesi-
derretirán el plástico que los rodea y Figura 40 vas.
por lo tanto se caerán. Una buena El valor de la resistencia requerida
manera de prevenir esto, es pedirle a depende del voltaje de la batería uti-
un amigo que sostenga los contactos lizada. Para una batería de 4.5V se
metálicos con una pinza pequeña. puede utilizar una resistencia de
Las pinzas actuarán como un disipa- 330Ω o 330R que es lo mismo (fig.
dor de calor y ayudarán a evitar que 40), y para una batería de 3V lo apro-
el plástico se derrita. piado es una resistencia de 120Ω.

¿Qué es un LED? ¿Cómo se conecta un LED a un microcontrola-


Un Diodo Emisor de Luz (LED) es un compo- dor?
nente electrónico que emite luz cuando la corriente Debido a que el LED sólo requiere una pequeña
pasa a través de él. Un LED es un tipo de diodo es- cantidad de corriente para operar, el mismo se puede
pecial. conectar directamente entre un pin de salida del mi-

34 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

crocontrolador y 0V (sin olvidar incluir la resistencia 3. que se esté utilizando el número de pin correc-
en serie para protección). to dentro del programa.
4. que todos los componentes estén bien solda-
¿Cómo se prueba el LED con el microcontrola- dos.
dor?
Después de conectar el LED, el mismo puede Para la prueba, se puede emplear también el cir-
probarse utilizando un simple programa tal como el cuito de una mascota virtual (figura 41) dado que se-
siguiente: rá uno de los proyectos que presentaremos más ade-
lante.
Main: El programa de la tabla 1 enciende y apaga 15 ve-
High 0 ces al LED conectado al pin de salida 0 utilizando
Wait 1 una técnica de programación BASIC llamada “bucle
Low 0 for...next” (esta técnica no puede utilizarse con orga-
Wait 1 nigramas).
Goto main _________________________________________
Tabla 1: Programa para encender y apagar un led 15 veces
Este programa debe encender y apagar el LED
(conectado al pin de salida 0) una vez por segundo. Main:
Para realizar esta primera práctica, ejecute el uti- For b1 = 1 to 15 ; inicio de un bucle
litario “Editor de Programa” según lo descrito (des- High 0 ; se pone en alto la salida “0”
cripto) en este mismo capítulo, luego, escriba el pro- Pause 500 ; se hace una pausa de medio segundo
grama anterior, conecte la placa entrenadora con el Low 0 ; se pone en estado bajo la salida “0”
PICAXE colocado, asegúrese que el jumper corres- Pause 500 ; se hace una pausa de medio segundo
pondiente esté en el lado de programación, conecte Next b1 ; se continúa con el bucle hasta que termine
uno de los leds de la placa en la salida “0”, descar- End ; fin del programa
gue el programa (asegúrese que el entrenador esté _______________________________________________________________
bien conectado por medio del cable al puerto serial
de la PC), luego corra el jumper a la posición salida El número de veces que el código debe repetirse,
y vea si obtiene el funcionamiento deseado. se almacena en la memoria del chip PICAXE utili-
Si el LED no funciona verifique: zando una “variable” llamada b1 (el PICAXE tiene
14 variables nombradas de b0 a b13). Una variable
1. que el LED esté conectado en la salida “0” es un “registro de almacenamiento de números” den-
(por medio de un simple cablecito). tro del microcontrolador, que el mismo puede utili-
2. que se esté utilizando la resistencia correcta zar para almacenar números a medida que el progra-
en la placa entrenadora y que el LED esté en el sen- ma se ejecuta.
tido correcto. Le aconsejamos que lea o repase todo lo anterior
nuevamente, que baje de In-
ternet el programa para traba-
Figura 41 jar con PICAXE y practique
con el ejercicio que acabamos
de dar y con los que segui-
mos:

Uso y Prueba
de Timbres y Zumbadores

¿Qué es un zumbador electró-


nico?
Un zumbador electrónico es
un “miniparlante” (miniboci-
na) de bajo costo que se utili-
za para hacer sonidos. El soni-
do generado por el zumbador

CLUB SABER ELECTRÓNICA 35


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Figura 43 cinta adhesiva al lado co-


rrecto del zumbador (¡el la-
do de bronce que no tiene
los cables!).
En algunas ocasiones pue-
de que desee emitir sonidos
más fuertes. En este caso lo
adecuado es utilizar un par-
lante (bocina) en vez de un
zumbador. Al utilizar par-
lantes es necesario conectar
un condensador (por ejem-
Figura 42 plo un capacitor electrolíti-
co de 10µF) al circuito del
puede cambiarse alterando las señales electrónicas microcontrolador para evi-
suministradas por el microcontrolador. tar causarle daños al chip.
Recuerde que, al igual que
¿Para qué se utilizan los zumbadores? el zumbador, los parlantes
Los zumbadores se utilizan en una gran variedad sólo operan correctamente
de diferentes productos para dar “retroalimentación” si están montados en una “caja de sonido”.
al usuario. Un buen ejemplo de esto es una máquina Después de conectar el zumbador, el mismo pue-
expendedora, la cual emite un sonido cada vez que de probarse utilizando un simple programa tal como
se presiona un botón para escoger un refresco o algo el siguiente:
para comer. Este sonido da retroalimentación al
usuario para indicarle que se recibió la señal del bo- Main:
tón presionado. Otros tipos de zumbadores se utili- Sound 2, (65,100)
zan a menudo en tarjetas musicales de cumpleaños, Sound 2, (78,100)
para tocar una melodía cuando se abre la tarjeta. Sound 2, (88, 100)
Sound 2, (119, 100)
¿Cuál es la diferencia entre un zumbador y un Go to main
timbre ?
El timbre (o sirena) contiene un pequeño circuito Este programa hará que el zumbador (conectado
electrónico, el cual genera la señal electrónica nece- al pin de salida 2) haga 4 sonidos diferentes (valores
saria para emitir un sonido. Por lo tanto, cuando el 65, 78, 88, 119), siguiendo el diagrama de flujo de la
timbre se conecta a una batería siempre emitirá el figura 43.
mismo sonido. El zumbador no tiene este circuito y Vea qué sencillo es programar…
por ende necesita una señal externa. Esta señal pue-
de suministrarla un pin de salida del microcontrola- “main” (del inglés “principal), es una etiqueta
dor. El zumbador también requiere menos corriente que dice que está por empezar el programa.
para operar y por lo tanto durará más en circuitos ali- “sound 2” es una instrucción que dice que el PI-
mentados por baterías. CAXE genere un sonido y lo emita por la salida 2,
cuya frecuencia dependerá del primer número que
¿Cómo se Usan los Zumbadores? está entre paréntesis en la instrucción y su valor pue-
La conexión de los zumbadores a un PICAXE es de ser cualquiera entre 0 y 127.
muy sencilla. Simplemente conecte el cable rojo al De la misma mamera que antes, podemos probar
pin de salida del microcontrolador y el cable negro a este programa, utilizando el entrenador propuesto en
0V (tierra), figura 42. Tome en cuenta que los zum- este capítulo y conectando el zumbador en la salida
badores más económicos no tienen cubierta plástica 2. Ejecute el utilitario “Editor de Programa” luego,
exterior. En estos casos es necesario montar el zum- escriba el programa anterior, conecte la placa entre-
bador sobre una sección del circuito impreso (con nadora con el PICAXE colocado, asegúrese que el
cinta adhesiva de doble contacto) para crear un soni- jumper correspondiente esté en el lado de programa-
do que se pueda escuchar. El circuito impreso actúa ción, conecte el zumbador en la salida “2”, descar-
como una “caja de sonido” (baffle) y amplifica el so- gue el programa (asegúrese que el entrenador esté
nido emitido por el zumbador. Asegúrese de pegar la bien conectado por medio del cable al puerto serial

36 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

de la PC), luego corra el jumper a la posición salida “ejemplos”. Si no tiene los programas para trabajar
y vea si obtiene el funcionamiento deseado. con los microcontroladores PICAXE, puede bajarlos
Si el zumbador no funciona verifique: sin cargo de nuestra web: www.webelectronica.co-
m.ar, haciendo click en el ícono password e ingre-
1. Que el valor del sonido (primer número en el sando la clave: “picaxe212”.
paréntesis) esté entre 0 y 127.
2. Que se esté utilizando el número de pin correc-
to dentro del programa. Prueba y Uso de Sensores Digitales
3. Que todas las conexiones estén bien soldadas.
¿Qué son los interruptores digitales?
Para probar este elemento también puede utilizar Un sensor digital es simplemente un componente
el circuito de la mascota virtual. del tipo “interruptor”, el cual sólo puede estar en
En síntesis, al utilizar el comando sound, el pri- dos posiciones: encendido ó apagado. Si dibujára-
mer número indica el número de pin (en los proyec- mos una gráfica de las señales de encendido-apaga-
tos el pin 2 es utilizado frecuentemente). El siguien- do del interruptor a medida que se oprime, el mismo
te número es el tono, seguido por la duración. Mien- se vería como se muestra en la figura 44. Los inte-
tras más alto es el tono, mayor será la altura tonal del rruptores son componentes electrónicos que detectan
sonido (tome en cuenta que algunos zumbadores no movimientos. Existe una gran variedad de interrup-
pueden emitir tonos muy altos y por lo tanto valores tores diferentes, por ejemplo:
mayores de 127, puede que no se escuchen).
Al utilizar sonidos múltiples puede incluirlos to-
dos en la misma línea. Por ejemplo:

Sound 2, (65,100, 78, 100, 88, 100, 119, 100)

El programa BASIC mostrado en la tabla 2 utili-


za un bucle for...next para emitir 120 sonidos dife-
rentes, utilizando la variable b1 para almacenar el
valor (tono) del comando sound.
El número almacenado en la variable b1 aumen- Figura 44
ta 1 en cada bucle (1-2-3-etc.), por lo tanto, al utili-
zar la variable b1 en la posición del tono, la nota se
cambia en cada bucle. El programa de la tabla 3 rea- 1) interruptores de botón de presión que detectan
liza la misma tarea pero en orden inverso (contando cuando el botón ha sido oprimido
el tono en cuenta regresiva). 2) micro-interruptores con palanquitas largas
_________________________________________ que detectan pequeños movimientos
Tabla 2 3) interruptores de nivel que detectan sacudidas
Main: 4) interruptores de lengüeta (reed switches) que
For b1 = 1 to 120 step-1 ,iniciar un bucle for … next detectan el movimiento de un imán
Sound 2, (b1, 50) ,emita un sonido con el tono b1
Next b1 , siguiente b1 ¿Para qué se utilizan los Interruptores?
End ,fin del programa Los interruptores de botón de presión se utilizan
______________________________________________________________ comúnmente en dispositivos tales como teclados.
Los micro-interruptores se utilizan en alarmas contra
Tabla 3 robos, para detectar si se ha quitado la cubierta de la
Main: caja de la alarma. Los interruptores de lengüeta (reed
For b1 = 120 to 1 step-1 ,iniciar un bucle for … next switches) se utilizan para detectar la apertura de
Sound 2, (b1, 50) ,emita un sonido con el tono b1 puertas y ventanas, y los interruptores de nivel se uti-
Next b1 ,siguiente b1 lizan a menudo para detectar movi-
End ,fin del programa miento en dispositivos tales como ju-
_________________________________________ guetes, secadores y alarmas. Los
símbolos para un interruptor desli-
Le aconsejamos que baje de Internet el programa zante y para un interruptor de pre-
para trabajar con PICAXE y realice sus propios Figura 45 sión, se muestran en la figura 45.

CLUB SABER ELECTRÓNICA 37


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Los interruptores se insta- mantenga presionado, se encenderá el led conectado


lan en los circuitos junto a en la salida “0” durante 2 segundos. Recuerde que
una resistencia como se para programar el jumper de la pata 7 debe estar del
muestra en el diagrama de lado de programación y luego del lado de salida “0”
la figura 46. El valor de la para que el circuito trabaje según lo programado.
resistencia no es impor-
tante, pero a menudo se
utiliza una resistencia de Prueba y Uso de Fotorresistencias
10kΩ. Cuando el inte-
Figura 46 rruptor está “abierto”, la ¿Qué es una fotorresistencia?
resistencia de 10kΩ co- Una fotorresistencia es un tipo especial de resis-
necta el pin de entrada del microcontrolador a 0V, lo tencia la cual reacciona a cambios en el nivel de luz.
cual da una señal de apagado (nivel lógico 0) al pin La resistencia de la fotorresistencia cambia a medida
de entrada del microcontrolador. que varía la cantidad de luz que incide sobre la “ven-
Cuando el interruptor se activa, el pin de entrada tana” del dispositivo. Esto permite a los circuitos
se conecta al terminal positivo de la batería (V+). Es- electrónicos medir cambios en el nivel de luz. Vea
to da una señal de encendido (nivel lógico 1) al mi- en el capítulo correspondiente a la explicación del
crocontrolador. funcionamiento de los PICAXE-18 la curva de res-
El interruptor puede probarse utilizando un sim- puesta y otros datos relevantes sobre las fotorresis-
ple programa tal como el mostrado en la tabla 4. Es- tencias.
te programa encenderá o apagará una salida depen-
diendo si el interruptor es presionado o no. En este ¿Para qué se utilizan las fotorresistencias?
programa las tres primeras líneas constituyen un bu- Las fotorresistencias se utilizan en las lámparas
cle continuo. Mientras la entrada esté apagada, el automáticas de las rutas para encenderlas durante la
programa seguirá reiniciándose una y otra vez. Si la noche y apagarlas durante el día. También se utili-
entrada está encendida, el programa salta a la etique- zan en muchas alarmas y juguetes para medir niveles
ta llamada “flash”. El programa luego enciende por de luz.
2 segundos la salida 0 antes de regresar al bucle prin- La fotorresistencia es un sensor del tipo analó-
cipal. Note cuidadosamente la ortografía de la línea: gico. Un sensor analógico mide una señal continua
“if...then – input3” (entrada 3) es una sola palabra tal como luz, temperatura o posición (en vez de una
(sin espacios en blanco). Es permitido utilizar tanto señal digital de encendido/apagado como es el caso
pin3 como input3, ambas significan lo mismo. No- de un interruptor). El sensor analógico provee como
te también que después del comando then, única- señal un voltaje variable. Esta señal de voltaje pue-
mente está la etiqueta “–“ en este punto no se permi- de representarse mediante un número entre el 0 al
te ninguna otra palabra aparte de la etiqueta. 255 (Por ejemplo: muy oscuro = 0, luz brillante =
Para realizar la prueba del interruptor con este 255).
programa, deberá conectar el interruptor en la entra- Las fotorresistencias se pueden utilizar en dos
da 3 del entrenador y en la salida deberemos conec- maneras. La manera más simple de utilizar una fo-
tar un led luego, una vez descargado el programa si- torresistencia es como un simple interruptor de en-
guiendo el procedimiento que explicamos para otros cendido/apagado (digital) – cuando el nivel de luz
ejemplos, cada vez que presione el pulsador y lo sube por arriba de cierto valor (llamado el valor de
“umbral”), la fotorresis-
Tabla 4 tencia enviará una señal
de encendido; cuando el
nivel de luz está debajo
de cierto nivel, la fotorre-
sistencia enviará una señal
de apagado.
En este caso, la fotorre-
sistencia se coloca en una
configuración de divisor
de voltaje con una resis-
tencia estándar. El valor
de la resistencia estándar

38 CLUB SABER ELECTRÓNICA


L OS M ICROCONTROLADORES PICAXE

Figura 47 Figura 48

define el “valor de umbral”. Para fotorresistencias el microcontrolador de 8 patas sólo uno de los pi-
miniatura el valor adecuado es 1kΩ, para fotorresis- nes puede utilizarse.
tencias más grandes del tipo ORP12 una resistencia El circuito electrónico para utilizar el converti-
de 10kΩ es más adecuada. Si se desea la resistencia dor a-d es un circuito divisor de voltaje idéntico al
fija puede reemplazarse por una resistencia variable mostrado en la figura 47. Las “mediciones” analógi-
de manera que el valor de umbral se pueda ajustar cas se realizan dentro del microcontrolador mismo.
para diferentes valores del nivel de luz (figura 46). Para realizar una prueba, conecte la fotorresisten-
Una manera más versátil de utilizar la fotorre- cia, la misma se puede probar como un interruptor
sistencia es midiendo un cierto número de valores de digital utilizando un simple programa tal como se ve
luz diferentes, de manera que las decisiones se pue- en la tabla de la figura 48 (que también muestra el
dan tomar para niveles de luz cambiantes en vez de diagrama de flujo que dá origen al programa).
un solo nivel de umbral fijo. Un valor cambiante se Este programa encenderá y apagará la “salida 0”
conoce como un valor “analógico”. de acuerdo al nivel de luz.
Para medir valores analógicos el microcontrola- Para probar la fotorresistencia conéctela al entre-
dor debe tener un convertidor analógico/ digital y nador de la figura 35 y siga los procedimientos que
además el software utilizado debe ser capaz de so- hemos utilizado para la prueba de otros componen-
portar el uso de este convertidor. La mayoría de los tes, la misma se puede probar como un sensor ana-
microcontroladores sólo tienen convertidores a-d en lógico utilizando un simple programa, tal como se ve
algunos de sus pines de entrada, por lo tanto el pin en la figura 49.
de entrada se debe seleccionar cuidadosamente. En El comando “readadc” se utiliza para leer el va-
lor analógico (un núme-
ro entre 0 y 255) dentro
Figura 49 de la variable b1. Una
vez que este número es-
tá en la variable b1, el
mismo se puede probar
para ver si es mayor que
100 ó mayor que 50. Si
es mayor que 100 la sa-
lida 4 se enciende, si
está entre 50 y 100 se
enciende la salida 0, y si
es menor de 50 ambas
salidas se apagan.
De esta manera culmi-
namos este capítulo
“presentación” de los
microcontroladores PI-
CAXE, veamos ahora
cómo trabajar con los
PICAXE-18.

CLUB SABER ELECTRÓNICA 39


TRABAJANDO CON MICROCONTROLADORES
PICAXE DE 18 P INES
Recordemos: El microcontrolador PI- · Reducción en los niveles de existencia ya que un
CAXE es un PIC al que se le graba un pe- microcontrolador reemplaza varias partes.
· Simplificación del ensamblaje del producto y
queño programita interno (firmware) para productos finales más pequeños.
que pueda ser programado directamente · Gran flexibilidad y adaptabilidad del producto
sin la necesidad de un cargador y los pro- ya que las funciones del producto están programa-
gramas se pueden hacer en BASIC y en das en el microcontrolador y no incorporadas en el
otros entornos muy amigables. En síntesis, hardware electrónico.
· Rapidez en modificaciones y desarrollo del pro-
tiene todas las bondades del PIC pero son ducto mediante cambios en el programa del micro-
mucho más fáciles de usar. controlador, y no en el hardware electrónico.

A modo de síntesis, por si Ud. ha comenzado la Algunas de las aplicaciones que utilizan micro-
lectura por esta sección, digamos que el microcon- controladores incluyen artefactos domésticos, siste-
trolador PIC (microcontrolador programable, figura mas de alarma, equipo médico, subsistemas de auto-
1) es a menudo descrito como una “computadora en móviles y equipo electrónico de instrumentación.
un chip”. Es un circuito integrado que contiene me- Algunos automóviles modernos contienen más
moria, unidades procesadoras y circuitos de entrada- de treinta microcontroladores, utilizados en una am-
/salida, en una sola unidad. plia variedad de subsistemas desde el control del mo-
Estos microcontroladores son comprados en tor hasta el cierre a control remoto.
“blanco” y luego programados con un programa es- En la Industria, los microcontroladores son
pecífico de control. Una vez programado, este mi- usualmente programados utilizando programación
crocontrolador es introducido en algún producto pa- en lenguaje C. Sin embargo, debido a la complejidad
ra hacerlo más inteligente y fácil de usar. de este lenguaje, es muy difícil para estudiantes muy
A manera de ejemplo, un horno de microondas jóvenes de bachillerato, el uso adecuado de dichos
(figura 2) puede utilizar un solo microcontrolador lenguajes.
para procesar información proveniente del teclado
numérico, mostrar información para el usuario en la
pantalla y controlar los dispositivos de salida (motor
de la mesa giratoria, luz, timbre y magnetrón).
Un microcontrolador puede, a menudo, reempla- Más Sobre el Sistema PICAXE
zar a un gran número de partes separadas, o incluso
a un circuito electrónico completo. Algunas de las El sistema “PICAXE” es un sistema de micro-
ventajas obtenidas con el uso de microcontroladores controlador fácil de programar que utiliza un lengua-
en el diseño de productos son: je BASIC muy simple, el cual la mayoría de los es-
tudiantes pueden aprender rápidamente. El sistema
· Aumento en la confiabilidad debido al menor PICAXE
Figura 2
número de partes. explota las
caracterís-
ticas únicas
Figura 1 de la nueva
generación
de micro-
controlado-
res de bajo
c o s t o
FLASH.
Estos mi-
crocontro-

CLUB SABER ELECTRÓNICA 41


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Los PICAXE son microcontroladores cuya licen-


Figura 3
cia corresponde a la empresa Education Revolution.
Son PICs comunes (de la empresa Microchip) que
poseen un pequeño programita interno que los hace
más fáciles de operar. De esta manera, un PICAXE
puede reemplazar a un PIC, pero un PIC no puede
reemplazar a un PICAXE (dado que el PIC no tiene
ese programita).

Si Ud. compra un PICAXE, verá que


tiene la matrícula de un PIC, sin embargo
ladores pueden ser programados una y otra vez sin la
necesidad de un costoso programador PIC.
NO ES UN PIC común, es un PIC que ha
El poder del sistema PICAXE radica en su senci- sido programado y así se ha convertido en
llez. No necesita de ningún programador, borrador o un PICAXE.
complejo sistema electrónico.
El programa puede escribirse en BASIC o por
El sistema PICAXE consiste en tres componen-
medio de un diagrama de flujo y se carga mediante
tes principales:
una conexión de tres cables conectada al puerto serie
de la computadora.
1) El Software “Editor de Programación”: Este
El circuito microcontrolador PICAXE utiliza
software debe ser ejecutado en una computadora y
únicamente tres componentes y puede ser ensambla-
permite utilizar el teclado de la PC para escribir pro-
do en un tablero experimental para componentes
gramas en un simple lenguaje BASIC. Los progra-
electrónicos (protoboard), en una placa universal (de
mas también pueden generarse dibujando diagramas
las que se venden en casas de electrónica) o en una
de flujo. Alternativamente, el software “Crocodile
placa PCB (vea la figura 3).
Technology” puede ser utilizado para simular circui-
EL sistema PICAXE está disponible en distintas
tos electrónicos completos, programándolos con dia-
variedades: 8 pines, 18 pines y 28 pines. El controla-
gramas de flujo. Por favor vea el apéndice de “Cro-
dor PICAXE-28 provee 22 pines de entrada/salida (8
codile Technology” para mayor información.
salidas digitales, 8 entradas digitales y 4 entradas
analógicas).
2) El cable serie: Este es el cable que conecta el
El sistema PICAXE-18 provee 8 salidas y 5 en-
sistema PICAXE a la computadora. El cable sólo ne-
tradas y el sistema PICAXE-08 provee 5 terminales
cesita ser conectado durante la descarga de progra-
para ser usados como entradas o salidas (con algunas
mas. No debe ser conectado cuando el PICAXE está
restricciones).
siendo ejecutado debido a que el programa está per-
Las principales características de los microcon-
manentemente almacenado en el chip PICAXE, aún
troladores PICAXE son:
cuando la fuente de alimentación ha sido desconec-
tada.
· Bajo costo, circuito de fácil construcción.
· Hasta 8 entradas, 8 salidas y 4 canales analógi-
Figura 4
cos.
· Rápida operación de descarga del programa a la
memoria del PICAXE mediante el cable serial.
· Software “Editor de Programación” gratuito y
de fácil uso.
· Lenguaje BASIC simple y fácil de aprender.
· Editor de diagramas de flujo incluido.
· Puede ser programado también mediante el soft-
ware “Crocodile Technology”.
· Extenso número de manuales gratuitos y foro de
apoyo en línea.
· Tablero experimental y tutoriales disponibles.
· Paquete de control remoto infrarrojo disponible.
· Paquete de servocontrolador disponible.

42 CLUB SABER ELECTRÓNICA


T RABAJANDO CON M ICROCONTROLADORES PICAXE DE 18 P INES

Hay dos tipos de cables para descarga disponi- ro tutorial que contiene interruptores, sensores, una
bles (al usar el tablero experimental tutorial cual- pantalla de siete barras y conexiones para dispositi-
quiera de los dos cables puede ser utilizado), los cua- vos de salida (es el tablero de la figura 4).
les se conectan ya sea a un conector cabecera de tres
pines o a un conector hembra estéreo pequeño (J35), 2) Tablero de Proyecto Estándar: Este es un ta-
figura 4. blero de proyecto que provee de 8 salidas (encendi-
do / apagado ó on/off) digitales mediante un contro-
3) El chip PICAXE y el tablero electrónico: El lador Darlington (figura 5).
microcontrolador PICAXE ejecuta programas que
han sido descargados al mismo. Sin embargo, para
operar, el chip debe ser montado en un tablero elec-
trónico que provea una conexión al chip microcon-
trolador.
El tablero electrónico puede ser diseñado por el
usuario en un circuito impreso, en una interface pre-
fabricada o, para ahorrar tiempo y por conveniencia,
utilizar el tablero electrónico tutorial incluido. Tanto
en la figura 4 como en la figura 5, se pueden ver ta-
bleros que asumen el uso del microcontrolador PI- Figura 5
CAXE-18 (18 pines) montado en el tablero electró-
nico tutorial.
A modo de ejemplo, y antes de continuar con la 3) Tablero para Proyecto de Alta Potencia: Este
descripción de los microcontroladores PICAXE, da- es un tablero que provee de 4 salidas digitales (me-
mos a continuación el procedimento que suele ser diante controladores FET) y dos salidas para motores
empleado para trabajar con este sistema: reversibles (figura 6).
Figura 6
1. Escriba el programa en la computadora utili-
zando el software “Programming Editor”.
2. Conecte el cable de descarga desde la compu-
tadora al PICAXE.
3. Conecte el acumulador eléctrico (batería) al
PICAXE.
4. Utilice el software “Editor de Programación”
para descargar el programa. El cable de descarga
puede ser removido posteriormente a la descarga.

El programa comenzará a ejecutarse en el PICA-


XE automáticamente. Sin embargo, el programa
puede ser reiniciado en cualquier momento presio- Preparando el Tablero Tutorial
nando el interruptor de reinicio.
Antes de usar el tablero tutorial, el mismo debe
ser conectado a las baterías eléctricas.
La figura 7 nos muestra el enchufe hembra para
Entrenador PICAXE-18 caja de baterías.
Figura 7
Localice los cables de la caja
Vamos a explicar cómo se utiliza un “entrenador” de baterías y doble el cable des-
para PICAXE-18, para ello, se supone que Ud. posee nudo sobre el aislante en ambos
un tablero (placa de circuito impreso) ya montado. Si cables. Coloque el cable rojo en
no lo tiene, no se preocupe, en este libro explicare- el conector hembra marcado
mos cómo puede hacerlo Ud. mismo. “V+” y el negro en el conector
Hay tres tipos de tableros electrónicos de tutoria- marcado “O V”.
les/proyectos disponibles: Apriete los tornillos de manera que tanto el cable
desnudo como el aislante queden atrapados en el en-
1) Tablero electrónico tutorial: Este es un table- chufe, esto provee una conexión más fuerte que sim-

CLUB SABER ELECTRÓNICA 43


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

plemente prensando el cable desnudo. Utilice siem- 3. En el menú desplegable escoja Ver -> Opcio-
pre la caja de baterías eléctricas de 6V (se requiere nes para acceder a la pantalla de opciones (ésta
de 4 pilas AA) suministrada. NO use una batería PP3 puede que aparezca automáticamente).
de 9V. 4. Haga click en “Modo” y seleccione PICAXE-
18
5. Haga click en “Puerto Serie” y seleccione el
El Software Gratuito para Trabajar puerto serie al cual el cable PICAXE está conecta-
con PICAXE do, luego haga click en OK.
6. Escriba el siguiente programa:
Requerimientos:
Windows 95/98/ME/NT/2000/XP main:
El software puede bajarlo de la página del fabri- high 7
cante (www.rev-ed.co.uk) o de nuestra web: www.we- pause 1000
belectronica.com.ar (con la clave picaxe) y debe insta- low 7
larse haciendo un click en el ejecutable, es decir, debe pause 1000
instalar el software “Editor de Programación” siguien- goto main
do las instrucciones en su pantalla. Si no lo tiene en su
computadora, deberá también instalar el software (Tome en cuenta el símbolo (:) directamente des-
“Adobe Acrobat Reader”, ya que lo necesitará para pués de la etiqueta “main” y los espacios entre los
poder leer los manuales de ayuda. comandos y los números).
7. Asegúrese que el circuito PICAXE esté conec-
Ejecutando un Programa de Muestra tado al cable serie y a las baterías.
El siguiente programa enciende y apaga la salida 8. Seleccione PICAXE -> Ejecutar. Una barra de
7 cada segundo. Cuando usted descarga este progra- descarga de programa debe aparecer mientras el
ma sobre el PICAXE del tablero (entrenador), el programa es descargado. Al terminar la descarga, el
punto decimal del display de siete segmentos debe programa debe comenzar a ejecutarse automática-
encenderse y apagarse cada segundo. mente. El punto decimal LED -Light Emitting Diode:
Diodo Emisor de Luz- en la salida 7, deberá encen-
main: derse y apagarse una vez por segundo.
high 7
pause 1000
low 7 Instrucciones para Uso en Windows
pause 1000
goto main Damos a continuación un listado de botones co-
rrespondientes a la barra del menú (figura 8):
Este programa utiliza los comandos high y low
para controlar el pin de salida 7, y utiliza el coman- Open = Abrir
do de pause para causar un retardo (1000 ms = 1 se- Save = Salvar
gundo). Cut = Cortar
El último comando, el comando goto hace que el Copy = Copiar
programa salte a la etiqueta main, que es el comien- Paste = Pegar
zo del programa. Esto significa que el programa es Print = Imprimir
un bucle perpetuo (lazo cerrado). Run = Ejecutar
Note que la primera vez que la etiqueta es utili-
zada debe estar seguida por un símbolo de dos pun- a) Para descargar y ejecutar un programa:
tos (:). Este símbolo indica a la computadora que la 1. Verifique que el cable de descarga esté conec-
palabra es una nueva etiqueta. tado tanto al PICAXE como al puerto serie de la
A continuación explicamos, paso a paso, cómo computadora.
realizar este primer ejercicio de prueba:

1. Conecte el cable PICAXE a un puerto serie de


la computadora y preste atención a cuál de los puer-
tos lo conecta (normalmente COM1 ó COM2).
2. Ejecute el Software “Programming Editor”. Figura 8

44 CLUB SABER ELECTRÓNICA


T RABAJANDO CON M ICROCONTROLADORES PICAXE DE 18 P INES

2. Verifique que las baterías estén conectadas al Recuerde que los comentarios [explicaciones
PICAXE. posteriores al símbolo de apóstrofe (‘)] facilitan mu-
3. Asegúrese que el software “Programming cho la comprensión de cada línea del programa. Es-
Editor” esté en el modo correcto (La palabra PICA- tos comentarios son ignorados por la computadora al
XE-18 debe aparecer en la barra de estado en la es- descargar un programa al PICAXE. “Todo lo que en
quina inferior izquierda de la pantalla). una línea está después de (‘) es ignorado por el pro-
4. Haga click en Ejecutar (o en el respectivo bo- grama”.
tón de la barra de herramientas) Las etiquetas (“main:” en el programa de la tabla
1) pueden ser cualquier palabra (con la excepción de
b) Para salvar un programa: palabras claves como por ejemplo “switch”) pero
1. Haga click en Archivo -> Guardar como…(ó DEBEN empezar con una letra. Cuando la etiqueta
en el respectivo botón de la barra de herramientas) es definida por primera vez debe llevar al final el
2. Escriba el nombre bajo el cual quiere guardar símbolo de dos puntos (:). Esto indica a la computa-
el archivo dora que la palabra es una nueva etiqueta.
3. Haga click en <OK> Este programa utiliza el comando wait. Los co-
mandos wait y pause se utilizan para crear retardos
c) Para abrir un programa guardado: o tiempos muertos. Sin embargo, el comando wait
1. Haga click en Archivo -> Abrir (o en el respec- puede ser utilizado únicamente con segundos enteros
tivo botón de la barra de herramientas) mientras que pause se puede utilizar para retardos
2. Seleccione el archivo deseado de la lista ha- más cortos (el mismo se asigna en milésimas de se-
ciendo click en el mismo. gundo). Al comando wait se le pueden asignar nú-
Haga click en <OK> meros del 1 al 65, los cuales deber escribirse poste-
rior al comando. Al comando pause se le pueden
d) Para iniciar un nuevo programa: asignar números entre 1 y 65535.
1. Haga click en Archivo- Nuevo Es una buena técnica de programación usar tabu-
laciones (o espacios) al inicio de líneas sin etiquetas
e) Para imprimir un programa: de manera que los comandos estén alineados. El tér-
1. Haga click en Archivo -> Imprimir… (o en el mino “espacios en blanco” es utilizado por progra-
respectivo botón de la barra de herramientas) madores para definir tabulaciones, espacios y líneas
2. Si desea que a cada línea del programa se le en blanco. Dichos “espacios en blanco”, utilizados
asigne un número, asegúrese de marcar la casilla correctamente, hacen al programa mucho más fácil
“Imprimir números de línea”. de leer y entender (vea las tabulaciones que hemos
3. Haga click en <OK> hecho en el programa de la tabla1; en la primera co-
lumna ponemos etiquetas o definimos variables, en
la segunda columna colocamos las instrucciones y en
la tercera columna están los comentarios que facili-
Continuamos Aprendiendo a tan la comprensión del programa).
Nota: Algunas versiones antiguas de lenguaje
Hacer Programas en Basic BASIC utilizan “números de línea” en vez de etique-
tas para trabajar con los comandos goto. Desafortu-
Utilizando el Comando
Symbol TABLA 1

Algunas veces es difícil symbol dp = 7 ‘renombrar salida 7 “dp” (punto decimal)


recordar cuáles pines están symbol buzzer = 1 ‘renombrar salida 1 “buzzer” (timbre)
conectados a cuáles disposi-
tivos. El comando symbol main: ‘hacer una etiqueta llamada “main”
puede, en estos casos, ser uti- high dp ‘LED encendido
low buzzer ‘timbre apagado
lizado al inicio del programa
wait 1 ‘ esperar un segundo
para renombrar las entradas y low dp ‘ LED apagado
salidas. Note que este pro- high buzze ‘ timbre encendido
grama asume la conexión de wait 1 ‘esperar 1 segundo
un timbre externo al pin de goto main ‘regresar al inicio (“main”)
salida 7. Ver tabla 1.

CLUB SABER ELECTRÓNICA 45


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

nadamente, este sistema pue-


de ser muy inconveniente ya
que si el programa es modifi-
cado posteriormente agre-
gando o eliminando líneas,
todos los números de línea
posteriores deben ser modifi-
cados. El sistema de etique-
tas utilizado en la mayor par-
te de las versiones modernas
de lenguaje BASIC, supera
este problema automática-
mente.
El “cerebro” del sistema
PICAXE es el microcontro-
lador de 18 pines
PIC16F627. Este PIC posee Figura 9
un programa que ha sido gra-
bado para convertirlo en un
elemento del sistema PICAXE (se llama PICAXE- programa es ejecutado. La misma es utilizada nor-
18). malmente para almacenar respuestas de sumas mate-
Aunque los microcontroladores son relativamen- máticas que el microcontrolador hace mientras está
te baratos (algunos microcontroladores cuestan me- trabajando. Esta memoria es “volátil”, lo cual signi-
nos de 2 dólares), los mismos son dispositivos muy fica que tan pronto las baterías son desconectadas, la
complejos que contienen miles de transistores, resis- información almacenada en la misma se pierde.
tencias y otros componentes electrónicos. Hay 14 bytes de memoria temporal disponibles y
El microcontrolador PICAXE almacena sus pro- los mismos son denominados desde b0 a b13 dentro
gramas (firmware) en su memoria FLASH “no volá- de los programas.
til”. La ventaja de esta memoria es que no pierde el
programa descargado cuando la fuente de alimenta-
ción (baterías) es desconectada del circuito (cuando El Circuito del “Entrenador” PICAXE-18
las baterías son reconectadas el programa se inicia
nuevamente). Sin embargo, cuando desee reprogra- La figura 9 muestra el circuito básico PICAXE-18.
mar el PICAXE, puede descargar un nuevo progra- El resistor de 4k7 (4700Ω), conectado en el pin 4, se
ma; esta acción borra el viejo programa almacenado usa como resistencia de “pull-up” para quitar al micro
en la memoria y almacena el nuevo programa en la del estado de reset. Si desea colocar un sistema de re-
memoria de programa. La memoria sólo permite el set, debe conectar un interruptor o pulsador entre el pin
almacenamiento de un programa a la vez. 4 y masa (tierra, gnd) de modo que al ser presionado se
produzca el estado de reset del micro.
Tome en cuenta que no es posible sacar el pro-
grama fuera de la memoria del PICAXE para ¡Tome en cuenta que el microcontrolador PI-
“leerlo”; por ende, si desea guardar el código de un CAXE no es un microcontrolador en blanco... ya
programa para utilizarlo posteriormente debe tiene un programa interno para que pueda ser usa-
guardarlo en su computadora antes de descargarlo do con el utilitario Programming Editor!
al PICAXE. Esto es una restricción que el operador
debe tener en cuenta, dado que en un PIC sí es po- El microcontrolador PICAXE está preprograma-
sible leer el programa grabado en la memoria. do con un firmware de carga que permite la descar-
ga directa de programas con el cable suministrado de
El microcontrolador contiene además de la me- sólo tres terminales. Los microcontroladores PIC co-
moria ROM (Read Only Memory - Memoria de só- munes no tienen este programa y por ende no pue-
lo lectura), memoria temporal RAM (Random Ac- den ser programados mediante el sistema PICAXE.
cess Memory - Memoria de Acceso Aleatorio). El microcontrolador PICAXE-18A es casi idénti-
La memoria RAM es una memoria “temporal” co al microcontrolador PICAXE-18 estándar, pero es
utilizada para almacenar información mientras el ligeramente más costoso ya que tiene el doble de ca-

46 CLUB SABER ELECTRÓNICA


T RABAJANDO CON M ICROCONTROLADORES PICAXE DE 18 P INES

pacidad de memoria (aproxi-


madamente 80 líneas de pro- TABLA 2
gramación BASIC en vez de symbol counter = b0 ‘definir la variable “counter” como b0
40) y salidas analógicas de alta symbol dp = 7 ‘asignar al pin 7 con el “dp”
resolución (en vez de baja re-
solución). main: for counter = 1 to 15 ‘iniciar un bucle for.....next
El sistema PICAXE utiliza high dp ‘encender pin 7
pause 500 ‘esperar 0,5 segundos
una interface al puerto serie de next counter ‘siguiente counter (b0)
la computadora muy simple (es end ‘fin del programa
un cable de tres hilos). Aunque
esta interface no utiliza verda-
Figura 10
deros voltajes RS232, es de muy
bajo costo y ha tenido un de-
sempeño confiable en casi todas
las computadoras modernas.
Vea en la figura 10 cómo se co-
necta este cable en la placa del
entrenador.
Es altamente recomendable
utilizar esta interface, ya que ca-
da vez que quiere programar el
chip no debe quitarlo de la placa
de circuito impreso, sólo debe conectar el cable en- mero de veces que el código debe ser repetido es al-
tre la placa y la computadora, ejecutar el programa macenado, usando la variable b0 (el PICAXE tiene
“Editor Programming” y hacer la descarga corres- 14 variables de 1 byte para uso general, nombradas
pondiente... ¡asi de simple! de b0 a b13), en la memoria RAM del chip PICAXE.
Nota: La mayor parte de las computadoras mo- Estas variables pueden ser renombradas usando el
dernas tienen dos puertos serie, normalmente deno- comando symbol con el fin de hacerlas más fácil de
minados COM1 y COM2. El software “Editor de recordar.
Programación (Programming Editor)” debe ser con- Note nuevamente cómo los espacios en blanco
figurado con el puerto al cual el microcontrolador es- han sido utilizados para mostrar claramente todos los
tá conectado, para ello, en el menú desplegable se- comandos contenidos entre los comandos for y next.
leccione Ver -> Opciones -> Puerto Serie, para ele-
gir el puerto serie correspondiente en su computado-
ra. Controlando la
Si ya compró un cable de sistema PICAXE arma-
do y utiliza una computadora que posee el antiguo co- Velocidad de un motor
nectador de puerto serie de 25 pines, utilice un adap-
tador 9-25 para poder conectar el cable PICAXE de 9 Debido a que el sistema PICAXE opera muy rá-
pines. Estos adaptadores pueden ser comprados en pidamente, es posible controlar la velocidad de mo-
cualquier tienda (casa) especializada en computado- tores, encendiéndolos y apagándolos muy rápida-
ras. Pero también, Ud. puede armar el cable siguien- mente. Este tipo de control se conoce como PWM
do las instrucciones que le daremos oportunamente. (Pulse Width Modulation, Modulación por ancho del
impulso). La PWM es una buena técnica de control
ya que permite a los motores operar a bajas velocida-
Utilizando Bucles For…Next des manteniendo un alto torque (fuerza de giro). La
PWM es utilizada frecuentemente en muchas aplica-
Con frecuencia, es útil repetir una parte de un ciones, por ejemplo, para controlar la velocidad de
programa varias veces, por ejemplo al encender/apa- taladros y destornilladores eléctricos. Para que la
gar sucesivamente un diodo LED (Light Emitting PWM funcione correctamente se necesita de motores
Diode, Diodo emisor de luz). En estos casos un bu- de alta calidad. Los programas aquí mostrados están
cle for…next puede ser utilizado. diseñados para motores “solares” y puede que no
El programa de la tabla 2 enciende y apaga 15 ve- funcionen correctamente si se utilizan como motores
ces el diodo LED conectado al pin de salida 7. El nú- de juguete baratos. Para la conexión del motor en

CLUB SABER ELECTRÓNICA 47


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

nuestro entrenador, vea


TABLA 3
la figura 11. El programa
se muestra en la tabla 3. symbol mark1 = b6 ‘renombrar variables
Intente seguir el pro- symbol space1 = b7
grama para ver si puede symbol mark2 = b8
comprenderlo, si no lo symbol space2 = b9
logra.... no se preocupe,
recién estamos empezan- let mark1 = 2 ‘precargar mark1/space1 con relación de 2:10 (1:5)
let space1 = 10
do.
let mark2 = 20 ‘precargar mark2/space2 con relación de 20:10 (2:1)
let space2 = 10
Uso de Timbres y
Zumbadores main:
Electrónicos en el for b2 = 1 to 200 ‘iniciar un bucle for...next
Sistema PICAXE high 0 ‘encender motor
pause mark1 ‘esperar tiempo indicado por mark1
low 0 ‘apagar motor
Los timbres emiten pause space1 ‘esperar tiempo indicado por space1
un sonido cuando están next b2 ‘siguiente b2
conectados a una fuente pause 2000 ‘detener motor por 2 segundos
de alimentación. for b2 = 1 to 200 ‘iniciar un bucle for.....next
Este sonido, usual- high 0 ‘encender motor
mente, está “fijo” a una pause mark2 ‘esperar tiempo indicado por mark2
low 0 ‘apagar motor
frecuencia determinada;
pause space 2 ‘esperar tiempo indicado por space1
así, los timbres pueden next b2 ‘siguiente b2
emitir un solo “tono”. pause 2000 ‘detener motor por 2 segundos
Los zumbadores electró- goto main
nicos usan un tipo de sis-
tema y pueden ser utilizados para emitir sonidos en
diferentes tonos al proveerlos con una salida de di-
ferentes frecuencias.
El sistema PICAXE puede crear automática-
mente sonidos de diferentes frecuencias utilizando
el comando sound (ver tabla 4).
Para probar este programa se debe instalar un
zumbador electrónico en el tablero tutorial (entre-
nador). Para hacer esto, ubique los conectores del Figura 11
zumbador, marcados con la palabra PIEZO (figuras
12 y 13). Luego suelde el cable rojo al agujero mar-
cado “+” y el cable negro al agujero marcado “-”. Figura 12
En el programa, el primer número indica el nú-
mero de pin (en el tablero tutorial el pin de salida 6
es utilizado). El siguiente número es el tono, segui-
do por la duración del sonido (longitud). Mientras
más alto sea el número de tono, mayor será la “al-
tura tonal” del sonido (frecuencia, note que algunos
zumbadores no pueden produ-
cir tonos muy altos y por lo tan- TABLA 4
to números de tono mayores de main:
127 puede que no sean escu- sound 6, (50,100) ‘emitir un sonido en salida 6 con frecuencia 50 y longitud 100
chados). sound 6, (100,100) ‘emitir un sonido en salida 6
El siguiente programa que sound 6, (120,100) ‘emitir un sonido en salida 6
vemos en la tabla 5 utiliza un pause 1000 ‘esperar 1 segundo
bucle for…next para producir goto main ‘saltar al inicio del programa (main)

48 CLUB SABER ELECTRÓNICA


T RABAJANDO CON M ICROCONTROLADORES PICAXE DE 18 P INES

TABLA 5
Figura 13
main:
for b0 = 1 to 120 ‘iniciar un bucle for....next
sound 6, (b0,50) ‘emitir sonido en salida 6 con frecuencia b0 y longitud 50
Next b0 ‘siguiente b0
end

TABLA 6
main:
for b0 = 120 to 1 step -1 ‘iniciar un bucle for.....next (en cuenta regresiva)
sound 6, (b0, 50) ‘emitir sonido en salida 6 con frec. b0 y longitud 50
120 sonidos diferentes. El número al- next b0 ‘siguiente b0
macenado en la variable b0 aumenta 1 end
unidad en cada bucle (1-2-3, etc.). Por
consiguiente, al utilizar la variable b0 TABLA 7
para asignar el tono, el mismo puede main:
ser cambiado en cada bucle. sound 6, (b0, 50) ‘emitir sonido en salida 6
En la tabla 6 se ve el programa que let b0 = b0 + 1 ‘sumar 1 al valor de la variable b0
realiza la misma función pero cambian- goto main ‘ir a inicio del programa (main)
do el tono en orden descendente, es de-
cir de 120 a 1. TABLA 8
En la tabla 7 vemos el programa que main: ‘hacer etiqueta llamada “main”
emite todos los 256 sonidos posibles. if input6 is on then flash ‘si la entrada 6 (Input 6) está encendida ir
En este último caso el programa es ‘a “flash” sino ir a “main”
ejecutado indefinidamente. Sin embar- goto main
go, es importante comprender cómo el flash: ‘hacer etiqueta llamada “flash”
PICAXE ejecuta las operaciones mate- high 7 ‘encender salida 7 (output 7)
máticas. pause 2000 ‘esperar 2 segundos
El PICAXE sólo interpreta números low 7 ‘apagar salida7
en “byte”, o sea números enteros del 0 goto main ‘ir a “main”
al 255. No puede interpretar fracciones,
ni números negativos, ni números mayores de 255. terruptores de botón de presión conectados a las en-
Así, si se trata de sumar 1 a 255, el PICAXE saltará tradas 6 y 7 (figura 14). Adicionalmente se pueden
de nuevo a 0. Por consiguiente, en el programa ante- conectar otros dos interruptores a las entradas 0 y 1.
rior, el valor de la variable b0 se comportará de la si- En la tabla 8 vemos el programa que indica al PI-
guiente manera mientras el programa se ejecuta: CAXE cómo reaccionar cuando los interruptores de
botón de presión son presionados. En el programa el
…252-253-254-255-0-1-2- etc. pin de salida 7 se ilumina cada vez que el interruptor
de botón de la entrada 6 es presionado.
En este programa las tres primeras líneas forman
Uso de Entradas con Sensores Digitales un bucle continuo. Si la entrada está apagada el pro-
grama se reiniciará una y otra vez.
Un sensor digital es un simple sensor del tipo “in-
terruptor” que sólo puede estar en dos posiciones: Figura 14
encendido ó apagado. Algunos ejemplos de sensores
digitales comunes son:

· microinterruptores
· interruptores de botón de presión e interrupto-
res oscilantes
· interruptores de lengüeta

El tablero del entrenador propuesto tiene dos in-

CLUB SABER ELECTRÓNICA 49


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Una vez que el interruptor es presionado, el pro- sistencia montada en el mismo, la cual está conecta-
grama salta a la etiqueta llamada “flash”. El progra- da a la entrada 2 (input2).
ma luego activa la “salida 7” por dos segundos antes La fotorresistencia es un componente cuya resis-
de regresar nuevamente a “main”. tencia cambia al variar la intensidad de luz que inci-
Note cuidadosamente la ortografía en la línea del de sobre la misma, es decir, su resistencia cambia se-
comando if…then – entrada6 (input6) es una sola gún el nivel de luz.
palabra (sin espacios en blanco). Note también que Bajo luz brillante su resistencia es baja (típica-
únicamente se debe escribir la etiqueta posterior al mente alrededor de 1kΩ) mien-
comando then – no se permite ninguna otra palabra tras que en la oscuridad, su re- Figura 17
aparte de la etiqueta. sistencia es muy alta (típica-
mente alrededor de 1MΩ).
En la figura 16 se muestra el
Uso de Entradas con Sensores Analógicos símbolo y la curva típica de re-
sistencia contra intensidad de
Los sensores analógicos miden señales continuas luz para la fotorresistencia. La
tales como luz, temperatura o posición. fotorresistencia está conectada
El sensor analógico provee una señal que consis- a la entrada 2 en configuración
de divisor de voltaje. Tal como
Figura 15 se muestra en la figura 17.

Cómo se Leen las Entradas Analógicas

El valor de una entrada analógica puede ser fácil-


mente copiado dentro de una variable utilizando el
comando readadc. Luego, se puede probar el valor
de la variable (0 a 160). El programa de la tabla 9 en-
te en un voltaje variable (figura 15). Este voltaje ciende un diodo LED si el valor es mayor que 120 y
puede luego ser representado con un número del 0 al otro diodo LED, si el valor es menor de 70. Si el va-
255 (Por ejemplo muy oscuro = 0, luz muy brillante lor está entre 70 y 120, ambos diodos LED permane-
= 255). Ejemplos típicos de sensores analógicos son: cen apagados.
Note que el microcontrolador PICAXE-18 tiene
· Fotorresistencias ó LDRs (Light Dependent Re- tres canales o entradas analógicas nombradas del 0 al
sistors - Resistencias variables con la luz ). 2. En el tablero de nuestro entrenador la fotorresis-
· Termistores tencia está conectada permanentemente al pin 2, pe-
· Resistencias variables (potenciómetros) ro los otros dos canales (0 y 1) están libres para co-
nectar otros sensores.
El tablero tutorial (entrenador) posee una fotorre- Frecuentemente, al utilizar sensores análogos es
necesario calcular el valor
de “umbral” necesario para
Figura 16
el programa (esto es, los va-
lores 70 y 120 en el progra-
ma anterior). El comando
debug permite ver fácilmen-
te el valor en “tiempo real”
de un sensor, permitiendo
calcular el valor umbral ex-
perimentalmente.
Al ejecutar el programa de
la tabla 10 aparecerá una
ventana de depuración (de-
bug) en la pantalla de la
computadora, indicando el

50 CLUB SABER ELECTRÓNICA


T RABAJANDO CON M ICROCONTROLADORES PICAXE DE 18 P INES

serie de la computadora. Recuerde to-


TABLA 9 mar nota del puerto serie al cual co-
necta el cable (normalmente COM1 ó
main: ‘hacer etiqueta llamada “main” COM2).
readadc 2,b0 ‘leer señal de canal 2 en variables b0 2. Inicie el software “Editor de Pro-
if b0 > 120 then stop ‘si b0 >120 ir a “stop” gramación”
if b0 < 70 the bot ‘si b0 <70 ir a “bot” 3. En el menú desplegable seleccione
low 1 ‘sino apagar 1 Ver -> Opciones para acceder a la
low 2 ‘y apagar 2 pantalla de opciones (ésta puede que
goto main ‘ir a “main” aparezca automáticamente).
4. Haga click en la lengüeta “Modo”
top: ‘hacer una etiqueta llamada “top” y seleccione PICAXE-18.
high 1 ‘encender 1 5. Haga click en la lengüeta “Puerto
low 2 ‘apagar 2 Serie” y seleccione el puerto serie al
goto main ‘ir a “main” cual ha conectado el cable PICAXE.
Haga click en “OK”
bot: ‘hacer una etiqueta llamado “bot” 6. Cree un nuevo organigrama ha-
high 2 ‘encender 2 ciendo click en el menú Archivo ->
low 1 ‘apagar 1 Nuevo Organigrama.
goto main ‘ir a “main” 7. Dibuje el organigrama mostrado
abajo arrastrando los bloques reque-
ridos a la pantalla y luego utilizando
TABLA 10 el ratón para dibujar las flechas para
conectar los bloques.
main: ‘hacer etiqueta llamada “main” 8. Cuando termine de dibujar el orga-
readadc 2,b0 ‘leer señal de canal 2 en variable b0 nigrama, puede convertirlo en un pro-
debug b0 ‘transmitir valor a la pantalla del ordenador grama BASIC seleccionando el menú
pause 100 ‘pausa corta Organigrama -> Convertir Organi-
goto main ‘ir a “main” grama a BASIC. Luego el programa
BASIC puede ser descargado al PICA-
valor de la variable b0. A medida que el sensor es XE de la manera usual.
probado con la variable, la ventana va indicando la 9. Para imprimir o salvar el organigrama, use el
lectura actual del sensor. menú de Archivo. Para exportar el organigrama co-
mo una figura, utilice el menú Archivo -> Exportar.
Para exportar la imagen a un documento de Word
seleccione el archivo tipo EMF. Para exportar el or-
Programación por Organigramas ganigrama a una página web use el archivo tipo
GIF.
o Diagramas de Flujo
El Editor de Organigramas permite dibujar y si-
Los diagramas de flujo u organigramas son herra- mular organigramas en la pantalla. El organigrama
mientas muy útiles que permiten representar progra- puede luego ser convertido automáticamente en un
mas gráficamente, para hacerlos más fáciles de enten- programa BASIC para ser descargado en el micro-
der. El software “Programming Editor” incluye un controlador (vea la figura 18).
editor de organigramas que permite dibujar los mis-
mos en la pantalla de la computadora. Estos organi- Los comandos de la pantalla de Editor de Orga-
gramas pueden luego ser convertidos en código BA- nigramas son los siguientes (figura 19):
SIC para descargarlos en el PICAXE. Los organigra-
mas pueden también ser impresos o exportados como Select = Seleccionar
figuras para incluirlos en reportes de proyectos. Zoom = Zoom
A continuación damos las instrucciones detalla- Zoom In/Out = Acercar/Alejar
das para la construcción de organigaramas: Pan = Mover
Line = Línea
1. Conecte el cable PICAXE a uno de los puertos Edit bar = barra editora

CLUB SABER ELECTRÓNICA 51


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Zoom
Utilice para acercar una parte del dia-
grama. Use el click derecho para ale-
jar.

Acercar/Alejar
Para acercar haga click y mueva el
ratón hacia arriba. Para alejar haga
click y mueva el ratón hacia abajo.

Mover
Utilice este comando para mover el
organigrama completo alrededor de
la pantalla.
Figura 18
Línea
Utilice este comando para dibujar lí-
neas entre los bloques. Se pueden ha-
cer quiebres en las líneas haciendo
click una vez. Cuando la línea está cer-
ca de un bloque, ésta se pegará al pun-
to de conexión del mismo.

Etiqueta
Utilice este comando para añadirle
etiquetas o títulos a los elementos del
organigrama.

Figura 19 Out / If / Delay / Sub / Other


Haga click en estos botones para ir al
submenú de estos comandos y selec-
cionar el comando deseado.

Dibujando Organigramas

Para dibujar un organigrama haga


click en uno de los botones de menúes
de comandos (Salida/Si/ Retardo/Su-
b/Otro) de la barra de herramientas
para ir al submenú de comandos re-
querido. Seleccione el comando de-
seado y luego haga click en la panta-
lla, en el lugar donde desea situar al
comando. No trate de colocar el blo-
que exactamente en posición en pri-
mera instancia – póngalo en la panta-
lla en las cercanías del área donde de-
Seleccionar sea ubicarlo y luego use el comando Seleccionar para
Utilice este comando para seleccionar y mover mover el bloque a la posición correcta.
bloques. Cuando un sólo bloque es seleccionado, su Una vez que el bloque esté en posición, haga
código BASIC puede ser editado en la barra editora click en él de manera que sea resaltado. El código
en la parte inferior de la ventana. BASIC del objeto aparecerá en la barra editora en la

52 CLUB SABER ELECTRÓNICA


T RABAJANDO CON M ICROCONTROLADORES PICAXE DE 18 P INES

parte inferior de la pantalla. Edite el código si lo re- tando en rojo. Las ventanas de “Entradas/Salidas” y
quiere y luego presione el botón de tic para salvar los “Variables” también aparecerán mientras se ejecuta la
cambios. Para información adicional acerca de cada simulación. Para cambiar los valores de las entradas,
comando vea los archivos de ayuda “Comandos haga click en el respectivo interruptor en pantalla o
BASIC”. Note que algunos comandos únicos (por utilice la barra deslizadora de entradas analógicas.
ejemplo servo para el PICAXE28) sólo aparecerán El tiempo de retardo entre un objeto y otro puede
cuando el software esté en el modo apropiado (menú ser ajustado en las Opciones del Organigrama (menú
Ver -> Opciones). Ver -> Opciones -> Organigrama).
Note que algunos comandos representan accio-
nes que no pueden ser simuladas en pantalla. En es-
Uniendo Bloques tos casos el comando es simplemente ignorado al
ejecutar el organigrama.
Para unir bloques, debe acercarlos uno al otro
hasta que se junten. Alternativamente, se pueden di-
bujar líneas entre los mismos usando el comando lí- Convirtiendo Organigramas
nea en la barra de herramientas. Note que sólo es po-
sible unir la parte inferior de un bloque únicamente Los organigramas no son descargados directa-
con la parte superior de otro. Además, sólo se permi- mente al microcontrolador. Primero el organigrama
te sacar una línea de la parte inferior de conexión de es convertido en un programa BASIC, el cual luego
cada bloque. es descargado. Para convertir un organigrama selec-
Para hacer diagramas ordenados, se pueden agre- cione “Convertir” en el menú Organigrama; el pro-
gar quiebres a las líneas haciendo click en las mis- grama BASIC del organigrama será creado.
mas. Cuando una línea es movida cerca de un punto Aquellos bloques que no estén conectados a los
de conexión, la misma se pegará a éste; para termi- bloques “inicio” ó “sub” en el organigrama, serán ig-
nar la línea haga click una vez más y la misma que- norados al momento de hacer la conversión. La con-
dará en posición. versión se detendrá si se encuentra un bloque no co-
Las líneas no pueden ser movidas. Si trata de mo- nectado; por lo tanto, utilice siempre un bloque “de-
ver una línea la misma será borrada y tendrá que tener” para terminar el diagrama antes de iniciar una
crear una nueva línea. simulación o de convertir el diagrama.
Note que es posible convertir y descargar un or-
ganigrama presionando dos veces la tecla F5.
Simulación de Pantalla

Para simular el organigrama, haga click en “Si- Utilizando Símbolos


mular” en el menú Organigrama. El programa co-
menzará a ejecutarse en pantalla (figura 20). Las Entradas, Salidas y Variables pueden ser re-
Mientras el programa se ejecuta, los bloques cu- nombradas utilizando la “Tabla de Símbolos” del
yos comandos están siendo ejecutados se irán resal- menú Organigrama. Cuando un símbolo es renom-
brado, el nuevo nombre aparecerá en los menúes
desplegables en la barra editora. No deben utilizarse
nombres de comandos (por ejemplo switch o sound)
como símbolos, ya que esto puede generar errores en
el programa BASIC convertido.

Guardando e Imprimiendo Organigramas

Los organigramas pueden ser guardados, impre-


sos y exportados como figuras (para ser insertados
Figura 20 en documentos de procesadores de palabras) utili-
zando el menú Archivo. Los organigramas pueden
también ser copiados al portapapeles de Windows
(para pegarlos luego a otras aplicaciones) mediante
el menú Editar.

CLUB SABER ELECTRÓNICA 53


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Sistemas de Números Cada línea “let pins =” cambia el número de ba-


rras encendidas en la pantalla de siete segmentos.
Los microcontroladores operan realizando un Esto es mucho más rápido que utilizar, muchísimas
gran número de comandos en un espacio de tiempo veces, los comandos high y low para hacer lo mismo.
muy corto procesando señales electrónicas. Estas se-
ñales están codificadas en sistema binario; la señal
puede ser high (1) o low (0). Visualizando Cifras Analógicas en el
El sistema numérico utilizado diariamente es el Display de 7 Segmentos
sistema decimal. Este sistema numérico utiliza diez
dígitos (del 0 al 9) para explicar qué tan grande o pe- El programa de la tabla 12 “lee” la cantidad de
queño es el número. Sin embargo, al trabajar con mi- luz detectada por la fotorresistencia en la entrada 2 y
crocontroladores es muchas veces más fácil trabajar
en código binario; especialmente al tratar de contro- TABLA 12
lar múltiples salidas al mismo tiempo. Un sólo dígito
binario es conocido como un “bit” (binary digit – dí- main: readadc 2,b1 ‘leer señal analógica de
gito binario). El sistema PICAXE utiliza 8 bits (1 by- ‘canal 2 en variable b1
te) por cada palabra de datos, teniendo al dígito me- if b1 > 150 then show9 ‘probar variable b1 y
nos significativo en el extremo derecho y al dígito ‘saltar al respectivo comando
más significativo en el extremo izquierdo. Por consi- if b1 > 130 then show8
if b1 > 110 then show7
guiente, el número binario %11001000 pone a los
if b1 > 90 then show6
bits 7,6,3 en high (1) y al resto en low (0). El símbo-
if b1 > 70 then show5
lo % indica a la computadora que está trabajando en if b1 > 50 then show4
sistema binario y no en decimal. if b1 > 30 then show3
La utilización del código binario permite contro- if b1 > 20 then show2
lar las ocho salidas al mismo tiempo, en vez de sólo if b1 > 10 then show1
utilizar los comandos high y low. El programa que show0:
vemos en la tabla 11 demuestra cómo hacer que la let pins = %00111111 ‘dígito 0
pantalla de siete barras del tablero tutorial cuente del goto main
0 al 9. show1:
let pins = %00000110 ‘dígito 1
TABLA 11 goto main
show2:
main: let pins = %01011011 ‘dígito 2
let pins = %00111111 ‘dígito 0 goto main
pause 250 ‘esperar 0,25 segundos show3:
let pins = %00000110 ‘dígito 1 let pins = %01001111 ‘dígito 3
pause 250 ‘esperar 0,25 segundos goto main
let pins = %01011011 ‘dígito 2 show4:
pause 250 ‘esperar 0,25 segundos let pins = %01100110 ‘dígito 4
goto main
let pins = %01001111 ‘dígito 3
show5:
pause 250 ‘esperar 0,25 segundos
let pins = %01101101 ‘dígito 5
let pins = %01100110 ‘dígito 4 goto main
pause 250 ‘esperar 0,25 segundos show6:
let pins = %01101101 ‘dígito 5 let pins = %01111101 ‘dígito 6
pause 250 ‘esperar 0,25 segundos goto main
let pins = %01111101 ‘dígito 6 show7:
pause 250 ‘esperar 0,25 segundos let pins = %00000111 ‘dígito 7
let pins = %00000111 ‘dígito 7 goto main
pause 250 ‘esperar 0,25 segundos show8:
let pins = %01111111 ‘dígito 8 let pins = %01111111 ‘dígito 8
pause 250 ‘esperar 0,25 segundos goto main
let pins = %01101111 ‘dígito 9 show9:
pause 250 ‘esperar 0,25 segundos let pins = %01101111 ‘dígito 9
goto main goto main

54 CLUB SABER ELECTRÓNICA


T RABAJANDO CON M ICROCONTROLADORES PICAXE DE 18 P INES

luego visualiza una cifra asignada a dicha canti-


dad de luz en la pantalla de siete segmentos.

Controlando Motores Paso a Paso

Los motores paso a paso, son motores de alta


precisión comúnmente utilizados en unidades de
disco, impresoras, plotters y relojes de computa-
doras. A diferencia de los motores de CC, los
cuales giran libremente al aplicarles potencia, los
motores paso a paso requieren que su fuente de
alimentación sea continuamente “impulsada” en
cuatro patrones diferentes. Por cada impulso, el
Figura 21
motor se mueve un “paso”, típicamente 7.5° (re-
quiriendo por lo tanto 48 pasos para una revolu-
Figura 22
ción completa), figura 21.
Los motores paso a paso tienen algunas limi-
taciones. Primero, el consumo de potencia es
mayor cuando el motor está detenido (debido a
que todas las bobinas requieren estar energiza-
das). Segundo, la velocidad de operación está li-
mitada a aproximadamente 100 “pasos” por se-
gundo, lo cual equivale a 2 revoluciones por se-
gundo ó 120 RPM.
El motor paso a paso contiene una serie de
electroimanes fijos a la armadura central y cua-
tro bobinas ubicadas alrededor de la carcasa del
motor. Cuando corriente eléctrica pasa por estas
bobinas, las mismas generan un campo magnéti- Figura 23
co el cual atrae o repele a los electroimanes per-
manentes en la armadura, provocando que la ar-
madura gire un “paso” hasta que los campos
magnéticos estén alineados.
Luego, las bobinas son energizadas con un
patrón diferente para crear un campo magnético
diferente y provocar que la armadura gire otro
“paso”, figura 22.
Para hacer que la armadura gire continua-
mente, las cuatro bobinas internas del motor pa-
so a paso deben ser encendidas y apagadas conti-
nuamente en cierto orden. El chip controlador
ULN2003A del tablero tutorial (nuestro entrena- La tabla 13 muestra los cuatro “pasos” distintos
dor) provee del método necesario para interrelacio- requeridos para hacer girar el motor.
nar a estas cuatro bobinas (figura 23). Para hacer girar al motor en dirección contraria,
El motor paso a paso debe ser conectado a los los pasos deben ser invertidos (4-3-2-1-4-etc. en vez
agujeros en el tablero tutorial de la siguiente manera: de 1-2-3-4-1-etc.)

Cable Negro: 2+ Nota: La configuración del alambrado de los mo-


Cable Blanco: 3+ tores paso a paso puede variar según el fabricante. Por
Cable Amarillo: 0– lo tanto, puede que sea necesario reorganizar las cone-
Cable Rojo: 1– xiones de las bobinas para que la secuencia mostrada
Cable Naranja: 2– arriba opere correctamente. Un arreglo incorrecto de
Cable Marrón: 3– las bobinas puede causar que el motor vibre en una di-

CLUB SABER ELECTRÓNICA 55


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

TABLA 13

Paso Bobina 4 Bobina 3 Bobina 2 Bobina 1


(Output 3) (Output 2) (Output 1) (Output 0)
1 1 0 1 0
2 1 0 0 1
3 0 1 0 1
4 0 1 1 0
1 1 0 1 0

rección y otra en vez de girar


TABLA 14 continuamente. La mayoría de
los motores paso a paso están
symbol delay = b0 ‘definir variable diseñados para trabajar a 12V,
let delay = 100 ‘fijar el retardo (delay) en 0,1 segundos pero generalmente pueden tra-
bajar sin problemas (aunque
main: let pins = %00001010 ‘primer paso con un torque reducido) a 6V.
pause delay ‘pausa de 0,1 segundos (valor asignado al retardo) El siguiente programa también
let pins = %00001001 ‘siguiente paso puede utilizar un número bina-
pause delay ‘pausa de 0,1 seg. rio para encender y apagar to-
let pins = %00000101 ‘siguiente paso das las líneas de salida al mis-
pause delay ‘pausa de 0,1 seg. mo tiempo. La siguiente tabla
let pins = %00000110 ‘siguiente paso muestra el número binario de
pause delay ‘pausa de 0,1 seg. salida para cada paso:
goto main ‘ir a “main (bucle perpetuo)
Paso Salida binaria
1 %00001010
TABLA 15 2 %00001001
3 %00000101
symbol dp = 7‘renombrar salida7 “dp” 4 %00000110
symbol buzzer = 6 ‘renombrar salida6 “buzzer” 1 %00001010
symbol counter = b0 ‘definir a la variable “counter” como b0
Intente cambiar la velocidad
main: ‘hacer etiqueta llamada “main” de giro alterando el valor del
gosub flash ‘ir al sub-procedimiento “flash” retardo (delay) en el programa
gosub noise ‘ir al sub-procedimiento “noise” que vemos en la tabla 14.
goto main ‘ir a “main”
end ‘fin del programa principal
Subrutinas
flash ‘hacer un sub-procedimiento llamado “flash”
for counter = 1 to 25 ‘iniciar un bucle for....next Una subrutina es un sub-pro-
high dp ‘encender diodo LED cedimiento o “mini-programa”
pause 50 ‘esperar 0,05 segundos separado, el cual puede ser lla-
low dp ‘apagar diodo LED mado desde el programa prin-
pause 50 ‘esperar 0,05 segundos cipal. Una vez que se ejecuta
next counter ‘siguiente counter (b0) la subrutina, el programa prin-
return ‘retornar del sub-procedimiento cipal continúa.
Las subrutinas son frecuente-
noise: ‘hacer un sub-procedimiento llamado “noise mente utilizadas para separar
high buzzer ‘encender timbre el programa principal en pe-
pause 2000 ‘esperar 2 segundos queñas secciones, para hacerlo
low buzzer ‘apagar timbre más fácil de comprender. Su-
return ‘retornar del sub-procedimiento brutinas que realizan tareas

56 CLUB SABER ELECTRÓNICA


T RABAJANDO CON M ICROCONTROLADORES PICAXE DE 18 P INES

TABLA 16 comunes pueden también ser co-


piadas de programa a programa
symbol dp = 7 ‘renombrar salida7 “dp” para ahorrar tiempo.
symbol counter = b0 ‘definir a la variable “counter” como b0 El programa de la tabla 15 utiliza
dos subrutinas para separar las dos
main: ‘hacer una etiqueta llamada “main” secciones principales del programa
let b2 = 5 ‘precargar a b2 con el número 5 (“flash” y “noise”).
gosub flash ‘ir al sub-procedimiento “flash” El programa que podemos ver en
pause 500 ‘esperar 0,5 segundos la tabla 16, muestra como una va-
let b2 = 15 ‘precargar a b2 con el número 5 riable puede ser utilizada para
gosub flash ‘ir al sub-procedimiento “flash” transferir información hacia una
pause 500 ‘esperar 0,5 segundos subrutina. En este caso, la variable
goto main ‘ir a “main” b2 es utilizada para indicar al con-
trolador que debe ejecutarla subru-
end ‘fin del programa principal tina flash, primero cinco y luego
quince veces.
flash: ‘hacer un sub-procedimiento llamado “flash”
for counter = 1 to b2 ‘iniciar un bucle for....next
high dp ‘encender diodo LED El Circuito del Entrenador
pause 250 ‘esperar 0,25 segundos
low dp ‘apagar diodo LED En este capítulo hemos menciona-
pause 250 ‘esperar 0,25 segundos do que precisamos un entrenador
next counter ‘siguiente counter para corroborar los diferentes con-
return ‘retornar al sub-procedimiento ceptos que presentamos. Dijimos
que hay varios circuitos (de hecho

Figura 24

CLUB SABER ELECTRÓNICA 57


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

mencionamos
tres). La em- Fig. 25
presa Educa-
tion Revolu-
tion, ofrece
cada uno de
estos circuitos
en forma de
kits, sin em-
bargo, Ud.
puede armar
su propio en-
trenador.
En la figu-
ra 24 se brin-
da el circuito
de un entrenador para que Ud. realice
sus propias experiencias. Fig. 26
El entrenador incluye un circuito
integrado ULN2803A para que pueda
manejar pequeños motores, pero no se
ha incluido la fotorresistencia y el dis-
play de 7 segmentos; sin embargo, no
tendrá problemas en conectarlos si si-
gue las instrucciones que se brindan
en la explicación de cada programa.
LK es un puente de conexión (un jum-
per o simplemente un cable).
Hemos hecho referencia al PICA-
XE-18 porque en otras secciones tra-
bajaremos con el PICAXE-08. En la
figura 25 se reproduce el esquema de
circuito impreso para que monte su
propio entrenador.
En la figura 26 se muestra el deta-
lle de armado del cable que sirve co-
mo interface entre el entrenador y la
computadora.

58 CLUB SABER ELECTRÓNICA


P ROYECTOS C OMPLETOS CON
M ICROCONTROLADORES
PICAXE
Armado y Programación de una ta electrónica, es
preciso que dicha
Mascota Virtual mascota posea un
“cerebro”, tal co-
Hoy en día, en la mayoría de las jugueterías, se mo lo es el mi-
pueden conseguir juguetes “inteligentes”. Estos ju- croprocesador
guetes pueden moverse, hacer sonidos y responder al de una compu-
tacto o al ser movidos a un lugar oscuro. Un ejemplo tadora. El mi-
típico de uno de estos juguetes es el “Furby” fabrica- crocontrolador
do por Tigre Electronics o el conocido “osito es, a menudo,
Teddy”. El Furby utiliza un microcontrolador como descripto como
cerebro electrónico y reacciona (al tocarlo o ponerlo “una computadora
en un lugar oscuro) moviéndose o emitiendo soni- en un solo
dos. El Furby reacciona al mundo exterior gracias al chip”. El mis-
uso de sensores e interruptores. Tiene un interruptor mo se puede
de presión en el frente y otro en la espalda, un micro- utilizar como
interruptor en su boca y un sensor de luz (fotorresis- “cerebro elec-
tencia) entre sus ojos. También tiene un micrófono trónico” para
en un costado para detectar sonidos. Esta “mascota controlar produc-
virtual” se mueve mediante el uso de un motor eléc- tos, juguetes o má-
trico. También tiene un parlante para generar sonidos quinas.
y un LED infrarrojo para enviarle señales a otros Como ya hemos dicho, el micro-
Furbys que puedan estar en las cercanías. El “cere- controlador (en este caso un PICAXE-08) es un cir-
bro” de la criatura es un microcontrolador. Los mi- cuito integrado (chip) que contiene memoria (para
crocontroladores son poderosos componentes elec- almacenar programas), un procesador o ALU (para
trónicos que tienen memoria y pueden programarse procesar y llevar a cabo los programas) y pines de
para encender y apagar dispositivos en una secuencia entrada/salida (para conectar interruptores, sensores,
especial. El microcontrolador del Furby está progra- y dispositivos de salida tales como motores).
mado para apagar el motor y el parlante cuando el Los microcontroladores se compran en “blanco”
sensor de luz detecta que está oscuro (El Furby se va (vacíos) y luego se programan con un archivo espe-
a dormir). cífico de control. Este programa es primero escrito
Para que un usuario pueda “programar” diferen- en un procesador de texto (como el Word, por ejem-
tes situaciones a las que se verá sometida su masco- plo), posteriormente es “traducido” a un lenguaje
apropiado y luego “descargado” en el chip
del microcontrolador. Una vez programado,
el microcontrolador se inserta dentro de un
circuito para hacer al producto más inteli-
gente y fácil de utilizar.

Diagrama de Bloques de un
Sistema Microcontrolado

En la figura 1 podemos apreciar el diagrama


en bloques de un sistema como el que em-
plearemos para construir nuestra mascota

CLUB SABER ELECTRÓNICA 59


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Figura 1

electrónica. El sensor de luz, el micrófono y los inte-


rruptores proveen información al microcontrolador;
por lo tanto se los conoce como “entradas”. Luego el
microcontrolador “decide” cómo reaccionar y puede,
en determinados casos, operar alguna de las salidas,
por ejemplo hacer girar al motor o generar un sonido
en el parlante. Si hay otro sistema (otra mascota, por
ejemplo) cerca, se pueden comunicar mediante seña-
les infrarrojas transmitidas y recibidas por el micro-
controlador. Ahora bien, los sistemas microcontrola-
dos pueden ser difíciles de programar, ya que gene-
ralmente utilizan un lenguaje de programación muy
complejo llamado “código ensamblador” el cual
puede resultar complicado de aprender.
El sistema PICAXE permite una programación
de microcontroladores mucho más sencilla. La se-
cuencia de control puede dibujarse (y simularse) en
la computadora como un organigrama o diagrama de
flujo, o escribirse en un sencillo lenguaje de progra- Figura 2
mación llamado BASIC. Esto hace que la utilización
del microcontrolador sea una operación mucho más ma BASIC con su respectivo organigrama (diagrama
fácil, ya que no es necesario aprender el complejo de flujo). En este caso, ambos programas hacen la
“código ensamblador”. misma cosa: “encender y apagar una luz” con una
En la figura 2 se muestra un ejemplo de progra- frecuencia de un segundo. Para que el lector tenga

Figura 3

60 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UNA M ASCOTA V IRTUAL

una idea preliminar, “Start” significa comienzo,


“high 0” significa que se coloque en estado alto a la
salida nombrada como “0”, “wait 1” es una senten-
cia que dice que el programa debe esperar un segun-
do (temporizador de un segundo), “low 0” significa
que mande a estado bajo (apague la luz) la salida
nombrada como “0”, “main” es el nombre que se le
da a una posición del programa para hacer referencia
a dicha porción del programa y “goto main” signifi-
ca que el programa debe retornar a la posición
“main” (principal) y así dar comienzo nuevamente,
al ciclo de prendido y apagado.
La cyber-mascota debe programarse con su pro-
pia “personalidad”, de manera que reaccione en una
forma única. Las especificaciones del diseño deben
ser las siguientes:

1. El diseño utilizará un microcontrolador PICA-


XE-08 como su cerebro.
2. Incluirá ojos (LEDs), boca (un zumbador elec-
trónico para generar sonidos) y opcionalmente tam-
bién utilizará un motor para darle movimiento.
3. El diseño será capaz de reaccionar al tacto y
a cambios en el nivel de luz.
4. La ciber-mascota puede diseñarse como un
panel bidimensional plano o como una criatura tri- Fig. 4
dimensional.
representan a menudo gráficamente como “diagra-
El diagrama de bloque para la ciber-mascota se mas de bloques”. Por ejemplo, para un horno de mi-
muestra en la figura 3. croonda, se podría dibujar un diagrama de bloques
Su cyber-mascota puede ser de cualquier forma o como el mostrado en la figura 5.
tamaño que escoja. Ya sea que usted quiera diseñar la El microcontrolador PICAXE-08 se programa
“cara” de su mascota utilizando un programa editor conectando un cable desde el puerto serie de la com-
de gráficos o dibujándola a mano; o si desea puede putadora, a un conector en el circuito impreso (PCB)
escanear la foto de un animal, ó diseñar un animal que está a un lado del microcontrolador. Este conec-
robot completamente nuevo. tor (el cual se parece a los conectores de audífonos
Los componentes electrónicos deben montarse utilizados en los reproductores portátiles de CD) se
dentro (o debajo) de su ciber-mascota. Los LEDs y conecta a dos patas del microcontrolador y a la cone-
fotorresistencias deberán hacerse pasar a través de xión de 0V desde la batería. Esto permite que la PC
agujeros (normalmente estos dispositivos son de 5 y el microcontrolador “hablen” para permitir la des-
mm de ancho, aunque hay LEDs disponibles en otros carga de un nuevo programa en la memoria del mi-
tamaños). También debe pen-
sar cuidadosamente la posi-
ción en la que va a colocar las
baterías y en donde va a co-
nectar los cables.
En la figura 4 se muestran
los componentes principales
que podría necesitar para su
ciber-mascota. Como diji-
mos, los microcontroladores
se utilizan como “cerebro” en
los circuitos electrónicos. Es-
tos circuitos electrónicos se Figura 5

CLUB SABER ELECTRÓNICA 61


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

so para poder utilizar el Sis-


tema PICAXE deberá com-
prar un adaptador USB a se-
rie.

Recuerde también que los


microcontroladores del siste-
ma PICAXE son virtualmen-
Figura 6 te similares a los PIC de Mi-
crocontrolador, para lo cual utilizamos un cable de 3 crochip (hasta la matrícula
hilos, tal como ya hemos visto (figura 6). coincide) pero han sido construidos con un progra-
Normalmente, la empresa Education Revolution, mita interno que permite que su programación y ma-
propietaria de los sistemas PICAXE, incluyen en to- nejo sea muy sencilla. El costo de estos chips es muy
dos sus proyectos el conector para insertar el cable similar al de los PICs de iguales características, por
de programación, pero si Ud. quiere hacer su propio ejemplo, un PICAXE 08 tiene un costo de venta al
diseño, le comentamos que iremos explicando paso a público de unos $15 (aproximadamente 5 dólares) y
paso qué es lo que debe hacer. en América Latina recién se están comenzando a co-
La inclusión del conector y el circuito de interfa- nocer. Si Ud. desea saber dónde conseguir estos in-
ce en todo circuito impreso diseñado para utilizarse tegrados, puede buscar las casas de electrónica en
con el microcontrolador PICAXE-08, permite repro- su país que los trabajan, en nuestra web: www.we-
gramar al microcontrolador PICAXE sin sacar el belectronica.com.ar. También puede llamar a nues-
chip del circuito impreso ¡simplemente debe conec- tras oficinas y con gusto lo asesoraremos para que
tar el cable cada vez que desee descargar un nuevo pueda conseguir estos chips.
programa!
A menudo, los diagramas de los circuitos PICA-
XE no incluyen los componentes mencionados en la
figura 6 para hacer más fácil la comprensión de las Cómo Programar
conexiones de entradas/salidas. Sin embargo, las dos
resistencias y el conector están incluidos en todo cir- el Sistema PICAXE
cuito impreso que opere con el sistema PICAXE.
Los organigramas o diagramas de flujo son he-
Nota: Recuerde que en el sistema PICAXE-08 la rramientas muy útiles que permiten representar grá-
pata 7 tiene dos funciones; cuando se está ejecutan- ficamente (dibujar) los programas para hacerlos más
do un programa, la pata se denomina “salida 0” y fáciles de entender. El software Editor de Programa-
puede controlar dispositivos tales como LEDs y mo- ción (que Ud. puede bajar gratuitamente de nuestra
tores. En cambio, cuando se está descargando un web: www.webelectronica.com.ar, haciendo click en
programa, la misma pata actúa como “pin de salida el ícono password e introduciendo la clave picaxe-
serie”, comunicándose con la computadora. Por lo pro) incluye un editor de organigramas que permite
tanto, si durante esta operación también tiene conec- dibujar diagramas de flujo en la pantalla de la com-
tada a la pata una salida tal como un LED, deberá putadora. Estos organigramas se pueden convertir
percatarse de que el mismo se encenderá y apagará luego en código BASIC para descargarlos en el PI-
continuamente mientras se descarga el programa (lo CAXE. Los organigramas también pueden imprimir-
que indica que hay transferencia de información). se y exportarse como figuras para incluirlos dentro
Ahora bien, la mayor parte de las computadoras de reportes de proyectos. Si bien en el capítulo 2 di-
tienen dos puertos serie, usualmente denominados mos las instrucciones para descargar el programa y
COM1 y COM2. El software “Editor de Programa- explicamos los primeros pasos para su uso, creemos
ción” (que en este texto también llamamos Editor de conveniente repetir los pasos a seguir para trabajar
Programas o Programming Editor) utilizado para con el Editor de Programación:
cargar los programas debe configurarse con el puer-
to serie correcto. Seleccione Ver -> Opciones - 1. Conecte el cable PICAXE a uno de los puertos
>Puerto Serie para elegir el puerto serie correcto en serie de la computadora. Recuerde tomar nota del
su máquina. puerto serie al cual conecta el cable (normalmente
Si usted está utilizando una PC portátil puede que COM1 ó COM2) (si aún no va a “cargar” el progra-
ésta sólo tenga un conector del tipo USB. En este ca- ma en el interior del chip, puede obviar este paso).

62 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UNA M ASCOTA V IRTUAL

al submenú de comandos requerido. Seleccione el


Figura 7 comando deseado y luego haga click en la pantalla,
en el lugar donde desea situar al comando. No trate
de colocar el bloque exactamente en posición en pri-
mera instancia, póngalo en la pantalla en las cerca-
nías del área donde desea ubicarlo y luego use el co-
mando Seleccionar para mover el bloque a la posi-
ción correcta.
Una vez que el bloque esté en posición, haga
click en él de manera que sea resaltado. El código
BASIC del objeto aparecerá en la barra editora en la
parte inferior de la pantalla.
A modo de “guía” recuerde que para unir blo-
ques, debe acercarlos uno al otro hasta que se junten.
2. Inicie el software “Editor de Programación” Otra opción es dibujar líneas entre los mismos usan-
3. En el menú desplegable seleccione Ver ->Op- do el comando línea en la barra de herramientas. No-
ciones para acceder a la pantalla de opciones (ésta te que sólo es posible unir la parte inferior de un blo-
puede que aparezca automáticamente). que únicamente con la parte superior de otro (no se
4. Haga click en la lengüeta “Modo” y seleccio- pueden conectar líneas con líneas). Además, sólo se
ne PICAXE-08. permite sacar una línea de la parte inferior de cone-
5. Haga click en la lengüeta “Puerto Serie” y se- xión de cada bloque.
leccione el puerto serie al cual ha conectado el ca- Para hacer diagramas ordenados, se pueden agre-
ble PICAXE. Haga click en “OK” (Obvie este paso gar quiebres a las líneas haciendo click en las mis-
si sólo va a hacer el programa y aún no lo va a car- mas. Al mover una línea cerca de un punto de cone-
gar en el chip). xión, la misma se pegará a éste; para terminar la lí-
6. Cree un nuevo organigrama haciendo click en nea, haga click una vez más y la misma quedará en
el menú Archivo -> Nuevo Organigrama. posición.
7. Dibuje el organigrama arrastrando los blo- Las líneas no pueden moverse. Si trata de mover
ques requeridos a la pantalla y luego utilizando el una línea la misma será borrada y tendrá que crear
ratón para dibujar flechas para conectar los blo- una nueva línea.
ques.
8. Cuando termine de dibujar el organigrama, Los organigramas pueden guardarse, imprimir-
puede convertirlo en un programa BASIC seleccio- se y exportarse como figuras (para insertarlos en
nando el menú Organigrama -> Convertir Organi- documentos de procesadores de palabras) utilizan-
grama a BASIC. Luego el programa BASIC puede do el menú Archivo. Los organigramas pueden
descargarse en el PICAXE seleccionando en el me- también copiarse en el portapapeles de Windows
nú PICAXE -> Ejecutar. (para pegarlos luego a otras aplicaciones) utilizan-
9. Para imprimir o salvar el organigrama, utili- do el menú Editar.
ce las opciones en el menú de Archivo.
La programación en BASIC es una herramienta
Para exportar el organigrama como figura, utilice de programación más poderosa que la utilización de
el menú Archivo -> Exportar. Para exportar la ima- organigramas y es el lenguaje “preferido” para la
gen a un documento de Word, seleccione el archivo programación de los microcontroladores PICAXE.
tipo EMF. Para exportar el organigrama a una pági- Esto se debe a que BASIC permite la utilización
na web, use el archivo tipo GIF. Quedará una imagen de más comandos - por ejemplo bucles for...next; los
como la mostrada en la figura 7. cuales no se pueden utilizar con el método gráfico de
El Editor de Organigramas permite dibujar y si- los organigramas. Sin embargo, en la programación
mular organigramas en la pantalla. El organigrama BASIC se requiere ser más preciso al escribir los
puede luego convertirse automáticamente, en un pro- programas, ya que no se permiten errores de ortogra-
grama BASIC para descargarlo en el microcontrola- fía. Ya hemos hecho algunos ejemplos... sin embar-
dor. go, sabemos que es muy probable que Ud. haya co-
Para dibujar un organigrama haga click en uno de menzado la lectura de este texto por este capítulo y
los botones de menúes de comandos (Salida/Si/Re- por tal motivo creemos necesario “repetir” algunos
tardo/Sub/Otro) de la barra de herramientas para ir programas básicos, explicados de otra forma para lo-

CLUB SABER ELECTRÓNICA 63


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

grar un mejor entendimiento. El siguiente programa mente después de la etiqueta “main” y los espacios
es una muestra de un programa BASIC, el cual en- entre los comandos y los números).
ciende y apaga la salida 0 cada segundo. Al descar- 7. Asegúrese que el circuito PICAXE esté conec-
gar este programa el LED conectado a la salida 0 se tado al cable serie y a las baterías, y que las bate-
encenderá y apagará cada segundo: rías estén conectadas. Al respecto, para probar este
programa puede colocar el circuito del entrenador
main: propuesto capítulos atrás o bien montar la mascota
high 0 que estamos describiendo.
pause 1000 8. Seleccione PICAXE -> Ejecutar. Una barra
low 0 de descarga de programa deberá aparecer mientras
wait 1 el programa es descargado. Al terminar la descarga,
goto main el programa debe comenzar a ejecutarse automáti-
camente; el LED de la salida 0 deberá encenderse y
Este programa utiliza los comandos high y low apagarse cada segundo.
para controlar el pin de salida 0, y utiliza los coman-
dos pause y wait para crear un tiempo de retardo. El
comando “wait” opera con unidades en segundos El Diagrama y el
enteros mientras que pause utiliza milisegundos Circuito Impreso de la Mascota
(1000 ms = 1 segundo).
Por lo tanto, en este programa ambos tiempos de El proyecto de la mascota virtual utiliza un mi-
retardo tienen la misma duración, sólo que están es- crocontrolador PICAXE-08 con dos LEDs que simu-
critos de maneras distintas. El comando “goto” hace lan los “ojos” de la mascota y un zumbador que si-
que el programa “salte” a la etiqueta main: al inicio mula la “voz”. El proyecto también utiliza un inte-
del programa. Esto significa que el programa se eje- rruptor que permite a la mascota responder al “tac-
cutará continuamente una y otra vez. Note que la pri- to”, y una fotorresistencia que permite a la mascota
mera vez que se utiliza la etiqueta, la misma debe es- detectar si su alrededor está claro u oscuro.
tar seguida de un símbolo de dos puntos (:). Esto in- Para la construcción de nuestra mascota, toma-
dica a la computadora que la palabra es una nueva mos en cuenta las siguientes entradas y salidas:
etiqueta.
Hecho este ejemplo, veamos cómo realizar la Salida A - Las patas out0 (pata 7) y out4 (pata
programación del chip en forma detallada: 3) están conectadas a los LEDs
Salida B - El pin out2 (pata 5) está conectado al
1. Conecte el cable PICAXE a un puerto serie de zumbador electrónico
la computadora y tome nota a cuál de los puertos lo Entrada A - La entrada in1 (pata 6) está conec-
conecta (normalmente COM1 ó COM2). tado a la fotorresistencia
2. Ejecute el Software “Programming Editor”. Entrada B - La entrada in3 (pata 4) está conec-
3. En el menú desplegable escoja Ver -> Opcio- tado al interruptor de botón de presión
nes para acceder la pantalla de opciones (ésta pue-
de que aparezca automáticamente). El diagrama de la mascota se muestra en la figu-
4. Haga click en “Modo” y seleccione PICAXE- ra 8. En la figura 9 se da el diagrama de la placa de
08. circuito impreso.
5. Haga click en “Puerto Serie” y seleccione el
puerto serie al cual el cable PICAXE está conecta-
do. Haga click en “OK”. Probando el Circuito
6. Escriba el siguiente programa:
Paso 1: Verificación de componentes. Una vez
main: armado el circuito y verificado que todos los compo-
high 0 nentes están en su lugar, conecte la caja de baterías
pause 1000 al cable de baterías y ponga su dedo sobre el micro-
low 0 controlador PICAXE. Si comienza a calentarse des-
wait 1 conecte la batería inmediatamente ya que debe haber
goto main algún problema (lo más seguro es que el chip o los
cables de la batería estén conectados en sentido in-
(No olvide el símbolo de dos puntos (:) directa- verso).

64 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UNA M ASCOTA V IRTUAL

Paso 3: Pruebe el otro


LED. Repita el programa del
Figura 8
paso 4, pero utilice high 4 y
low 4, en vez de high 0 y low
0. Esto probará al otro LED.
Paso 4: Pruebe el zumba-
dor. Escriba y descargue el
siguiente programa (vea la fi-
gura 10):

main:
sound 2, (65,100)
sound 2, (78,100)
sound 2, (88,100)
sound 2, (119,100)
goto main

El zumbador debe emitir 4


Paso 2: Descargue un pro- sonidos diferentes. Si no hace
Fig. 9
grama para probar el LED 0. Co- esto, asegúrese que los cables
necte el cable a su computadora y del zumbador estén soldados
al conector PICAXE en el PCB. correctamente, que el lado de
Asegúrese que el enchufe del ca- bronce esté firmemente pegado
ble quede completamente dentro al PCB con una cinta adhesiva
del conector del PCB. Compruebe de doble contacto (no trabajará
que el software esté en el modo PI- si está flojo) y que los termina-
CAXE-08 y que haya elegido el les sobre las letras PX estén de-
puerto serie correcto (para mayor bidamente unidos mediante un
información lea los pasos bajo el cable soldado.
título: “descargando programas”). Paso 5: Pruebe el Interrup-
Escriba y descargue el progra- tor. Para verificar que el inte-
ma de encendido y apagado del led rruptor está funcionando correc-
que explicamos hace un momento. tamente, escriba y ejecute el
El LED debe titilar a medida que programa mostrado en la figura
se descarga el programa. Al termi- 11. El LED de la salida 0 debe-
nar la descarga el LED deberá en-
cenderse y apagarse cada segundo.
Si el LED no hace esto, verifique
que esté conectado correctamente
y que las resistencias de 330Ω es-
tén en la posición correcta en el
PCB.
Si el programa no se descarga,
verifique que la resistencia de
22kΩ, la de 10kΩ y el zócalo del
circuito integrado estén soldados
correctamente. Utilice un voltíme-
tro para verificar si hay 4.5V entre
las patas superiores (1 y 8) del mi-
crocontrolador. Verifique que el
cable esté firmemente conectado
al conector y que dentro del soft-
ware se haya elegido el puerto se-
rie correcto. Fig. 10

CLUB SABER ELECTRÓNICA 65


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Figura 11 distintos cuando usted cubre y descubre la


fotorresistencia con su mano (de manera
que incidan sobre la fotorresistencia distin-
tos niveles de luz). Si esto no ocurre, verifi-
que que la fotorresistencia y la resistencia
de 1kΩ estén soldadas correctamente.

¡Si ha ejecutado todas estas pruebas correc-


tamente lo felicitamos, ya que ha construido
y ensamblado correctamente su Ciber-mas-
cota!

Ahora que ha ensamblado y probado su


mascota virtual, es el momento de darle una
“personalidad” desarrollando sus propios
programas. Estos programas pueden hacer
que la mascota reaccione de diversas mane-
ras al toque de los interruptores de presión y
a los niveles de luz.
Daremos dos ejemplos de programas. Estos
están diseñados para darle un punto de par-
tida para la creación de su programa. Usted
puede modificarlos o comenzar a hacer un
programa completamente nuevo si así lo
prefiere.

¡Sea creativo!

Programa 1

rá encenderse cada vez que se presione el interruptor. Este programa tiene un bucle principal, el cual
Si no lo hace, verifique que el interruptor y que las enciende y apaga los ojos LED, y también verifica el
resistencias de 10kΩ estén soldadas correctamente. estado del sensor de luz y del interruptor de presión.
Paso 6 - Pruebe la fotorresistencia. Escriba y Cuando se presiona el botón del interruptor, el zum-
descargue el programa de la figura 12. bador emite un sonido. Tome en cuenta que debe
Ambos LEDs deberán encenderse en patrones mantener el interruptor presionado hasta que escu-
che el sonido, si presio-
na brevemente el inte-
Figura 12 rruptor, no funcionará.
Si la fotorresistencia se
cubre, la mascota se “irá
a dormir” hasta que el
nivel de luz suba nueva-
mente. El programa se
muestra en la figura 13.

Programa 2

Este programa es mucho


más avanzado. Tiene un
bucle principal, el cual
enciende y apaga los
ojos LED atenuándolos;

66 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UNA M ASCOTA V IRTUAL

Figura 13

Figura 14

CLUB SABER ELECTRÓNICA 67


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

también verifica el estado del sensor de luz y del in- cual interpreta la información suministrada por los
terruptor (figura 14). Cuando se presiona el botón sensores y luego enciende o apaga las salidas en el
del interruptor, el zumbador emite un sonido me- momento correcto.
diante el uso del comando sound. Si se presiona el
botón tres veces (contadas por una variable llamada Proponemos el armado de un sistema de alarma
b3), la mascota pone una melodía. Tome en cuenta de múltiples usos, desde una central domiciliaria de
que debe mantener el interruptor presionado hasta 4 zonas (una demorada y tres instantáneas) hasta
que escuche el sonido. Si la fotorresistencia se cubre, un sistema de seguridad para automóvil. El límite
la mascota se “irá a dormir”. Este programa utiliza de las aplicaciones queda restringida sólo por su
una técnica llamada PWM (Pulse Width Modulation imaginación.
- Modulación por ancho de pulso) para permitir la
atenuación de los ojos (LEDs), en vez de simple- En el caso de un sistema de alarma contra incen-
mente apagarlos o encenderlos inmediatamente utili- dios, las entradas podrían ser los sensores de humo y
zando los comandos high y low. La PWM funciona el teclado numérico del frente del panel de control.
encendiendo y apagando la salida muy rápidamente, Los dispositivos de salida serían la pantalla del panel
más rápido que lo que el ojo humano puede ver. Va- de control, la sirena externa y luces estroboscópicas.
riando el tiempo que la salida está encendida (llama- El microcontrolador es el “cerebro” del sistema.
do mark) con respecto al tiempo que la misma está
apagada (llamado space), el brillo del LED puede al-
terarse. Diagramas de Bloques del
Sistema de Alarma

El “diagrama de bloques”, puede ser como se ve


a continuación. Utilizamos un PICAXE-08. La tra-
Armado y Programación de una ducción de las palabras que empleamos es:
Central de Alarma
Input = entrada
Process = procedimiento
Hoy en día, casi todos los edificios modernos tie- Output = salida
nen algún tipo de alarma. Por ejemplo, un sistema Smoke = detector de humo
contra incendios puede tener una serie de detectores Strobe = luz estroboscópica
de humo para actuar a tiempo, si se observa el humo Keypad = teclado numérico
de un incendio. Siren = sirena
Sin embargo, Microcontroller = microcontrolador
muchos siste- LCD = pantalla o display LCD
mas de alar-
mas son tam-
bién sistemas
de seguridad,
por ejemplo
el sistema de
alarma de
una platafor-
ma de perfo-
ración puede El esquema electrónico que forma al sistema de
monitorear la alarma puede se muestra en la figura 15.
temperatura y presión del petróleo crudo a medida El detector de humo y el teclado numérico pro-
que es extraído y puede automáticamente apagar el veen información al microcontrolador; por lo tanto
sistema si se detecta una falla. Esto favorece a la se- se les conoce como “entradas”. Luego el microcon-
guridad, tanto de los trabajadores como del medio trolador “decide” cómo reaccionar y puede, en deter-
ambiente alrededor de la plataforma. minados casos, operar algunas de las salidas, por
Todos estos sistemas están compuestos por dis- ejemplo encender la sirena y la luz estroboscópica ó
positivos de entrada y salida. A menudo estos dispo- mostrar un mensaje en la pantalla de cristal líquido
sitivos están conectados a un microcontrolador, el (LCD).

68 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UNA C ENTRAL DE A LARMA

Diseñar y construir un sistema de alarma puede de un nuevo programa en la memoria del microcon-
resultar muy fácil si Ud. sabe perfectamente qué es trolador.
lo que quiere que haga el circuito. La alarma debe
programarse de manera que reaccione a las entradas El conector y el circuito de interface se incluyen
y a las señales de los sensores. en todo circuito impreso diseñado para utilizarse
Las especificaciones del diseño son: con el microcontrolador PICAXE-08. Esto permite
reprogramar al microcontrolador PICAXE sin sacar
1. El diseño utilizará un microcontrolador PICA- el chip del circuito impreso - ¡Simplemente conecte
XE-08 como su cerebro. el cable cada vez que desee descargar un nuevo pro-
2. El diseño incluirá una luz indicadora LED, un grama!
zumbador para generar ruidos y una alarma que po-
dría ser una sirena ó un motor. ¿Cómo era eso de la salida 0 y la programación
3. El diseño será capaz también de reaccionar a del micro?
señales de sensores analógicos tales como sensores En el sistema PICAXE-08 la pata 7 tiene dos fun-
de luz. ciones, cuando se está “ejecutando” un programa, la
pata se denomina salida 0 y puede controlar salidas
Su alarma puede servir para cualquier propósito tales como LEDs y motores.
que usted elija. A continuación se mencionan algu- En cambio, cuando se está descargando un pro-
nos ejemplos: grama la misma pata actúa como pin de salida serie
de datos, comunicándose con la PC. Por lo tanto, si
1) Una alarma contra incendios. Se utiliza un durante esta operación también tiene conectada a la
sensor de luz para detectar humo. Al detectar humo pata una salida tal como un LED, se percatará que el
se activa una sirena. mismo se encenderá y apagará continuamente mien-
2) Una alarma contra robos. Al activar el cable tras se descarga el programa.
de una trampa se activa una luz estroboscópica. Sin Nota: La mayor parte de las computadoras mo-
embargo, durante el día la alarma es desactivada dernas tienen dos puertos serie, usualmente denomi-
por un sensor de luz. nados COM1 y COM2. El software Editor de Pro-
3) La caja fuerte de un banco. Al activar el inte- gramación utilizado para crear los programas debe
rruptor de una alarma de “pánico”, un cerrojo sole- configurarse con el puerto serie correcto – seleccio-
noide electrónico cierra la caja fuerte del banco. ne Ver -> Opciones -> Puerto Serie para elegir el
4) Una alarma para monitorear la recámara de puerto serie correcto en su máquina.
un bebé. Cuando no se detectan movimientos o soni- Si usted está utilizando una nueva PC portátil
dos se activa un timbre de advertencia. puede que ésta sólo tenga un conector del tipo USB.
En este caso para poder utilizar el Sistema PICAXE
deberá comprar un adaptador USB a serie.
Algunos Conceptos para Recordar

¿Como se escriben los programas? Prueba y Uso de Transistores


Los programas se dibujan como organigramas o
se escriben como listados de comandos BASIC. Pro- En capítulos anteriores vimos cómo se prueban
gramar en BASIC es fácil, ya hemos dado varios algunos componentes por medio del sistema PICA-
ejemplos y continuaremos haciéndolo. XE. Aprovechando que la alarma posee un transistor,
veremos cómo se lo puede probar.
¿Cómo se transfiere el programa al microcontro- Un transistor es un componente electrónico que
lador? controla el flujo de corriente en un circuito. El tran-
El microcontrolador PICAXE-08 se programa sistor actúa como un
conectando un cable desde el puerto serie de la com- “interruptor electróni-
putadora a un conector en el circuito impreso (PCB) co” de manera que una
a un lado del microcontrolador. Este conector (el pequeña corriente de
cual se parece a los conectores de audífonos utiliza- “emisor” pueda con-
dos en los reproductores portátiles de CD) se conec- trolar a una gran co-
ta a dos patas del microcontrolador y a la conexión rriente. Esto permite
de 0V desde la batería. Esto permite que la PC y el que dispositivos de po-
microcontrolador “hablen” para permitir la descarga ca corriente, como el

CLUB SABER ELECTRÓNICA 69


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

microcontrolador, controlen dispositivos de grandes eléctrica). Al conectar el diodo asegúrese que la


corrientes (como motores). “banda” esté conectada en el sentido correcto.
Los transistores se utilizan en radios, en juguetes
electrónicos y en casi todos los dispositivos electró-
nicos.
Un transistor tiene tres patas. Estas se denominan
base, colector y emisor. La base es la pata que se en-
carga de activar el “interruptor electrónico”. Cuando
se pasa una pequeña corriente por la pata base, la
misma permite el flujo de una corriente mucho ma-
yor entre el colector y el emisor. Esta corriente se
puede utilizar para encender dispositivos tales como
motores, lámparas y timbres.
Output device = dispositivo de salida

Otra buena idea es conectar un condensador elec-


trolítico de 100µF a través del suministro de las ba-
terías para ayudar a suprimir el ruido eléctrico.
Para probar un transistor con el sistema PICA-
XE, se puede conectar un timbre como dispositivo
de salida. La base del transistor recibirá una señal
desde la salida 4 (pata 3) del microcontrolador.

Small current into base = pequeña corriente por


la base
Large current across collector/emitter = grandes
corrientes a través del colector y emisor
Uno de los transistores más comunes es el tipo
BC548B.

El transistor está contenido en un encapsulado


plástico con un extremo plano. Este extremo plano
permite identificar correctamente la base, el colector Después de conectar el timbre lo podemos probar
y el emisor. utilizando un simple programa como el que se mues-
Los motores pueden generar “ruido eléctrico” tra a continuación:
cuando están funcionando. Esto ocurre debido a que
los imanes y las bobinas eléctricas que están dentro main:
del motor generan señales eléctricas a medida que el high 4
motor rota. Estas señales (ruido eléctrico) pueden wait 1
afectar la operación del microcontrolador. Algunos low 4
motores, como los motores solares, producen muy wait 1
poco ruido mientras que otros producen mucho rui- goto main
do.
Para evitar que el ruido eléctrico afecte al circui- Este programa enciende y apaga cada segundo, el
to del microcontrolador, se debe instalar siempre un timbre conectado al pin de salida 4.
condensador de 220nF entre los terminales del mo- Para descargar el programa, siga los pasos que
tor antes de utilizarlo. hemos explicado en varias oportunidades a lo largo
Adicionalmente, se debe conectar un diodo (por de este texto, empleando cualquiera de los circuitos
ejemplo un diodo 1N4001) a un lado del motor. Es- (entrenador para PICAXE-08, mascota o la alarma
te se utiliza para prevenir daños al transistor cuando que estamos describiendo y cuyo circuito daremos
el motor comienza a desacelerarse luego de haber más adelante). Si el timbre no funciona verifique
apagado el transistor (por un corto período de tiem- que:
po (mientras se desacelera y finalmente se detiene) el
motor actúa como un dínamo y genera corriente 1) el diodo esté conectado en el sentido correcto

70 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UNA C ENTRAL DE A LARMA

Figura 15

2) se estén utilizando las resistencias correctas 5) se esté utilizando el número de pin de salida
3) el transistor esté conectado en el sentido co- correcto en el programa
rrecto 6) todas las uniones estén bien soldadas
4) el cable rojo del timbre esté conectado en el
sentido correcto Entre los dispositivos de salida que se pueden co-
nectar mediante un transistor están los timbres, mo-
Figura 16 tores, solenoides, sirenas y luces estroboscópicas.
Sin embargo, algunos dispositivos puede que requie-
ran transistores de alta potencia. En estos casos se
puede utilizar el transistor Darlington BCX38B en
vez del transistor estándar BC548B.

El Circuito de la Alarma

El proyecto de alarma utiliza un microcontrola-


dor PICAXE-08, un LED y un zumbador como dis-
positivos de retroalimentación, y un dispositivo de
salida adicional elegido por el usuario (sirena o luz
estroboscópica).
Este proyecto también puede reaccionar a señales
de sensores digitales y/o analógicos (por ejemplo a
fotorresistencias).
El diagrama electrónico se muestra en la figura
15. De dicho circuito debemos hacer las siguientes
observaciones:

Salida de la pata 7: el pin0 está conectado al LED.


Salida de la pata 5: el pin2 está conectado al
zumbador.
Salida de la pata 3: el pin4 controla a los dispo-
sitivos de salida.

CLUB SABER ELECTRÓNICA 71


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Entrada de la pata 6: el pin1 está conectado a la Para soldar correctamente debe sostener en una
fotorresistencia. mano el soldador y en la otra la soldadura. Por lo
Entrada de la pata 4: el pin3 está conectado al tanto, asegúrese que el tablero esté fijo a la mesa de
interruptor de botón de presión. manera que no se mueva (utilice una prensa o pida
alguien que lo sujete). Siga los siguientes pasos:
¡Recuerde no confundir el número de pata del
chip con el número de pin de salida/entrada! 1) Limpie la punta de la soldadura sobre la es-
ponja húmeda.
La lista de materiales para la construcción de la 2) Presione la punta del soldador contra el ter-
alarma (figura 16) es la siguiente: minal sobre el PCB y la pata del componente a sol-
R1 y R2: resistencias de 10kΩ (marrón negro na- dar. Cuente hasta 3 para darle tiempo de calentarse
ranja dorado) a la unión.
R3: resistencia de 22kΩ (rojo rojo naranja dora- 3) Mantenga el soldador en posición y presione
do) la soldadura contra la unión. Permita que se derrita
R4 : resistencia de 330Ω (naranja naranja ma- suficiente soldadura para cubrir toda la unión.
rrón dorado) 4) Retire primero la soldadura y luego el solda-
R5 y R6: resistencia de 1kΩ (marrón negro rojo dor.
dorado) 5) Permita que la soldadura se enfríe durante 5
LED1 : LEDs rojos de 5 mm segundos antes de mover el tablero o placa de cir-
TR1: transistor BC548B cuito impreso.
D1: diodo 1N4001 Después de terminar una unión asegúrese que la
C1: condensador electrolítico de 100uF misma no esté haciendo “puente” con otras juntas.
IC1: conector de 8 pines para circuito integrado Sin embargo, tome en cuenta que algunas juntas sol-
PX: microcontrolador PICAXE-08 dadas (por ejemplo a ambos lados del conector de
CT1: conector de descarga PICAXE de 3.5 mm descarga PICAXE) tienen dos alambres muy cerca el
BT1: conector de batería uno del otro que se encuentran conectados mediante
BT1: caja de baterías de 4.5V (3 x AA) una pista (línea) sobre el PCB. En estos casos no im-
PCB: tablero o placa de circuito impreso porta que la soldadura las una.
Cables y sensores (por ejemplo interruptores y
fotorresistencias) 6) Comience siempre con los componentes más
pequeños, como por ejemplo resistencias. Luego
continúe con componentes más grandes como el co-
nector del circuito integrado y termine con compo-
Algunas Consideraciones para Principiantes nentes altos tales como condensadores y transisto-
res. No intente fijar todos los componentes a la vez,
La empresa Education Revolution ofrece la placa fije solamente dos o tres a la vez.
de circuito impreso, fabricada especialmente con una 7) Asegúrese siempre que los componentes estén
película resistente a la soldadura, para hacer el pro- bien montados (planos) sobre el tablero antes de sol-
ceso de soldadura más sencillo. Esta película es la darlos. Al utilizar componentes de patas largas tales
cubierta verde que cubre las pistas de manera que la como resistencias y LEDs, doble las patas de mane-
soldadura no se pegue a las mismas. Para una cons- ra que el componente quede firmemente en posición
trucción correcta, el PCB se debe ensamblar y soldar antes de soldarlo.
muy cuidadosamente. 8) Asegúrese que el conector estéreo de descarga
Al soldar asegúrese que la punta del soldador es- PICAXE quede firme y acomodado en posición an-
té caliente y limpia. Para verificar si está lo suficien- tes de soldarlo.
temente caliente, trate de derretir un trozo de solda- 9) Asegúrese que aquellos componentes que sólo
dura sobre la punta. La soldadura debe derretirse ca- operan en un solo sentido (LEDs, diodos, transisto-
si instantáneamente. Luego limpie la soldadura pa- res y condensadores) estén correctamente alineados
sando la punta del soldador por una esponja húmeda. antes de soldarlos (vea las marcas sobre el PCB).
Recuerde que la soldadura sólo se pega a super- 10) Los cables (alambres) del zumbador son muy
ficies calientes. Por lo tanto nunca derrita la soldadu- delgados. Tenga cuidado de no sobrecalentarlos o
ra sobre la punta y luego trate de tirar la misma so- de lo contrario puede que se derritan.
bre la unión a soldar, esto no funcionará ya que la 11) Haga pasar siempre los cables de la caja de
unión estará fría y la soldadura no se pegará. baterías por arriba y abajo de los agujeros antes de

72 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UNA C ENTRAL DE A LARMA

soldarlos. Esto ayuda a hacer una unión más fuerte


la cual es mucho menos propensa a soltarse.

Estas instrucciones asumen que usted está sol-


dando todos los componentes directamente sobre el
tablero. Si utiliza cables para unir algunos compo-
nentes (por ejemplo el LED) las instrucciones son
idénticas, aunque deberá ser aún más cuidadoso de
colocar los cables para el LED en la dirección co-
rrecta.

12) Coloque en posición las dos resistencias de


1k (marrón negro rojo dorado) y la resistencia de
22kΩ (marrón negro marrón dorado). Dóbleles las
patas para fijarlas en su posición y suelde.
13) Coloque en posición las dos resistencias de
10k (rojo rojo naranja dorado) y la resistencia de
330Ω (naranja naranja marrón dorado). Dóbleles
las patas para fijarlas en su posición y suelde.
14) Utilizando alguno de los alambres cortados
de las patas de las resistencias, haga un puente so-
bre las letras PX marcadas a un lado de las resisten-
cias de 330Ω y luego suelde. (Ignore el agujero so-
bre los agujeros marcados CF).
15) Suelde el diodo 1N4001 en la posición D1,
Figura 17
asegúrese que la barra plateada apunte hacia el la-
do derecho del PCB.
16) Coloque y presione en su posición el conec-
tor estéreo de descarga PICAXE sobre el tablero y
asegúrese que quede fijo (Debe escuchar un “click”)
de manera que quede nivelado sobre el tablero. Suel-
de los cinco contactos cuadrados metálicos (los cin-
co soportes plásticos redondos no tienen que soldar-
se). No se preocupe si la soldadura une dos ó mas
contactos en cualquiera de los dos lados del conec-
tor, ya que supuestamente éstos deben estar unidos
de todas maneras.
17) Coloque y presione en posición el conector
IC. Asegúrese que la muesca de uno de los extremos
apunte hacia el conector. Dóblele las patas para fi-
jarlo en posición y suelde.
18) Suelde el LED en su respectiva posición. Ase- ble negro en el agujero marcado 0V y el cable rojo
gúrese que el lado plano de uno de los lados del LED en el agujero marcado V+.
esté alineado con el lado plano marcado en el PCB. 24) Con una cinta adhesiva de doble contacto pe-
19) Suelde en su posición al transistor BC548B, gue el zumbador (por el lado de bronce) al PCB. Pa-
asegúrese que el lado plano del mismo quede alinea- se los cables del mismo hacia abajo por el agujero
do con la marca en el PCB. bajo LED1 y luego hacia arriba a través del agujero
20) Suelde en su posición al condensador de marcado PZ. Suelde el cable rojo en el agujero infe-
100µF, asegúrese de soldar en el sentido correcto las rior y el cable negro en el agujero superior.
patas + y -. No importa si la junta soldada del cable rojo se
23) Pase los cables de la batería hacia abajo a une con el pin5 del conector IC, ya que éstas se su-
través del agujero grande cerca de las letras DER y pone que deben unirse de todas maneras. Sin embar-
luego páselos hacia arriba a través del agujero go, el cable negro NO debe tocar el pin6 del conec-
grande cerca de las letras ORD. Luego suelde el ca- tor IC.

CLUB SABER ELECTRÓNICA 73


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

25) Suelde cables a las conexiones OUTPUT, Paso 4 – Descargue un programa


DIG, ANA y INPUT. para probar el LED 0
26) Revise cuidadosamente el tablero para veri- Conecte el cable a su computadora y al conector
ficar que se hayan hecho todas las uniones y que no PICAXE en el PCB. Vea que el conector del cable
haya hecho accidentalmente puentes. quede completamente dentro del conector del PCB.
27) Inserte el microcontrolador en el conector, Asegúrese que el software esté en el modo PICA-
asegurándose que el pin1 esté de frente al conector XE-08 y que haya elegido el puerto serie correcto.
estéreo.
Escriba y descargue el siguiente programa:
En la figura 17 se reproduce el diseño de la pla-
ca de circuito impreso. Una vez armado el circuito main:
realice las siguientes verificaciones: high 0
wait 1
Paso 1 – Verifique las uniones soldadas. low 0
Verifique que todas las uniones estén conectadas wait 1
tanto al terminal como al cable, y que el cable esté goto main
sujeto firmemente.
También verifique que la soldadura no haga acci- El LED debe titilar a
dentalmente puentes entre terminales adyacentes. medida que se descarga el
Esto es mucho más probable en el LED y en el zum- programa. Al terminar la
bador. descarga el LED deberá
En el conector estéreo los terminales cuadrados a encenderse y apagarse cada
cada lado pueden unirse sin ninguna consecuencia segundo. Si el LED no ha-
ya que de todas formas están unidos por una pista en ce esto verifique que esté
el tablero. Sin embargo, éstos no deben unirse al conectado correctamente y
Fig. 18
agujero redondo central. que las resistencias de
330Ω estén en la posición correcta en el PCB.
Paso 2 – Verifique los componentes. Si el programa no se descarga verifique que la re-
1) Verifique que el cable negro de la batería esté sistencia de 22kΩ, la de 10kΩ y el conector IC estén
en el agujero marcado 0V y que el cable rojo esté en soldados correctamente. Utilice un voltímetro para
el agujero marcado V+. verificar si hay 4.5V entre las patas superiores (1 y
2) Verifique que el chip PICAXE-08 esté inserta- 8) del microcontrolador. Verifique que el cable esté
do correctamente en el conector, con la muesca (que firmemente conectado al conector y que dentro del
muestra el pin1) apuntando hacia el conector estéreo. software se haya elegido el puerto serie correcto.
3) Verifique el lado plano del LED esté conecta-
do al agujero correcto del PCB. Paso 5 – Pruebe la salida
4) Asegúrese de no haber olvidado unir, median- Conecte un dispositivo de salida (por ejemplo un
te un alambre, los agujeros marcados PX en el extre- timbre) a los cables de salida y luego escriba y des-
mo inferior izquierdo del tablero. cargue el siguiente programa:
5) Asegúrese de pegar el lado de bronce del zum- Fig. 19
bador al tablero con cinta adhesiva de doble contacto. main:
6) Verifique que el conector esté soldado correc- high 4
tamente, incluyendo el terminal cuadrado central, el wait 1
cual a menudo, es olvidado por equivocación. low 4
wait 1
Paso 3 – Conecte la batería. goto main
Verifique que las 3 pilas AA estén colocadas co-
rrectamente dentro de la caja de baterías. Conecte la El timbre deberá so-
caja de baterías al cable de baterías y ponga su dedo nar cada segundo. Si no
sobre el microcontrolador PICAXE. Si comienza a lo hace, verifique que los
calentarse desconecte la batería inmediatamente, ya cables del transistor, del
que debe haber algún problema (lo más seguro es diodo y del timbre estén
que el chip o los cables de la batería estén conecta- conectados en la direc-
dos en sentido inverso). ción correcta.

74 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UNA C ENTRAL DE A LARMA

Paso 6 – Pruebe el zumbador El LED de la salida 0 deberá encenderse cada


Escriba y descargue el siguiente programa: vez que se presione el interruptor. Si no lo hace ve-
Fig. 20 rifique que el interruptor y que las resistencias de
main: 10kΩ estén soldadas correctamente.
sound 2, (65,100)
sound 2, (78, 100) Paso 8 – Pruebe la Fotorresistencia
sound 2, (88, 100) Conecte una fotorresistencia a la entrada analógi-
sound 2, (119, 100) ca. Escriba y descargue el siguiente programa (figu-
goto main ra 22):

El zumbador debe emitir main:


4 sonidos diferentes. Si no readadc 1,b1
hace esto asegúrese que los if b1 > 100 then do4
alambres estén soldados co- if b1 > 50 then do0
rrectamente, que el lado de low 0
bronce esté firmemente pe- low 4
gado al PCB con una cinta goto main
adhesiva de doble contacto
(no trabajará si está flojo) y do4:
que los terminales sobre las letras PX estén debida- high 4
mente unidos mediante un alambre soldado. low 0
goto main
Paso 7 - Pruebe el Interruptor
Conecte un interruptor a la entrada digital. Escri- do0:
ba y descargue el siguiente programa (figura 21): high 0
low 4
main: 'hacer una etiqueta llamada “main” goto main
if input3 is on then flash 'salta a flash si la entrada está encendida
goto main 'sino regresar a inicio Ambos LEDs deberán encenderse en momentos
distintos cuando usted cubre y descubre la fotorresis-

flash: ' hacer una etiqueta llamada “flash”


high 0 ' encender salida 0
Figura 22
wait 2 ' esperar 2 segundos
low 0 ' apagar salida 0
goto main ' regresar al inicio

Figura 21

CLUB SABER ELECTRÓNICA 75


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

tencia con su mano (de manera que incidan sobre la ` apagar LED y verificar nuevamente el estado
fotorresistencia distintos niveles de luz). Si esto no ` de los sensores
ocurre verifique que la fotorresistencia y la resisten- low 0
cia de 1kΩ estén soldadas correctamente. readadc 1,b1

¡Si ha ejecutado todas estas pruebas correcta- ` emitir un sonido si el valor analógico es bajo
mente lo felicitamos ya que ha construido y ensam- if b1 < 80 then beep
blado correctamente su alarma! ¡Ahora es el mo-
mento de desarrollar y probar sus propios progra- ` si el interruptor es presionado ir a alarm
mas para operar su sistema de alarma! if pin3 = 1 then alarm

Ideas de Programación ` hacer una pausa


Ahora que ha ensamblado y probado su alarma, pause 500
es el momento de desarrollar su propio programa.
Este puede hacer que la alarma reaccione de dife- goto main
rentes maneras a los sensores analógicos y digita-
les.
Veremos ahora dos ejemplos de programas. Estos ` ***** emitir sonido *****
están diseñados para darle un punto de partida para beep:
la creación de su programa. Usted puede modificar- sound 2,(120,50,80,50,120,50)
los o comenzar a hacer un programa completamente pause 200
nuevo si así lo prefiere. goto main

` ***** encender alarma *****


Programa 1 alarm:
Este programa de uso general contiene un bucle high 4
principal el cual enciende y apaga el LED, y también pause 2000
verifica el estado del sensor analógico (fotorresisten- low 4
cia) y de la entrada digital (interruptor). Cuando se goto main
presiona el interruptor suena una alarma por dos se- _________________________________________
gundos.
Si la fotorresistencia se cubre, el zumbador emi- Programa 2
tirá un “pip” de advertencia hasta que el nivel de luz Este programa está diseñado como si fuera un
vuelva a subir. sistema de alarma contra incendios. En el mismo, la
_________________________________________ alarma se activa una vez que se detecta humo sobre
` Programa 1 el sensor de luz (cuando el sensor de luz indica un
valor de luz menor de lo normal). Una vez que la
` ***** bucle principal ***** alarma se ha activado, la misma se mantiene encen-
` enciende y apaga el LED dida y sólo es posible apagarla desconectando la ali-
` y verifica el estado de los sensores mentación del sistema. La entrada digital se utiliza
como dispositivo anti-vandalismo. Mientras la caja
main: de la alarma esté cerrada, el interruptor se mantendrá
` encender LED y leer el valor de luz encendido (ésta es la condición normal). Si se abre la
high 0 caja, el interruptor se abrirá y activará la alarma del
readadc 1,b1 zumbador hasta que la caja vuelva a cerrarse.
_________________________________________
` emitir un sonido si el valor analógico es bajo ` Programa 2
if b1 < 80 then beep
` ***** bucle principal *****
` si el interruptor es presionado ir a alarm ` verificar estado de los sensores
if pin3 = 1 then alarm
main:
` hacer una pausa ` LED apagado
pause 500 low 0

76 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UN S ISTEMA DE L UCES DE S EGURIDAD

` leer valor de luz


readadc 1, b1

` activar la alarma si el valor analógico es bajo


if b1 < 80 then alarm

` si el interruptor se apaga ir a tamper


if pin3 = 0 then tamper Figura 23

goto main de luces triangular de seguridad que puede acoplarse


a un cinturón o a un bolso. La misma puede ser uti-
` ***** activar alarma anti-vandalismo hasta lizada por personas que estén caminando o montan-
` que el interruptor vuelva a cerrarse***** do bicicleta en carreteras oscuras para advertir a los
tamper: conductores sobre su presencia.
high 0 La luz de seguridad funciona mediante el encen-
sound 2, (120,100) dido y apagado de LEDs de alta intensidad de luz. El
if pin3 = 1 then main microcontrolador es el “cerebro” de la luz de seguri-
goto tamper dad.
Diseñar y construir una luz de seguridad para
` ***** alarma encendida eternamente ***** peatones ó ciclistas resulta muy fácil si se siguen los
alarm: pasos que damos a continuación. La luz de seguridad
high 4 debe programarse para encender y apagar LEDs de
goto alarm alta intensidad. Las especificaciones del diseño son
_________________________________________ las siguientes:

Estos son simplemente dos de los muchos ejem- 1. El diseño utilizará un microcontrolador PICA-
plos que pueden utilizarse para la programación de XE-08 como su cerebro controlador.
su alarma. 2. El diseño incluirá 3 LEDs de alta intensidad.
3. El diseño será capaz de opcionalmente reac-
cionar a cambios en los niveles de luz.

El diagrama en bloques para su luz de seguridad


puede ser como el que vemos en la figura 24.
Armado y Programación de un El asunto más importante que debe pensar al di-
Sistema de Luces de Seguridad señar su luz de seguridad, es el tipo de estuche que
va a utilizar para la misma. ¿Va a usar el estuche
triangular del fabricante o va a hacer su propio es-
Es posible hacer circuitos secuenciales con mi- tuche?
crocontroladores PICAXE de modo que éstos reali-
cen diferentes motivos. Uno de los sistemas de luces Otros puntos importantes a considerar antes de
más requeridos
es, sin dudas,
aquél que puede
emplearse como
sistema de seguri-
dad o baliza, ya
sea cuando un ve-
hículo está en
emergencia o
cuando una perso-
na se decide a co-
rrer.
La figura 23
muestra un juego Figura 24

CLUB SABER ELECTRÓNICA 77


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Figura 25 más tiempo que una bombilla eléctrica). Si se pasa


demasiada corriente por un LED el mismo se puede
dañar, es por esto que los LEDs normalmente se uti-
lizan junto con una resistencia en serie, para prote-
gerlos de corrientes excesivas.
El valor de la resistencia requerida depende del
voltaje de la batería utilizada. Para una batería de
4.5V se puede utilizar una resistencia de 330Ω y pa-
ra una batería de 3V lo apropiado es una resistencia
de 120Ω.
Debido a que el LED sólo requiere una pequeña
cantidad de corriente para operar, el mismo se puede
conectar directamente entre el pin de salida del mi-
crocontrolador y 0V (sin olvidar incluir la resistencia
en serie para protección).
Puede probar el LED muy fácil (vea el capítulo
2), mediante el siguiente programa:

encarar el diseño del sistema de luces de seguridad


son los siguientes:

1. ¿Qué color, forma y tamaño de LEDs va a uti-


lizar?
2. ¿Qué tipo de batería es la más adecuada?
3. ¿Cómo va a encender y apagar su luz de segu- Este programa debe encender y apagar el LED
ridad? (conectado al pin de salida 0) cada segundo. Si no
4. ¿Necesita su luz de seguridad ser resistente al sabe cómo se debe conectar el Led, a dónde conec-
agua, de manera que pueda utilizarla bajo la lluvia? tarlo y qué pasos debe seguir, le aconsejamos que co-
mience a leer este capítulo desde el inicio. Si ha se-
En la figura 25 podemos observar los componen- guido todos los pasos correctos y el LED no funcio-
tes principales que podría necesitar para su luz de se- na verifique:
guridad. Precisará un microcontrolador PICAXE-08,
diodo emisor de luz (LED), fotorresistencia, inte- 1. que el LED esté conectado en sentido correcto
rruptor de encendido/apagado, caja para dos pilas 2. que se esté utilizando la resistencia correcta
AAA, y también necesitará un conector picaxe para 3. que se esté utilizando el número de pin correc-
descarga y algunas resistencias. to dentro del programa
4. que todas las juntas estén bien soldadas
Utilizando LEDs
Tal como hemos visto en este mismo texto, los Algunas veces es útil poder encender y apagar
LEDs sólo necesitan una pequeña cantidad de co- más de un LED al mismo tiempo. Utilizando múlti-
rriente para operar, esto los hace mucho más eficien- ples comandos high y low, esto tomaría mucho tiem-
tes que las lamparitas (bombillas) eléctricas (esto po.
significa, por ejemplo, que si se tuviera una alimen- El comando “let pins =” permite hacer esto en
tación por baterías un LED alumbraría por mucho una manera mucho más práctica.

78 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UN S ISTEMA DE L UCES DE S EGURIDAD

Después del símbolo de igual (=) se incluye un La lista de materiales para construir este circuito
número. A cada pin de salida se le asigna un valor, es la siguiente:
y el número utilizado en el programa corresponde a
la suma de estos valores. Vea la siguiente tabla: R1, R2, R3: resistencias de 120Ω, (marrón rojo ma-
rrón dorado)
Pin 2 1 0 R4: resistencia de 1kΩ, (marrón negro rojo dorado)
Valor 4 2 1 R5: resistencia de 22kΩ, (rojo rojo naranja dorado)
R6: resistencia de 10kΩ, (marrón negro naranja
Por lo tanto, el siguiente programa enciende to- dorado)
das las salidas, luego las apaga todas, y luego encien- LED1, 2, 3: LEDs de alta intensidad de 5 mm
de una a la vez en secuencia: SW1: interruptor deslizante de encendido/apagado
IC1: conector de 8 pines para circuito integrado
start: low 0 ` apagar todas las salidas PX: microcontrolador PICAXE-08
low 1 CT1: conector de descarga PICAXE de 3.5 mm
low 2 BT1: caja de pilas eléctricas de 3 V (2 x AAA)
main: PCB: tablero de circuito impreso
let pins = 7 ` encender todas las salidas (4+2+1) Cables sencillos para conectar los LEDs y la caja
pause 100 ` pausa por 0.1 segundos de pilas
let pins = 0 ` apagar todas las salidas opcional: LDR: fotorresistencia miniatura
pause 100 ` pausa por 0.1 segundos Estuche
let pins = 1 ` encender pin 0, todos las demás apagados 1 estuche triangular con clip de cinturón
pause 100 ` pausa por 0.1 segundos 2 tornillos de rosca cortante No. 4 de 6 mm
let pins = 2 ` encender pin 1, todos las demás apagados 1 tornillo de rosca cortante No. 4 de 16 mm
pause 100 ` pausa por 0.1 segundos
let pins = 4 ` encender pin 2, todos las demás apagados Soldando Componentes Sobre el PCB:
pause 100 ` pausa por 0.1 segundos El PCB que provee la empresa Education Revo-
let pins = 0 ` apagar todas las salidas lution está fabricado especialmente con una película
goto main ` regresar a inicio (start) resistente a la soldadura para hacer el proceso de sol-
dadura más sencillo. Esta película es la cubierta ver-
¡IMPORTANTE! El comando let pins sólo fun- de que cubre las pistas de manera que la soldadura no
ciona luego de que los pines han sido configurados se pegue a las mismas. Para una construcción correc-
como salidas. Para hacer esto usted debe utilizar el ta el PCB se debe ensamblar y soldar muy cuidado-
comando low en cada pin al inicio del programa. samente.
Al soldar asegúrese que la punta del soldador es-
té caliente y limpia. Para verificar si está lo suficien-
El Circuito del Juego de
Luces de Seguridad

El proyecto de luz de se-


guridad utiliza un microcon-
trolador PICAXE-08 con
tres salidas LED. Este pro-
yecto también utiliza un in-
terruptor para encender y
apagar el circuito, y puede
opcionalmente utilizar una
fotorresistencia de manera
que la luz de seguridad sepa
cuando está claro y cuando
oscurece.
El diagrama de circuito
para el proyecto de luz de
seguridad, es el que vemos Figura 26
en la figura 26.

CLUB SABER ELECTRÓNICA 79


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

temente caliente, trate de Figura 27


derretir un trozo de solda-
dura sobre la punta. La
soldadura debe derretirse
casi instantáneamente.
Luego limpie la soldadu-
ra pasando la punta del
soldador por una esponja
húmeda.
Recuerde que la sol-
dadura sólo se pega a su-
perficies calientes. Por lo
tanto nunca derrita la soldadura sobre la punta y lue- 7) Asegúrese siempre que los componentes estén
go trate de tirar la misma sobre la unión a soldar – bien montados (planos) sobre el tablero antes de sol-
esto no funcionará ya que la unión estará fría y la darlos. Al utilizar componentes de patas largas tales
soldadura no se pegará. como resistencias y LEDs, doble las patas de mane-
Para soldar correctamente debe sostener en una ra que el componente quede firmemente en posición
mano el soldador y en la otra la soldadura. Por lo antes de soldarlo.
tanto, asegúrese que el tablero esté fijo a la mesa de 8) Asegúrese que el conector estéreo de descarga
manera que no se mueva (utilice una prensa ó pida PICAXE quede firme y acomodado en posición an-
alguien que lo sujete). tes de soldarlo.
Damos a continuación los pasos aconsejados pa- 9) Asegúrese que aquellos componentes que sólo
ra realizar la soldadura: operan en un solo sentido (LEDs, diodos, transisto-
res y condensadores) estén correctamente alineados
1) Limpie la punta de la soldadura sobre la es- antes de soldarlos (vea las marcas sobre el PCB).
ponja húmeda. 10) Los cables (alambres) del zumbador son muy
2) Presione la punta del soldador contra el ter- delgados. Tenga cuidado de no sobrecalentarlos o
minal sobre el PCB y la pata del componente a sol- de lo contrario puede que se derritan.
dar. Cuente hasta 3 para darle tiempo de calentarse 11) Haga pasar siempre los cables de la caja de
a la unión. baterías por arriba y abajo de los agujeros antes de
3) Mantenga el soldador en posición y presione soldarlos. Esto ayuda a hacer una unión más fuerte
la soldadura contra la unión. Permita que se derrita la cual es mucho menos propensa a soltarse.
suficiente soldadura para cubrir toda la unión.
4) Retire primero la soldadura y luego el solda- En el proyecto de la luz de seguridad todos los
dor. componentes electrónicos se sueldan al tablero o
5) Permita que la soldadura se enfrié durante 5 placa de circuito impreso, excepto el LED2 y el
segundos antes de mover el tablero. LED3 si usted está utilizando el estuche triangular al
conectar con cables estos dos LEDs.
Después de terminar una unión asegúrese que la El LED1 se suelda arriba del PCB mediante ca-
misma no esté haciendo “puente” con otras juntas. bles largos. Luego se dobla hacia atrás por el borde
Sin embargo, tome en cuenta que algunas juntas sol- del PCB de manera que apunte hacia abajo en vez de
dadas (por ejemplo a ambos lados del conector de hacia arriba.
descarga PICAXE) tienen dos alambres muy cerca el Vea en la figura 27 el diseño de la placa de cir-
uno del otro que se encuentran conectados mediante cuito impreso de este proyecto.
una pista (línea) sobre el PCB. En estos casos no im- La fotorresistencia opcional, si se utiliza, se suel-
porta que la soldadura las una. da en el tablero del lado de las pistas.

6) Comience siempre con los componentes más 12) Coloque las tres resistencias de 120Ω (ma-
pequeños, como por ejemplo resistencias. Luego rrón rojo marrón dorado) en las posiciones R1, R2 y
continúe con componentes más grandes como el co- R3 y la resistencia de 10kΩ (marrón negro naranja
nector del circuito integrado y termine con compo- dorado) en la posición R6. Dóbleles las patas para
nentes altos tales como condensadores y transisto- fijarlas en su posición y suelde.
res. No intente fijar todos los componentes a la vez, 13) Coloque la resistencia de 22kΩ (rojo rojo na-
fije solamente dos o tres a la vez. ranja dorado) en la posición R5 y la resistencia de

80 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UN S ISTEMA DE L UCES DE S EGURIDAD

1k (marrón negro rojo dorado) en la posición R4. Una vez que haya montado todos los componen-
Dóbleles las patas para fijarlas en su posición y tes, puede verificar el funcionamiento de las distintas
suelde. partes, para ello, haga lo siguiente:
14) Coloque y presione en su posición el conec-
tor estéreo de descarga PICAXE sobre el tablero y Paso 1 – Verifique las uniones soldadas.
asegúrese que quede fijo (Debe escuchar un “click”) Verifique que todas las uniones estén conectadas
de manera que quede nivelado sobre el tablero. Suel- tanto al terminal como al cable, y que el cable esté
de los cinco contactos cuadrados metálicos (los cin- sujeto firmemente. También verifique que la solda-
co soportes plásticos redondos no tienen que soldar- dura no haga accidentalmente puentes entre termina-
se). les adyacentes. Esto es mucho más probable en los
No se preocupe si la soldadura une dos ó más LEDs y en la fotorresistencia.
contactos en cualquiera de los dos lados del conec- En el conector estéreo los terminales cuadrados a
tor ya que supuestamente éstos deben estar unidos cada lado pueden unirse sin ninguna consecuencia ya
de todas maneras. que de todas formas están unidos por una pista en el
15) Coloque y presione en posición el conector tablero. Sin embargo, éstos no deben unirse al aguje-
IC. Asegúrese que la muesca de uno de los extremos ro redondo central.
apunte hacia el conector.
Dóblele las terminales para fijarlo en posición y Paso 2 – Verifique los componentes.
suelde. 1) Verifique que el cable negro de la batería esté
16) Suelde el interruptor deslizante en su respec- en el agujero marcado 0V y que el cable rojo esté en
tiva posición. el agujero marcado V+.
17) Ponga en su posición al LED1. Asegúrese 2) Verifique que el chip PICAXE-08 esté inserta-
que la parte inferior del LED esté nivelada con la do correctamente en el conector, con la muesca (que
parte superior del interruptor (o sea que el LED es- muestra el pin1) apuntando hacia el conector estéreo.
té aproximadamente 6 mm por arriba del PCB). 3) Verifique el lado plano del LED esté conecta-
Suelde. do al agujero correcto del PCB.
18) Suelde cables al LED2, al LED3 y a los agu- 4) Verifique que el conector esté soldado correc-
jeros BT de la batería. Note que todos los cables tamente, incluyendo el terminal cuadrado central el
pueden enhebrarse a través de los agujeros para cual a menudo, es olvidado por equivocación.
crear una unión más fuerte. Los cables deben ser de
por lo menos 60 mm de largo. Paso 3 – Conecte la batería.
19) Suelde los cables de batería a la caja de pi- Verifique que las 2 pilas AAA estén colocadas
las, asegurándose de tener la polaridad correcta correctamente dentro de la caja de baterías. Encien-
(conexiones + y - correctas). Tenga cuidado de no da el interruptor y ponga su dedo sobre el microcon-
calentar demasiado los contactos metálicos de la ca- trolador PICAXE. Si comienza a calentarse apague
ja de pilas o de lo contrario puede que derritan la el interruptor inmediatamente ya que esto indica que
cubierta plástica y se caigan. hay un problema – lo más seguro es que el chip o los
20) Suelde los cables de LEDs a los LEDs, ase- cables de la batería estén conectados en sentido in-
gurándose de soldar las patitas en el sentido correc- verso.
to. Antes de hacer esto doble las patitas de los LEDs
a la mitad y suelde en la parte inferior de la mitad de Paso 4 – Descargue un programa
las patitas. Esto asegurará que los LEDs quepan co- para probar el LED 0
rrectamente en el estuche que haya elegido para alo- Conecte el cable a su ordenador y al conector PI-
jar al circuito. CAXE en el PCB. Asegúrese que el enchufe del ca-
21) Si lo desea, suelde la fotorresistencia opcio- ble quede completamente dentro del conector del
nal miniatura al tablero del lado de las PISTAS. De- PCB.
be soldarse parada sobre sus patas a unos 5 mm por Si Ud. “no sabe de lo que estamos hablando” en-
encima del tablero tonces debe comenzar a leer este tema desde el co-
22) Revise cuidadosamente el tablero para veri- mienzo de este capítulo ya que hemos explicado una
ficar que se hayan hecho todas las uniones y que no serie de conceptos importantes tales como “qué es un
haya hecho accidentalmente puentes. PICAXE, cómo se lo usa, cómo se lo programa, qué
23) Inserte el microcontrolador en el zócalo (ba- utilitarios se emplean para su programación, cómo se
se o zoquet), asegurándose que el pin1 esté de fren- lo conecta a una computadora, etc.”
te al conector estéreo. Escriba y descargue el siguiente programa:

CLUB SABER ELECTRÓNICA 81


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

goto main
LEDon:
high 0
goto main

EL LED deberá encenderse cuando usted cubre y


descubre la fotorresistencia con su mano (de manera
que incidan sobre la fotorresistencia distintos niveles
de luz). Si esto no ocurre verifique que la fotorresis-
tencia y la resistencia de 1k estén soldadas correcta-
mente.
¡Si ha ejecutado todas estas pruebas correcta-
mente lo felicitamos ya que ha construido y ensam-
blado correctamente su luz de seguridad! ¡Ahora es
el momento de desarrollar y probar sus propios pro-
gramas!

Ahora que ha ensamblado y probado su luz de se-


El LED debe titilar a medida que se descarga el guridad, es el momento de desarrollar su propio pro-
programa. Al terminar la descarga el LED deberá en- grama. Este programa crea diferentes patrones de en-
cenderse y apagarse cada segundo. Si el LED no ha- cendido de los LEDs de la luz de seguridad.
ce esto, verifique que esté conectado correctamente Analizaremos dos ejemplos de programas. Estos
y que las resistencias de 120Ω estén la posición co- están diseñados para darle un punto de partida para
rrecta en el PCB. la creación de su programa. Usted puede modificar-
Nota: Esta experiencia la hemos repetido varias los o comenzar a hacer un programa completamente
veces a lo largo de este texto pero tenga en cuenta nuevo si así lo prefiere.
que “cada vez ha sido en una forma ligeramente di-
ferente” para que comprenda plenamente la forma de ¡Sea creativo, intente crear tantos patrones de
trabajar con el sistema PICAXE. encendido de luces como pueda!
Si el programa no se descarga verifique que la re-
sistencia de 22kΩ, la de 10kΩ y el conector IC estén
soldados correctamente. Utilice un voltímetro para Programa 1
verificar si hay 3V entre las patas superiores (1 y 8) Este programa tiene un bucle principal el cual en-
del microcontrolador. Verifique que el cable esté fir- ciende y apaga los LEDs de una manera relativamen-
memente conectado al conector y que dentro del te lenta. Si la fotorresistencia está a oscuras, los
software se haya elegido el puerto serie correcto. LEDs se encenderán y apagarán muchísimo más rá-
pido.
Paso 5 – Pruebe el LED 1 _________________________________________
Repita el programa del paso 4, pero utilice high ` Programa 1
1 y low 1 en vez de high 0 y low 0. Esto verificará
el funcionamiento del LED 1 cuando monte el cir- ` ***** bucle lento *****
cuito en la placa de la figuira 27. slow:
high 0 ` encender LEDs
Paso 6 – Pruebe el LED 2 high 1
Repita el programa del paso 4, pero utilice high high 2
4 y low 4 en vez de high 0 y low 0. Esto verificará pause 500 ` esperar 0.5 segundos
el funcionamiento del LED 2.
` si el valor de luz es bajo (low) entonces ir a fast
Paso 7 – Pruebe la fotorresistencia (opcional) if pin3 = 0 then fast
Escriba y descargue el siguiente programa:
low 0 ` apagar LEDs
main: low 1
if pin3 = 1 then LEDon low 2
low 0 pause 500 ` esperar 0.5 segundos

82 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UN J UEGO E LECTRÓNICO

` si el valor de luz es bajo (low) entonces ir a fast pause 100


if pin3 = 0 then fast let pins = 4
pause 100
goto slow next b1

` ***** bucle rápido ***** ` destellando en círculos 20 veces


fast: for b1 = 1 to 20
high 0 ` encender LEDs let pins = 1
high 1 pause 100
high 2 let pins = 0
pause 100 ` esperar 0.1 segundos pause 100
let pins = 2
` si el valor de luz es alto (high) entonces ir a slow pause 100
if pin3 = 1 then slow let pins = 0
pause 100
low 0 ` apagar LEDs let pins = 4
low 1 pause 100
low 2 let pins = 0
pause 100 ` esperar 0.1 segundos pause 100
let pins = 2
` si el valor de luz es alto (high) entonces ir a slow pause 100
if pin3 = 1 then slow let pins = 0
pause 100
goto fast next b1
_________________________________________
` regresar al inicio
Programa 2 goto main
Este programa es mucho más avanzado. Utiliza _________________________________________
múltiples veces bucles for...next para crear una varie-
dad de patrones de encendido distintos. Hemos dado dos de los muchos ejemplos que
pueden utilizarse para la programación de un juego
_________________________________________ de luces de seguridad.
` Programa 2

start:
` convertir en salidas a los pines 0, 1 y 2
low 0
low 1 Armado y Programación de un
low 2
Juego Electrónico
main:
` todos encendidos - todos apagados 20 veces El Simon,
for b1 = 1 to 20 fue uno de los
let pins = 7 primeros juegos
pause 100 electrónicos por-
let pins = 0 tables, hecho por
pause 100 la compañía MB
next b1 en 1978. Era tan
pesado que nece-
` encendido en círculos 20 veces sitaba una pila
for b1 = 1 to 20 de 1.5V y una
let pins = 1 batería de 9V
pause 100 PP3 para hacer-
let pins = 2 los funcionar!

CLUB SABER ELECTRÓNICA 83


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

La idea detrás
de Simon era bas-
tante simple. Esta-
ba basado en el
viejo juego “Si-
mon Dice”. El
juego estaba he-
cho de una caja de
plástico redonda Figura 28
con cuatro paneles
de colores- debajo
de cada panel había un interruptor y una lamparita. tivo “dice” utilizado como parte de un gran juego, o
Al comenzar el juego el microprocesador encendía un juego completo por sí mismo.
uno de los cuatro paneles y daría un tono. El juego 2- ¿Qué color y tamaño de LEDs debe utilizar?
consistía, entonces, presionar el panel que se encen- Los LEDS más comunes son los rojos, pero tam-
día. ¡Demasiado Simple! Entonces Simon repetiría bién puede usar otros colores y tamaños (por ejem-
el panel encendido y agregaría otro. Ahora su traba- plo: azul)
jo era presionar dos paneles en el orden correcto. El 3- ¿Cómo activa el juego?
número de paneles continuaría aumentando hasta Normalmente, se utiliza un interruptor colocado
que usted no pudiera recordar la secuencia, momen- en la caja, pero también podría conectar otros inte-
to en el cual Simon hacía un sonido y finalizaba el rrutptores sobre plomos. Podría elegir utilizar otro ti-
juego. po de sensores, por ejemplo, un sensor de luz (LDR)
En 1979 MB lanzó el Super Simon, el cual tenía que pueda detectar cambios en el nivel de luz cuan-
dos sets de paneles, de manera que dos personas pu- do usted coloque la mano sobre él.
dieran jugar una contra la otra. En 1980 se lanzó
Pocket simon, una versión más pequeña del juego Algunas veces, es útil encender o apagar más de
original. También había un Simon con su caja trans- un LED al mismo tiempo. Esto ahorra tiempo cuan-
parente, de manera que se pudiera ver su electrónica do utiliza comandos altos y bajos. El comando que
por dentro. hace esto, se llama “let pin=” tal como hemos visto
Simon era muy caro, debido a que utilizaba un en la descripción del proyecto anterior.
circuito complicado controlado por un microproce-
sador, y necesitaba baterías grandes que proveyeran
energía a las lamparitas. El Circuito del Juego Electrónico
Ahora es posible reproducir el juego Simon, uti-
lizando 4 LEDs y un microcontrolador de muy bajo El proyecto del juego electrónico utiliza un mi-
costo, y sólo utiliza dos pequeñas pilas de 1.5V. crocontrolador PICAXE-18 con LED. También utili-
El juego propuesto puede tener 4 o 5 LEDs indi- za un interruptor para activar el LED.
cadores y un largo interruptor. También utiliza un re- En la figura 28 se describe el diagrama de blo-
sistor preset para proveer una entrada ajustable (por ques electrónico. Si desea puede agregar dos inte-
ejemplo: tiempo). Puede incluir otros sensores co- rruptores extras o sensores conectados a las salidas 6
mo: más interruptores, luces o sensores de tempera- y 7 (patas 11 y 12 del PICAXE-18).
tura. Puede agregar un buzzer piezoeléctrico para ge- En la figura 29 se describe el diagrama del juego
nerar sonidos. Las características sobresalientes son: electrónico. La lista de materiales para este proyecto
es la siguiente:
1) El diseño utilizará un microcontrolador PICA-
XE como su controlador 1 LED de alto rendimiento color rojo
2) Incluirá LEDs de salida, un interruptor de en- 1 LED de alto rendimiento color amarillo
trada y un resistor de entrada preset 1 LED de alto rendimiento color verde
3) Será programado con el juego que usted dise- 1 LED de alto rendimiento color azul (o naranja)
ñe 1 LED de 5mm color rojo
1 Pulsador normal abierto
Algunas cosas para tener en cuenta 1 PICAXE-18 (marcado como PIC16F627 -pero
1- ¿Cómo va a funcionar su juego? tenga en cuenta que no es un PIC16F627 común)
Podría ser un simple reloj (timing) o un disposi- 4 Resistores de 10kΩ

84 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UN J UEGO E LECTRÓNICO

Figura 29

1 Resistor de 120Ω de soldadura más sencillo. Esta película es la cubier-


1 Resistor de 47kΩ ta verde que cubre las pistas de manera que la solda-
1 Pre-set de 100kΩ dura no se pegue a las mismas. Para una construc-
1 Resistor de 120Ω ción correcta el PCB se debe ensamblar y soldar muy
1 cristal piezoeléctrico de 4MHz cuidadosamente.
1 LDR (resistencia variable con la luz) En la figura 30 se puede observar el diseño de la
placa de circuito impreso
Opcional: El LED1 puede seer reemplazado por
un LDR en miniatura si lo desea. Esto da una entra- Consejos Utiles para el Principiante
da extra en lugar de la salida del LED. Al soldar asegúrese que la punta del soldador es-
Si prefiere una batería de 9V, se requiere un regu- te caliente y limpia. Para verificar si está lo suficien-
lador de voltaje en la posición RG1. Si utiliza una ca- temente caliente, trate de derretir un trozo de solda-
ja de batería de 3V (recomendado) simplemente uti- dura (estaño) sobre la punta. La soldadura debe de-
lice un wire link (puente) que atraviese los dos orifi- rretirse casi instantáneamente. Luego limpie la sol-
cios de salida de la posición RG1. Herramientas: dadura pasando la punta del soldador por una espon-
Soldador-Cutters ja húmeda.
El PCB propuesto por la empresa propietaria de Recuerde que la soldadura sólo se pega a super-
PICAXE está fabricado especialmente con una pelí- ficies calientes. Por lo tanto nunca derrita la soldadu-
cula resistente a la soldadura para hacer el proceso ra sobre la punta y luego trate de tirar la misma so-
bre la unión a
Figura 30 soldar, esto no
funcionará ya
que la unión
estará fría y la
soldadura no
se pegará.
Para soldar
correctamente
debe sostener
en una mano
el soldador y
en la otra la
soldadura. Por
lo tanto, ase-
gúrese que el

CLUB SABER ELECTRÓNICA 85


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

tablero esté fijo a la mesa de manera que no se mue- 8) Coloque el resistor de 2kΩ (rojo rojo naranja
va (utilice una prensa ó pida alguien que lo sujete). dorado) y los cinco resistores de 10kΩ en su posi-
Para soldar recuerde: ción (marrón negro naranja dorado). Dóbleles las
patas para fijarlos en su posición y suelde.
1) Limpie la punta de la soldadura sobre la es- 9) Coloque los cinco resistores de 120Ω (marrón
ponja húmeda. rojo marrón dorado) y el resistor de 47kΩ (amarillo
2) Presione la punta del soldador contra el ter- violeta naranja dorado) y suelde. Doble las patas
minal sobre el PCB y la pata del componente a sol- para fijar los resistores y suelde. Observe que si uti-
dar. Cuente hasta 3 para darle tiempo de calentarse liza el microcontroaldor PICAXE-18 A, no se requie-
a la unión. re el resistor de 47kΩ, y debería seer reemplazado
3) Mantenga el soldador en posición y presione por un wire link (puente).
la soldadura contra la unión. Permita que se derrita 10) Use una pata del resistor off-cut para hacer
suficiente soldadura para cubrir toda la unión. un puente en las posiciones LINK1 y LINK 2.
4) Retire primero la soldadura y luego el solda- 11) Si está utilizando una batería 9V PP3, suelde
dor. un regulador 78L05 en la posición RG1. Si está utili-
5) Permita que la soldadura se enfríe durante 5 zando una batería de 3V, no necesitará el regulador.
segundos antes de mover el tablero. En este caso use un puente para soldar los dos contac-
tos en la posición RG1 (como se indica en el PCB).
Luego, tal como hemos dicho en cada uno de los 12) Utilizando alguno de los alambres cortados
proyectos descriptos en este texto, se deben tener en de las patas de las resistencias, haga un puente so-
cuenta una serie de consideraciones entre las que po- bre las letras PX marcadas a un lado de las resisten-
demos mencionar: cias de 330Ω y luego suelde. (Ignore el agujero so-
bre los agujeros marcados CF)
1) Comience siempre con los componentes más 13) Coloque y presione en su posición el conec-
pequeños, como por ejemplo resistencias. Luego tor estéreo de descarga PICAXE sobre el tablero y
continúe con componentes más grandes como el co- asegúrese que quede fijo (Debe escuchar un “click”)
nector del circuito integrado y termine con compo- de manera que quede nivelado sobre el tablero.
nentes altos tales como condensadores y transisto- Suelde los cinco contactos cuadrados metálicos (los
res. No intente fijar todos los componentes a la vez, cinco soportes plásticos redondos no tienen que sol-
fije solamente dos o tres a la vez. darse). No se preocupe si la soldadura une dos ó
2) Asegúrese siempre que los componentes estén mas contactos en cualquiera de los dos lados del co-
bien montados (planos) sobre el tablero antes de sol- nector ya que supuestamente estos deben estar uni-
darlos. Al utilizar componentes de patas largas ta- dos de todas maneras.
les como resistencias y LEDs, doble las patas de ma- 14) Coloque y presione en posición el conector
nera que el componente quede firmemente en posi- IC. Asegúrese que la muesca de uno de los extremos
ción antes de soldarlo. apunte hacia el conector. Dóblele las patas para fi-
3) Asegúrese que el conector estéreo de descarga jarlo en posición y suelde.
PICAXE quede firme y acomodado en posición an- 15) Suelde la fotorresistencia y los dos LEDs en
tes de soldarlo. sus respectivas posiciones. Asegúrese que el lado
4) Asegúrese que todos aquellos componentes plano de uno de los lados del LED esté alineado con
que sólo operan en un solo sentido (LEDs, diodos, el lado plano marcado en el PCB.
transistores y condensadores) estén correctamente 16) Suelde en su posición el interruptor (note que
alineados antes de soldarlos (vea las marcas sobre sólo encaja en un sentido). Si está utilizando cables,
el PCB). suelde uno de los cables en uno de los dos agujeros
5) Los cables (alambres) del zumbador son muy inferiores y el otro cable en uno de los dos agujeros
delgados. Tenga cuidado de no sobrecalentarlos o superiores.
de lo contrario puede que se derritan. 17) Pase los cables de la batería hacia abajo a
6) Haga pasar siempre los cables de la caja de través del agujero grande cerca de las letras AXE y
baterías por arriba y abajo de los agujeros antes de luego páselos hacia arriba a través del agujero
soldarlos. Esto ayuda a hacer una unión más fuerte grande cerca del número.
la cual es mucho menos propensa a soltarse. 18) Suelde el cable negro en el agujero marcado
7) Con el juego electrónico los LEDs se deben 0V y el cable rojo en el agujero marcado V+.
montar levemente sobre el PCB de manera que que- 19) Con una cinta adhesiva de doble contacto
pan en la caja. Pruebe las posiciones antes de soldar. pegue el zumbador (por el lado de bronce) al PCB.

86 CLUB SABER ELECTRÓNICA


A RMADO Y P ROGRAMACIÓN DE UN J UEGO E LECTRÓNICO

Pase los cables del mismo hacia abajo por el aguje- rrectamente dentro de la caja de baterías. Conecte la
ro bajo LED1 y luego hacia arriba a través del agu- caja de baterías al cable de baterías y ponga su dedo
jero marcado PZ. Suelde el cable rojo en el agujero sobre el microcontrolador PICAXE. Si comienza a
inferior y el cable negro en el agujero superior. No calentarse desconecte la batería inmediatamente ya
importa si la junta soldada del cable rojo se une con que debe haber algún problema, lo más seguro es que
el pin5 del conector IC ya que estas se supone que el chip o los cables de la batería estén conectados en
deben unirse de todas maneras. Sin embargo, el ca- sentido inverso.
ble negro NO debe tocar el pin6 del conector IC.
20) Revise cuidadosamente el tablero para com- Paso 4 – Descargue un programa
probar que todas las uniones soldadas están bien he- para probar el LED 0
chas y que no hay ningún puente de soldadura crea- Conecte el cable a su ordenador y al conector PI-
do accidentalmente. CAXE en el PCB.
21) Inserte el microcontrolador en el conector, Asegúrese que el conector del cable quede com-
asegurándose que el pin1 esté de frente al conector pletamente dentro del conector del PCB.
estéreo. Debe asegurarse que el software esté en el modo
PICAXE-08 y que haya elegido el puerto serie co-
Cuando haya armado el circuito, utilizando la rrecto.
placa PCB mostrada en la figura 30, debe realizar las Puede probar el funcionamiento de cada LED,
siguientes verificaciones: para ello dibuje el organigrama de la figura 31 y
obtenga el código BASIC
Paso 1 – Verifique las uniones soldadas
Verifique que todas las uniones estén conectadas
Figura 31
tanto al terminal como al cable, y que el cable esté
sujeto firmemente. También verifique que la solda-
dura no haga accidentalmente puentes entre termina-
les adyacentes. Esto es mucho más probable en los
LEDs, la fotorresistencia y el zumbador. En el co-
nector estéreo los terminales cuadrados a cada lado
pueden unirse sin ninguna consecuencia ya que de
todas formas están unidos por una pista en el table-
ro. Sin embargo, éstos no deben unirse al agujero re-
dondo central.

Paso 2 – Verifique los componentes


1) Verifique que el cable negro de la batería esté
en el agujero marcado 0V y que el cable rojo esté en
el agujero marcado V+. El LED debe titilar a medida que se descarga el
2) Verifique que el chip PICAXE-08 esté inserta- programa. Al terminar la descarga el LED deberá en-
do correctamente en el conector o base, con la mues- cenderse y apagarse cada segundo. Si el LED no ha-
ca (que muestra el pin1) apuntando hacia el conector ce esto verifique que esté conectado correctamente y
estéreo. que las resistencias de 330Ω estén la posición co-
3) Verifique el lado plano del LED esté conecta- rrecta en el PCB.
do al agujero correcto del PCB. Si el programa no se descarga verifique que la re-
4) Asegúrese de no haber olvidado unir mediante sistencia de 22kΩ, la de 10kΩ y el conector IC estén
un alambre los agujeros marcados PX en el extremo soldados correctamente. Utilice un voltímetro para
inferior izquierdo del tablero. verificar si hay 4.5V entre las patas superiores (1 y 8)
5) Asegúrese de pegar el lado de bronce del zum- del microcontrolador. Verifique que el cable esté fir-
bador al tablero con cinta adhesiva de doble contacto. memente conectado al conector y que dentro del
6) Verifique que el conector esté soldado correc- software se haya elegido el puerto serie correcto.
tamente, incluyendo el terminal cuadrado central el
cual a menudo es olvidado por equivocación. Paso 5 – Pruebe el otro LED
Repita el programa del paso 4, pero utilice high
Paso 3 – Conecte la batería. 1 y low 1 en vez de high 0 y low 0. Luego repítalo
Verifique que las 3 pilas AA estén colocadas co- en la salida 2, 3 y 4. Esto probará cada LED.

CLUB SABER ELECTRÓNICA 87


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

Paso 6 - Pruebe el Interruptor


El Led debe encender cuando se Figura 32
presiona el interruptor. Si no lo hace,
verifique el interruptor y si el resistor
de 10kΩ está correctamente soldado.
main:
if pin2 = 1 then LEDon
low 0
goto main

LED0n:
high 0
goto main

Paso 7 - Prueba del preset


El LED debe encender y apagar cuando se gira el sarrollar sus propios programas para su juego elec-
preset hacia adelante o hacia atrás si realiza la pro- trónico.
gramación con la rutina que mostramos en la figura Le recomendamos que realice sus propios pro-
32. gramas y se divierta en la medida que va aprendien-
Si pasó todas estas pruebas con éxito, felicitacio- do nuevas rutinas de programación.
nes ya que ha construido y ensamblado correctamen-
te su juego electrónico. Ya está en condiciones de de- ¡Hasta la próxima!

88 CLUB SABER ELECTRÓNICA


R ESUMEN

CLUB SABER ELECTRÓNICA 89


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

90 CLUB SABER ELECTRÓNICA


P REGUNTAS F RECUENTES

CLUB SABER ELECTRÓNICA 91


P ROYECTOS C OMPLETOS CON M ICROCONTROLADORES PIC Y PICAXE

92 CLUB SABER ELECTRÓNICA