Logo Studenta

Club161

¡Este material tiene más páginas!

Vista previa del material en texto

2ª de forros.qxd 9/5/11 12:53 PM Página 2ªFo1
Capítulo 1:
Qué Son y Cómo Se uSan loS pICaXe 3
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
Ventajas del Sistema PICAXE . . . . . . . . . . . . . . . .6
Comenzando a Trabajar con PICAXE . . . . . . . . . .8
El Editor de Programas . . . . . . . . . . . . . . . . . . . . .9
Los Distintos Tipos de PICAXE . . . . . . . . . . . . . .12
Kits PICAXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
Tarjeta Entrenadora PICAXE-08 . . . . . . . . . . . . .14
Tarjeta Entrenadora PICAXE-18 . . . . . . . . . . . . .16
PLC PICAXE-18 (ICA-017) . . . . . . . . . . . . . . . . .16
Control de Display de LCD para PICAXE-18 . . .16
Capítulo 2
trabajando Con mICroControladoreS
pICaXe . . . . . . . . . . . . . . . . . . . . . . . . .19
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
El Sistema PICAXE . . . . . . . . . . . . . . . . . . . . . .20
Comenzando las Prácticas . . . . . . . . . . . . . . . . .22
Usando COMENTARIOS . . . . . . . . . . . . . . . . . . .22
Uso de SYMBOL . . . . . . . . . . . . . . . . . . . . . . . . .23
Uso de Constantes . . . . . . . . . . . . . . . . . . . . . . .23
Designación de Variables . . . . . . . . . . . . . . . . . .24
Los Comandos de Programación BASIC 
en PICAXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
GOTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
GOSUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
FOR ... NEXT . . . . . . . . . . . . . . . . . . . . . . . . . . .27
HIGH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
LOW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
INPUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
OUTPUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
END . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
IF…THEN IF…AND…THEN IF…OR…THEN . .31
PAUSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
WAIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
RETURN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
INFRAIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
READADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
READADC10 . . . . . . . . . . . . . . . . . . . . . . . . . . .36
PWM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
I2CSLAVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
READI2C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
READ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
WRITE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
WRITEI2C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
READOWSN . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
DEBUG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45
SERTXD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45
PULSIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
PULSOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
SERIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
SEROUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48
SETINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48
BRANCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50
BUTTON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
COUNT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
SERVO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
SOUND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53
READTEMP - READTEMP12 . . . . . . . . . . . . . .54
PWMOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
SETFREQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
SLEEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
Capítulo 3
aprendIendo a programar pICaXe . . .59
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
¿Qué es una batería? . . . . . . . . . . . . . . . . . . . . .59
Uso y Prueba de LEDs . . . . . . . . . . . . . . . . . . . .61
Uso y Prueba de Timbres y Zumbadores . . . . . .63
Prueba y Uso de Sensores Digitales . . . . . . . . . .65
Prueba y Uso de Fotorresistencias . . . . . . . . . . .67
Utilizando el Comando Symbol . . . . . . . . . . . . .70
Practicando con el PICAXE-18 . . . . . . . . . . . . . .72
Utilizando Bucles For…Next . . . . . . . . . . . . . . . .73
Controlando la Velocidad de un Motor . . . . . . . .74
Uso de Timbres y Zumbadores Electrónicos 
en el Sistema PICAXE . . . . . . . . . . . . . . . . . . . . .75
Uso de Entradas con Sensores Digitales . . . . . .77
Uso de Entradas con Sensores Analógicos . . . .78
Cómo se Leen las Entradas Analógicas . . . . . . .78
apéndICe
robótICa para nIñoS, adoleSCenteS y adultoS . . .81
Bitbloq 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81
Club Saber Electrónica Nº 161
1
Programación Fácil de Microcontroladores PICAXE
Sumario
Programación Fácil de
Microcontroladores
PICAXE
Sumario club 161_ArtTapa 10/03/2019 11:11 a. m. Página 1
Club Saber Electrónica Nº 161
2
Qué Son y Cómo se Usan los PICAXE
di rec tor 
Ing. Ho ra cio D. Va lle jo
autor de este tomo de Colección:
Autores Varios
Selección y Coordinación:
Ing. Horacio Daniel Vallejo
Edi to rial QUarK S.r.l.
Pro­pie­ta­ria­de­los­de­re­chos­en­cas­te­lla­no­de­la­pu­bli­ca­-
ción­ men­sual­ Sa bEr ElEC tró Ni Ca -­ Altolafguirre
310­(1870)­Villa­Domínico­ -­Buenos­Aires­ -­Argentina­ -
T.E.­11­4206­1742
ad mi nis tra ción y ne go cios
Patricia Rivero Rivero (SISA SA de CV)
Margarita Rivero Rivero (SISA SA de CV)
Staff
Liliana Teresa Vallejo
Mariela Vallejo
Diego Vallejo
Luis Alberto Castro Regalado (SISA SA de CV)
Federico Vallejo
aten ción al Clien te
Ale jan dro Va lle jo 
ate clien @we be lec tro ni ca .co m.ar
In ter net: www .we be lec tro ni ca .co m.ar
publicidad:
Rafael Morales
rafamorales@webelectronica.com.ar
Club Se:
grupo Quark Srl
clubse @we be lec tro ni ca .co m.ar
edi to rial Quark Srl
San Ricardo 2072 (1273) - Ca pi tal Fe de ral
www .we be lec tro ni ca .co m.mx
La Edi to rial no se res pon sa bi li za por el con te ni do de las no -
tas fir ma das. To dos los pro duc tos o mar cas que se men cio -
nan son a los efec tos de pres tar un ser vi cio al lec tor, y no
en tra ñan res pon sa bi li dad de nues tra par te. Es tá pro hi bi da la
re pro duc ción to tal o par cial del ma te rial con te ni do en es ta
re vis ta, así co mo la in dus tria li za ción y/o co mer cia li za ción de
los apa ra tos o ideas que apa re cen en los men cio na dos tex -
tos, ba jo pe na de san cio nes le ga les, sal vo me dian te au to ri -
za ción por es cri to de la Edi to rial.
SEGUNDA EDICIÓN, abril 2019
Si esta es la primera vez que lee sobre este tema, le comentamos que
PICAXE es un sistema de microcontroladores que nació como un proyecto
educativo y que, rápidamente, se convirtió en referente para aprender a dise-
ñar sistemas microcontrolados mediante programaciones fáciles de com-
prender.
Básicamente son microcontroladores PIC a los que la empresa Education
Revolution les programa un firmware para que puedan ser programados en el
circuito en que se los va a utilizar (no es preciso un programador) utilizando
una aplicación llamada Programing Editor que permite hacer programas en
diagramas de flujo y en lenguaje Basic.
En los tomos de colección Nº 7, 16 y 29 de esta obra, Club Saber
Electrónica, nos dedicamos a explicar qué es PICAXE, cómo se los programa
mediante el uso de diagramas de flujo y dimos varios circuitos prácticos.
El objetivo de este tomo es introducirlo al lenguaje BASIC de modo queaprenda a programar utilizando un lenguaje sencillo que posee muy pocas
instrucciones, con el que podrá darle “más poder” a los PICAXE dado que
podrá ahorrar líneas de comando, haciendo más efectiva a la memoria
EEPROM de estos micros.
Para la elaboración del capítulo 2 nos basamos en escritos del Ingeniero
Martín Alejandro Torres Fortelli de “ElectroEscuela Virtual” quien propone
ejemplos básicos para que Ud. aprenda mientras realiza sus propias prácticas
de simulación en el Programing Editor.
A su vez, le brindamos la oportunidad de descargar 2 discos compactos
completos, uno con un Curso Programado de PICAXE con Test de
Evaluación y Diploma extendido por importantes Instituciones y otro con un
Curso en video sobre Programación de Microcontroladores PICAXE.
En esta segunda edición, decidimos agregar un capítulo sobre Bitbloq 2
es un lenguaje de programación por bloques, ideal para el aprendizaje de
niños, adolescentes y adultos.
Esperamos que disfrute de este material. 
¡Hasta el mes próximo! 
Sobre loS CDS y Su DeSCarga
Ud, podrá descargar de nuestra web 2 CDs: “Curso Programado de
Microcontroladores PICAXE” y “Ambiente de Programación de
Microcontroladores PICAXE” (en video). El primero incluye un curso con
asesoramiento a través de Internet y Diploma de aprobación. Para realizar la
descarga deberá ingresar a nuestra web: www.webelectronica.com.mx, ten-
drá que hacer clic en el ícono password e ingresar la clave “picaxe79”. Tenga
este texto cerca suyo ya que se le hará una pregunta aleatoria sobre el conte-
nido para que pueda iniciar la descarga.
Editorial
Del Editor al Lector
Sumario club 161_ArtTapa 10/03/2019 11:11 a. m. Página 2
Club Saber Electrónica Nº 161
3
Los microcontroladores PICAXE, mas que
ser considerados como una serie de cir-
cuitos integrados fáciles de programar,
constituyen la integración de todo un sis-
tema en el cual están involucrados, a
parte de los dispositivos electrónicos (los
propios microcontroladores PICAXE), el
software para programarlos (entorno de
programación Programming Editor y apli-
cación Logicator).
La ventaja que se tiene al utilizar los
microcontroladores del sistema PICAXE es
que, aun sin tener conocimientos, se puede aprender de una manera muy fácil, ya que uti-
liza un lenguaje BASIC muy sencillo, además de contar también con la posibilidad de pro-
gramarlos con diagramas de flujo.
En este capítulo explicaremos qué son los PICAXE, cómo podemos realizar fácilmente diseños
de sistemas que los contengan, qué tipos de PICAXE podemos encontrar y cómo se usa el
entorno de programación 
INTRODUCCIÓN
Un PIC es un microcontrolador que precisa un entorno de desarrollo (el MPLAB) para editar programas,
simularlos, convertir el programa en un archivo hexadecimal y realizar la simulación que verifique que
está todo bien. Luego, se precisa un cargador para “descargar” el programa en la memoria del PIC, y
por último se debe quitar el PIC del cargador y colocarlo en el circuito donde va a funcionar.
Un PICAXE “no precisa nada de todo eso...” es un PIC al que se le ha grabado un programa interno (firm-
ware) para que pueda ser “cargado” en la misma placa donde va a funcionar por medio de un soft-
ware gratuito y en el que los programas pueden escribirse en BASIC o en diagrama de flujo.
Desde que el primer microprocesador vio la luz del mundo (el 4004), y cuya única y principal operación
era una suma de 1 bit, se comenzó con una carrera tecnológica que lejos de ver el fin, día a día va
logrando cosas inimaginables, tal es el caso de los microcontroladores que vendrían a ser el ejemplo
resumido y en miniatura, de una computadora personal (PC).
Un microcontrolador del sistema PICAXE puede ser de 8, 18, 28 o 40 terminales o más (figura 1), inter-
CC APÍTULAPÍTUL OO 11
QUÉ SON Y CÓMO SE USAN LOS
PICAXE
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 3
namente dentro de su encapsulado, posee como
equipamiento mínimo un microprocesador, memo-
ria RAM, y distintas versiones de memoria ROM. 
Los microcontroladores más avanzados, aparte de lo
mencionado anteriormente, también llegan a
poseer temporizadores ADC, DAC, Comunicación en
paralelo, USAR, etc.
Un microcontrolador, desde el punto de vista de ope-
ración, puede considerarse como si fuera una PC, ya
que cuenta con el conjunto básico de implementos
que necesita para realizar sus funciones, esto es,
microprocesador, disco duro, memoria RAM, etc.
Clásicamente, cuando programamos un microcon-
trolador, de forma implícita se tiene que desarrollar
un programa que trabaja a manera del BIOS de una
PC, ya que lo primero que debemos tomar en
cuenta es la configuración de sus puertos, ya sea
como de entrada o de salida, configurar sus demás
herramientas como pueden ser los temporizadores,
los ACD, etc. Han aparecido en el mercado, sistemas
de desarrollo que permiten la programación del
microcontrolador de una manera relativamente fácil,
en la cual se puede emular el proceso que nos inte-
resa desarrollar. 
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 microcon-
trolador 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 mercado el sistema de desarrollo para programar microcon-
troladores PIC llamado PICAXE, que de por sí, quien ha utilizado estos microcontroladores, puede cons-
tatar lo sencillo que resulta su programación, el sistema de desarrollo PICAXE hace las cosas todavía más
sencillas para el programador.
El sistema de desarrollo PICAXE hace las cosas todavía más sencillas para el programador, ya que
cuenta con dos opciones de diseñar una aplicación: una por medio de diagramas de flujo y otra por
medio de “BASIC”, y aunque esto no es ninguna novedad, (ya que estas herramientas existían con ante-
rioridad), 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 aplicaciones que hemos diseñado, pero gracias al firm-
Club Saber Electrónica Nº 161
4
Qué Son y Cómo se Usan los PICAXE
FIGURA 1 - UN PICAXE ES UN PIC DE
MICROCHIP AL QUE SE LE AGREGÓ UN FIRMWARE
PARA FACILITAR SU PROGRAMACIÓN.
FIGURA 2 - LA EMPRESA EDUCATION
REVOLUTION FACILITA HERRAMIENTAS PARA
APRENDER A TRABAJAR CON LOS MICROCONTRO-
LADORES PICAXE.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 4
ware que poseen los microcontroladores PICAXE “se
puede armar la aplicación completa incluyendo al
microcontrolador”, y sobre la aplicación programarlo
sin necesidad del sistema de desarrollo, ni del circuito
programador de microcontroladores (vea la figura 3).
De hecho, el sistema PICAXE hace más accesible la
programación de microcontroladores a todas aque-
llas personas que tan sólo cumplan con el único 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 vamos a car-
gar adentro del PIC.
Aquí no vamos a mencionar las ventajas y desventa-
jas del sistema PICAXE con respecto a otros, lo único
que podemos agregar es que
se trata de otra manera de pro-
gramar microcontroladores PIC,
empleando diagramas de flujo
y/o lenguaje BASIC (figura 5),
con los cuales, ya sea de
manera consciente o total-
mente implícita, recurrimos a
ellos para elaborar un pro-
grama. 
Debemos aclarar que para pro-
gramar en diagrama de flujo,la
empresa Education Revolution
desarrolló la aplicación
“Logicator” que también sirve
para trabajar con PICs y de la
cual hablaremos más ade-
lante. La empresa menciona
que en el futuro ya no actuali-
zará el editor por diagrama de
flujos del “Programing Editor”
por lo cual el usuario deberá
aprender a manejar el
Logicator. Aquí el problema es que sólo será gratuita una versión limitada y para adquirir la versión full
deberá comprar la licencia.
A lo largo de estas páginas, iremos aprendiendo paso a paso la forma de cómo programar los micro-
controladores bajo el sistema PICAXE. Para ello, como primer paso, emplearemos una tarjeta de des-
arrollo de la cual proporcionaremos su circuitería para que ustedes la puedan armar, posteriormente des-
pués de realizar algunas prácticas, avanzaremos sobre aplicaciones en donde se tenga al microcontro-
lador como elemento principal y al cual programaremos en sitio.
Club Saber Electrónica Nº 161
5
Programación Fácil de Microcontroladores PICAXE
FIGURA 3 - UNA DE LAS VENTAJAS DEL PICAXE
ES QUE LA PLACA EN QUE SE USA PUEDE TENER
UN CONECTOR PARA PODER PROGRAMARLO SIN
SACARLO DE SU ZÓCALO.
FIGURA 4 - LA APLICACIÓN PROGRAMING EDITOR PERMITE CONSTRUIR
PROGRAMAS PARA PICAXE EN DIAGRAMAS DE FLUJO. HOY, LA EMPRESA
EDUCATION REVOLUTION OFRECE EL PROGRAMA LOGICATOR QUE TAM-
BIÉN SIRVE PARA TRABAJAR CON LOS PIC DE MICROCHIP. PUEDE DES-
CARGAR GRATUITAMENTE UN MANUAL COMPLETO SOBRE EL MANEJO DE
LOGICATOR CON LA CLAVE: “PICAXELOGIC”.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 5
VENTAJAS DEL SISTEMA PICAXE
Como dijimos, el PICAXE es un sistema de micro-
controladores PIC muy fácil de programar ya
que utiliza un lenguaje BASIC muy sencillo, ade-
más de contar también con la posibilidad de
programarlos con diagramas de flujo.
Aprovecha todas las características de los micro-
controladores de bajo costo que incorporan
memoria FLASH.
Está disponible en tres versiones que son el de 8
terminales (PICAXE-08), 18 terminales (PICAXE-
18) y 28 terminales (PICAXE-28). En estos micro-
controladores ya se tienen definidas las termi-
nales que tienen la función de entrada y salida
de datos, además de las terminales que sirven
para programar al PICAXE en sitio, o en otras
palabras sobre la misma aplicación. En las figuras 6, 7 y 8 se muestran los circuitos esquemáticos de
la disposición de cada uno de los microcontroladores PICAXE.
En la figura 6 se muestra el circuito esquemático para un PICAXE 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 pueden funcionar como
entradas o salidas de datos del exterior hacia el microcontrolador. 
Las terminales 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 conector 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 función, y dependiendo de dónde se ubique un jumper selector en el conector CON2, se
podrá programar al PIC o esa misma terminal una vez programado el PIC tendrá la función de una ter-
minal de salida de datos.
Del circuito esquemático de la figura 7 se observa la forma en que están dispuestas las terminales de un
PICAXE de 18 termi-
nales, de las cuales
las que se encuen-
tran identificadas
como En 0, En 1, En
2, En 6 y En 7 son
dedicadas exclusiva-
mente para adquirir
datos del exterior
hacia el microcontro-
lador. 
Las terminales que se
encuentran identifi-
cadas de la Sal 0 a
Club Saber Electrónica Nº 161
6
Qué Son y Cómo se Usan los PICAXE
FIGURA 5 - EL PROGRAMING EDITOR PERMITE
PROGRAMAR EN BASIC O CONVERTIR EL DIA-
GRAMA DE FLUJO EN BASIC.
FIGURA 6 - CIRCUITO BÁSICO DE ENTRENAMIENTO PARA EL PICAXE-08.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 6
Sal 7 son exclusiva-
mente para enviar
datos hacia afuera
del microcontrolador,
mientras que las ter-
minales identificadas
como Serial Sal y
Serial En, se utilizan
para programar al
microcontrolador. En
el circuito de la figura
8 se muestra la forma
de conectar a un
PICAXE de 28 termi-
nales, en donde
aparte de las patas
de entrada que se
encuentran definidas
como En 0 a En 7,
también se cuenta
con las terminales de
salida identificadas
como Sal 0 a Sal 7,
además de 4 termi-
nales para entrada
de datos analógicos,
y por último las termi-
nales de programa-
ción del microcontro-
lador.
Ya se ha mencionado
que el sistema PICAXE
no requiere de pro-
gramador o borrador,
ya que utiliza única-
mente tres alambres
conectados al puerto serie de una computa-
dora, tal como se describe en la siguiente
figura 9.
Una vez que han sido identificadas las termina-
les a utilizar en el conector del puerto serie de
la PC, ahora lo que sigue es preparar la cone-
xión hacia el PIC tomando en cuenta las termi-
nales, tal como se aprecia en la figura 10.
Club Saber Electrónica Nº 161
7
Programación Fácil de Microcontroladores PICAXE
FIGURA 7 - CIRCUITO BÁSICO DE ENTRENAMIENTO PARA EL PICAXE-18.
FIGURA 9 - LOS PICAXE SE COMUNICAN CON LA PC A TRAVÉS
DEL PUERTO COM, UTILIZANDO PROTOCOLO RS232.
FIGURA 8 - CIRCUITO BÁSICO DE ENTRENAMIENTO PARA EL PICAXE-28.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 7
Como se puede observar en la
figura 10, se puede emplear (es
recomendable) un plug de los uti-
lizados para conectar los audífo-
nos 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.
Ahora bien, la mayoría de las
computadoras pequeñas, tipo
nanobook, no poseen puerto
RS232 y hasta las notebook
actuales tampoco lo incluyen. En
ese caso, se debe utilizar un
conector que comercializa la
empresa Education Revolution, o
colocar un conversor USB a RS232 como el que
publicamos en saber Electrónica Nº 178 o el
circuito de Saber Electrónica Nº 223. En la
figura 12 podemos observar el circuito eléc-
trico con su placa de circuito impreso de
dicho conversor. Si desea más detalles del
armado puede recurrir a dicha revista.
También puede comprar un conversor USB a RS
232 como el de la figura 13; en ese caso debe
asegurarse que el dispositivo genere un puerto
COM real, es decir, que no sea un dispositivo HID, ya que en ese caso no le va a servir.
COMENZANDO A TRABAJAR CON PICAXE
“PICAXE” es un sistema que emplea un micro fácil de programar que utiliza un lenguaje BASIC muy sim-
ple, el cual la mayoría de los estudiantes pueden aprender rápidamente. Los microcontroladores (con
memoria FLASH) pueden ser programados una y otra vez sin la necesidad de un costoso programador
PIC. El sistema no necesita de ningún programador, borrador o complejo sistema electrónico. El pro-
grama puede escribirse en BASIC o por medio de un diagrama de flujo y se carga mediante una cone-
xión de tres cables conectada al puerto serie de la computadora. El sistema PICAXE consiste en tres
componentes principales:
1) El software editor de programación.
2) El cable de conexión al puerto serial de la PC.
3) El chip PICAXE.
Club Saber Electrónica Nº 161
8
Qué Son y Cómo se Usan los PICAXE
FIGURA 10 - DIAGRAMA DE ARMADO DEL CABLE QUE SE UTILIZA PARA
PROGRAMAR LOS PICAXE.
FIGURA11 - VISTA DEL CABLE DE PROGRAMA-
CIÓN TERMINADO.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 8
Ya retornaremos con este tema, cuando sepamos
más acerca de las características principales de
estos chips. Veamos ahora en qué consiste el soft-
ware gratuito.
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-
Club Saber Electrónica Nº 161
9
Programación Fácil de Microcontroladores PICAXE
FIGURA 12 - PARA PODER UTILIZAR UN SISTEMA PICAXE CON UNA COMPUTADORA A TRAVÉS DEL PUERTO USB SE DEBE
EMPLEAR UN CONVERSOR DE PUERTO COMO EL MOSTRADO EN LA FIGURA Y CUYA CONSTRUCCIÓNSE EXPLICÓ EN SABER
ELECTRÓNICA Nº 221.
FIGURA 13 - UN ADAPTADOR USB A RS232
COMERCIAL.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 9
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 Editor” (Editor de
Programas), es necesario que ya lo tenga
en su computadora.
El software lo puede bajar de nuestra
página de Internet que usted ya conoce
www.webelectronica.com.mx, debe
hacer clic en el ícono password e ingresar
la clave PICAXEPRO. Recuerde que para
bajar cualquier información debe ser
socio del club SE, lo cual es gratuito y
puede inscribirse por Internet en sólo un
par de minutos (siga las instrucciones que
dimos para bajar el programa y encon-
trará cómo hacerse socio, si aún no lo es).
Una vez que se tenga el software, se con-
tará con una carpeta con el nombre de
“progedit”, a la cual debemos acceder
(observe la figura 14).
Luego debemos ingresar a la carpeta
progedit y tenemos que ubicar el pro-
grama identificado como “Programming
Editor”, al cual debemos hacerle un
doble clic con el ratón de la pc para que
éste se ejecute y se pueda instalar el pro-
grama de los PICAXE, tal como se mues-
tra en la figura 15.
Una vez que ejecutamos el programa de
instalación Programming Editor apare-
cerá la ventana que se muestra en la
figura 16, sobre la cual debemos de opri-
mir con el ratón el cuadro identificado
como “next” para que continúe la insta-
Club Saber Electrónica Nº 161
10
Qué Son y Cómo se Usan los PICAXE
FIGURA 14 - CARPETA PROGEDIT.
FIGURA 15 - SOFTWARE DE INSTALACIÓN “PROGRAMMING EDITOR”.
FIGURA 16 - VENTANA DE BIENVENIDA PARA LA INSTALACIÓN
DEL SOFTWARE DE LOS PICAXE.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 10
lación. Posteriormente será desplegada
la ventana donde se muestra la licencia
que debemos aceptar, porque de otra
manera no podremos continuar con la
instalación del software, por lo que nue-
vamente oprimiremos el cuadro identifi-
cado como “next”, esta acción se indica
en la figura 17.
Como paso siguiente, pregunta por el
nombre del usuario que normalmente uti-
lizará el software, aquí podemos instalar
la aplicación para que pueda ser utili-
zada por todas las personas que utilicen
la computadora, y después de seleccio-
nar esta acción tenemos que oprimir el
cuadro identificado como “next”, tal
como se muestra en la figura 18.
Posteriormente debemos decir en dónde
se guardará el software de programa-
ción, que por lo general, aquí no tene-
mos que modificar dato alguno, a
menos de que querramos asignar otra
localidad, tal como se ilustra en la figura
19. Una vez seleccionada la opción
correspondiente procederemos a hacer
clic sobre el cuadro identificado como
“next”.
Por último, aparecerá una ventana de
confirmación para estar seguros de que
los datos que introdujimos se encuentran
correctos, si es así debemos oprimir el
cuadro identificado como “next” para
que continúe la instalación, tal como se
aprecia en la figura 20.
Cuando se está instalando el software se
indica gráficamente, tal como se ilustra
en la figura 21, aquí debemos esperar
hasta que se terminen de instalar, tanto el
software de programación como todas
las utilerías que serán empleadas por los
PICAXE. En la figura 22 se muestra la ven-
tana que nos indica que ya se ha con-
cluido con la instalación, por lo que
debemos oprimir el cuadro identificado
Club Saber Electrónica Nº 161
11
Programación Fácil de Microcontroladores PICAXE
FIGURA 17 - ACUERDO DE LICENCIA.
FIGURA 18 - INFORMACIÓN DEL USUARIO.
FIGURA 19 - DESTINO DEL SOFTWARE.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 11
como “finish”. Una vez instalado el soft-
ware de programación de los PICAXE, en
el escritorio de nuestra PC encontrare-
mos un ícono de acceso directo identifi-
cado como “PICAXE Programming
Editor”, al cual, para comenzar a progra-
mar los microcontroladores, debemos
hacer un doble clic con el mouse para
que se ejecute el programa, tal como se
muestra en la figura 23. En la figura 24a
se observa un ejemplo del ambiente
gráfico en lenguaje BASIC y en la figura
24b en diagrama de flujo. En varias oca-
siones editamos artículos mostrando
cómo se emplea el editor por diagrama
de flujo del Programing Editor pero, tal
como hemos dicho, para los próximos
PICAXE deberá emplear el Logicator,
razón por la cual, más adelante explica-
remos cómo se usa.
LOS DISTINTOS TIPOS DE PICAXE
El sistema PICAXE aprovecha todas las
características de los microcontroladores
de bajo costo que incorporan memoria
FLASH.
El sistema PICAXE está disponible en seis
distintas versiones que son:
De 8 terminales (PICAXE-08), 
De 14 terminales (PICAXE-14), 
De 18 terminales (PICAXE-18), 
De 20 terminales (PICAXE-20), 
De 28 terminales (PICAXE-28) y 
De 40 terminales (PICAXE-40).
Estos microcontroladores ya tienen defi-
nidas las terminales que tienen la función
de entrada y/o salida de datos, además
de las terminales que sirven para progra-
mar al PICAXE en sitio, o en otras pala-
bras sobre la misma aplicación.
Club Saber Electrónica Nº 161
12
Qué Son y Cómo se Usan los PICAXE
FIGURA 20 - VENTANA DE CONFIRMACIÓN DE DATOS.
FIGURA 21 - VENTANA DE INSTALACIÓN DEL SOFTWARE.
FIGURA 22 - CUANDO LA INSTALACIÓN HAYA CONCLUIDO EL PROGRAMA
NOS INDICARÁ QUE ESTAMOS LISTOS PARA COMENZAR A UTILIZARLO.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 12
Hace aproximadamente 6 años que comenzamos a escribir publicaciones sobre el sistema PICAXE aquí
en Saber Electrónica, y a la fecha algunos de los microcontroladores PICAXE que al inicio les presenta-
mos en diversos proyectos, ya se encuentran descontinuados o sustituidos por otros de reciente comer-
Club Saber Electrónica Nº 161
13
Programación Fácil de Microcontroladores PICAXE
FIGURA 23 - ICONO DE ACCESO RÁPIDO.
FIGURA 24A - LENGUAJE BASIC PARA PROGRAMAR
LOS PICAXE.
FIGURA 24B - DIAGRAMA DE
FLUJO PARA PROGRAMAR LOS
PICAXE.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 13
cialización, por lo tanto, es importante tomar
en cuenta con que matriculas disponemos
para poder desarrollar nuestros proyectos. 
Incluso anteriormente los microcontroladores
PICAXE, tenían grabadas las matriculas de
los microcontroladores PIC (ya que la
empresa Microchip es quien los fabrica),
pero también en la actualidad algunos
PICAXE ya traen grabada la matricula que les
corresponde, dentro del sistema PICAXE, aun
cuando los continua fabricando Microchip.
En la tabla 1 se muestra la serie de micro-
controladores PICAXE disponibles, así como
la matrícula que tienen grabada. 
Por otra parte, en la tabla 2 se muestran las
matrículas de los microcontroladores PICAXE,
que sustituyen a los primeros que salieron al
mercado, para que de esta manera, se
pueda saber cuáles son los PICAXE de
reciente aparición, y por obvias razones, con
los que contamos para seguir trabajando.
Para continuar conociendo a los microcon-
troladores PICAXE, en la tabla 3 se muestran
las principales diferencias entre las distintas
versiones que podemos encontrar y para ello
los clasificaremos en PICAXE estándar y
PICAXE Avanzado.
KITS PICAXE
A lo largo de los últimos años, en Saber
Electrónica, publicamos varios circuitos con
PICAXE, muchos de los cuales se ofrecen en
forma de kits o que Ud. puede montar fácil-
mente, ya que todos los componentes son
comunes. A continuación mostramos algunos
de los proyectos publicados:
TARJETA ENTRENADORA PICAXE-08 (ICA-011)
Se trata de la primera tarjeta de entrena-
miento universal para programar microcon-
troladores PICAXE de 8 terminales denomina-
dos PICAXE - 08, figura 25.
Club Saber Electrónica Nº 161
14
Qué Son y Cómo se Usan los PICAXE
TABLA 1 - DISTINTOS TIPOS DE PICAXE.
TABLA 2 - LAS MATRÍCULAS DE LOS PICAXE.Cap 1 - PICAXE 9/6/11 10:03 AM Página 14
Sobre la tarjeta de circuito impreso se dispone de
un total de 4 E/S (4 entradas y 4 salidas), pero estas
terminales son configurables por medio de un jum-
per selector, ya que las terminales 3, 5, 6 y 7 del
microcontrolador PICAXE cumplen con una doble
función.
La tarjeta entrenadora para PICAXE - 08 tiene la
posibilidad de explotar al máximo las propiedades
del cualquier PICAXE-08, y por lo tanto se pueden
desarrollar proyectos en donde tan solo se tienen
que conectar las señales de los sensores y los
actuadores sobre las terminales que tiene destina-
das la tarjeta entrenadora.
Club Saber Electrónica Nº 161
15
Programación Fácil de Microcontroladores PICAXE
TABLA 3 - DIFERENCIAS ENTRE LOS PICAXE.
FIGURA 25 - TARJETA PICAXE-08.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 15
TARJETA ENTRENADORA PICAXE-18 (ICA-016)
Es la segunda tarjeta de entrenamiento universal que
Saber Electrónica propone para programar microcontro-
ladores PICAXE de 18 terminales denominados PICAXE -
18, figura 26. 
Sobre la tarjeta se dispone de un total de 5 entradas y 8
salidas, de las entradas se pueden disponer hasta 3 para
utilizar el convertidor ADC del microcontrolador PICAXE
(depende si es 18, 18A,18X, 18M o 18M2). 
Sobre la misma tarjeta se tiene un área de experimenta-
ción la cual consta de 2 circuitos para generar estados
lógicos mediante push butom para manipular las termi-
nales de entada del microcontrolador PICAXE. Además
cuenta también con dos circuitos con leds para veri-
ficar el estado de las salidas, y por último también
posee dos espacios para colocarle distintos tipo de
sensores,
PLC PICAXE-18 (ICA-017)
El PLC que se muestra en la figura 27 trabaja a partir
de las características y ventajas que nos otorga el
microcontrolador PICAXE - 18, por lo tanto este PLC
contara con 5 entradas y 8 salidas, ambas de natu-
raleza digital. Este PLC cuenta con sus respectivos
módulos de entrada y salida, uno para cada uno res-
pectivamente, por lo que tanto las entradas como
salidas de datos del microcontrolador PICAXE - 18
están protegidas.
Este PLC posee todo lo necesario para emplearlo en cualquier aplicación industrial, ya que cuenta en
sus terminales con bornes de conexión con tornillos, este PLC requiere 12 VCD para su alimentación.
CONTROL DE DISPLAY DE LCD PARA PICAXE-18 (ICA-018)
El control de display que se observa en la figura 28 emplea un microcontrolador PICAXE- 18 (cualquier
versión de PICAXE - 18), empleando todas las características y ventajas que nos otorgan estos micro-
controladores. Para controlar al display de LCD se emplean las 8 salidas del PICAXE, mientras que se dis-
pone de las 5 terminales de entrada, para hacerle llegar la información que se requiere imprimir en el
display, por lo tanto este circuito tiene una función a manera de monitor, desplegando todos los carac-
teres que acepta el display.
Este circuito es muy versátil, en cuanto al diseño de instrumentos de medición, ya que dispone de todas
sus terminales de entrada, y en 3 de ellas se cuenta con convertidores analógico - digital.
Los mencionados son sólo algunos de los proyectos que hemos publicado en Saber Electrónica como
“montajes destacados” y que puede conseguir en forma de kits, por razones de espacio no podemos
mencionarlos a todos ellos. Sugerimos visitar nuestra web para más información. ☺☺
Club Saber Electrónica Nº 161
16
Qué Son y Cómo se Usan los PICAXE
FIGURA 26 - TARJETA PICAXE-18.
FIGURA 27 - PLC PICAXE-18.
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 16
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 17
 Cap 1 - PICAXE 9/6/11 10:03 AM Página 18
Club Saber Electrónica Nº 161
19
“PICAXE” es un sistema de microcontro-
ladores fácil de programar ya sea
usando diagramas de flujo o emple-
ando lenguaje BASIC, el cual la mayoría
de las personas puede aprender rápi-
damente, dado su nivel de interaccio-
nar con su lenguaje. En los tomos 7, 16
y 29 de la colección Club Saber
Electrónica hablamos sobre PICAXE y
dimos varios proyectos comentados uti-
lizando en Programing Editor pero hasta
ahora no hemos programado en BASIC,
tema que abordaremos a continuación. En forma sintética, el lenguaje que se implementa,
es un sencillo diálogo muy intuitivo, que da órdenes muy precisas empleando un juego de
comandos limitados.
INTRODUCCIÓN
El microcontrolador PIC, es un circuito integrado que contiene memoria, unidades procesadoras y circui-
tos de entrada/salida, en una sola unidad. Digamos que es muy similar a un ordenador o computadora
PC, pero en formato pequeño. El microcontrolador PICAXE, es un sencillo microcontrolador PIC, que tiene
por característica, tener alojado dentro de su memoria, un pequeño firmware que permite ser progra-
mado bajo lenguajes más sencillos que el Assembly. Como ya sabrán, los microcontroladores son com-
prados en “blanco” y luego son programados con un programa específico de control. Una vez progra-
mado, este microcontrolador es introducido en algún producto para cumplir el rol de trabajo de contro-
lador. Es sabido, que estos diminutos circuitos integrados, tienen una inteligencia limitada por nosotros mis-
mos a la hora de ejecutar una acción; pues, según se lo programe, se delega solo la responsabilidad de
la orden impartida. Por ejemplo, si nosotros programamos a este microcontrolador para que ejecute la
tarea de monitorear y administrar el funcionamiento de un motor a explosión como lo que podemos ver
en un automóvil, éste sólo hará lo que le dijimos por intermedio de las instrucciones de programación, y
no esperen que este haga otra cosa que no le hallamos enseñado en su rutina de control. Hoy en día, se
suele aplicar microcontroladores en los desarrollos electrónicos, por que estos pueden reemplazar a un
gran número de partes separadas, o incluso a un circuito electrónico completo. Algunas de las ventajas
obtenidas con el uso de microcontroladores en el diseño de productos son: 
CC APÍTULAPÍTUL OO 22
TRABAJANDO CON MICROCONTROLADORES
PICAXE
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 19
o Aumento en la confiabilidad debido al menor número de partes.
o Reducción en los niveles de existencia ya que un microcontrolador reemplaza varias partes.
o Simplificación del ensamblaje del producto y productos finales más pequeños.
o Gran flexibilidad y adaptabilidad del producto ya que las funciones del producto están programadas
en el microcontrolador y no incorporadas en el hardware electrónico. 
o Rapidez en modificaciones y desarrollo del producto mediante cambios en el programa del micro-
controlador, y no en el hardware electrónico. 
En la Industria, los microcontroladores son usualmente programados utilizando programación en len-
guaje C. Sin embargo, debido a la complejidad de este lenguaje, es muy difícil el aprendizaje de dichos
lenguajes de programación en personas adultas que nunca tuvieron formación alguna, inclusive, tam-
bién podríamos incluir a los estudiantes muy jóvenes de bachillerato, que por lo general, su ansiedad los
lleva a buscar formas practicas y rápidas de inserción a los microcontroladores. No voy hacer mucho
énfasis sobre si deben o no tratar de aprender una manera de programación o no, solo les voy a men-
cionar, que es preferible estudiar lenguajes de programación que contengan un nivel de lenguaje de
programación mas alto que el que podemos encontrar con estos microcontroladores.
EL SISTEMA PICAXE 
El sistema “PICAXE” es un sistema de microcontrolador fácil de programar que utiliza un lenguaje BASIC
muy simple, el cual la mayoría de las personas pueden aprender rápidamente dado su nivel de inter-
accionar con su lenguaje. Ya hemos dado las características sobresalientes de este sistema en capítu-
los anteriores de esta obra pero no está demás resumir los rasgos sobresalientes del sistema PICAXE.
En forma sintética, el lenguaje que se implementa, es un sencillo diálogo muy intuitivo, que da órdenes
muy precisas… como ejemplo, podría
darles este ejemplo citado en la figura 1.
En la rutinade dicha figura, lo único que
hice, fue programar el microcontrolador
con un diálogo sencillo, en inglés, pero
muy deducible para aquellos que estén
flojos con este idioma.
Prácticamente, lo único que le ordené al
microcontrolador, es que monitoree la
entrada numero cero (input cero), y en
caso de tener algún estado definido (un
alto o un bajo, o sea, un 1 o un 0 lógico),
éste actúe dando como resultado una
acción determinada. Internamente, estas
líneas de programación, funcionan de la
siguiente manera dentro del microcontro-
lador: 
Siempre, la rutina se lee y se ejecuta
desde la primer línea para abajo, salvo
Club Saber Electrónica Nº 161
20
Trabajando con PICAXE
FIGURA 1 - RUTINA EN BASIC PARA PROGRAMAR UN PICAXE
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 20
que halla un salto
en el camino,
figura 2. En este
caso en particular,
arranca el ciclo en
la etiqueta “main”,
pasa por la primera
instrucción que
indica que visua-
lice y compare el
estado de la
entrada cero con el valor pre establecido y en caso de ser positivo el
resultado tiene que saltar e ir al sub programa “encendido”, figura 3.
En el caso de que la comparación de “cero”, el microcontrolador
sigue líneas abajo leyendo las instrucciones. Como pueden observar,
la siguiente instrucción es similar, compara el estado de la señal en la
entrada cero, y si la comparación es positiva, salta al subprograma
“apagado”. En caso de ser nula la comparación, el programa sigue
leyendo las siguientes líneas hasta llegar al fin del programa o bien, hasta llegar a una bifurcación. En
nuestro caso, llega hasta la instrucción “goto”, lo cual, hace repetir el programa una y otra vez sin tener
fin. Se observa entonces que este sistema implementa un diálogo de instrucción muy fácil de aprender,
de manera que en tan sólo unos pasos Ud. podrá aprender rápidamente a realizar sus propios proyectos
microcontrolados.
Este sistema explota las características únicas de la nueva generación de microcontroladores de bajo
costo FLASH. Estos microcontroladores pueden ser programados una y otra vez sin la necesidad de un
costoso programador. 
El poder del sistema PICAXE radica en su sencillez. No necesita de ningún programador, borrador o com-
plejo sistema electrónico. El microcontrolador es programado mediante una conexión de tres cables
conectada al puerto serie de una PC (con un simple programa en BASIC o un diagrama de flujo). 
El circuito operacional PICAXE utiliza únicamente tres componentes y puede ser ensamblado fácilmente
en una placa experimental para componentes electrónicos, en una placa corriente o en una placa PCB.
EL sistema PICAXE está disponible en varias versiones (8 pines, 18 pines, 28 pines, 40 pines). El controlador
PICAXE-28 provee 22 pines de entrada/salida (8 salidas digitales, 8 entradas digitales y 4 entradas analó-
gicas). El sistema PICAXE-18 provee 8 salidas y 5 entradas. 
Las características principales del sistema PICAXE son las siguientes: 
o Bajo costo, circuito de fácil construcción.
o Hasta 8 entradas, 8 salidas y 4 canales analógicos en la versión intermedia.
o Rápida operación de descarga mediante el cable serial.
o Software “Editor de Programación” gratuito y de fácil uso.
o Lenguaje BASIC simple y fácil de aprender.
o Editor de diagramas de flujo incluido.
o Puede ser programado también mediante el software “Crocodile Technology” o “Programming Editor”.
o Extenso número de manuales gratuitos y foro de apoyo en línea.
Club Saber Electrónica Nº 161
21
Programación Fácil de Microcontroladores PICAXE
FIGURA 2 - EL PROGRAMA CON-
SISTE EN UN JUEGO DE INSTRUC-
CIONES QUE SE ESCRIBE EN EL
PROGRAMING EDITOR.
FIGURA 3 - UNA INSTRUCCIÓN PUEDE INDICAR QUE,
SI SE CUMPLE ALGUNA CONDICIÓN, EL PROGRAMA
“SALTE” A OTRA INSTRUCCIÓN O SUBRUTINA.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 21
o Circuito experimental, manejo y tutoriales incluidos en la página del fabricante (gratuitos).
o Paquete de control remoto infrarrojo disponible.
o Paquete de servo controlador disponible.
Estas son sólo algunas de las funciones y utilidades disponibles.
COMENZANDO LAS PRÁCTICAS
Esta obra está diseñada para que el lector pueda realizar sus prácticas tanto con la placa entrenadora
y sus módulos correspondientes, como así también poder realizar simulaciones en el laboratorio virtual
Proteus, con sus librerías y diagramas de circuitos del laboratorio para que puedan saber cómo se va a
comportar el circuito casi como si lo efectuáramos con nuestra placa entrenadora física. Si bien este
laboratorio virtual es una gran herramienta virtual; debemos remarcar que posee algunos errores meno-
res que pueden complicarnos algunos diseños y o simulaciones. 
Los errores encontrados hasta el momento son: 
o No tolera mas de 16gosub
o No reconoce #REM-#ENDREM
o No reconoce #setfreq
o No reconoce #Picaxe08/18
o Genera algún que otro error cuando al terminar nuestro código de programación, no se implementa
un espacio después de la última línea de programación. 
La figura 4 muestra imágenes de un laboratorio de prácticas microcontroladas (varias placas de circuito
impreso) para trabajar y aprender con PICAXE.
USANDO COMENTARIOS
Usar comentarios en un programa, aunque sea perfectamente obvio para todos ustedes, puede ser una
herramienta extra que el día de mañana, le puede ayudar a comprender por qué implementó una
acción en su rutina, además, hay que tener en cuenta que si lo compartimos, alguien más puede leerlo
y puede no tener idea de lo que Ud. ha querido hacer.
Cabe aclarar que los comentarios usan espacio en el archivo fuente (.bas) pero no lo hacen en la
memoria del PICAXE, ya que éstos no son subidos junto a la rutina de programación.
Implementar un bloque de comentarios en el comienzo del programa y antes de cada sección del
código, puede describir cuál es la función de la rutina que tenemos, o bien, podemos describir con más
detalles cada línea de nuestro programa.
Para reconocer los comentarios, podemos dirigirnos a nuestra sección configuración del software, y en
la pestaña “editor” seleccionamos preferencias de colores en la sintaxis.
Con esta ultima acción, podremos diferenciar en nuestras rutinas los comandos, los comentarios con un
color distinto. Los comentarios en el programa comienzan con un apóstrofe (‘) o punto y coma (;) y con-
tinúa hasta el final de la línea. Es decir, en una línea, todo lo que está después del apóstrofe (‘) o punto
Club Saber Electrónica Nº 161
22
Trabajando con PICAXE
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 22
y coma (;) es simplemente un comentario y
no es tenido en cuenta en la ejecución del
programa por parte del PICAXE.
También es muy común que las personas de
habla inglesa y con viejas mañas del anti-
guo basic, implementen la palabra clave
“REM”. Esta palabra también puede ser
usada para comentarios, pero yo personal-
mente no la aconsejo, ya que un error en la
escritura, por ejemplo REN, nos daría errores
en la compilación y o simulación.
En la figura 4 tenemos un ejemplo; configu-
ramos el software (programa) como men-
cionamos anteriormente y mostramos las
diferentes formas de hacer comentarios.
USO DE SYMBOL
Los símbolos en nuestras rutinas, son pala-
bras clave que identifican constantes, varia-
bles y direcciones en el programa.
La asignación del símbolo se realiza
poniendo el comando “symbol + nombre del símbolo” y seguido de éste implementamos el signo igual
(=). Posterior a estas líneas, agregamos la variable o constante.
Los símbolos pueden ser cualquier palabra que no sea la relativa a un comando.
Los símbolos pueden contener caracteres numéricos (por ejempolo: ucontrol1, salida2, etc.) pero el pri-
mer carácter no puede ser uno numérico, es decir, no podría ser “1salida”, por dar un ejemplo.
El uso de símbolos no aumentan la longitud del programa. O sea, esta función no tiene peso alguno en
lo que refiere al programa. Por lo general se implementa este comando para renombrar las entradas y
salidas del microcontrolador lo que ayuda a recordarcuál es la función de cada terminal I/O a la hora
de leer y o modificar un programa.
Las direcciones del programa configuradas con el comando symbol, siempre tienen que ir sobre la pri-
mer instrucción o, mejor dicho, al inicio del programa.
En la figura 5 tenemos un ejemplo de programa en el que se han realizado asignaciones de símbolos.
Uso de Constantes
Las llamadas constantes, pueden ser creadas de manera similar a las variables. Puede que sea más con-
veniente usar un nombre para la constante en lugar de implementar un número como constante. Si el
valor u operando de la “constante” necesita ser cambiada, únicamente se modifica en algún lugar del
programa donde se define la constante en lugar de modificar cada parte del programa en la que inter-
viene. Dentro de las constantes, no pueden guardarse datos variables. Las constantes declaradas pue-
Club Saber Electrónica Nº 161
23
Programación Fácil de Microcontroladores PICAXE
FIGURA 4 - TODA ESCRITURA EN UNA LÍNEA QUE ESTÁ DES-
PUÉS DE UN APÓSTROFE O UN PUNTO Y COMA ES UN COMEN-
TARIO Y NO FORMA PARTE DEL PROGRAMA.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 23
den ser de cuatro tipos: deci-
mal, hexadecimal, binario y
ASCII. 
o Los números decimales se
escriben directamente sin nin-
gún prefijo. 
o Los números hexadecimales
se preceden del símbolo
“peso” ($). 
o Los números binarios de pre-
ceden del símbolo “tanto por
ciento” (%). 
o Los valores ASCII se colocan
entre comillas (“…”). 
DESIGNACIÓN DE VARIABLES
Veamos los tipos de variable
según el sistema, ya que éstas
varían en su aplicación según
cada modelo de programa-
ción : 
PICAXE es usado al programar
módulos PICAXE. 
El BASIC y Extended son usados
al programar módulos Stamp. 
El ensamblador es el utilizado
con código de ensamblador. 
Veamos entonces que tipos de
variables se pueden emplear
en función del sistema de pro-
gramación que utilizamos:
Las Variables en PICAXE:
El sistema PICAXE da soporte a las siguientes variables: 
Words: W0, W1, W2, W3, W4, W5, W6.
Bytes: DIRS, PINS (solo PICAXE-08), INFRA, KEYVALUE B0, B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13.
Bits: PIN0, PIN1, PIN2, PIN3, PIN4, PIN5, PIN6, PIN7 (conjuntamente igual PINS) BIT0, BIT1, BIT2, BIT3, BIT4, BIT4,
BIT5, BIT6, BIT7 (conjuntamente igual B0) BIT8, BIT9, BIT10, BIT11, BIT12, BIT13, BIT14, BIT15 (conjuntamente
igual B1). 
Club Saber Electrónica Nº 161
24
Trabajando con PICAXE
FIGURA 5 - EL COMANDO SYMBOL DEFINE EL NOMBRE Y LA ACCIÓN DE
CONSTANTES O VARIABLES.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 24
In/Out: INPUT0, INPUT1, etc. puede usarse en lugar de PIN0, PIN1, etc. OUTPUT0, OUTPUT1, etc. puede
usarse en lugar de 0, 1, 2, etc. 
Las variables en BASIC 
El modo BASIC da soporte a las siguientes variables: 
Words: PORT W0, W1, W2, W3, W4, W5, W6. 
Bytes: DIRS, PINS B0, B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13 
Bits: DIR0, DIR1, DIR2, DIR3, DIR4, DIR5, DIR6, DIR7, BIT0, BIT1, BIT2, BIT3, BIT4, BIT4, BIT5, BIT6, BIT7, BIT8, BIT9,
BIT10, BIT11, BIT12, BIT13, BIT14, BIT15 
Nota: B12 y B13 (W6) es usado dentro de las órdenes GOSUB como una pila. Por consiguiente no debería
utilizarse como un registro de propósito general. 
Las Variables en el Modo Extendido (EXTENDED)
El modo extendido da soporte a todas las variables de BASIC. Además: INPUT0, INPUT1, etc. puede usarse
en lugar de pin0, pin1, etc. OUTPUT0, OUTPUT1, etc. puede usarse en lugar de 0, 1, 2 etc. 
Nota: B12 y B13 (W6) es usado dentro de las órdenes GOSUB como una pila. Por consiguiente no debería
utilizarse como un registro de propósito general. 
Las Variables en el Modo Ensamblador 
El modo ensamblador soporta los mismos modelos de variables que el modo extendido. 
LOS COMANDOS DE PROGRAMACIÓN BASIC EN PICAXE
La tabla 1 representa un breve resumen de los diferentes comandos disponibles para los microcontrola-
dores PICAXE. 
Veremos a continuación la estructura y el significado de algunos de los comandos básicos que se
emplean para programar un PICAXE y
cómo se los emplea.
GOTO 
Este comando tiene como función la
ejecución del programa que continua
en la declaración de la etiqueta. Dicho
en otras palabras, este comando tiene
como función dar una dirección donde
saltara el programa y seguirá la lectura
de las instrucciones para continuar eje-
cutando el programa. En la figura 6
tenemos un ejemplo práctico.
Club Saber Electrónica Nº 161
25
Programación Fácil de Microcontroladores PICAXE
FIGURA 6 - GOTO SE USA PARA INDICAR A DÓNDE SIGUE EL
PROGRAMA.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 25
GOSUB 
Este comando tiene como función saltar a la subrutina indicada en la etiqueta, guardando su dirección
de regreso en la memoria pila (stack). A diferencia del GOTO, cuando se llega a un RETURN, la ejecución
sigue con la declaración siguiente al último GOSUB ejecutado. Se puede usar un número ilimitado de
subrutinas en un programa y pueden estar anidadas. En otras palabras, las subrutinas pueden llamar a
otras subrutinas. Cada anidamiento no debe ser mayor de cuatro niveles. Como ejemplo, cuando nos-
otros ejecutamos GOSUB, salta el programa a una etiqueta, y cuando llega al comando RETURN, vuelve
a la siguiente línea de donde partió con el comando GOSUB. La figura 7 muestra un ejemplo de uso de
este comando. 
Club Saber Electrónica Nº 161
26
Trabajando con PICAXE
TABLA 1 - RESUMEN DE COMANDOS USADOS EN PICAXE.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 26
FOR ... NEXT 
El bucle FOR … NEXT permite a los programas ejecutar un número de declaraciones tantas veces como
se lo defina, usando una variable como contador. Este comando es ideal para acortar líneas de pro-
gramas repetitivas. Para tener una idea
de su potencial, sea el siguiente pro-
grama que permite el parpadeo de un
Led conectado en una salida del PICAXE
cinco veces:
symbol led1= 7 
ejemplo1: 
high led1 
pause 1000 
low led1 
pause 1000 
high led1 
pause 1000 
low led1 
pause 1000 
high led1 
pause 1000 
low led1 
pause 1000 
high led1 
pause 1000 
low led1 
pause 1000 
high led1 
pause 1000 
low led1 
pause 1000 
end 
En esta rutina, “high led1” es una instruc-
ción que pone un “1” (prende) en la salida donde estará conectado el led. La instrucción “low led1” pone
un “0” (apaga) en la salida donde estará conectado el led. “pause 1000” es una instrucción que permite
que el micro no haga nada durante mil milisegundos (1 segundo), es decir, es una instrucción de espera.
Como puede observar, tuvimos que prender 5 veces el led, apagarlo otras 5 veces y en cada operación
decirle que espere un segundo. Ahora, veamos este otro modo de realizar la misma acción: 
Club Saber Electrónica Nº 161
27
Programación Fácil de Microcontroladores PICAXE
FIGURA 7 - GOSUB ES SIMILAR A GOTO PERO GUARDA LA
DIRECCIÓN DONDE ESTABA EN EL STACK.
bucle: 
for b0 =1 to 5 
high 1 
pause 1000 
low 1 pause 1000 
next b0 
end 
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 27
En este punto le aconsejo que realice
una práctica en su PC. Ejecute el software
“Programming Editor” y copie las líneas de
programación dadas en la figura 8 (con-
figure el programa para usarlo con el
PICAXE18X), revise las sintaxis y luego
haga la simulación mediante el
comando RUN del menú del
“Programming Editor”.
Al iniciarse el programa, cuando la lec-
tura ingresa en el contador (for b0 = 1 to
20), se precarga el valor 1 en un espacio
de memoria determinado (en este caso
b0) y comienza un conteo que finalizará
cuando llegue a 20. 
En el caso de la rutina que ejemplifiqué,
luego de pasar por la instrucción de
comenzar con el contador, sigue leyendo
el resto de las líneas y ejecutando toda
acción que conlleven en ellas (high1-
pause-low1-pause) hasta llegar a la línea
donde dice “next b0”. En esta línea, lo
que hace, es decirle al contador que adi-
cione un entero (que le sume uno) en la
memoria que alojamos el conteo (b0)y
luego salta automáticamente a la línea
donde comienza el contador (for b0 =1
to 20)iniciando nuevamente toda la
acción descrita anteriormente hasta lle-
gar a almacenar en la memoria el valor
20 (por que esa fue la instrucción que le
dimos cuando le dijimos que cuente de1
a 20 en la línea de instrucción “for b0 = 1
to 20”).
Note que cuando llega a 20, en vez de
retornar a la línea del contador, sigue
leyendo la siguiente línea. En este caso, la
siguiente línea nos dice con el comando
PAUSE y GOTO que debe hacer un retardo
y volver al programa u etiqueta “bucle”.
Después de esto, como el contador tenía registrado el valor 20, no tendría que seguir contando... pero
no es así, ya que al volver a reiniciarse el programa, el contador vuelve a cero también. Para el caso en
que nosotros quisiéramos que al llegar a determinado conteo, el programa termine, lo que podríamos
hacer, es implementar la rutina mostrada en la figura 9.
Club Saber Electrónica Nº 161
28
Trabajando con PICAXE
FIGURA 8 - FOR... NEXT SE EMPLEA PARA HACER BUCLES DE
FORMA DE REPETIR UN ALGORITMO TANTAS VECES COMO SE
REQUIERA EN UN PROGRAMA.
FIGURA 9 - EJEMPLO DE USO DEL COMANDO FOR... NEXT.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 28
HIGH
A medida que vayamos avanzando en
nuestros proyectos, iremos notando que la
gran mayoría de nuestros desarrollos
microcontrolados requieren de un control
de estados de las entradas y salidas. Hay
dos comandos que definen el estado
lógico de una salida: HIGH y LOW.
El comando HIGH pone a nivel alto (“1”
lógico) un pin determinado del microcon-
trolador. 
Se usa este comando para activar una
salida.
LOW
Es el comando contrario a HIGH y se usa para poner una salida en estado bajo (“0” lógico) o desactivar
dicha salida.
Veamos cómo funcionan los comandos high y low en el ejemplo mostrado en la figura 10: Simplemente
se pone un “1” lógico en el PIN 1 del microcontrolador, se detiene el programa durante 5 segundos, luego
se pone un “0” lógico en el PIN 1, nuevamente se tiene una espera de 5 segundos y el programa vuelve
al inicio. Es decir, se trata de un programa que activa y desactiva la pata del micro correspondiente al
PIN1 en períodos de 5 segundos en cada estado.
INPUT 
Este comando refiere a un puerto de entrada específico.
En cierta manera, convierte una patita de un puerto (PIN) en una entrada. O, mejor dicho, con esta ins-
trucción se está diciendo que el PIN en cuestión será una entrada. 
Aclaremos que para definir nuestra entrada, se puede implementar el comando INPUT, o bien, podemos
adoptar el número de puerto (0 a 7 para el caso de los micros 18x) y definirlo con un sencillo IN antes del
número de puerto de entrada (in7 / input7).
Al usar el comando IMPUT en nuestro programa automáticamente estamos mencionando que vamos a
trabajar con señales digitales entrantes en un puerto definido.
OUTPUT
Este comando refiere a un puerto de salida específico.
En cierta manera, convierte una patita de un puerto (PIN) en una salida. O, mejor dicho, con esta ins-
trucción se está diciendo que el PIN en cuestión será una salida. Como mencionamos anteriormente al
Club Saber Electrónica Nº 161
29
Programación Fácil de Microcontroladores PICAXE
FIGURA 10 - LAS INSTRUCCIONES HIGH Y LOW SE EMPLEAN
PARA ESTABLECER LAS CONDICIONES DE LAS SALIDAS DIGITALES.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 29
describir el comando input, no es que podemos configurar nuestros puertos como entradas y salidas; a
lo que me refiero, es que definimos en una línea qué acción queremos que adopte esa salida.
Para definir nuestra salida, se puede implementar el comando OUTPUT, o bien, podemos adoptar el
número de puerto (0 a 7 para el caso de los micros 18x) y definir la acción o estado de este puerto (high
7 -low 7 / high output7 -low output7). Es hora de realizar una nueva práctica: ejecute el “Programming
Editor” en su PC y copie las instrucciones del programa de la figura 11, nos preparamos para ver cómo
funcionan las instrucciones IMPUT y OUTPUT.
Nota: en este ejemplo, cité ambas maneras en las que podemos definir o nombrar un puerto de entrada
o salida. Cuando simule esta rutina, verá que el software las reconoce a ambas como lo mismo y no
genera ningún conflicto. 
END
Este comando tiene como objeto detener la ejecución del proceso y el microcontrolador no sigue eje-
cutando el programa hasta que lo reiniciemos o bien, hasta que no le demos la instrucción manual de
volver a comenzar con su ciclo. 
Club Saber Electrónica Nº 161
30
Trabajando con PICAXE
FIGURA 11 - LA CONFIGURACIÓN DE LOS PUERTOS, COMO ENTRADAS O SALIDAS, SE PUEDE HACER CON LOS COMANDOS
IMPUT Y OUTPUT.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 30
Cuando el microcontrolador es detenido
por el comando END entra en modo de
bajo consumo. Otra de las característica
de este comando es que cuando se eje-
cuta esta instrucción todos los datos pre-
sentes en los pines de entrada y salida se
congelan y permanecen en el estado en
que se encuentran. Para ver mejor cómo
funciona este comando, realice una
nueva práctica; para ello, ejecute en su
PC nuevamente el “Programming Editor” y
copie el programa mostrado en la figura
12, realice la simulación y verifique la
estructura del comando.
IF…THEN IF…AND…THEN IF…OR…THEN 
Estos comandos son en sí, parte de una
estructura de comparación con salto a
una dirección determinada (siempre a
una etiqueta), en el caso en que se cum-
pla la función asignada. Las funciones
que se pueden asignar a estas compara-
ciones son: 
= (igual que) 
>= (mayor o igual que) 
> (mayor que) 
< (menor que) 
<= (menor o igual que) 
<> (no es igual que) 
& (función lógica AND) 
or (función lógica OR) 
Estas son sólo algunas de las comparaciones a las que pueden responder estos comandos.
El principio básico de estos tres comandos son la de establecer una pregunta (IF...) sobre el estado de un
puerto determinado; compara, lee el estado, evalúa en términos de VERDADERO o FALSO y en el caso
de ser cierto, se ejecuta la operación a la que refiere el THEN (entonces...). 
Si lo considera falso, no se ejecuta la operación posterior al THEN y prosigue con la lectura de la siguiente
línea. Veamos algunos ejemplos:
if…then 
if input1 =1 then action3 
Club Saber Electrónica Nº 161
31
Programación Fácil de Microcontroladores PICAXE
FIGURA 12 - LA INSTRUCCIÓN END SE EMPLEA PARA DETENER EL
PROGRAMA Y QUE EL MICRO QUEDE EN LA CONDICIÓN DE BAJO
CONSUMO.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 31
Esta sentencia indica que si la entrada 1 es
igual a 1, entonces el programa sigue ejecu-
tándose en la etiqueta “action3”. Si la entrada
1 es igual a cero se sigue ejecutando el pro-
grama normalmente.
if…and…then 
if input1 =1 and input0= 1 then action2 
Aquí se dice que si la entrada 1 es igual
a 1 y la entrada 0 es igual a 1, entonces
el programa sigue ejecutándose en la
etiqueta “action2”. Si la entrada 1 y/o la
entrada 0 es igual a cero se sigue eje-
cutando el programa normalmente.
if…or…then 
if input1 =1 or input 0 = 1 then action3 
Aquí se dice que si la entrada 1 es igual
a 1 o la entrada 0 es igual a 1, enton-
ces el programa sigue ejecutándose en
la etiqueta “action3”. Si la entrada 1 o la
entrada 0 es igual a cero se sigue eje-
cutando el programa normalmente.
if…or…then gosub 
if input1 =1 then gosub action3 if input2
=0 then actionx 
En este caso estamos diciendo que si la
entrada 1 es igual a 1, entonces el pro-
grama sigue ejecutándose en la eti-
queta “action3” y cuando termine, que
vuelva y prosiga en la siguiente línea.
En la figura 13 tenemos un ejemplo que
Ud. puede utilizar para realizar una
práctica en el “Programming Editor”.
Es importante destacar que la mejor
forma de “aprender” es practicando, es
por ello que sugerimos que realice
cada ejercicio en la medida que se lo
vamos sugiriendo. Ahora bien, con los
comandos explicados Ud. ya posee
Club Saber Electrónica Nº 161
32
Trabajando con PICAXE
FIGURA 13 - EJEMPLO DE USO DEL COMANDO IF... THEN
FIGURA 14 - OTRO EJEMPLO DE USO DEL COMANDO IF... THEN.
 Cap 2 - Trabajandocon PICAXE 9/6/11 10:19 AM Página 32
conocimientos suficientes como para que pueda experimentar con un sistema útil. En la figura 14 tiene
el programa que le permitirá simular el programa de un sencillo automático para detectar el nivel de un
tanque de agua, de modo que se ponga en marcha cuando el agua haya descendido por debajo de
cierto nivel y que la bomba se apague cuando el agua alcance el nivel superior establecido como refe-
rencia.
Note la inclusión de algunos comandos que aún no hemos analizado, que ello no lo detenga en su prác-
tica. Trabaje de la misma manera que hemos explicado hasta ahora sobre el “Programming Editor” para
simular el funcionamiento de esta rutina… notará que “Readadc 2,b2”, por ejemplo, es una instrucción
que lee el estado de una entrada y que se trata de una entrada analogical… ¿qué otras cosas nota?
Nuevamente: “La práctica es tanto más importante que la teoría”, por lo tanto, “manos a la obra”.
PAUSE
Este comando, es implementado para generar retardos en los saltos entre líneas y ejecución del código
del programa. Ya lo hemos visto en algunos ejemplos anteriores, pero ahora lo presentamos “formal-
mente”. En la siguiente rutina se está indicando que se ponga en “1” el PIN 1, luego que se mantenga
asi durante 5 segundos (5.000 milisegundos), posteriormente se indica que se ponga un “0” en el PIN 1
durante otros 5 segundos y que vuelva a comenzar el programa:
inicio: 
high 1 
pause 5000 
low 1 
pause 5000 
goto inicio 
Como especificación del tiempo de retardo está dada en “milisegundos”, en una estructura de 16 bits,
los retardos pueden ser de hasta 65635 milisegundos (66 segundos).
WAIT 
Este comando, al igual que el anterior, es implementado para generar retardos en los saltos entre líneas y
ejecución del código del programa. La única diferencia es que PAUSE establece unidades expresadas en
milisegundos y WAIT en segundos. Técnicamente decir WAIT 1 o decir PAUSE 1000 es lo mismo. Por lo dicho,
el programa que vimos en la explicación del comando PAUSE se puede expresar de la siguiente manera:
inicio: 
high 1 
wait 5 
low 1 
wait 5 
goto inicio 
Club Saber Electrónica Nº 161
33
Programación Fácil de Microcontroladores PICAXE
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 33
Aquí también podemos
establecer un tiempo
máximo de 65 segundos,
por lo cual necesitaremos
arreglos como el uso de
“for… next” para poder
tener tiempos mayores.
RETURN 
Este es un muy buen
comando que si lo sabe-
mos implementar, pode-
mos hacer programas más
rápidos e interesantes. En
si, este comando tiene
como función volver
desde una subrutina, reto-
mando la ejecución en la
declaración que sigue al
GOSUB que llamó a la
subrutina. En la figura 15
tenemos un ejemplo sencillo que podremos
simular de la forma acostumbrada.
INFRAIN 
Este comando se usa en sistemas de comu-
nicación por infrarrojos. Se implementa para
esperar en el receptor una señal infrarrojo
procedente del transmisor IR. Este
comando, además de poder implementar-
los en nuestros propios proyectos, podemos
usarlo para crear nuestros propios controles
remotos IR o bien repetidores IR para toda la
gama de equipos de la marca SONY, ya
que implementa el mismo protocolo que
esta compañía utiliza en sus productos. El
comando en si, interactúa en el programa
esperando la señal infrarroja y, una vez reci-
bida esta señal, el valor de ella se alma-
cena en la variable predefinida “infra” (es
Club Saber Electrónica Nº 161
34
Trabajando con PICAXE
FIGURA 15 - RETORNO DE UNA SUBRUTINA POR MEDIO DEL COMANDO
RETURN.
FIGURA 16 - CONEXIÓN DE UN RECEPTOR INFRARROJO EN UN
PICAXE.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 34
similar a b0,b1,etc., pero de uso
exclusivo para este comando). En la
figura 16 tenemos el esquema de
conexión de un receptor IR sobre un
PICAXE-08 y en la figura 17 hemos
escrito una rutina que Ud. puede uti-
lizar para practicar sobre el manejo
de esta instrucción. No hace falta
tener el control remoto (el transmisor),
ya que podemos ejecutar el
“Programming Editor” en nuestra
computadora, escribir el programa
de la figura 17 y simularlo; podemos
cambiar los valores desde la tabla
de variables de la derecha y ver
cómo cambia la simulación.
READADC 
Un sensor analógico es capaz de
medir y proveer información codifi-
cada en forma de tensiones varia-
bles. Si colocamos la señal de este
tipo de sensores a la entrada del
puerto analógico del microcontrola-
dor, puede ser representada por
valores de 0 a 255, por ejemplo, en
el caso de una foto resistencia,
podríamos decir que 0 es oscuro y
255 luz intensa. 
Este comando, lo podemos imple-
mentar para convertir una señal ana-
lógica entrante en el puerto ADC del
microcontrolador, en una informa-
ción digital con una resolución de 8
bits. El dato obtenido de esta lectura
convertida (A/D) se almacena en
una variable (b0, b1, b2, bx, etc.),
luego ese dato puede ser empleado para cualquier propósito.
NOTA: cuando implementamos este comando, es muy importante tener en cuenta que si almacenamos
el dato en una variable tipo “b1”, se guarda con una resolución de 8 bits mientras que si la almacena-
mos en una variable tipo “w1”, el dato es guardado con una resolución de 10 bits. En la figura 18 tiene
un ejemplo que recomendamos que simule de la forma acostumbrada.
Club Saber Electrónica Nº 161
35
Programación Fácil de Microcontroladores PICAXE
FIGURA 17 - INFRAIN ES UN COMANDO APLICABLE A LÍNEAS DE
ENTRADA QUE POSEEN SENSORES INFRARROJOS Y “LEE” EL ESTADO DE
DICHO SENSOR.
FIGURA 18 - EJEMPLO DE USO DEL COMANDO READADC.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 35
READADC10 
Este comando, es similar a
READADC y lo podemos
implementar para conver-
tir una señal analógica
entrante en el puerto ADC
del microcontrolador. La
diferencia de este
comando con el anterior-
mente mencionado, es
que este puede leer y
almacenar el dato con
una resolución de 10 bits.
El dato obtenido de esta
lectura convertida (A/D), es
almacenada en una
variable (w1, w2, wx, etc.)
que luego puede ser
empleada para cualquier propósito. Un dato interesante, es que podemos implementar también el
comando READADC para almacenar datos con resoluciones de 10 bits. Si con el comando READAC
implementamos una variable word (w1, w2, wx, etc.), el dato se guarda en 10bits. En la figura 19 tene-
mos un ejemplo que podemos simular de la forma acostumbrada en el “Programming Editor”. 
PWM 
Este comando solo puede ser implementado en los microcontroladores PICAXE 08 y 08M (en otros
PICAXE no funciona) y su función es enviar un tren de pulsos modulados en un ancho definido por el pin
de salida seleccionado. Cada ciclo del PWM (Pulse Width Modulation -Modulación del ancho del pulso),
puede tener una resolución dada a nuestro gusto y necesidad, es decir, podemos ampliar tanto el
“duty”, como el “cycle”, reduciendo o ampliando así el ancho del pulso. Entendemos como “duty”, al
momento en que tenemos un estado alto por un tiempo determinado la señal del PWM y “cycle”, al
momento en que se repite el “duty”.
El “duty” para cada ciclo puede variar en valores comprendidos entre 0 (0%) y 255 (100%). El cycle del
PWM puede estar definido entre 0 y 255 repeticiones; pero hay que tener en cuenta que el “cycle”
depende de la frecuencia del oscilador. Con esto último quiero explicarles que por ejemplo con un osci-
lador de 4MHz, cada cycle será de aproximadamente 5 ms de largo. Con un oscilador de 20MHz la
duración del ciclo será de 1 ms aproximadamente. 
Definir el valor del oscilador mediante la implementación de un comando especial que veremos mas
adelante, no tiene efecto sobre el comando PWM. 
El PICAXE 08 emplea sus puertos como entrada y salida, según lo configuremos nosotros pero cuando
empleamos el comando PWM, el puerto se convierte en salida justo antes de la generación del pulso y
vuelve a ser entrada, cuando cesa. La salida de PWM tiene mucho ruido, y no tiene forma de onda cua-
Club Saber Electrónica Nº 161
36
Trabajando con PICAXE
FIGURA19 - CON READDC10 SE PUEDEN LEER Y ALMACENAR DATOS ANALÓGICOS
CON UNA RESOLUCIÓN DE 10 BITS.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 36
drada. Es necesario usar
algún tipo de filtro para
convertirla en algo útil. Se
puede usar un circuito RC
como un simple converti-
dor A/D. En la figura 20
tenemos un ejemplo apli-
cable en un PICAXE 08 -
08M.
EEPROM 
El comando EEPROM, nos guarda datos en la memoria no volátil de nuestro microcontrolador. Dado que
la EEPROM es una memoria no volátil, los datos permanecerán intactos aún sin alimentación. 
Si se omite el valor opcional de la posición de memoria, la primera declaración se guarda en la direc-
ción 0 de la EEPROM y las subsiguientes en las siguientes direcciones del mismo. Si se indica un valor de
posición, éste indica la dirección de comienzo para guardar los datos. La estructura de la instrucción es
la siguiente:
EEPROM {posición},(dato) 
“Posición (location)” es una constante numérica de 0 a 255 que específica donde se debe empezar a
almacenar los datos en la EEPROM. Como mencionamos anteriormente, si no existe una posición indi-
cada, el almacenamiento continúa a partir del último dato introducido. Si inicialmente no se especificó
ninguna posición, el almacenamiento comienza en la posición 0. 
“Dato (data)” puede ser una constante alfanuméricas de hasta 256 caracteres. Cada carácter del valor
numérico o palabras son almacenados en las posiciones de la EEPROM que van desde la posición “0”
hasta la “255”. Este comando y esta diversidad en la estructura física del microcontrolador, solo la pode-
mos encontrar en los
m i c r o c o n t r o l a d o r e s
PICAXE-18A, 28, 28A y 28X.
Los datos que son guarda-
dos en la EEPROM solo una
vez y esto ocurre cuando el
microcontrolador es pro-
gramado, no cada vez
que se ejecuta el pro-
grama. Para el caso de
tener que armar una rutina
donde necesitamos guar-
dar en tiempo real determi-
nados datos en la EEPROM
se puede usar la instrucción
Club Saber Electrónica Nº 161
37
Programación Fácil de Microcontroladores PICAXE
FIGURA 20 - ENVÍO DE UN TREN DE PULSOS POR EL PIN 4 DE UN PICAXE-08M
CON EL COMANDO PWM.
FIGURA 21 - EEPROM PERMITE ESCRIBIR DATOS EN POSICIONES DE MEMO-
RIA INTERNA DEL MICRO.
FIGURA 22 - PARA ESCRIBIR LA PALABRA “MARTIN” SE REQUIEREN 6 POSI-
CIONES DE MEMORIA.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 37
Club Saber Electrónica Nº 161
38
Trabajando con PICAXE
FIGURA 23 - EL CÓDIGO ASCII Y SU EQUIVALENTE EN NÚMEROS BINARIOS.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 38
o comando WRITE para colocar los valores en la EEPROM en el momento de la ejecución. La figura 21
muestra un ejemplo de uso de esta instrucción. Note que la segunda línea está indicando que guarde
la palabra “Martín” a partir de la dirección de memoria 0. Ahora bien cuando guardamos una palabra
en la dirección 0, no significa que la integridad de la palabra o frase se guarde en esa posición sola-
mente. 
El primer carácter o letra se guarda en la dirección cero y el resto de las letras o caracteres se almace-
nan en las direcciones siguientes en el correspondiente binario según el código ASCII, tal como muestra
la figura 22. Cabe aclarar que para la conversión de caracteres a su correspondiente binario, según el
código ASCII, se puede emplear una tabla como la mostrada en la figura 23.
SI nosotros queremos guardar otro mensaje, tenemos que tratar de que no ocupemos un espacio ya
usado por otra palabra. Un método sencillo es ir anotando en una tabla como la mostrada en la figura
22 las letras y las distintas direcciones de la EEPROM donde están guardadas, ya que luego, para poder
tener esas palabras, ejecutaremos comandos tales como “for…next”, los cuales apuntará a dichas posi-
ciones de memoria.
En la figura 24 tenemos un ejemplo de una rutina que se puede utilizar para visualizar frases en un display
de cuarzo líquido. La instrucción:
EEPROM 6,(“Martin Torres”)
Indica que a partir de la posición 6 se guarde la frase “Martin Torres” (las comillas no cuentan), lo que equi-
vale al uso de 13 posiciones de memoria (“Martin” ocupa 6 posiciones, “Torres” ocupa 6 posiciones y el
espacio intermedio ocupa la restante), es decir, se usa desde la posición 6 hasta la posición 18 (expre-
sado en binario).
I2CSLAVE 
I2C es un bus de comunicaciones en serie. Su nombre viene de Inter-Integrated Circuit (Circuitos Inter-
Integrados). La versión 1.0 data del año 1992 y la versión 2.1 del año 2000, su diseñador es Philips. La velo-
cidad es de 100kbits por segundo en el modo estándar, aunque también permite velocidades de
3.4Mbit/s. Es un bus muy usado en la industria, principalmente para comunicar microntroladores y sus peri-
a
39
Programación Fácil de Microcontroladores PICAXE
FIGURA 24 - RUTINA QUE EMPLEA EL COMANDO EEPROM PARA ESCRIBIR LA FRASE “MARTIN TORRES” Y
QUE LUEGO SE PUEDE ENVIAR A UN DISPLAY.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 39
féricos en sistemas integrados (Embedded Systems) y generalizando más para comunicar circuitos inte-
grados entre si que normalmente residen en un mismo circuito impreso. Algunos PICAXE contienen blo-
ques internos que permiten la comunicación I2C.
La principal característica de I2C es que utiliza dos líneas para transmitir la información: una para los datos
y por otra la señal de reloj. También es necesaria una tercera línea, que es la referencia (masa). Como
suelen comunicarse circuitos en una misma placa que comparten una misma masa esta tercera línea
no suele ser necesaria.
Las líneas se llaman:
SDA: datos
SCL: reloj
GND: tierra
El comando I2CSLAVE se utiliza para configurar los pines del PICAXE y definir el tipo de I2C que se emple-
ará como hardware funcional (sensores - conversores A/D-módulos conversores o digitalizadores con
memoria propia) o bien, alguna memoria EEPROM adicional. Si se utiliza únicamente un dispositivo I2C,
entonces generalmente solo se necesita una orden I2CSLAVE dentro del programa. 
El orden en que escribimos este comando en un programa es el siguiente: 
i2cslave esclavo, velocidad, dirección 
“Esclavo” es un registro que corresponde a la dirección del esclavo I2C. 
“Velocidad” marca la velocidad de transmisión. 
“Dirección” establece el
I2CBYTE o I2SWORD, indi-
cando la dirección donde
comenzará a guardar la
información. 
Después de que se utilice
el comando I2CSLAVE, se
pueden utilizar los coman-
dos readi2c y writei2c
para acceder al disposi-
tivo I2C. Se pueden utilizar
para leer y grabar datos
de una EEPROM mediante
comunicación serie,
usando una interfase I2C
de 2 hilos. Esto permite
guardar datos en una
memoria externa no volá-
til, para que sean mante-
nidos aún sin conexión de
alimentación. También se
Club Saber Electrónica Nº 161
40
Trabajando con PICAXE
FIGURA 25 - CAPACIDAD Y DIRECCIÓN “ESCLAVO” DE ALGUNOS DISPOSITIVOS DE
ALMACENAMIENTO DE MEMORIA.
 Cap 2 - Trabajando con PICAXE 9/6/11 10:19 AM Página 40
utilizan para poder comunicarse con otros dispositivos con interfase I2C, como sensores de temperatura
y convertidores A/D. 
Dirección esclavo: La dirección del esclavo cambia para dispositivos diferentes (vea la tabla de la figura
25). Para las EEPROM del tipo 24LCxx la dirección es %1010xxxx. 
Velocidad: La velocidad del bus I2C se selecciona a través de los comandos I2CFAST para velocidad de
400kHz y I2CSLOW para 100kHz.
Dirección control: Los 7 bits superiores del byte de control contienen el código de control junto con la
selección del chip e información adicional de dirección, dependiendo de cada dispositivo. El bit inferior
es una bandera interna que indica si es un comando de lectura o escritura y no se debe usar.
Por ejemplo, cuando comunicamos al PICAXE con una memoria 24LC01B, el código de control es %1010
y no se usa la selección de chip, por lo que el byte de control será: %10100000 o $A0, tal como se puede
observar en la tabla de la figura 25. 
NOTA: El tamaño de dirección enviado (byte o Word) viene determinado por el tamaño de la

Continuar navegando