73

Club Saber Electrónica - Aprenda Microcontroladores PICAXE

Embed Size (px)

Citation preview

Page 1: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 1/73

Page 2: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 2/73

Director de la Colección Club SEIng. Horacio D. Vallejo

Jefe de RedacciónPablo M. DoderoAutor de esta edición:

Ismael Cervantes de Anda, Docente de laEscuela de Cómputo (ESCOM) e InstitutoPolitécnico Nacional (IPN). México DF.

Club Saber Electrónica es una publicaciónde Saber Internacional SA de CV de Méxicoy Editorial Quark SRL de Argentina

Editor Responsable en Argentina y México:Ing. Horacio D. VallejoAdministración Argentina:Teresa C. Jara

Administración México:Patricia Rivero RiveroComercio Exterior Argentina:Hilda JaraComercio Exterior México:

Margarita Rivero RiveroDirector Club Saber Electrónica:Luis LeguizamónResponsable de Atención al Lector:Alejandro A. VallejoCoordinador Internacional

José María NievesPublicidadArgentina: 4301-8804 - México: 5839-5277

StaffVíctor Ramón Rivero Rivero

Olga VargasLiliana VallejoMariela Vallejo

Javier IsasmendiRamón Miño

Fernando Ducach

Areas de ApoyoTeresa DucachDisprof Fernando FloresClaudio GorgorettiPaula VidalRaúl Romero

Internet: www.webelectronica.com.arWeb Manager: Luis Leguizamón

Club Saber Electrónica Nº 29. Fecha de publicación: Mayo de 2007. Publicación mensual editada y publicada por Editorial Quark, Herrera 761 (1295) Capi-tal Federal, Argentina (005411-43018804), en conjunto con Saber Internacional SA de CV, Av. Moctezuma Nº 2, Col. Sta. Agueda, Ecatepec de Morelos, Mé-xico (005255-58395277), con Certificado de Licitud del título (en trámite). Distribución en México: REI SA de CV. Distribución en Argentina: Capital: Car-los Cancellaro e Hijos SH, Gutenberg 3258 - Cap. 4301-4942 - Interior : Distribuidora Bertrán S.A.C. Av. Vélez Sársfield 1950 - Cap. – Distribución en Uru-

guay: Rodesol SA Ciudadela 1416 – Montevideo, 901-1184 – La Editorial no se responsabiliza por el contenido de las notas firmadas. Todos los productos omarcas que se mencionan son a los efectos de prestar un servicio al lector, y no entrañan responsabilidad de nuestra parte. Está prohibida la reproduccióntotal o parcial del material contenido en esta revista, así como la industrialización y/o comercialización de los aparatos o ideas que aparecen en los mencio-nados textos, bajo pena de sanciones legales, salvo mediante autorización por escrito de la Editorial.Revista Club Saber Electrónica, ISSN: 1668-6004

Introducción: Qué es PICAXE . . . . . . . . . . . . . . . . . . . .3Conociendo los microcontroladores de este sistema . . . . . . . . . .4Utilitario gratuito para hacer programas . . . . . . . . . . . . . . . . . 6

Lección 1: Primeras Experiencias con los PICAXE . . . . .9Uso y prueba de leds: primeros programas en BASIC . . . . . . . . .9Uso y prueba de timbres y zumbadores . . . . . . . . . . . . . . . . .12Prueba y uso de sensores digitales . . . . . . . . . . . . . . . . . . . . .13Prueba y uso de fotorresistencias . . . . . . . . . . . . . . . . . . . . . .14Más sobre el sistema PICAXE . . . . . . . . . . . . . . . . . . . . . . . .16Entrenador PICAXE-18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18Preparando el tablero tutorial . . . . . . . . . . . . . . . . . . . . . . . .18El software gratuito para trabajar con PICAXE . . . . . . . . . . . . .18Ejecutando un programa de muestra . . . . . . . . . . . . . . . . . . .19Instrucciones para uso en Windows . . . . . . . . . . . . . . . . . . . .19Aprendiendo a hacer programas en BASIC . . . . . . . . . . . . . . .20Utilizando el comando Symbol . . . . . . . . . . . . . . . . . . . . . . .20El circuito del “entrenador” PICAXE-18 . . . . . . . . . . . . . . . . . .21Utilizando Bucles For...N ext . . . . . . . . . . . . . . . . . . . . . . . . .22Controlando la velocidad de un motor . . . . . . . . . . . . . . . . . .22Uso de timbres y zumbadores electrónicos enel sistema PICAXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23Uso de entradas con sensores digitales . . . . . . . . . . . . . . . . . .23Uso de entradas con sensores analógicos . . . . . . . . . . . . . . .24

Cómo se leen las entradas analógicas . . . . . . . . . . . . . . . . . .25Programación por organigramas o diagramas de flujo . . . . . . .25Dibujando organigramas . . . . . . . . . . . . . . . . . . . . . . . . . . .27Uniendo bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27Simulación de pantalla . . . . . . . . . . . . . . . . . . . . . . . . . . . .27

Convirtiendo organigramas . . . . . . . . . . . . . . . . . . . . . . . . .27Utilizando símbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28Guardando e imprimiendo organigramas . . . . . . . . . . . . . . . .28Sistemas de números . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28Visualizando cifras analógicas en el display de 7 segmentos . . .29Controlando motores paso a paso . . . . . . . . . . . . . . . . . . . . .29Subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32El circuito del entrenador . . . . . . . . . . . . . . . . . . . . . . . . . . .32Examen Múltiple choisse Lección 1 . . . . . . . . . . . . . . . . . . . .33

Lección 2: Diseño y Construcciónde Proyectos con PICAXE . . . . . . . . . . . . . . . . . . . . .35Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35Kit entrenador para PICAXE 08 . . . . . . . . . . . . . . . . . . . . . . .39Aprendiendo a programar la tarjetaentrenadora 08 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41 Juego de luces tipo auto fantástico . . . . . . . . . . . . . . . . . . . . .44Alarma para puertas y ventanas empleandola tarjeta entrenadora PICAXE 08 . . . . . . . . . . . . . . . . . . . . .47La Tarjeta entrenadora PICAXE 18 . . . . . . . . . . . . . . . . . . . . .51Aprendiendo a utilizar el ADC en la tarjetaentrenadora del PICAXE 18 . . . . . . . . . . . . . . . . . . . . . . . . .53Control de temperatura con la tarjeta entrenadoraPICAXE 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59

Programa para desplegar números BCD con latarjeta entrenadora del PICAXE 18 . . . . . . . . . . . . . . . . . . . .63Cerradura electrónica empleando la tarjetaentrenadora PICAXE 18 . . . . . . . . . . . . . . . . . . . . . . . .........68Examen Multiple choisse Lección 2 . . . . . . . . . . . . . . . . .........75

Page 3: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 3/73

El campo de acción de los microcontroladores ha rebasado sus expectativas originales de aplicación, ya que en la actua-

lidad los podemos encontrar no sólo en aplicaciones industriales (dentro de los PLCs por ejemplo), sino dentro de nuestras

mismas casas. A lo mejor no lo sabemos, pero para precisar este comentario basta con señalar un aparato elec-

trodoméstico como es una lavadora automática, que para controlar sus procesos de lavado, secado y pre - planchado, requiere

de un microcontrolador.

Y así podemos continuar con más ejemplos, tales como las TV, las consolas de video juego, las PCs, el refrigerador, etc.Si los microcontroladores los tenemos en nuestras casas, imaginen en un vehículo, en los aviones, en los celulares, en resumen,

se encuentran en todos aquellos aparatos o juguetes que se controlan por sí mismos.

En un futuro no sería extraño encontrar microcontroladores hasta dentro de nuestros cuerpos, controlando algún órgano o miem-

bro artificial.

Con el transcurso del tiempo los microcontroladores van ganando terreno, y se van incorporando a más aplicaciones, tanto

para el área de diseño como para el de mantenimiento, lo que requiere de más personas que tengan conocimientos sobre la pro-

gramación de microcontroladores.

Si buscamos en el mercado microcontroladores de diferentes marcas, vamos a encontrar una gran cantidad de fabricantes,

además de muchas versiones que nos ofrecen, lo que nos da un volumen de matrículas enorme, dándonos alternativas muy diver-

sas en cuanto a la elección de algún microcontrolador en particular.

Del universo existente de microcontroladores, vamos a enfocarnos en los PICAXE, porque cuentan con una herramienta de pro-

gramación que nos facilita el aprendizaje, y una vez que tengamos la práctica y habilidad en la programación, podremos emi-grar a otro tipo de microcontroladores, porque con los PICAXE aprendemos a realizar diagramas de flujo, que es una herramienta

indispensable en la programación.

Los conocimientos sobre programación, normalmente se adquieren a través de un curso formal ya sea en universidades o escue-

las técnicas, pero ¿qué sucede con aquellas personas que no pueden, por cualquier razón, incorporarse a estudiar microcontro-

ladores?

Lo importante es que si alguien está interesado(a) en aprender a programar microcontroladores, y no puede llevar un curso for-

mal, tenga una alternativa de estudio que pueda administrar la misma persona.

El enfoque que tiene la presente obra, es la de llevar un curso comenzando en la primera parte con las características básicas

de los microcontroladores PICAXE, para que de manera genérica el lector pueda ingresar de forma fácil a la programación de

los microcontroladores.

En la segunda parte de la obra, el lector podrá adquirir conocimientos más avanzados en cuanto a técnicas de programación,

para ello se abordan los temas nuevamente explicando aspectos básicos para reafirmar los conocimientos, y además sobre dis-

tintos ejemplos se van explicando diferentes situaciones para ir incorporando diversas herramientas de programación.

Al finalizar cada una de las partes que conforman al libro, el lector se encontrará con un examen, que le permitirá ir evaluan-

do su nivel de conocimientos, y así pueda reforzar aquellas partes en donde se encuentre débil.

Pues bien querido lector, en general esta obra es el resultado del impulso que en Club Saber Electrónica, queremos darles a

todas aquellas personas que tengan “ganas” de aprender, y por lo tanto, esperamos que este libro sea de su total agrado y utili-

dad, muchas gracias por elegirnos y hasta la próxima.

“ Ag radezco las fac i li dad es prestadas po r e l I nst it uto Po l i técn ico N ac iona l y en espec ia l a la Escue la Super io r d e C ómputo , pa ra

la real iza ción de la presente ob ra, la cua l es el resul tad o de la comp rob ació n de diversos exp erimentos en sus labo rator ios”

ISBN Nº: 978-987-1116-91-1

CDD 621.381

Page 4: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 4/73

CLUB SA BER ELECTRO N ICA 3

PICAXE: La Nueva Forma de Programar un PIC

Desde que el primer microprocesador vio la luz

del mundo (el 4004), y cuya única y principal opera-

ción era una suma de 1 bit, se comenzó con una ca-

rrera tecnológica en la cual lejos de ver el fin, día

tras día se van logrando cosas inimaginables. Tal es

el caso de los microcontroladores que vendrían a ser

el ejemplo resumido y en pequeño de una compu-

tadora personal (PC).

Un microcontrolador, que puede ser de 8, 18, 28, 40 ter-minales o más, internamente dentro de su encapsulado posee

como equipamiento mínimo un microprocesador, memoriaRAM, y distintas versiones de memoria ROM. Los microcontro-

ladores más avanzados, aparte de lo mencionado anteriormen-te, también llegan a poseer temporizadores, ADC, DAC, Comu-

nicación en paralelo, USAR, etc. En la figura 1 vemos todo lonecesario para programar un PICAXE.

Un microcontrolador, desde el punto de vista de operación,puede considerarse como si fuera una PC, ya que cuenta con

el conjunto básico de implementos que necesita realizar sus fun-ciones, esto es, microprocesador, disco duro, memoria RAM,

etc. Clásicamente, cuando programamos un microcontrolador,

Figura 1

Page 5: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 5/73

4 CLU B SABER ELECTRO N ICA

de forma implícita se tiene que desarrollar un programa que

trabaja a manera del BIOS de una PC, ya que lo primero quedebemos tomar en cuenta es la configuración de sus puertos ya

sea como de entrada o de salida, configurar sus demás herra-mientas como pueden ser los temporizadores, los ACD, etc.

Han aparecido en el mercado sistemas de desarrollo quepermiten la programación del microcontrolador de una manera

relativamente fácil, en la cual se puede emular el proceso quenos interesa desarrollar. Para la mayoría de estos sistemas de

desarrollo, una vez que se tiene terminada la aplicación, el pa-so siguiente es armar el prototipo e insertar el microcontrolador

debidamente programado.Recientemente ha sido lanzado al mercado un sistema de

desarrollo para programar microcontroladores PIC llamado PI-CAXE, que de por sí quien ha utilizado estos microcontrolado-

res puede constatar lo sencillo que resulta su programación. Elsistema de desarrollo PICAXE hace las cosas todavía más sen-

cillas para el programador, ya que se cuenta con dos opcio-nes para diseñar una aplicación, una por medio de diagramas

de flujo y otra es por medio de “BASIC”, y aunque esto no esninguna novedad, ya que estas herramientas existían con ante-

rioridad, lo ventajoso del PICAXE radica en el hecho de que setrata de un microcontrolador PIC el que en un segmento de me-

moria ROM interna le ha sido grabado, desde su fabricación,

un firmware a manera de BIOS que simplifica la forma de pro-

gramarlo. Al igual que en todos los sistemas de desarrollo, exis-ten ya predefinidas toda una serie de tarjetas de prácticas so-

bre las cuales podemos emular las aplicaciones que hemos di-

señado, pero gracias al firmware que poseen los microcontro-ladores PICAXE “se puede armar la aplicación completa inclu-yendo al microcontrolador”, y sobre la aplicación programarlo

sin necesidad del sistema de desarrollo, ni del circuito progra-mador de microcontroladores. Ver figura 2.

De hecho, el sistema PICAXE hace más accesible la progra-mación de microcontroladores a todas aquellas personas que

tan sólo cumplan con el único e indispensable requisito que esel de querer aprender. Vea en la figura 3 una pantalla de la

aplicación que nos permitirá realizar el programa que vamos acargar dentro del PIC. Aquí no vamos a mencionar las ventajas

y desventajas del sistema PICAXE con respecto a otros; lo úni-co que podemos agregar es que se trata de otra manera de

programar microcontroladores PIC, empleando diagramas deflujo y/ o lenguaje BASIC, (figura 4) los cuales ya sea de ma-

nera consciente o totalmente implícita recurrimos a ellos paraelaborar un programa.

A lo largo de este libro iremos aprendiendo paso a paso laforma de cómo programar los microcontroladores bajo el siste-

ma PICAXE. Para ello, como primer paso, emplearemos una tar- jeta de desarrollo de la cual proporcionaremos su circuitería

para que ustedes la puedan armar. Posteriormente, después derealizar algunas prácticas, avanzaremos ya sobre aplicaciones

en donde se tenga al microcontrolador como elemento princi-pal y al cual programaremos en sitio. Pues bien, los invitamos

a que exploren esta nueva forma de programar microcontrola-dores que, estamos seguros, les será de gran utilidad.

Conociendo los Microcontroladores

de este Sistema

El PICAXE es un sistema de microcontroladores PIC muy fá-

cil de programar ya que utiliza un lenguaje BASIC muy senci-

Figura 2

Figura 3

Figura 4

Page 6: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 6/73

CLUB SA BER ELECTRO N ICA 5

llo, además de contar también con la posibilidad de progra-marlos con diagramas de flujo. El sistema PICAXE aprovecha

todas las características de los microcontroladores de bajo cos-to que incorporan memoria FLASH.

El sistema PICAXE está disponible en tres versiones que sonel de 8 terminales (PICAXE-08), 18 terminales (PI-

CAXE-18) y 28 terminales (PICAXE-28). En estos mi-crocontroladores ya se tienen definidas las termina-

les que tienen la función de entrada y salida de da-

tos, además de las terminales que sirven para pro-gramar al PICAXE en sitio, o en otras palabras, so-

bre la misma aplicación. En las figuras 5, 6 y 7 semuestran los circuitos esquemáticos de la disposi-

ción de cada uno de los microcontroladores PICA-XE.

En la figura 5 se muestra el circuito esquemáti-co para un PICAXE de 8 terminales, de las cuales

las que están identificadas como Pin1 E/ S, Pin2E/ S, Pin3 E/ S y Pin4 E/ S, son terminales que pue-

den funcionar como entradas o salidas de datos delexterior hacia el microcontrolador. Las terminales

identificadas como Serial En y Serial Sal, seutilizan para programar al microcontrolador

a través del puerto serie de una PC, para locual las terminales del conector identificado

como CON1 se hacen llegar al conectorDB9 de la PC tal como se muestra en la figu-

ra 4. Por otra parte, de la misma figura 1 seobserva que la terminal identificada como

Serial Sal, cumple con una doble función, ydependiendo de dónde se ubique un jumper

selector en el conector CON2, se podrá pro-gramar al PIC o esa misma terminal. Una

vez programado el PIC, tendrá la función deuna terminal de salida de datos.

Del circuito esquemático de la figura 6se observa la forma en que están dispuestas

las terminales de un PICAXE de 18 termina-les, de las cuales las que se encuentran iden-

tificadas como En 0, En 1, En 2, En 6 y En 7 son dedicadas ex-clusivamente a adquirir datos del exterior hacia el microcontro-

lador. Las terminales que se encuentran identificadas de la Sal0 a Sal 7 son exclusivamente para enviar datos hacia afuera

del microcontrolador, mientras que las terminales identificadas

Figura 5

Figura 6

Figura 7

Page 7: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 7/73

6 CLU B SABER ELECTRO N ICA

como Serial Sal y Serial En se utilizan para programar al mi-

crocontrolador.En el circuito de la figura 7 se muestra la forma de conec-

tar a un PICAXE de 28 terminales, en donde aparte de las ter-

minales de entrada que se encuentran definidas como En 0 aEn 7, también se cuenta con las terminales de salida identifica-das como Sal 0 a Sal 7, además de 4 terminales para entrada

de datos analógicos, y por último las terminales de programa-ción del microcontrolador.

Ya se ha mencionado que el sistema PICAXE no requiere deprogramador o borrador, ya que utiliza únicamente tres alam-

bres conectados al puerto serie de una computadora, tal comose describe en la figura 8.

Una vez que han sido identificadas las terminales a utilizaren el conector del puerto serie de la PC, ahora lo que sigue es

preparar la conexión hacia el PIC, tomando en cuenta las ter-

minales tal como se observa en la figura 9.Como se puede apreciar de la figura 9, se puede emplear

(es recomendable) un plug de los utilizados para conectar los

audífonos a la salida de audio de un walkman o discman, y te-ner un cable con un conector DB9 en un extremo y un plug deaudio en el otro, tal como se ilustra en la figura 10.

Por último, diremos que para armar el cable de programa-ción, tal como se muestra en la figura 10, en las figuras 8 y 9

se muestra la configuración de las terminales tanto del conectorDB9 como el plug de audio.

Utilitario Gratuito para Hacer Programas

Lo diferente del sistema de microcontroladores PICAXE, conrespecto a la programación tradicional de los microcontrolado-

res PIC, radica en la programación basada en un lenguaje BA-SIC y diagramas de flujo. Esto hace que los microcontroladores

del sistema PICAXE sean muy fáciles de programar, en un am-biente amigable.

Para programar los microcontroladores PICAXE debemos,en primera instancia, instalar el software que contiene el am-

Figura 8

Figura 9

Figura 10

Figura 11 - Carpeta progedit.

Figura 12 - Software de instalación “Programming Editor”.

Page 8: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 8/73

CLUB SA BER ELECTRO N ICA 7

biente de programación, por lo que describiremos paso a pa-

so la forma de hacerlo.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 ingresar la clave PICAXEPRO. Re-cuerde que para bajar cualquier información, debe ser sociodel club SE, lo cual es gratuito y puede inscribirse por Internet

en sólo un par de minutos (siga las instrucciones que dimos pa-ra bajar el programa PICAXEPRO y encontrará cómo hacerse

socio si aún no lo es).Una vez que se tenga el software, se encontrará con una

carpeta con el nombre de “progedit”, a la cual debemos acce-der (observe la figura 11).

Luego debemos ingresar a la carpeta progedit y tenemosque ubicar el programa identificado como “Programming Edi-

tor”, al cual debemos de hacerle un doble click con el ratón dela PC para que éste se ejecute y se pueda instalar el programa

de los PICAXE, tal como se muestra en la figura 12.Una vez que ejecutamos el programa de instalación Pro-

gramming Editor aparecerá la ventana que se muestra en la fi-gura 13, sobre la cual debemos oprimir con el ratón el cuadro

identificado como “next” para que continúe la instalación.

Posteriormente será desplegada la ventana donde se mues-tra la licencia que debemos aceptar, porque de otra manera no

podremos continuar con la instalación del software, por lo que

nuevamente oprimiremos el cuadro identificado como “next”;esta acción se indica en la figura 14.

Como paso siguiente, pregunta por el nombre del usuario

que normalmente utilizará el software; aquí podemos instalar laaplicación para que pueda ser utilizada por todas las personas

que utilicen la computadora, y después de seleccionar esta ac-ción tenemos que oprimir el cuadro identificado como “next”,

tal como se muestra en la figura 15.Posteriormente debemos decir en dónde se guardará el

software de programació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 16. Unavez seleccionada la opción correspondiente, procederemos a

hacer click sobre el cuadro identificado como “next”.Por último, aparecerá una ventana de confirmación para

estar seguros de que los datos que introdujimos se encuentrancorrectos; si es así, debemos oprimir el cuadro identificado co-

mo “next” para que continúe la instalación, tal como se apre-cia en la figura 17.

Figura 13 - Ventana de bienvenida para la insta- lación del software de los PICAXE.

Figura 14 - Acuerdo de licencia. Figura 16 - Destino del software.

Figura 15 - Información del usuario.

Page 9: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 9/73

8 CLU B SABER ELECTRO N ICA

Cuando se está instalando el software, se indica gráfica-

mente tal como se ilustra en la figura 18; aquí debemos espe-rar hasta que se terminen de instalar, tanto el software de pro-

gramación como todas las utilerías que serán empleadas por

los PICAXE. En la figura 19 se muestra la ventana que nos in-dica que ya se ha concluido con la instalación, por lo que de-bemos oprimir el cuadro identificado como “finish”.

Una vez instalado el software de programación de los PI-CAXE, en el escritorio de nuestra PC encontraremos un ícono

de acceso directo identificado como “PICAXE Programming

Editor”, al cual, para comenzar a programar los microcontrola-

dores, debemos hacer un doble click con el mouse para que seejecute el programa, tal como se muestra en la figura 20. En la

figura 21 y 22 se observa un ejemplo del ambiente gráfico,

tanto en lenguaje BASIC como en diagrama de flujo. ******

Figura 19 - Ventana final.

Figura 20 - Icono de acceso rápido en el escritorio de la PC.

Figura 21 - Lenguaje BASIC para programar los PICAXE.

Figura 22 - Diagrama de flujo para programar los PICAXE.

Figura 18 - Ventana de instalación del software.

Figura 17 - Ventana de confirmación de datos.

Page 10: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 10/73

CLU B SABER ELECTRO N ICA 9

Uso y Prueba de Leds:

Primeros Programas en BASIC

Para que un microcontrolador desarrolle una tarea median-

te la ejecución del programa que tiene grabado en su memo-ria, es preciso que el mismo esté alimentado y posea compo-

nentes externos que permitan su funcionamiento. Normalmente

se emplean resistencias, diodos emisores de luz, capacitores,buzzers piezoeléctricos (zumbadores), interruptores, etc.

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

crocontrolador PICAXE como un elemento multipro-

pósito y le saque “el mayor jugo posible”.

Antes de explicar cómo se puede realizar la prueba de loscomponentes que trabajan con el microcontrolador, daremos

algunas consideraciones generales sobre las fuentes de energíaque usaremos para alimentar a nuestro circuito.

¿Q ué es una b ater ía?

Una batería es una fuente de energía eléctrica (es una fuen-te de potencia portátil). Las baterías están constituidas por ele-

mentos químicos que almacenan energía. Al conectarlas a un

circuito, esta energía química se convierte en energía eléctricaque puede luego alimentar al circuito.

¿Q ué tama ño de b ater ía se u ti l i zan en e lec t rón ica ?

Las baterías vienen en todo clase de tipos y tamaños. Lamayoría de las baterías consisten en un grupo de pilas, en don-

de cada pila provee cerca de 1.5V (figura 1). Por lo tanto 4 pi-

las crean una batería de 6V y 3 pilas una de 4.5V. Como re-gla general, mientras más grande es la batería, más tiempo du-

Page 11: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 11/73

10 CLU B SABER ELECTRO N ICA

rará (ya que contiene más químicos y por lo tanto será capaz

de convertir más energía). Una batería de mayor voltaje no du-ra más que una batería de menor voltaje. Por lo tanto, una ba-

tería de 6V formada por 4 pilas AA dura mucho más que unabatería PP3 de 9V (batería de 9V común), ya que por ser físi-

camente más grande contiene una mayor cantidad total de

energía química. Por lo tanto, aquellos equipos que requierenmucha potencia para operar (por ejemplo un reproductor por-tátil de CDs, el cual tiene un motor y un láser para leer los CDs)

siempre utilizarán pilas AA y no baterías PP3.Los microcontroladores PICAXE generalmente requieren en-

tre 3 a 6V para operar, y por lo tanto es mejor utilizar una ba-tería formada por tres a cuatro pilas AA. Nunca utilice una ba-

tería PP3 de 9V ya que la alimentación de 9V puede dañar elmicrocontrolador.

¿Q ué tipo d e bater ía deb o u t i li zar?

Los distintos tipos de baterías contienen diferentes quími-

cos. Las baterías de carbón-zinc son las más baratas, y sonadecuadas para utilizarse en muchos circuitos de microcontro-ladores. Las baterías alcalinas son más costosas, pero tienen

una vida mucho más larga y se las debe emplear cuando se ne-cesita alimentar dispositivos que requieren mucha corriente ta-

les como motores. Las baterías de litio son mucho más costosaspero tienen una larga vida, y por lo tanto se utilizan comúnmen-

te en circuitos de computadoras, videocaseteras, etc. Otro tipode baterías son las baterías recargables, las cuales pueden re-

cargarse cuando se agotan. Estas están hechas, usualmente, deníquel y cadmio (Ni-cad) ó de hidróxido de metal cadmio

(NiMH).Atenc ión : Nunca haga corto-circuito en los terminales de

una pila o una batería. Las baterías alcalinas y las recargables

pueden suministrar corrientes muy grandes, y pueden calentar-se tanto que pueden llegar a “explotar” o derretir la carcasa.

Siempre asegúrese de conectar la batería en el sentido correc-

to (rojo positivo (V+) y negro negativo -0V ó tierra-). Si las ba-terías se conectan al revés, el microcontrolador corre peligro decalentarse y dañarse.

Los paquetes de baterías se conectan a menudo, al circui-to integrado mediante cables con conectores adecuados. Ase-

gúrese siempre que los cables rojo y negro estén conectados enla dirección correcta. También es de mucha utilidad pasar los

cables de la batería a través de los agujeros del tablero antesde soldarlos en su lugar (esto proveerá una unión mucho más

fuerte, la cual será mucho menos propensa a soltarse).Nunca use una batería PP3 de 9V para alimentar directa-

mente a un microcontrolador, ya que el mismo sólo trabaja convoltajes entre 3 y 6V.

Algunos soportes de baterías pequeñas requieren la solda-dura de cables a contactos metálicos en la caja. En este caso

debe ser muy cuidadoso de no sobrecalentar los contactos me-tálicos. Si los contactos se calientan mucho, derretirán el plásti-

co que los rodea y por lo tanto se caerán. Una buena manerade prevenir esto es pedirle a un amigo que sostenga los contac-

tos metálicos con una pinza pequeña. Las pinzas actuarán co-mo un disipador de calor y ayudarán a evitar que el plástico se

derrita.

¿Q ué es un LED? Un Diodo Emisor de Luz (LED) es un componente electróni-

co que emite luz cuando la corriente pasa a través de él. UnLED es un tipo de diodo especial.

Un diodo es un componente que sólo permite el flujo de co-rriente en una dirección. Por lo tanto al utilizar un diodo, el mis-

mo debe estar conectado en la dirección correcta. La pata po-sitiva (ánodo) de un LED es más larga que la pata negativa

(mostrada por una barra en el símbolo). La pata negativa tam-bién posee un extremo plano en la cubierta plástica del LED. En

la figura 2 se puede observar el aspecto y el símbolo de un led.

¿Para qué se ut i l izan los LEDs?

Los LEDs se utilizan principalmente como luces indicadoras.Los LEDs rojos y verdes se utilizan, comúnmente, en artefactos

electrónicos tales como televisores para mostrar si el televisor

Figura 1

Figura 2Figura 3

Page 12: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 12/73

CLU B SABER ELECTRO N ICA 11

está encendido o si está en el modo stand-by (en espera). Los

LEDs están disponibles en una variedad de colores diferentes,incluyendo rojo, amarillo, verde y azul. Existen también LEDs ul-

tra-brillantes, los cuales se utilizan en luces de seguridad tales

como las luces intermitentes utilizadas en bicicletas. Los LEDs in-frarrojos producen una luz infrarroja que no es visible al ojo hu-mano, pero que puede utilizarse en dispositivos tales como

mandos a distancia de equipo de video.

¿Cómo se usan los LEDs?

Los LEDs sólo necesitan una pequeña cantidad de corrien-

te para operar; esto los hace mucho más eficientes que las lam-paritas eléctricas (esto significa, por ejemplo, que si se tuviera

una alimentación por baterías un LED alumbraría por muchomás tiempo que una bombilla eléctrica). Si se pasa demasiada

corriente por un LED el mismo se puede dañar; es por esto quelos LEDs normalmente se utilizan junto con una resistencia en se-

rie para protegerlos 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 utilizaruna resistencia de 330Ω o 330R que es lo mismo (fig. 3), y pa-

ra una batería de 3V lo apropiado es una resistencia de 120Ω.

¿Cómo se conecta un LED a un microcont ro lador?

Debido a que el LED sólo requiere una pequeña cantidad

de corriente para operar, el mismo se puede conectar directa-mente entre un pin de salida del microcontrolador y 0V (sin ol-

vidar incluir la resistencia en serie para protección).

¿Cómo se prueba e l LED con e l m icrocont ro lador?

Después de conectar el LED, el mismo puede probarse uti-

lizando un simple programa tal como el siguiente:

Main:High 0

Wait 1Low 0

Wait 1Goto main

Este programa debe encender y

apagar el LED (conectado al pin de sa-lida 0) una vez por segundo.

Para realizar esta primera práctica,

ejecute el utilitario “Editor de Programa”según lo descrito (descripto) en este mis-

mo capítulo; luego, escriba el programaanterior, conecte la placa entrenadora

con el PICAXE colocado, asegúrese queel jumper correspondiente esté en el la-

do de programación, conecte uno delos leds de la placa en la salida “0”,

descargue el programa (asegúrese que el entrenador esté bien

conectado por medio del cable al puerto serial de la PC), lue-go corra el jumper a la posición salida y vea si obtiene el fun-

cionamiento deseado.

Si el LED no funciona verifique:

1. que e l LED esté conectado en la sa l ida “0 ” (por med io

de un s imp le cab lec i to ) .

2 . que se esté u ti l i zand o la resis tenc ia co r rec ta en la p laca

entrenadora y que el LED esté en el sent ido correcto.

3 . que se es té u t i l i zando e l número de p in cor rec to dent ro

de l p r og r am a .

4 . que todos los componentes es tén b ien so ldados.

Para la prueba, se puede emplear también el circuito de

una mascota virtual (figura 4) dado que será uno de los proyec-tos que presentaremos más adelante.

El programa de la tabla 1 enciende y apaga 15 veces alLED conectado al pin de salida 0 utilizando una técnica de pro-

gramación BASIC llamada “bucle for...next” (esta técnica nopuede utilizarse con organigramas).

_________________________________________ Tabla 1: Programa para encender y apagar un led

15 veces

Main:

For b1 = 1 to 15 ;inicio de un bucle

High 0 ;se pone en alto la salida “0”Pause 500 ;se hace una pausa de 1/2 seg.

Low 0 ;se pone en estado bajo la salida “0”

Pause 500 ;se hace una pausa de 1/2 seg.

Next b1 ;se continúa con el bucle hasta que termine

End ; fin del programa

_____________________________________________________

Figura 4

Page 13: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 13/73

12 CLU B SABER ELECTRO N ICA

El número de veces que el código debe repetirse se alma-

cena en la memoria del chip PICAXE utilizando una “variable”llamada b1 (el PICAXE tiene 14 variables nombradas de b0 a

b13). Una variable es un “registro de almacenamiento de nú-

meros” dentro del microcontrolador, que el mismo puede utili-zar para almacenar números a medida que el programa se eje-cuta.

Le aconsejamos que lea o repase todo lo anterior nueva-mente, que baje de Internet el programa para trabajar con PI-

CAXE y practique con el ejercicio que acabamos de dar y conlos que seguimos:

Uso y Prueba de Timbres y Zumbadores

¿Q ué es un zum bado r e l ec tr ón i co?

Un zumbador electrónico es un “miniparlante” (minibocina)de bajo costo que se utiliza para hacer sonidos. El sonido ge-nerado por el zumbador puede cambiarse alterando las seña-

les electrónicas suministradas por el microcontrolador.

¿Para qué se u ti l i zan los zumba do res?

Los zumbadores se utilizan en una gran variedad de dife-

rentes productos para dar “retroalimentación” al usuario. Unbuen ejemplo de esto es una máquina expendedora, la cual

emite un sonido cada vez que se presiona un botón para esco-ger un refresco o algo para comer. Este sonido da retroalimen-

tación al usuario para indicarle que se recibió la señal del bo-

tón presionado. Otros tipos de zumbadores se utilizan a menu-do en tarjetas musicales de cumpleaños, para tocar una melo-

día cuando se abre la tarjeta.

¿Cuál es la d i fe renc ia en t re un zumbador y un t imbre ?

El timbre (o sirena) contiene un pequeño circuito electróni-

co, el cual genera la señal electrónica necesaria para emitir unsonido. Por lo tanto, cuando el timbre se conecta a una batería

siempre emitirá el mismo sonido. El zumbador no tiene este cir-cuito y por ende necesita una señal externa. Esta señal puede

suministrarla un pin de salida del microcontrolador. El zumba-

dor también requiere menos corriente para operar y por lo tan-to durará más en circuitos alimentados por baterías.

¿Cómo se usan los zumbadores?

La conexión de los zumbadores a un PICAXE es muy senci-lla. Simplemente conecte el cable rojo al pin de salida del mi-

crocontrolador y el cable negro a 0V (tierra), figura 5. Tome en

cuenta que los zumbadores más económicos no tienen cubier-ta plástica exterior. En estos casos es necesario montar el zum-bador sobre una sección del circuito impreso (con cinta adhe-

siva de doble contacto) para crear un sonido que se pueda es-cuchar. El circuito impreso actúa como una “caja de sonido”

(baffle) y amplifica el sonido emitido por el zumbador. Asegú-rese de pegar la cinta adhesiva al lado correcto del zumbador

(¡el lado de bronce que no tiene los cables!).En algunas ocasiones puede que desee emitir sonidos más

fuertes. En este caso lo adecuado es utilizar un parlante (boci-na) en vez de un zumbador. Al utilizar parlantes es necesario

conectar un condensador (por ejemplo un capacitor electrolíti-co de 10µF) al circuito del microcontrolador para evitar causar-

le daños al chip. Recuerde que, al igual que el zumbador, losparlantes sólo operan correctamente si están montados en una

“caja de sonido”.Después de conectar el zumbador, el mismo puede probar-

se utilizando un simple programa tal como el siguiente:

Main:Sound 2, (65,100)

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

Sound 2, (119, 100)Go to main

Este programa hará que el zumbador (conectado al pin de

salida 2) haga 4 sonidos diferentes (valores 65, 78, 88, 119),siguiendo el diagrama de flujo de la figura 6.

Vea qué senc i llo es prog rama r…

“main” (del inglés “principal),es una etiqueta que dice que está

por empezar el programa.

“sound 2” es una instrucción

que dice que el PICAXE genere unsonido y lo emita por la salida 2, cu-ya frecuencia dependerá del primer

número que está entre paréntesis enla instrucción y su valor puede ser

cualquiera entre 0 y 127.De la misma mamera que antes,

podemos probar este programa, uti-lizando el entrenador propuesto en

este capítulo y conectando el zumba-dor en la salida 2. Ejecute el utilita-

rio “Editor de Programa”; luego, es-criba el programa anterior, conecte

Figura 5

Figura 6

Page 14: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 14/73

CLU B SABER ELECTRO N ICA 13

la placa entrenadora con el PICAXE colocado, asegúrese que

el jumper correspondiente esté en el lado de programación, co-necte el zumbador en la salida “2”, descargue 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 laposición salida y vea si obtiene el funcionamiento deseado.

Si el zumbador no funciona verifique:

1 . Q ue e l va lo r de l son ido (pr imer número en e l paréntesis )

esté en tr e 0 y 12 7 .

2 . Q ue se esté u ti l i zand o e l número de p in cor rec to dent ro

de l p r og r am a .

3 . Q ue tod as las conex io nes es tén b ien so ldad as.

Para probar este elemento también puede utilizar el circui-

to de la mascota virtual. En síntesis, al utilizar el comandosound, el primer número indica el número de pin (en los proyec-

tos el pin 2 es utilizado frecuentemente). El siguiente número esel tono, seguido por la duración. Mientras más alto es el tono,

mayor será la altura tonal del sonido (tome en cuenta que algu-nos zumbadores no pueden emitir tonos muy altos y; por lo tan-

to, valores mayores de 127 puede que no se escuchen).Al utilizar sonidos múltiples puede incluirlos todos en la mis-

ma línea. Por ejemplo:

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

El programa BASIC mostrado en la tabla 2 utiliza un buclefor...next para emitir 120 sonidos diferentes, utilizando la va-

riable b1 para almacenar el valor (tono) del comando sound.El número almacenado en la variable b1 aumenta 1 en ca-

da bucle (1-2-3-etc.); por lo tanto, al utilizar la variable b1 enla posición del tono, la nota se cambia en cada bucle. El pro-

grama de la tabla 3 realiza la misma tarea, pero en orden in-verso (contando el tono en cuenta regresiva).

___________________________________________________ Tabla 2

Main:

For b1 = 1 to 120 step-1 ,iniciar un bucle for … next

Sound 2, (b1, 50) ,emita un sonido con el tono b1Next b1 , siguiente b1

End ,fin del programa

___________________________________________________

Tabla 3

Main:

For b1 = 120 to 1 step-1 ,iniciar un bucle for … next

Sound 2, (b1, 50) ,emita un sonido con el tono b1

Next b1 ,siguiente b1

End ,fin del programa

___________________________________________________

Le aconsejamos que baje de Internet el programa para tra-

bajar con PICAXE y realice sus propios “ejemplos”. Si no tienelos programas para trabajar con los microcontroladores PICA-

XE, puede bajarlos sin cargo de nuestra web: www.webelectro-

nica.com.ar, haciendo click en el ícono password e ingresandola clave: “picaxe212”.

Prueba y Uso de Sensores Digitales

¿Q ué son los in te r rup tores d ig i ta les?

Un sensor digital es simplemente un componente del tipo“interruptor”, el cual sólo puede estar en dos posiciones: en-

cendido ó apagado. Si dibujáramos una gráfica de las señalesde encendido-apagado del interruptor a medida que se opri-

me, el mismo se vería como se muestra en la figura 7. Los inte-rruptores son componentes electrónicos que detectan movimien-

tos. Existe una gran variedad de interruptores diferentes, porejemplo:

1) in te r rup tores de botón de pres ión que detec tan cuando

e l bo t ón ha s ido op r im ido

2 ) micro-in te rrup tores con pa lanqu i tas la rga s que detec tan

pequeños mov imientos

3 ) in te r rup tores de n ive l q ue detec tan sacud ida s

4) interruptores de lengüeta ( reed switches) que detectan el

m ov im ien to d e un im án

¿Para qué se ut i l izan los Interruptores? Los interruptores de botón de presión se utilizan comúnmen-

te en dispositivos tales como teclados. Los micro-interruptores seutilizan en alarmas contra robos, para detectar si se ha quita-

do la cubierta de la caja de la alarma. Los interruptores de len-güeta (reed switches) se utilizan para detectar la apertura de

puertas y ventanas, y los interruptores de nivel se utilizan a me-nudo para detectar movimiento en dispositivos tales como ju-

guetes, secadores y alarmas. Los símbolospara un interruptor deslizante y para un

interruptor de presión, se muestran en la fi-gura 8.

Los interruptores se instalan en los cir-cuitos junto a una resistencia como se

Figura 7

Figura 8

Page 15: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 15/73

14 CLU B SABER ELECTRO N ICA

muestra en el diagrama de la figu-

ra 9. El valor de la resistencia no esimportante, pero a menudo se utili-

za una resistencia de 10kΩ. Cuan-

do el interruptor está “abierto”, laresistencia de 10kΩ conecta el pinde entrada del microcontrolador a

0V, lo cual da una señal de apaga-do (nivel lógico 0) al pin de entra-

da del microcontrolador.Cuando el interruptor se activa,

el pin de entrada se conecta al ter-minal positivo de la batería (V+).

Esto da una señal de encendido (nivel lógico 1) al microcontro-lador.

El interruptor puede probarse utilizando un simple progra-ma tal como el mostrado en la ta-

bla 4. Este programa encenderáo apagará una salida depen-

diendo de si el interruptor es pre-sionado o no. En este programa

las tres primeras líneas constitu-yen un bucle continuo. Mientras

la entrada esté apagada, el pro-grama seguirá reiniciándose una

y otra vez. Si la entrada está en-cendida, el programa salta a la

etiqueta llamada “flash”. Elprograma luego enciende por 2

segundos la salida 0 antes de regresaral bucle principal. Note cuidadosa-

mente la ortografía de la línea: “if...t-hen – input3” (entrada 3) es una so-

la palabra (sin espacios en blanco). Espermitido utilizar tanto pin3 como in-

put3, ambas significan lo mismo. No-te también que después del comando

then, únicamente está la etiqueta “–“

en este punto no se permite ninguna

otra palabra aparte de la etiqueta.

Para realizar la prueba del interruptor con este programa,deberá conectar el interruptor en la entrada 3 del entrenador y

en la salida deberemos conectar un led. Luego, una vez descar-gado el programa siguiendo el procedimiento que explicamos

para otros ejemplos, cada vez que presione el pulsador y lomantenga presionado, se encenderá el led conectado en la sa-

lida “0” durante 2 segundos. Recuerde que para programar el jumper de la pata 7 debe estar del lado de programación y lue-

go del lado de salida “0” para que el circuito trabaje según loprogramado.

Prueba y Uso de Fotorresistencias

¿Q ué es una fo torresistencia? Una fotorresistencia es un tipo especial de resistencia, la

cual reacciona a cambios en el nivel de luz. La resistencia dela fotorresistencia cambia a medida que varía la cantidad de

luz que incide sobre la “ventana” del dispositivo. Esto permitea los circuitos electrónicos medir cambios en el nivel de luz.

Vea en el capítulo siguiente a la explicación del funcionamien-to de los PICAXE-18 la curva de respuesta y otros datos relevan-

tes sobre las fotorresistencias.

¿Para qué se ut i l izan las fotorresistencias?

Las fotorresistencias se utilizan en las lámparas automáticas

de las rutas para encenderlas durante la noche y apagarlas du-rante el día. También se utili-

zan en muchas alarmas y ju-guetes para medir niveles de

luz.La fotorresistencia es un

sensor del tipo analógico.

Un sensor analógico mideuna señal continua tal como

luz, temperatura o posición(en vez de una señal digital

de encendido/ apagado co-mo es el caso de un interrup-

Figura 10

Figura 11

Figura 9

Tabla 4

Page 16: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 16/73

CLU B SABER ELECTRO N ICA 15

tor). El sensor analógico provee

como señal un voltaje variable.Esta señal de voltaje puede re-

presentarse mediante un número

entre el 0 al 255 (Por ejemplo:muy oscuro = 0, luz brillante =255).

Las fotorresistencias se pue-den utilizar de dos maneras. La

manera más simple de utilizaruna fotorresistencia es como un

simple interruptor de encendi-do/ apagado (digital) – cuando

el nivel de luz sube por arriba decierto valor (llamado el valor de

“umbral”), la fotorresistencia en-viará una señal de encendido;

cuando el nivel de luz está deba- jo de cierto nivel, la fotorresisten-

cia enviará una señal de apaga-do.

En este caso, la fotorresisten-cia se coloca en una configura-

ción de divisor de voltaje conuna resistencia estándar. El valor

de la resistencia estándar defineel “valor de umbral”. Para foto-

rresistencias miniatura el valoradecuado es 1kΩ, para fotorre-

sistencias más grandes del tipoORP12 una resistencia de 10kΩes más adecuada. Si se desea laresistencia fija puede reempla-

zarse por una resistencia varia-ble de manera que el valor de

umbral se pueda ajustar para di-ferentes valores del nivel de luz

(figura 10).Una manera más versátil de

utilizar la fotorresistencia es mi-diendo un cierto número de valo-

res de luz diferentes, de maneraque las decisiones se puedan to-

mar para niveles de luz cambian-

tes en vez de un solo nivel de umbral fijo. Un valor cambiantese conoce como un valor “analógico”.

Para medir valores analógicos el microcontrolador debe te-ner un convertidor analógico/ digital y además el software uti-

lizado debe ser capaz de soportar el uso de este convertidor.La mayoría de los microcontroladores sólo tienen convertidores

a-d en algunos de sus pines de entrada; por lo tanto, el pin deentrada se debe seleccionar cuidadosamente.

En el microcontrolador de 8 patas sólo uno de los

pines puede utilizarse.

El circuito electrónico que utiliza el convertidor a-d es un cir-

cuito divisor de voltaje idéntico al mostrado en la figura 10. Las“mediciones” analógicas se realizan dentro del microcontrola-

dor mismo.Para realizar una prueba, conecte la fotorresistencia, la

misma se puede probar como un interruptor digital utilizandoun simple programa tal como se ve en el diagrama de la figu-

Figura 12

Figura 13

Page 17: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 17/73

16 CLU B SABER ELECTRO N ICA

ra 11 (que también muestra el diagrama de flujo que dá origen

al programa).Este programa encenderá y apagará la “salida 0” de

acuerdo al nivel de luz.

Para probar la fotorresistencia, conéctela al entrenador dela figura 13 y siga los procedimientos que hemos utilizado pa-ra la prueba de otros componentes. La misma se puede probar

como un sensor analógico utilizando un simple programa, talcomo se ve en la figura 12.

El comando “readadc” se utiliza para leer el valor ana-lógico (un número entre 0 y 255) dentro de la variable b1. Una

vez que este número está en la variable b1, el mismo se puedeprobar para ver si es mayor que 100 ó mayor que 50. Si es

mayor que 100 la salida 4 se enciende, si está entre 50 y 100se enciende la salida 0, y si es menor de 50 ambas salidas se

apagan.De esta manera culminamos este capítulo “presentación”

de los microcontroladores PICAXE. Veamos ahora cómo traba- jar con los PICAXE-18.

Recor Recor demos:demos: El microcontrolador PICAXE es un

PIC al que se le graba un pequeño programita inter-

no (firmware) para que pueda ser programado di-

rectamente sin la necesidad de un cargador y los

programas se pueden hacer en BASIC y en otros en-

tornos muy amigables. En síntesis, tiene todas las

bondades del PIC, pero son mucho más fáciles deusar.

A modo de síntesis, por si Ud. ha comenzado la lectura por

esta sección, digamos que el microcontrolador PIC (microcon-trolador programable, figura 14) es a menudo descrito como

una “computadora en un chip”. Es un circuito integrado quecontiene memoria, unidades procesadoras y circuitos de entra-

da/ salida, en una sola unidad.Estos microcontroladores son comprados en “blanco” y lue-

go programados con un programa específico de control. Unavez programado, este microcontrolador es introducido en algún

producto para hacerlo más inteligente y fácil de usar.

A manera

de ejemplo, unhorno de mi-

croondas (figu-

ra 15) puedeutilizar un solomicrocontrola-

dor para proce-sar información

proveniente delteclado numéri-

co, mostrar in-formación para

el usuario en lapantalla y controlar los dispositivos de salida (motor de la me-

sa giratoria, luz, timbre y magnetrón).Un microcontrolador puede, a menudo, reemplazar a un

gran número de partes separadas, o incluso a un circuito elec-trónico completo. Algunas de las ventajas obtenidas con el uso

de microcontroladores en el diseño de productos son:

· A um en to en l a con f i ab i l i dad d eb ido a l m eno r núm er o de

partes.

· Reducc ión en los n ive les de ex is tenc ia ya que un micro-

cont ro lador reemplaza var ias par tes .

· S impl i f i cac ión de l ensamb la je de l p rod ucto y p ro ductos f i -

na les más pequeño s.

· G r an f l e x i b i l i dad y adap t ab i l i dad de l p r oduc t o , ya que las func iones de l p roducto es tán programadas en e l m icrocon-

t ro lador y no incorporadas en e l hardware e lec t rón ico .

· Rap idez en mod i f icac iones y desar ro l lo de l p roducto me-

d i an t e cam b ios en e l p r og r am a de l m i c r ocon tr o l ado r , y no en

e l hardware e lec t rón ico .

Algunas de las aplicaciones que utilizan microcontrolado-

res incluyen artefactos domésticos, sistemas de alarma, equipomédico, subsistemas de automóviles y equipo electrónico de

instrumentación.

Algunos automóviles modernos contienen más de treinta mi-

crocontroladores, utilizados en una amplia variedad de subsiste-mas desde el control del motor hasta el cierre a control remoto.

En la Industria, los microcontroladores son usualmente pro-

gramados utilizando programación en lenguaje C. Sin embar-go, debido a la complejidad de este lenguaje, es muy difícil,

para estudiantes muy jóvenes de bachillerato, el uso adecuadode dicho lenguaje.

Más Sobre el Sistema PICAXE

El sistema “PICAXE” es un sistema de microcontrolador fá-cil de programar que utiliza un lenguaje BASIC muy simple, el

Figura 14

Figura 15

Page 18: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 18/73

CLU B SABER ELECTRO N ICA 17

cual la mayoría de los estudiantes pueden aprender rápida-

mente. El sistema PICAXE explota las características únicas dela nueva generación de microcontroladores de bajo costo

FLASH. Estos microcontroladores pueden ser programados unay otra vez sin la necesidad de un costoso programador PIC.

El poder del sistema PICAXE radica en su sencillez. No ne-

cesita de ningún programador, borrador o complejo sistemaelectrónico.

El programa puede escribirse en BASIC o por medio de undiagrama de flujo y se carga mediante una conexión de tres ca-

bles conectada al puerto serie de la computadora.El circuito microcontrolador PICAXE utiliza únicamente tres

componentes y puede ser ensamblado en un tablero experimen-tal para componentes electrónicos (protoboard), en una placa

universal (de las que se venden en casas de electrónica) o enuna placa PCB (vea la figura 16).

EL sistema PICAXE está disponible en distintas variedades:8 pines, 18 pines y 28 pines. El controlador PICAXE-28 provee

22 pines de entrada/ salida (8 salidas digitales, 8 entradas di-gitales y 4 entradas analógicas).

El sistema PICAXE-18 provee 8 salidas y 5 entradas y el si-stema PICAXE-08 provee 5 terminales para ser usados como

entradas o salidas (con algunas restricciones).Las principales características de los microcontroladores PI-

CAXE son:

· Ba jo costo , c i r cu i to d e fác i l co nstrucc ión .

· Ha sta 8 en tr adas , 8 sa l i das y 4 cana les ana lóg i cos.

· Ráp id a ope r ac ión de desca r ga de l p r og r am a a l a m em o- r ia d e l PICA XE media nte e l cab le ser ia l .

· Sof tw are “ Ed i to r de Progra mació n” g ra tu i to y de fác i l uso .

· Lengua je BASIC s imple y fác i l de aprender .

· Ed i to r de d iagramas de f lu jo inc lu ido .

· Puede ser p rogramado, también, med iante e l so f tware

“ C r ocod i l e Techno logy ” .

· Ex tenso número d e manua les gra tu i tos y fo ro de a po yo en

l ínea.

· Tab lero exp er imenta l y tu to r ia les d ispon ib les.

· Paquete de cont ro l remoto in f ra r ro jo d ispon ib le .

· Paquete de servocont ro lador d ispon ib le .

Los PICAXEson microcontroladores cuya licencia corres-

ponde a la empresa Revolution Education. Son PICs comunes

(de la empresa Microchip) que poseen un pequeño programitainterno que los hace más fáciles de operar. De esta manera, un

PICAXE puede reemplazar a un PIC, pero un PIC no puedereemplazar a un PICAXE (dado que el PIC no tiene ese progra-

mita).

Si Ud. compra un PICAXE, verá que tiene la ma-

trícula de un PIC, sin embargo NO ES UN PIC común,

es un PIC que ha sido programado y así se ha con-

vertido en un PICAXE.

El sistema PICAXE consiste en tres componentes principa-

les:

1) El Software “Editor de Programación”: Este soft-ware debe ser ejecutado en una computadora y permite utilizar

el teclado de la PC para escribir programas en un simple len-guaje BASIC. Los programas también pueden generarse dibu-

jando diagramas de flujo. Alternativamente, el software “Cro-codile Technology” puede ser utilizado para simular circuitos

electrónicos completos, programándolos con diagramas de flu- jo. Por favor, vea el apéndice de “Crocodile Technology” para

mayor información.

2) El cable serie: Este es el cable que conecta el sistemaPICAXE a la computadora. El cable sólo necesita ser conecta-

do durante la descarga de programas. No debe ser conectadocuando el PICAXE está siendo ejecutado debido a que el pro-

grama está permanentemente almacenado en el chip PICAXE,

aun cuando la fuente de alimentación haya sido desconectada.Hay dos tipos de cables para descarga disponibles (al usar

el tablero experimental tutorial cualquiera de los dos cablespuede ser utilizado), los cuales se conectan ya sea a un conec-

tor cabecera de tres pines o a un conector hembra estéreo pe-queño (J35), figura 17.

Figura 16 Figura 17

Page 19: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 19/73

18 CLU B SABER ELECTRO N ICA

3) El chip PICAXE y el tablero electrónico: El micro-

controlador PICAXE ejecuta programas que han sido descarga-dos al mismo. Sin embargo, para operar, el chip debe ser mon-

tado en un tablero electrónico que provea una conexión al chipmicrocontrolador.

El tablero electrónico puede ser diseñado por el usuario enun circuito impreso, en una interfaz prefabricada o, para aho-

rrar tiempo y por conveniencia, utilizar el tablero electrónico tu-torial incluído. Tanto en la figura 17 como en la figura 18, se

pueden ver tableros que asumen el uso del microcontrolador PI-CAXE-18 (18 pines) montado en el tablero electrónico tutorial.

A modo de ejemplo, y antes de continuar con la descrip-ción de los microcontroladores PICAXE, damos a continuación

el procedimento que suele ser empleado para trabajar con es-te sistema:

1 . E sc r i ba e l p r og r am a en l a com pu t ado r a u t i l i zando e l

so f tware “P rogramming Ed i to r ” .

2 . C onec te e l cab le de desca r ga d esde l a com pu t ado r a a l

PICAXE.

3 . C onecte e l acumulad or e léc t rico (ba tería ) a l PICAXE.

4 . Ut i l i ce e l so f tware “Ed i to r de Programación” para des-

ca r ga r e l p r og r am a . E l cab le de d esca r ga puede se r rem ov ido

poster io rmente a la descarga.

El programa comenzará a ejecutarse en el PICAXE automá-

ticamente. Sin embargo, el programa puede ser reiniciado encualquier momento presionando el interruptor de reinicio.

Entrenador PICAXE-18

Vamos a explicar cómo se utiliza un “entrenador” para PI-

CAXE-18. Para ello, se supone que Ud. posee un tablero (pla-

ca de circuito impreso) ya montado. Si no lo tiene, no se preo-cupe, en este libro explicaremos cómo puede hacerlo Ud. mis-mo.

Hay tres tipos de tableros electrónicos de tutoriales/ proyec-tos disponibles:

1) Tablero electrónico tutorial: Este es un tablero tuto-

rial que contiene interruptores, sensores, una pantalla de sietesegmentos y conexiones para dispositivos de salida (es el table-

ro de la figura 17).

2) Tablero de Proyecto Estándar: Este es un tablerode proyecto que provee de 8 salidas (encendido / apagado ó

on/ off) digitales mediante un controlador Darlington (figura18a).

3) Tablero para Proyecto de Alta Potencia: Este es

un tablero que provee de 4 salidas digitales (mediante controla-

dores FET) y dos salidas para motores reversibles (figura 18b).

Preparando el Tablero Tutorial

Antes de usar el tablero tutorial, el mismo debe ser conec-

tado a las baterías eléctricas.La figura 19 nos muestra el enchufe hembra para caja de

baterías.Localice los cables de la caja de baterías y doble el cable

desnudo sobre el aislante en ambos cables. Coloque el cablerojo en el conector hembra marcado “V+” y el negro en el co-

nector marcado “O V”.Apriete los tornillos de manera que tanto el cable desnudo

como el aislante queden atrapados en el enchufe, esto proveeuna conexión más fuerte que simplemente prensando el cable

desnudo. Utilice siempre la caja de baterías eléctricas de 6V(se requiere de 4 pilas AA) suministrada. NO use una batería

PP3 de 9V.

El Software Gratuito para Trabajar con PICAXE

Requerimientos:Windows 95/ 98/ ME/ NT/ 2000/ XP

El software puede bajarlo de lapágina del fabricante (www.rev-ed-

.co.uk) o de nuestra web: www.we-belectronica.com.ar (con la clave pi-

caxe) y debe instalarse haciendo unclick en el ejecutable, es decir, debe

Figura 19

Figura 18b

Figura 18a

Page 20: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 20/73

CLU B SABER ELECTRO N ICA 19

instalar el software “Editor de Programación” siguiendo las ins-

trucciones en su pantalla. Si no lo tiene en su computadora, de-berá también instalar el software “Adobe Acrobat Reader”, ya

que lo necesitará para poder leer los manuales de ayuda.

Ejecutando un Programa de Muestra

El siguiente programa enciende y apaga la salida 7 cada

segundo. Cuando usted descarga este programa sobre el PICA-XE del tablero (entrenador), el punto decimal del display de sie-

te segmentos debe encenderse y apagarse cada segundo.

main:high 7

pause 1000low 7

pause 1000goto main

Este programa utiliza los comandos high y low para con-

trolar el pin de salida 7, y utiliza el comando de pause paracausar un retardo (1000 ms = 1 segundo).

El último comando, el comando goto hace que el progra-ma salte a la etiqueta main, que es el comienzo del progra-

ma. Esto significa que el programa es un bucle perpetuo (lazocerrado).

Note que la primera vez que la etiqueta es utilizada, debeestar seguida por un símbolo de dos puntos (:). Este símbolo in-

dica a la computadora que la palabra es una nueva etiqueta.A continuación explicamos, paso a paso, cómo realizar es-

te primer ejercicio de prueba:

1 . Co necte e l cab le PICAXE a un puer to ser ie de la comp u-

tadora y p res te a tenc ión a cuá l de los puer tos lo conecta (nor -

m a lm e nte C O M 1 ó C O M 2 ) .

2 . E jecute e l Sof tware “P rogramming Ed i to r ” .

3 . En e l menú desp lega b le esco ja Ver -> O pc iones para ac-

cede r a l a p an t a l la d e opc iones (ést a puede que a pa r ezca au -

tomát icamente) .

4 . Ha ga c l i ck en “ M odo ” y selecc ione PI CA X E-18

5 . Ha ga c l ick en “Puerto Ser ie ” y se lecc ione e l puer to ser ie a l cua l e l cab le P ICAXE está conectado, luego haga c l ick en

O K.

6 . Escr iba e l s igu ien te programa:

main:

high 7

pause 1000

low 7

pause 1000

goto main

(Tome en cuenta el símbolo ( : ) d irectamente después de la

e t iqueta “main” y los espac ios en t re los comandos y los núme-

ros).

7 . Asegúrese q ue e l c i r cu i to P ICA XE esté conectado a l ca -

b le ser ie y a las ba terías .

8 . Se lecc ione P ICAXE -> E jecutar . Una bar ra de descarga

de p r og r am a debe a pa r ece r m ien tr as e l p r og r am a es desca r -

gad o . A l te r m ina r la desca r ga , e l p r og r am a d ebe com enza r a

ejecutarse automát icamente. El punto decimal LED -Light Emit-

t ing Diode: Diodo Emisor de Luz- en la sa l ida 7 , deberá encen- de r se y ap aga r se una vez po r segundo .

Instrucciones para Uso en Windows

Damos, a continuación, un listado de botones correspon-dientes a la barra del menú (figura 20):

O p e n = A b r i r

S ave = G ua r da r o S a l va r

Cu t = C o r ta r

C o p y = C o p i a rPaste = Pegar

Pr int = Impr imir

Run = Ejecutar

a) Para descargar y ejecutar un programa:

1. Verifique que el cable de descarga esté conectado tan-to al PICAXE como al puerto serie de la computadora.

2. Verifique que las baterías estén conectadas al PICAXE.3. Asegúrese que el software “Programming Editor”

esté en el modo correcto (La palabra PICAXE-18 debe apareceren la barra de estado en la esquina inferior izquierda de la

pantalla).4. Haga click en Ejecutar (o en el respectivo botón de la

barra de herramientas)

b) Para salvar un programa:

1. Haga click en Archivo -> Guardar como…(ó en el res-pectivo botón de la barra de herramientas)

2. Escriba el nombre bajo el cual quiere guardar el archivo

3. Haga click en <OK>

c) Para abrir un programa guardado:

1. Haga click en Archivo -> Abrir (o en el respectivo botónde la barra de herramientas)

Figura 20

Page 21: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 21/73

20 CLU B SABER ELECTRO N ICA

2. Seleccione el archivo deseado de la lista haciendo click

en el mismo.Haga click en <OK>

d) Para iniciar un nuevo programa:1. Haga click en Archivo- Nuevo

e) Para imprimir un programa:1. Haga click en Archivo -> Imprimir… (o en el respectivo

botón de la barra de herramientas)2. Si desea que a cada línea del programa se le asigne un nú-

mero, asegúrese de marcar la casilla “Imprimir números de línea”.

3. Haga click en <OK>

Aprendiendo aHacer Programas en Basic

Utilizando el Comando Symbol

Algunas veces es difícil recordar cuáles pines están conec-

tados a cuáles dispositivos. El comando symbol puede, en es-tos casos, ser utilizado al inicio del programa para renombrar

las entradas y salidas. Note que este programa asume la cone-xión de un timbre externo al pin de salida 7. Ver tabla 5.

Recuerde que los comentarios [explicaciones posteriores alsímbolo de apóstrofe (‘)] facilitan mucho la comprensión de ca-

da línea del programa. Estos comentarios son ignorados por lacomputadora al descargar un programa al PICAXE. “Todo lo

que en una línea está después de (‘) es ignorado por

el programa”.

Las etiquetas (“main:” en el programa de la tabla 5) pue-den ser cualquier palabra (con la excepción de palabras cla-

ves como por ejemplo “switch”) pero DEBEN empezar con unaletra. Cuando la etiqueta es definida por primera vez debe lle-

var al final el símbolo de dos puntos (:). Esto indica a la com-putadora que la palabra es una nueva etiqueta.

Este programa utiliza el comando wait. Los comandos

wait y pause se utilizan para crear retardos o tiempos muer-tos. Sin embargo, el comando wait puede ser utilizado única-

mente con segundos enteros mientras que pause se puede uti-

lizar para retardos más cortos (el mismo se asigna en milésimasde segundo). Al comando wait se le pueden asignar númerosdel 1 al 65, los cuales deben escribirse después del comando.

Al comando pause se le pueden asignar números entre 1 y65535.

Es una buena técnica de programación usar tabulaciones(o espacios) al inicio de líneas sin etiquetas de manera que los

comandos estén alineados. El término “espacios en blanco” esutilizado por programadores para definir tabulaciones, espa-

cios y líneas en blanco. Dichos “espacios en blanco”, utilizadoscorrectamente, hacen al programa mucho más fácil de leer y

entender (vea las tabulaciones que hemos hecho en el progra-ma de la tabla5; en la primera columna ponemos etiquetas o

definimos variables, en la segunda columna colocamos las ins-trucciones y en la tercera columna están los comentarios que fa-

cilitan la comprensión del programa).

Nota: Algunas versiones antiguas de lenguaje BASIC utili-

zan “números de línea” en vez de etiquetas para trabajar con

los comandos goto. Desafortunadamente, este sistema puede

ser muy inconveniente ya que si el programa es modificado pos-

teriormente agregando o eliminando líneas, todos los números

de línea posteriores deben ser modificados. El sistema de etique-

tas, utilizado en la mayor parte de las versiones modernas de

lenguaje BASIC, supera este problema automáticamente.El “cerebro” del sistema PICAXE es el microcontrolador de

18 pines PIC16F627. Este PIC posee un programa que ha sidograbado para convertirlo en un elemento del sistema PICAXE

(se llama PICAXE-18).Aunque los microcontroladores son relativamente baratos

(algunos microcontroladores cuestan menos de 2 dólares), losmismos son dispositivos muy complejos que contienen miles de

transistores, resistencias y otros componentes electrónicos.El microcontrolador PICAXE almacena sus programas (firm-

ware) en su memoria FLASH “no volá-til”. La ventaja de esta memoria es que

no pierde el programa descargadocuando la fuente de alimentación (ba-terías) es desconectada del circuito

(cuando las baterías son reconectadasel programa se inicia nuevamente). Sin

embargo, cuando desee reprogramarel PICAXE, puede descargar un nuevo

programa; esta acción borra el viejoprograma almacenado en la memoria

y almacena el nuevo programa en lamemoria de programa. La memoria só-

lo permite el almacenamiento de unprograma a la vez.

TABLA 5

symbol dp = 7 ‘renombrar salida 7 “dp” (punto deci-mal)symbol buzzer = 1 ‘renombrar salida 1 “buzzer” (timbre)

main: ‘hacer una etiqueta llamada “main”high dp ‘LED encendidolow buzzer ‘timbre apagadowait 1 ‘ esperar un segundolow dp ‘ LED apagadohigh buzze ‘ timbre encendido

wait 1 ‘esperar 1 segundogoto main ‘regresar al inicio (“main”)

Page 22: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 22/73

CLU B SABER ELECTRO N ICA 21

Tome en cuenta que no es po-

sible sacar el programa fuera de

la memoria del PICAXE para

“leerlo”; por ende, si desea guar-

dar el código de un programa pa-ra utilizarlo posteriormente debe

guardarlo en su computadora an-

tes de descargarlo al PICAXE. Esto

es una restricción que el operador

debe tener en cuenta, dado que

en un PIC sí es posible leer el pro-

grama grabado en la memoria.

El microcontrolador contiene además de la memoria ROM(Read Only Memory - Memoria de sólo lectura), memoria tem-

poral RAM (Random Access Memory - Memoria de AccesoAleatorio).

La memoria RAM es una memoria “temporal” utilizada pa-ra almacenar información mientras el programa es ejecutado.

La misma es utilizada normalmente para almacenar respuestasde sumas matemáticas que el microcontrolador hace mientras

está trabajando. Esta memoria es “volátil”, lo cual significa quetan pronto las baterías son desconectadas, la información al-

macenada en la misma se pierde.Hay 14 bytes de memoria temporal disponibles y los mis-

mos son denominados desde b0 a b13 dentro de los progra-mas.

El Circuito del “Entrenador” PICAXE-18

La figura 21 muestra el circuito básico PICAXE-18. El resis-tor de 4k7 (4700Ω), conectado en el pin 4, se usa como resis-

tencia de “pull-up” para quitar al microdel estado de reset. Si desea colocar

un sistema de reset, debe conectar uninterruptor o pulsador entre el pin 4 y

masa (tierra, gnd) de modo que al serpresionado se produzca el estado de

reset del micro.

¡Tome en cuenta que el mi-

crocontrolador PICAXE no es un

microcontrolador en blanco... ya

tiene un programa interno para

que pueda ser usado con el uti-

litario Programming Editor!

El microcontrolador PICAXE estápreprogramado con un firmware de

carga que permite la descarga directade programas con el cable suministra-

do de sólo tres terminales. Los microcontroladores PIC comunesno tienen este programa y por ende no pueden ser programa-

dos mediante el sistema PICAXE.El microcontrolador PICAXE-18A es casi idéntico al micro-

controlador PICAXE-18 estándar, pero es ligeramente más cos-

toso ya que tiene el doble de capacidad de memoria (aproxi-madamente 80 líneas de programación BASIC en vez de 40) y

salidas analógicas de alta resolución (en vez de baja resolu-ción).

El sistema PICAXE utiliza una interfaz al puerto serie de lacomputadora muy simple (es un cable de tres hilos). Aunque es-

ta interfaz no utiliza verdaderos voltajes RS232, es de muy ba- jo costo y ha tenido un desempeño confiable en casi todas las

computadoras modernas. Vea en la figura 22 cómo se conectaeste cable en la placa del entrenador.

Es altamente recomendable utilizar esta interfaz, ya que ca-da vez que quiera programar el chip no debe quitarlo de la

placa de circuito impreso, sólo debe conectar el cable entre laplaca y la computadora, ejecutar el programa “Editor Progra-

mming” y hacer la descarga correspondiente... ¡así de simple!Nota: La mayor parte de las computadoras modernas tie-

nen dos puertos serie, normalmente denominados COM1 yCOM2. El software “Editor de Programación (Programming

TABLA 6

symbol counter = b0 ‘definir la variable “counter” como b0symbol dp = 7 ‘asignar al pin 7 con el “dp”

main: for counter = 1 to 15 ‘iniciar un bucle for.....nexthigh dp ‘encender pin 7pause 500 ‘esperar 0,5 segundosnext counter ‘siguiente counter (b0)end ‘fin del programa

Figura 21

Page 23: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 23/73

22 CLU B SABER ELECTRO N ICA

Editor)” debe ser configurado con el puer-

to al cual el microcontrolador está conec-tado. Para ello, en el menú desplegable

seleccione Ver -> Opciones -> Puerto

Serie, para elegir el puerto serie corres-pondiente en su computadora.

Si ya compró un cable de sistema PI-

CAXE armado y utiliza una computadoraque posee el antiguo conectador de puer-

to serie de 25 pines, utilice un adaptador9-25 para poder conectar el cable PICAXE

de 9 pines. Estos adaptadores pueden sercomprados en cualquier tienda (casa) es-

pecializada en computadoras. Pero también, Ud. puede armarel cable siguiendo las instrucciones que le daremos oportuna-

mente.

Utilizando Bucles For…Next

Con frecuencia, es útil repetir una parte de un programa

varias veces, por ejemplo al encender/ apagar sucesivamenteun diodo LED (Light Emitting Diode, Diodo emisor de luz). En es-

tos casos un bucle for…next puede ser utilizado.El programa de la tabla 6 enciende y apaga 15 veces el

diodo LED conectado al pin de sa-lida 7. El número de veces que el

código debe ser repetido es alma-cenado usando la variable b0 (el

PICAXE tiene 14 variables de 1byte para uso general, nombra-

das de b0 a b13 en la memoriaRAM del chip PICAXE). Estas va-

riables pueden ser renombradasusando el comando symbol con

el fin de hacerlas más fácil de re-cordar.

Note nuevamente cómo los es-

pacios en blanco han sido utiliza-

dos para mostrar claramente to-dos los comandos contenidos en-tre los comandos for y next.

Controlando la

Velocidad de un Motor

Debido a que el sistema PICA-

XE opera muy rápidamente, es po-sible controlar la velocidad de mo-

tores, encendiéndolos y apagán-dolos muy rápidamente. Este tipo

Figura 23

TABLA 7

symbol mark1 =b6 ‘renombrar variablessymbol space1 =b7symbol mark2 =b8symbol space2 =b9

let mark1 =2 ‘precargar mark1/ space1 con relación de 2:10 (1:5)let space1 =10

let mark2 =20 ‘precargar mark2/ space2 con relación de 20:10 (2:1)let space2 =10

main:

for b2 =1 to 200 ‘iniciar un bucle for...nexthigh 0 ‘encender motorpause mark1 ‘esperar tiempo indicado por mark1low 0 ‘apagar motorpause space1 ‘esperar tiempo indicado por space1next b2 ‘siguiente b2pause 2000 ‘detener motor por 2 segundosfor b2 =1 to 200 ‘iniciar un bucle for.....nexthigh 0 ‘encender motorpause mark2 ‘esperar tiempo indicado por mark2low 0 ‘apagar motorpause space 2 ‘esperar tiempo indicado por space1next b2 ‘siguiente b2

pause 2000 ‘detener motor por 2 segundosgoto main

Figura 22

Page 24: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 24/73

CLU B SABER ELECTRO N ICA 23

de control se conoce como PWM (Pulse

Width Modulation, Modulación por an-cho del impulso). La PWM es una buena

técnica de control ya que permite a los

motores operar a bajas velocidades man-teniendo un alto torque (fuerza de giro).La PWM es utilizada frecuentemente en

muchas aplicaciones, por ejemplo, paracontrolar la velocidad de taladros y des-

tornilladores eléctricos. Para que la PWM funcione correcta-mente, se necesitan motores de alta calidad. Los programas

aquí mostrados están diseñados para motores “solares” y pue-de que no funcionen correctamente si se utilizan motores de ju-

guete baratos. Para la conexión del motor en nuestro entrena-dor, vea la figura 23.

El programa se muestra en la tabla 7.Intente seguir el programa para ver si puede comprender-

lo; si no lo logra.... no se preocupe, recién estamos empezan-do.

Uso de Timbres y Zumbadores Electrónicos en el

Sistema PICAXE

Los timbres emiten un sonido cuando están conectados a

una fuente de alimentación.Este sonido, usualmente, está “fijo” a una frecuencia deter-

minada; así, los timbres pueden emitir un solo “tono”. Los zum-badores electrónicos usan un tipo de sistema y pueden ser utili-

zados para emitir sonidos en diferentes tonos al proveerlos conuna salida de diferentes frecuencias.

El sistema PICAXE puede crear automáticamente sonidosde diferentes frecuencias utilizando el comando sound (ver ta-

bla 8).Para probar este programa se debe instalar un zumbador

electrónico en el tablero tutorial (entrenador). Para hacer esto,ubique los conectores del zumbador, marcados con la palabra

PIEZO (figuras 24 y 25). Luego suelde el cable ro- jo al agujero marcado “+” y el cable negro al agu-

jero marcado “-”.En el programa, el primer número indica el nú-

mero de pin (en el tablero tutorial el pin de salida6 es utilizado). El siguiente número es el tono, se-

guido por la duración del sonido (longitud). Mien-

tras más alto sea el número de tono, mayor será la“altura tonal” del sonido (frecuencia, note que al-

gunos zumbadores no pueden producir tonos muyaltos y por lo tanto números de tono mayores de

127 puede que no sean escuchados).El siguiente programa que vemos en la tabla 9

utiliza un bucle for…next para producir 120 soni-dos diferentes. El número almacenado en la varia-

ble b0 aumenta 1

unidad en cadabucle (1-2-3, etc.).

Por consiguiente,al utilizar la varia-

ble b0 para asig-nar el tono, el mis-

mo puede sercambiado en ca-

da bucle.

En la tabla 10se ve el programaque realiza la mis-

ma función pero cambiando el tono en orden descendente, esdecir de 120 a 1.

En la tabla 11 vemos el programa que emite todos los 256sonidos posibles.

En este último caso el programa es ejecutado indefinida-mente. Sin embargo, es importante comprender cómo el PICA-

XE ejecuta las operaciones matemáticas.

TABLA 8

main:sound 6, (50,100) ‘emitir un sonido en salida 6 con frecuencia 50 y longitud 100

sound 6, (100,100) ‘emitir un sonido en salida 6sound 6, (120,100) ‘emitir un sonido en salida 6pause 1000 ‘esperar 1 segundogoto main ‘saltar al inicio del programa (main)

Figura 24

Figura 25

TABLA 9

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 10

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 50next b0 ‘siguiente b0

end

Page 25: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 25/73

24 CLU B SABER ELECTRO N ICA

El PICAXE sólo interpreta números en “byte”, o sea núme-

ros enteros del 0 al 255. No puede interpretar fracciones, ni

números negativos, ni números mayores de 255. Así, si se tra-

ta de sumar 1 a 255, el PICAXE saltará de nuevo a 0. Por con-siguiente, en el programa anterior, el valor de la variable b0 se

comportará de la siguiente manera mientras el programa se

ejecuta: …252-253-254-255-0-1-2- etc.

Uso de Entradas con Sensores Digitales

Un sensor digital es un simple sensor del tipo “interruptor”que sólo puede estar en dos posiciones: encendido ó apagado.

Algunos ejemplos de sensores digitales comunes son:

· m icro in ter rup tores

· in te r rup tores de botón de pres ión e in te r rup-

tores osci lantes · interruptores de lengüeta

El tablero del entrenador propuesto tiene dos

interruptores de botón de presión conectados a lasentradas 6 y 7 (figura 26). Adicionalmente se pue-

den conectar otros dos interruptores a las entradas0 y 1.

En la tabla 12 vemos el programa que indicaal PICAXE cómo reaccionar cuando los interrupto-

res de botón de presión son presionados. En elprograma el pin de salida 7 se ilumina cada vez

que el interruptor de botón de la entrada 6 es pre-sionado.

En este programa las tres primeras líneas for-man un bucle continuo. Si la entrada está apaga-

da el programa se reiniciará una y otra vez.Una vez que el interruptor es presionado, el

programa salta a la etiqueta llamada “flash”. Elprograma luego activa la “salida 7” por dos se-

gundos antes de regresar nuevamente a “main”.Note cuidadosamente la ortografía en la línea

del comando if…then – entrada6 (input6) es una

sola palabra (sin espacios en blanco). Note tam-

bién que únicamente se debe escribir la etiquetaposterior al comando then – no se permite ningu-na otra palabra aparte de la etiqueta.

Uso de Entradas conSensores Analógicos

Los sensores analógicos miden señales conti-nuas tales como luz, temperatura o posición.

El sensor analógico provee una señal que con-siste en un voltaje variable (figura 27). Este volta-

je puede luego ser representado con un númerodel 0 al 255 (Por ejemplo muy oscuro = 0, luz muy

TABLA 13

main: ‘hacer etiqueta llamada “main”readadc 2,b0 ‘leer señal de canal 2 en variables b0if b0 >120 then stop ‘si b0 >120 ir a “stop”if b0 <70 the bot ‘si b0 <70 ir a “bot”

low 1 ‘sino apagar 1low 2 ‘y apagar 2goto main ‘ir a “main”

top: ‘hacer una etiqueta llamada “top”high 1 ‘encender 1low 2 ‘apagar 2goto main ‘ir a “main”

bot: ‘hacer una etiqueta llamado “bot”high 2 ‘encender 2low 1 ‘apagar 1

goto main ‘ir a “main”

TABLA 11

main:sound 6, (b0, 50) ‘emitir sonido en salida 6let b0 =b0 +1 ‘sumar 1 al valor de la variable b0goto main ‘ir a inicio del programa (main)

TABLA 12main: ‘hacer etiqueta llamada “main”

if input6 is on then flash ‘si la entrada 6 (Input 6) está encendida ir‘a “flash” sino ir a “main”

goto mainflash: ‘hacer etiqueta llamada “flash”

high 7 ‘encender salida 7 (output 7)pause 2000 ‘esperar 2 segundoslow 7 ‘apagar salida7goto main ‘ir a “main”

Figura 26

Page 26: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 26/73

CLU B SABER ELECTRO N ICA 25

brillante = 255). Ejemplos típicos de sensores analógicos son:

· Fotorresistencias ó LDRs (Light Dependent Resistors - Resis-

tenc ias var iab les con la luz ) .

· Termistores

· Resistencias var iables (potenciómetros)

El tablero tutorial (entrenador) posee una fotorresistenciamontada en el mismo, la cual está conectada a la entrada 2 (in-

put2).La fotorresistencia es un compo-

nente cuya resistencia cambia al va-riar la intensidad de luz que incide so-

bre la misma, es decir, su resistenciacambia según el nivel de luz.

Bajo luz brillante su resistencia esbaja (típicamente alrededor de 1kΩ)

mientras que en la oscuridad, su resis-tencia es muy alta (típicamente alrede-

dor de 1MΩ).En la figura 28 se muestra el sím-

bolo y la curva típica de resistenciacontra intensidad de luz para la foto-

rresistencia. La fotorresistencia estáconectada a la entrada 2 en configu-

ración de divisor de voltaje. Tal como se muestra en la figura29.

Cómo se Leen las Entradas Analógicas

El valor de una entrada analógica puede ser fácilmente co-piado dentro de una variable utilizando el comando readadc.

Luego, se puede probar el valor de la variable (0 a 160). Elprograma de la tabla 13 enciende un diodo LED si el valor es

mayor que 120 y otro diodo LED, si el valor es menor de 70.Si el valor está entre 70 y 120, ambos diodos LED permanecen

apagados.Note que el microcontrolador PICAXE-18 tiene tres canales

o entradas analógicas nombradas del0 al 2. En el tablero de nuestro entre-

nador la fotorresistencia está conecta-da permanentemente al pin 2, pero los

otros dos canales (0 y 1)

están libres para conec-tar otros sensores.

Frecuentemente, alutilizar sensores análo-

gos es necesario calcularel valor de “umbral” ne-

cesario para el progra-ma (esto es, los valores

70 y 120 en el programa anterior). El comando debug permi-

te ver fácilmente el valor en “tiempo real” de un sensor, permi-

tiendo calcular el valor umbral experimentalmente.Al ejecutar el programa de la tabla 14 aparecerá una ven-

tana de depuración (debug) en la pantalla de la computadora,

indicando el valor de la variable b0. A medida que el sensores probado con la variable, la ventana va indicando la lectura

actual del sensor.

Programación por Organigramas

o Diagramas de Flujo

Los diagramas de flujo u organigramas son herramientas

muy útiles que permiten representar programas gráficamente,para hacerlos más fáciles de entender. El software “Program-ming Editor” incluye un editor de organigramas que permite di-

bujar los mismos en la pantalla de la computadora. Estos orga-

TABLA 14

main: ‘hacer etiqueta llamada “main”

readadc 2,b0 ‘leer señal de canal 2 en variable b0

debug b0 ‘transmitir valor a la pantalla del ordenador

pause 100 ‘pausa corta

goto main ‘ir a “main”

Figura 28

Figura 29

Figura 27

Page 27: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 27/73

26 CLU B SABER ELECTRO N ICA

nigramas pueden luego ser convertidos en código BASIC para

descargarlos en el PICAXE. Los organigramas pueden tambiénser impresos o exportados (enviados) como figuras para incluir-

los en reportes de proyectos.

A continuación damos las instrucciones detalladas para laconstrucción de organigaramas:

1. Conecte e l cab le P ICAXE a uno de los puer tos ser ie de

la computadora . Recuerde tomar no ta de l puer to ser ie a l cua l

c o n ec ta e l c a b l e (n o r m a lm e n te C O M 1 ó C O M 2 ) .

2 . In ic ie e l so f tware “Ed i to r de Programación”

3 . En e l menú desp lega b le se lecc ione Ver -> O pc iones pa -

r a accede r a l a pa n ta l l a de o pc iones (ést a puede que a pa r ez -

ca au tomát icamente) .

4 . H aga c l i ck en la l engüe ta “ M odo ” y se lecc io -

ne PICAXE-18.

5 . Ha ga c l ick en la lengüeta “ Puer to Ser ie ” y se-

lecc ione e l puer to ser ie a l cua l ha conectado e l ca-

b l e PICA X E. Ha ga c l ic k en “ O K ”

6 . C r ee un nuevo o r gan ig r am a hac iendo c l i c k

en e l m enú A r ch i vo -> N uevo O r gan ig r am a .

7 . D ibu je e l o r gan ig r am a m os tr ado a ba jo a r r as-

t rando los b loques requer idos a la panta l la y luego u t i l i zando e l ra tón para d ibu ja r las f lechas para co-

nectar los b loq ues.

8 . Cuando t e r m ine de d i bu ja r e l o r gan ig r am a ,

puede conver t i r lo en un programa BASIC se lecc io -

nando e l m enú O r gan ig r am a - > Conve r ti r O r gan i -

g r am a a B A S I C . Luego e l p r og r am a B A S I C puede

ser descargado a l P ICAXE de la manera usua l .

9 . Para impr imi r o sa lvar e l o rgan igrama, use e l

m enú de A r ch i vo . Pa r a exp o r ta r e l o r gan ig r am a co -

mo una f igura , u t i l i ce e l menú Arch ivo -> Expor ta r .

Pa r a expo r ta r l a im ag en a un docum en to de W or d

se lecc ione e l a rch ivo t ipo EM F. Para exp or ta r e l o r - gan ig r am a a una pág ina web use e l a r ch i vo t i po

G IF.

El Editor de Organigramas permite dibujar y si-mular organigramas en la pantalla. El organigrama

puede luego ser convertido automáticamente en unprograma BASIC para ser descargado en el micro-

controlador (vea la figura 30).

Los comandos de la pantalla de Editor de Orga-

nigramas son los siguientes (figura 31):

Select = Seleccionar

Z o o m = Z o o m

Z o o m In / O u t = A c e rc a r / A l e j a r

P an = M ove r

Line = Línea

Ed i t ba r = ba r r a ed i to r a

Seleccionar

Utilice este comando para seleccionar y moverbloques. Cuando un sólo bloque es seleccionado, su

código BASIC puede ser editado en la barra editoraen la parte inferior de la ventana.

Figura 31

Figura 30

Page 28: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 28/73

CLU B SABER ELECTRO N ICA 27

Zoom

Utilice para acercar una parte del diagrama. Use el click

derecho para alejar.

Acercar/ AlejarPara acercar haga click y mueva el ratón hacia arriba. Pa-

ra alejar haga click y mueva el ratón hacia abajo.

MoverUtilice este comando para mover el organigrama completo

alrededor de la pantalla.

LíneaUtilice este comando para dibujar líneas entre los bloques.

Se pueden hacer quiebres en las líneas haciendo click una vez.Cuando la línea está cerca de un bloque, ésta se pegará al

punto de conexión del mismo.

EtiquetaUtilice este comando para añadirle etiquetas o títulos a los

elementos del organigrama.

Out / If / Delay / Sub / OtherHaga click en estos botones para ir al submenú de estos co-

mandos y seleccionar el comando deseado.

Dibujando Organigramas

Para dibujar un organigrama haga click en uno de los bo-

tones de menúes de comandos (Salida/ Si/ Retardo/ Sub/ Otro)de la barra de herramientas para ir al submenú de comandos

requerido. Seleccione el comando deseado y luego haga clicken la pantalla, en el lugar donde desea situar al comando. No

trate de colocar el bloque exactamente en posición en primerainstancia – póngalo en la pantalla en las cercanías del área

donde desea ubicarlo y luego use el comando Seleccionar pa-

ra mover el bloque a la posició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 apare-

cerá en la barra editora en la parte inferior de la pantalla. Edi-te el código si lo requiere y luego presione el botón de tic pa-ra salvar los cambios. Para información adicional acerca de

cada comando vea los archivos de ayuda “Comandos BA-SIC”. Note que algunos comandos únicos (por ejemplo servo

para el PICAXE28) sólo aparecerán cuando el software esté enel modo apropiado (menú Ver -> Opciones).

Uniendo Bloques

Para unir bloques, debe acercarlos uno al otro hasta quese junten. Alternativamente, se pueden dibujar líneas entre los

mismos usando el comando línea en la barra de herramientas.Note que sólo es posible unir la parte inferior de un bloque úni-

camente con la parte superior de otro. Además, sólo se permi-te sacar una línea de la parte inferior de conexión de cada blo-

que. Para hacer diagramas ordenados, se pueden agregarquiebres a las líneas haciendo click en las mismas. Cuando una

línea es movida cerca de un punto de conexión, la misma sepegará a éste; para terminar la línea, haga click una vez más

y la misma quedará en posición.Las líneas no pueden ser movidas. Si trata de mover una lí-

nea la misma será borrada y tendrá que crear una nueva línea.

Simulación de Pantalla

Para simular el organigrama, haga click en “Simular” en el

menú Organigrama. El programa comenzará a ejecutarse enpantalla (figura 32). Mientras el programa se ejecuta, los blo-

ques cuyos comandos están siendo ejecutados se irán resaltan-do en rojo. Las ventanas de “Entradas/ Salidas” y “Variables”

también aparecerán mientras se ejecuta la simulación. Paracambiar los valores de las entradas, haga click en el respecti-

vo interruptor en pantalla o utilice la barra deslizadora de en-tradas analógicas. El tiempo de retardo entre un objeto y otro

puede ser ajustado en las Opciones del Organigrama (menúVer -> Opciones -> Organigrama).

Note que algunos comandos representan acciones que no

pueden ser simuladas en pantalla. En estos casos el comandoes simplemente ignorado al ejecutar el organigrama.

Convirtiendo Organigramas

Los organigramas no son descargados directamente al mi-crocontrolador. Primero el organigrama es convertido en un

Figura 32

Page 29: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 29/73

28 CLU B SABER ELECTRO N ICA

programa BASIC, el cual luego es descargado. Para convertirun organigrama seleccione “Convertir” en el menú Organigra-

ma y será creado el programa BASIC del organigrama.Aquellos bloques que no estén conectados a los bloques

“inicio” ó “sub” en el organigrama, serán ignorados al momen-to de hacer la conversión. La conversión se detendrá si se en-

cuentra un bloque no conectado; por lo tanto, utilice siempre unbloque “detener” para terminar el diagrama antes de iniciar

una simulación o de convertir el diagrama.Note que es posible convertir y descargar un organigrama

presionando dos veces la tecla F5.

Utilizando Símbolos

Las Ent radas, Sa l idas y Var iab les pueden ser renombradas

utilizando la “Tabla de Símbolos” del menú Organigrama.Cuando un símbolo es renombrado, el nuevo nombre aparece-

rá en los menúes desplegables en la barra editora. No debenutilizarse nombres de comandos (por ejemplo switch o sound)

como símbolos, ya que esto puede generar errores en el pro-grama BASIC convertido.

Guardando e Imprimiendo Organigramas

Los organigramas pueden ser guardados, impresos y ex-

portados como figuras (para ser insertados en documentos deprocesadores de palabras) utilizando el menú Archivo. Los or-

ganigramas también pueden ser copiados al portapapeles deWindows (para pegarlos luego a otras aplicaciones) mediante

el menú Editar.

Sistemas de Números

Los microcontroladores operan usando un gran número decomandos en un espacio de tiempo muy corto y procesando se-

TABLA 15

main:

let pins =%00111111 ‘dígito 0pause 250 ‘esperar 0,25 segundoslet pins =%00000110 ‘dígito 1pause 250 ‘esperar 0,25 segundoslet pins =%01011011 ‘dígito 2pause 250 ‘esperar 0,25 segundoslet pins =%01001111 ‘dígito 3pause 250 ‘esperar 0,25 segundoslet pins =%01100110 ‘dígito 4pause 250 ‘esperar 0,25 segundoslet pins =%01101101 ‘dígito 5pause 250 ‘esperar 0,25 segundoslet pins =%01111101 ‘dígito 6pause 250 ‘esperar 0,25 segundoslet pins =%00000111 ‘dígito 7pause 250 ‘esperar 0,25 segundoslet pins =%01111111 ‘dígito 8pause 250 ‘esperar 0,25 segundoslet pins =%01101111 ‘dígito 9pause 250 ‘esperar 0,25 segundosgoto main

TABLA 16

main: readadc 2,b1 ‘leer señal analógica de‘canal 2 en variable b1

if b1 >150 then show9 ‘probar variable b1 y‘saltar al respectivo

comandoif b1 >130 then show8if b1 >110 then show7if b1 >90 then show6if b1 >70 then show5if b1 >50 then show4if b1 >30 then show3if b1 >20 then show2if b1 >10 then show1

show0:

let pins =%00111111 ‘dígito 0goto main

show1:let pins =%00000110 ‘dígito 1goto main

show2:let pins =%01011011 ‘dígito 2goto main

show3:let pins =%01001111 ‘dígito 3goto main

show4:let pins =%01100110 ‘dígito 4goto main

show5:let pins =%01101101 ‘dígito 5goto main

show6:let pins =%01111101 ‘dígito 6goto main

show7:let pins =%00000111 ‘dígito 7goto main

show8:let pins =%01111111 ‘dígito 8

goto mainshow9:

let pins =%01101111 ‘dígito 9goto main

Page 30: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 30/73

CLU B SABER ELECTRO N ICA 29

ñales electrónicas. Estas señales están codificadas en sistema

binario; la señal puede ser high (1) o low (0).El sistema numérico utilizado diariamente es el sistema de-

cimal. Este sistema numérico utiliza diez dígitos (del 0 al 9) pa-

ra explicar qué tan grande o pequeño es el número. Sin embar-go, al trabajar con microcontroladores muchas veces es más fá-cil trabajar en código binario, especialmente al tratar de con-

trolar múltiples salidas al mismo tiempo. Un sólo dígito binarioes conocido como un “bit” (binary digit – dígito binario). El sis-

tema PICAXE utiliza 8 bits (1 byte) por cada palabra de datos,teniendo al dígito menos significativo en el extremo derecho y

al dígito más significativo en el extremo izquierdo. Por consi-guiente, el número binario %11001000 pone a los bits 7,6,3

en high (1) y al resto en low (0). El símbolo % indica a la com-putadora que está trabajando en sistema binario y no en deci-

mal.La utilización del código binario permite controlar las ocho

salidas al mismo tiempo, en vez de sólo utilizar los comandoshigh y low. El programa que vemos en la tabla 15 demuestra

cómo hacer que la pantalla de siete barras del tablero tutorialcuente del 0 al 9.

Cada línea “let pins =” cambia el número de barras encen-didas en la pantalla de siete segmentos. Esto es mucho más rá-

pido que utilizar, muchísimas veces, los comandos high y lowpara hacer lo mismo.

Visualizando Cifras Analógicas en elDisplay de 7 Segmentos

El programa de la tabla 16 “lee” la cantidad de luz detec-

tada por la fotorresistencia en la entrada 2 y luego visualizauna cifra asignada a dicha cantidad de luz en la pantalla de

siete segmentos.

Controlando Motores Paso a Paso

Los motores paso a paso son motores de alta precisión co-

múnmente utilizados en unidades de disco, impresoras, plottersy relojes de computadoras. A diferencia de los motores de CC,

Figura 34

Figura 33

TABLA 17

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 01 1 0 1 0

Figura 35

Page 31: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 31/73

30 CLU B SABER ELECTRO N ICA

los cuales giran libremente al aplicarles potencia, los motores

paso a paso requieren que su fuente de alimentación sea con-tinuamente “impulsada” en cuatro patrones diferentes. Por ca-

da impulso, el motor se mueve un “paso”, típicamente 7.5° (re-

quiriendo por lo tanto 48 pasos para una revolución completa),figura 33.

Los motores paso a paso tienen algunas limitaciones. Prime-

ro, el consumo de potencia es mayor cuando el motor está de-tenido (debido a que todas las bobinas requieren estar energi-

zadas). Segundo, la velocidad de operación está limitada a

aproximadamente 100 “pasos” por segundo, lo cual equivalea 2 revoluciones por segundo ó 120 RPM.

El motor paso a paso contiene una

serie de electroimanes fijos a la armadu-ra central y cuatro bobinas ubicadas al-

rededor de la carcasa del motor. Cuan-do pasa corriente eléctrica por estas bo-

binas, las mismas generan un campomagnético el cual atrae o repele a los

electroimanes permanentes en la arma-dura, provocando que la armadura gire

un “paso” hasta que los campos magné-ticos estén alineados.

Luego, las bobinas son energizadascon un patrón diferente para crear un

campo magnético diferente y provocarque la armadura gire otro “paso”, figura

34.Para hacer que la armadura gire

continuamente, las cuatro bobinas inter-nas del motor paso a paso deben ser en-

cendidas y apagadas continuamente encierto orden. El chip controlador UL-

N2003A del tablero tutorial (nuestro en-trenador) provee el método necesario

para interrelacionar a estas cuatro bobi-nas (figura 35).

El motor paso a paso debe ser co-nectado a los agujeros en el tablero tuto-

rial de la siguiente manera:

C a b le N e g ro : 2 +

C a b l e Bl a nc o : 3 +

Cab le A m ar i l l o : 0 –

Cab le Ro jo : 1 –

C a b l e N a r a n j a : 2 –

C a b l e M a r r ó n : 3 –

La tabla 17 muestra los cuatro “pa-sos” distintos requeridos para hacer gi-

rar el motor. Para hacer girar al motoren dirección contraria, los pasos deben

ser invertidos (4-3-2-1-4-etc. en vez de 1-2-3-4-1-etc.)

Nota: La configuración del alam-

brado de los motores paso a paso pue-de variar según el fabricante. Por lo tan-

TABLA 19

symbol dp = 7 ‘renombrar salida7 “dp”symbol buzzer = 6 ‘renombrar salida6 “buzzer”symbol counter = b0 ‘definir a la variable “counter” como b0

main: ‘hacer etiqueta llamada “main”gosub flash ‘ir al sub-procedimiento “flash”gosub noise ‘ir al sub-procedimiento “noise”goto main ‘ir a “main”end ‘fin del programa principal

flash ‘hacer un sub-procedimiento llamado “flash”

for counter = 1 to 25 ‘iniciar un bucle for....nexthigh dp ‘encender diodo LEDpause 50 ‘esperar 0,05 segundoslow dp ‘apagar diodo LEDpause 50 ‘esperar 0,05 segundosnext counter ‘siguiente counter (b0)return ‘retornar del sub-procedimiento

noise: ‘hacer un sub-procedimiento llamado “noisehigh buzzer ‘encender timbrepause 2000 ‘esperar 2 segundoslow buzzer ‘apagar timbre

return ‘retornar del sub-procedimiento

TABLA 18

symbol delay =b0 ‘definir variable

let delay =100 ‘fijar el retardo (delay) en 0,1 segundos

main: let pins =%00001010 ‘primer paso

pause delay ‘pausa de 0,1 segundos (valor asignado al retardo)

let pins =%00001001 ‘siguiente paso

pause delay ‘pausa de 0,1 seg.

let pins =%00000101 ‘siguiente paso

pause delay ‘pausa de 0,1 seg.

let pins =%00000110 ‘siguiente paso

pause delay ‘pausa de 0,1 seg.

goto main ‘ir a “main (bucle perpetuo)

Page 32: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 32/73

CLU B SABER ELECTRO N ICA 31

to, puede que sea necesario reorganizar las conexiones de las

bobinas para que la secuencia mostrada arriba opere correc-tamente. Un arreglo incorrecto de las bobinas puede causar

que el motor vibre en una dirección y otra, en vez de girar con-

tinuamente. La mayoría de los motores paso a paso están dise-

ñados para trabajar con 12V, pero generalmente pueden tra-

bajar sin problemas (aunque con un torque reducido) con 6V.El siguiente programa también puede utilizar un número bi-

nario para encender y apagar todas las líneas de salida al mis-

mo tiempo. La siguiente tabla muestra el número binario de sa-lida para cada paso:

Paso Salida

binaria

1 %00001010

2 %00001001

3 %00000101

4 %00000110

1 %00001010

Intente cambiar

la velocidad de giro

alterando el valor

del retardo (delay)

en el programa que

vemos en la tabla18.

Figura 36

Fig. 37

Page 33: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 33/73

32 CLU B SABER ELECTRO N ICA

Subrutinas

Una subrutina es un sub-procedimiento o “mini-programa”separado, el cual puede ser llamado desde el programa princi-

pal. Una vez que se ejecuta la subrutina, el

programa principal continúa. Las subrutinasson frecuentemente utilizadas para separar elprograma principal en pequeñas secciones,

para hacerlo más fácil de comprender las su-brutinas que realizan tareas comunes, tam-

bién pueden ser copiadas de programa aprograma para ahorrar tiempo.

El programa de la tabla 19de la páginaanterior utiliza dos subrutinas para separar

las dos secciones principales del programa(“flash” y “noise”).

El programa que podemos ver en la tabla

20, muestra como una variable puede ser uti-lizada para transferir información hacia unasubrutina. En este caso, la variable b2 es uti-

lizada para indicar al controlador que debeejecutar la subrutina flash, primero cinco y

luego quince veces.

El Circuito del Entrenador

En este capítulo hemos mencionado queprecisamos un entrenador para corroborar

los diferentes conceptos que presentamos. Di-

jimos que hay varios circuitos (de hecho

mencionamos tres). La empresa Revolu-tion Education ofrece cada uno de estos

circuitos en forma de kits; sin embargo,

Ud. puede armar su propio entrenador.En la figura 36 se brinda el circuito

de un entrenador para que Ud. realice

sus propias experiencias.El entrenador incluye un circuito inte-

grado ULN2803A para que pueda ma-nejar pequeños motores, pero no se ha

incluido la fotorresistencia y el displayde 7 segmentos; sin embargo, no tendrá

problemas en conectarlos si sigue las ins-trucciones que se brindan en la explica-

ción de cada programa. LK es un puentede conexión (un jumper o simplemente

un cable).Hemos hecho referencia al PICAXE-

18 porque en otras secciones trabajare-mos con el PICAXE-08. En la figura 37 se

reproduce el esquema de circuito impre-so para que monte su propio entrenador.

En la figura 38 se muestra el detalle de armado del cableque sirve como interfaz entre el entrenador y la computadora.

*****************

Fig. 38

TABLA 20

symbol dp = 7 ‘renombrar salida7 “dp”symbol counter = b0 ‘definir a la variable “counter” como b0

main: ‘hacer una etiqueta llamada “main”let b2 = 5 ‘precargar a b2 con el número 5gosub flash ‘ir al sub-procedimiento “flash”pause 500 ‘esperar 0,5 segundoslet b2 = 15 ‘precargar a b2 con el número 5gosub flash ‘ir al sub-procedimiento “flash”

pause 500 ‘esperar 0,5 segundosgoto main ‘ir a “main”

end ‘fin del programa principal

flash: ‘hacer un sub-procedimiento llamado “flash”for counter = 1 to b2 ‘iniciar un bucle for....nexthigh dp ‘encender diodo LEDpause 250 ‘esperar 0,25 segundoslow dp ‘apagar diodo LEDpause 250 ‘esperar 0,25 segundosnext counter ‘siguiente counterreturn ‘retornar al sub-procedimiento

Page 34: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 34/73

CLU B SABER ELECTRO N ICA 35

Introducción

Comenzaremos con una aplicación muy sencilla, por lo

que en primera instancia nos dedicaremos a encender y apa-gar leds, de acuerdo al estado que guarden las terminales de

entrada de datos del microcontrolador. Cabe aclarar que con-forme se avance en los temas de PICAXE podremos incorporar

controles para motores, utilización de convertidores analógico- digital (ADC), etc. Recordemos que el sistema PICAXE está dis-

ponible en tres versiones que son el de 8 terminales (PICAXE-08), 18 terminales (PICAXE-18) y 28 terminales (PICAXE-28), y

en función de las terminales que tienen disponibles para la en-trada y salida de datos, serán las que ocuparemos para comu-

nicar al microcontrolador con el exterior.

Para visualizar datos usamos un circuitomuy sencillo para encender leds, el cual se

muestra en la figura 1. Este circuito lo podemosreproducir tantas veces como terminales de sa-

lida se tengan disponibles.El primer circuito que se recomienda para

ingresar datos discretos (digitales) al microcon-trolador es un interruptor con reposición auto-

mática (push-button), el cual se muestra en elcircuito de la figura 2. De igual manera que en

el caso del circuito de la figura 1, se puede re-producir el circuito de la figura 2 tantas veces

como entradas tenga disponible el microcontro-lador. Para realizar el primer ejercicio, vamos

a elegir uno de los tres tipos de microcontrola-dores PICAXE que se tienen disponibles, que en

este primer ejercicio se trata del PICAXE-18; pero, posterior-

mente, se realizarán ejercicios con todos los tipos de microcon-

Figura 1 Figura 2

Figura 3

Page 35: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 35/73

36 CLU B SABER ELECTRO N ICA

troladores PICA-

XE. El circuito pro-puesto para esta

primera experien-

cia se muestra enla figura 3, en lacual se tiene 1 en-

trada y 1 salida.Para progra-

mar el microcon-trolador PICAXE la

primer acción quetenemos que reali-

zar es abrir el soft-ware de progra-

mación llamado“PICAXE Programming Editor” y que previamente tuvo que ser

instalado. Una vez que hacemos doble click sobre el ícono delsoftware de programación y accedemos al ambiente de progra-

mación, aparece una ventana en donde se configuran las op-ciones con las cuales trabajaremos.

Como primer paso, ya que es la primera vez que utiliza-mos este software, es conveniente seleccionar el menú identifi-

cado como “Language”, ya que aquí es donde se configura ellenguaje con el cual estaremos interactuando. Si desea más de-

talles sobre esta parte del programa, puede bajarlo de Interneto adquirir la revista Saber Electrónica Nº 215. De internet, pue-

de bajarlo desde nuestra web con la clave “progpicaxe”.Para empezar a trabajar, debemos configuar el programa

(es muy sencillo, si lo desea, baje el tema completo desde nues-tra web), seleccionando la opción “Modo” del menú para ele-

gir el PICAXE que vamos a emplear en nuestro proyecto, quéfrecuencia de operación tendremos (generalmente 4MHz), etc.

Luego, debemos elegir la opción “modo” del menú para indi-car en qué puerto tendremos el circuito para descargar el pro-

grama. De la figura 4 observamos el ambiente de trabajo quepresenta el software de programación de los microcontrolado-

res PICAXE, en el cual se aprecia un espacio en blanco que es

donde se ingresan las instrucciones en forma de “BASIC”.

¿Q ué instruccion es son las que ut i l iza remo s?

Si no sabemos, no es el fin del mundo y vamos paso a pa-so. 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 figura4, seleccionamos de la barra de herramientas la opción “Archi-

vo”, posteriormente “Nuevo” y por último “Nuevo Organigra-

ma”, y lo que aparecerá será el ambiente de trabajo para in-gresar el diagrama de flujo de nuestro programa.

Para comenzar, éste va a ser nuestro campo de trabajo ya

que de forma intuitiva todos sabemos hacer diagramas de flu- jo. Pues bien, antes de seleccionar los bloques que lo constitui-

rán, vamos a describir cuál es el algoritmo del programa quequeremos desarrollar:

“Cuando se oprima un pulsador se encienda un

led, y cuando se suelte el pulsador se apague el led”.

Existen bloques prediseñados que nos auxilian en el mane- jo del estado que guardan las terminales de entrada del micro-

controlador de manera independiente, por lo que como semuestra en la figura 5 seleccionamos el recuadro que tiene in-

dicado un rombo y dentro de éste la palabra “if”.

Ahora lo que tenemos que hacer es seleccionar qué condi-

ción es la que utilizaremos, que para este ejercicio será la que

se encuentra dentro del recuadro que tiene una figura de un rom-

bo y dentro de éste la palabra “Pin” (observe la figura 6), esto

es, estaremos leyendo la condición de una terminal de entrada

que, por defecto cuando lo ubicamos sobre nuestra área de tra-

bajo, siempre se coloca la entrada 0 (terminal 17 del microcon-

trolador, figura 3). Este bloque tiene la tarea de leer el estado ló-

gico de la terminal de entrada y la compara con un 1 lógico y

dependiendo de si la entrada es igual o no, tiene dos posiblessalidas “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 fle-

cha en forma de U para regresar al menú 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 ter-

minal de entrada se encuentre un 1 lógico, o que el led se apa-

gue cuando en la entrada se encuentra un 0 lógico. Para esta ac-

tividad recurrimos al recuadro identificado con la palabra “Out”,

ya que es ahí donde se encuentran los bloques que actúan sobre

las terminales de salida del microcontrolador. Una vez en el in-

terior del menú de bloques de salida, tenemos que seleccionar la

acción que hará que el led se encienda o se apague, por lo queen primer instancia seleccionamos el bloque identificado con la

palabra “High”, el cual quiere decir que la salida se encenderá.

Por cierto, cuando selecciona-

mos este bloque, por defecto se

ubica la salida 0 (terminal 6 del

microcontrolador, figura 3), tal

como se ilustra en la figura 7.

Ya se tiene entonces el blo-

que que encenderá el led, porlo que ahora requerimos la ac-

ción correspondiente con suapagado, y ésta corresponde

Figura 4

Figura 5

Figura 6

Figura 7

Page 36: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 36/73

CLU B SABER ELECTRO N ICA 37

al recuadro identificado con la palabra “Low”, que es precisa-

mente el bloque que realizará la tarea de apagar el led, y tam-bién por defecto, al seleccionarlo por primera vez, se ubica en

la salida 0.

Una vez que ya tenemos los bloques que necesitamos pa-ra ingresarle o sacarle datos al microcontrolador PICAXE, pro-cedemos ahora a unir los bloques para que realicen el algorit-

mo que fue planteado líneas atrás. Para ello existe una herra-mienta que se encuentra en un recuadro identificado con una

línea vertical que en sus extremos tiene un “*”.Cuando seleccionamos esta herramienta y acercamos el

puntero del ratón sobre alguno de los bloques que ya se en-cuentran en el área de trabajo, se les aparece un círculo de co-

lor rojo en aquel punto que requiere una conexión, tal como seilustra en la figura 8. Ya seleccionado el punto de conexión, tra-

zamos la línea hasta el siguiente punto de conexión de un blo-que para realizar la unión lógica del flujo de datos. Cabe acla-

rar que para cada unión que se necesite realizar, se tiene quevolver a seleccionar la herramienta de conexión. En la figura 9

podemos apreciar la conexión completa de todos los bloques.Si ya terminamos de diseñar nuestro diagrama de flujo y antes

de programar el microcontrolador, es importante saber si elprograma va a funcionar, porque recuerden que no es lo mis-

mo “desear” que el microcontrolador haga lo que según noso-tros programamos, que lo que realmente hace en función del

programa que ingresamos. Existe en el software de los PICAXEla posibilidad de simular el programa, y eso es lo que vamos a

hacer, por lo que seleccionamos el recuadro que tiene el sím-bolo de una punta de flecha tal como se ilustra en la figura 9,

lo seleccionamos y enseguida aparecerán 2 ventanas. Una deellas indica el estado lógico que guardan las salidas y entradas

del microcontrolador; esta ventana aparece en la parte inferiorde la imagen de la figura 10.

Los recuadros verdes que se iluminan indican qué salidasestán siendo activas con un 1 lógico, mientras que los que apa-

recen debajo de los cuadros verdes, indican la posición de lasseñales de entrada al microcontrolador, los cuales cuando se

encuentran en la posición inferior significa que la entrada seencuentra en 0 lógico, y si están en la posición superior la en-

trada se encuentra en 1 lógico. Por otra parte también se ob-serva que, dependiendo de dónde se encuentre la posición del

switch, se iluminará en color rojo la línea que une los diferen-tes bloques que son afectados por la respuesta del estado lógi-

co de entrada, y de esta manera podemos visualizar qué es lo

que está sucediendo con nuestro programa.Una vez que simulamos nuestro programa y observamos

que las condiciones del algoritmo se cumplen (encender un ledcuando se tiene un 1 lógico en la entrada y apagar el led cuan-

do se tiene un 0 lógico en la misma entrada), ya estamos listospara dar el siguiente paso, que es convertir el diagrama de flu-

jo a instrucciones de BASIC, para lo cual en la barra de herra-mientas seleccionamos el menú identificado como “Organigra-

Figura 8

Figura 9

Figura 10

Figura 11

Page 37: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 37/73

38 CLU B SABER ELECTRO N ICA

ma” y después la opción “Convertir el Organigrama a Basic”

(de manera rápida pudimos presionar la tecla F5), tema que

Ud. puede bajar sin cargo de nuestra web (www.webelectroni-

ca.com.ar).Ahora lo que tenemos que hacer es conectar el cable, tan-

to al puerto serie de la PC como a las terminales del microcon-

trolador que se indican en el diagrama de la figura 3 para pro-gramar al PICAXE. Anteriormente propusimos la manera en có-mo se debe construir el cable de programación, tomando en

cuenta las terminales que se deben ocupar.Para grabarle el programa al microcontrolador debemos

dirigir la flecha del ratón a la barra de herramientas y seleccio-nar el menú “PICAXE”, después la instrucción “Ejecutar” (o de

manera rápida F5), tal como se muestra en la figura 11. En esemismo instante aparecerá una ventana indicando que se está

llevando a cabo la programación del microcontrolador PICA-XE. Cuando se encuentra en la fase de pro-

gramación, una barra que irá creciendo nosdirá la cantidad de código que está siendo

descargado hacia el microcontrolador.Cuando se termina de grabar el micro-

controlador aparecerá una ventana que nosindica la finalización del proceso de progra-

mación, figura 12.

Ahora podemos verificar en el microcon-

trolador que el programa que diseñamos se

Figura 12

Figura 14

Figura 13

Page 38: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 38/73

CLU B SABER ELECTRO N ICA 39

encuentra perfectamente bien, por

lo que tenemos que oprimir el pul-

sador y esta acción debe encen-

der el led, y cuando lo soltemos, el

led se deberá apagar. Cualquierotro funcionamiento nos quiere de-

cir que debemos revisar nuestro

programa y tenemos que regresar-

nos hasta la etapa en donde dise-

ñamos el diagrama de flujo, ya

que algo se encuentra mal.

Kit Entrenador para PICAXE 08

En esta oportunidad diseñaremos nuestra primera tarjeta de en-

trenamiento universal para programar microcontroladores PI-CAXE, y como en todo comienzo, daremos inicio por lo más

sencillo y más pequeño, esto es, los microcontroladores de 8terminales denominados PICAXE – 08.

En primera instancia recordemos cuál es la configuraciónde un PICAXE–08, para en función de ello, tomar en cuenta de

cuántas entradas y cuántas salidas podemos echar mano yaprovecharlas al máximo (figura 13).

Tenemos la oportunidad de disponer de un total de 4 E/ S(4 entradas y 4 salidas), pero no nos confundamos, si sumamos

el número de salidas con el número de entradas tendremos untotal de 8 y el PICAXE–08 que manejaremos tiene solamente 8

terminales.¿Esto q u iere dec i r q ue las termina les de sa l ida y d e ent ra-

da ocupan t oda s las que posee?

La respuesta es “no”, ya que en esas 8 terminales deben

estar las 4 entradas, las 4 salidas además de las 2 terminalesde alimentación y 2 para programarlo. Específicamente para

los PICAXE–08 las terminales 3, 5, 6 y 7 cumplen con una do-ble función, por lo que debemos tener cuidado cuando los pro-

gramemos, porque, por ejemplo, la terminal 3 puede compor-tarse como una terminal de entrada o una terminal de salida,

todo depende de cómo la contemplemos cuando realicemos elprograma del PICAXE–08.

La tarjeta entrenadora que proponemos tiene la posibilidadde explotar al máximo las propiedades del PICAXE–08, y será

por medio de jumpers como se podrá configurar la circuitería,

tanto para programar como para fijar entradas o salidas de da-tos. En la figura 14 se muestra el circuito esquemático de la tar-

jeta entrenadora completa.A continuación describiremos cada parte de esta tarjeta en-

trenadora para que podamos sacarle el máximo provecho.En primer término identificaremos la ubicación de dónde

instalar el microcontrolador PICAXE–08; éste debe encontrarseen la base identificada como IC1 respetando la identificación

de las terminales (figura 15). Los conectores identificados como

ES1, ES2 y ES4 tienen 3 terminales, de las cuales, la del mediode cada uno de ellos se hace llegar hacia la correspondiente

terminal del microcontrolador PICAXE. Con rerspecto a las 2terminales restantes de cada conector (ES1, ES2 y ES4), una va

hacia el bloque destinado para conectar las entradas de datos,y la segunda se dirige hacia el bloque de terminales de salida

de datos. Pues bien, para seleccionar si la terminal del micro-controlador será configurada como salida o entrada, será a tra-

vés de un jumper que, dependiendo de cómo se conecte, unirála terminal del medio del conector, ya sea ES1 ó ES2 ó ES4,

con el bloque de terminales de entradas o al bloque de termi-nales de salida, y de esta forma quedará configurada la circui-

tería del microcontrolador PICAXE para que esté listo a recibirel programa con el cual trabajará el microcontrolador.

El conector identificado como PROG/ SAL0 posee 3 termi-nales, de las cuales la del medio se hace llegar a la terminal 7

del microcontrolador PICAXE. Esta terminal cumple con la do-ble función tanto de programar al microcontrolador, como la de

funcionar como terminal de salida de datos si así se requiere;esta selección se lleva a cabo mediante la conexión de un jum-

per hacia la ubicación que se requiera.Cuando se va a

programar un micro-controlador PICA-

XE–08, es necesarioque el jumper esté

ubicado hacia la po-sición “Prog” en el co-

nector PROG/ SAL0,porque de otra mane-

ra la programaciónserá imposible, ya

que no se tendrá co-municación entre la

PC y el microcontrola-dor.

Cuando el jumper

Figura 17

Figura 16

Figura 15

Page 39: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 39/73

40 CLU B SABER ELECTRO N ICA

se encuentra ubicado hacia la posición “Sal0” en el mismo co-

nector PROG/ SAL0, se tendrá configurada la terminal del mi-crocontrolador como salida. La disposición de componentes so-

bre la placa se muestra en la figura 16.

Por lo descrito líneas atrás se deduce que el procedimientopara ubicar el jumper del conector PROG/ SAL0 será de acuer-do a lo siguiente:

1º paso.- Ubicar el jumper hacia la posición “Prog” en elconector PROG/ SAL0 para programar al microcontrolador PI-

CAXE–08.2º paso.- Cambiar el jumper hacia la posición Sal0 en el

conector PROG/ SAL0 si se va a utilizar esa terminal del micro-controlador PICAXE–08 como salida.

En el conector identificado como “Entradas” se tiene la po-sibilidad de hacerle llegar al microcontrolador PICAXE–08 el

estado lógico de 4 diferentes entradas digitales, las cuales pue-den ser insertadas mediante circuitos externos o bien utilizar

cualquiera de los 2 circuitos con pulsador que se tienen en elárea de experimentos. Estos circuitos se muestran en la figura

17 y lo único que se tiene que hacer es conectar el borne co-rrespondiente, ya sea E1 ó E2, a cualquiera de las terminales

de entrada, que sonEnt1 ó Ent2 ó Ent3 ó

Ent4 del conector“Entradas”.

En el conectoridentificado como

“Salidas” se encuen-tra el reflejo de las 4

salidas digitalesque posee el micro-

controlador PICA-XE–08, las cuales

pueden hacerse lle-gar a circuitos exter-

nos en donde se re-fleje la actividad del

microcontrolador, o

pueden ser utiliza-

das los 2 circuitos con leds que se encuentran en el área de ex-

perimentos; estos circuitos se muestran en la figura 18. Para uti-lizar estos circuitos lo que tiene que hacerse es conectar el bor-

ne correspondiente, ya sea S1 o S2, a cualquiera de las termi-

nales de salida, que son Sal0 ó Sal1 ó Sal2 ó Sal3 del conec-tor “Salidas”.

El espacio identificado como PROGRA se encuentra ocupa-

do por un conector de audio estéreo tipo mini Jack, el cual pue-de tener formas diferentes. El conector de audio estéreo tan só-

lo tiene 3 terminales, las cuales serán utilizadas para comuni-car al microcontrolador con una PC a través del puerto serie.

En la figura 19, como ya lo vimos anteriormente, se muestra eldiagrama de cómo se deben identificar las terminales tanto en

la tarjeta de entrenamiento como en el conector DB9 que se co-necta al puerto serie de una PC.

Las terminales del conector de audio realizarán las siguien-tes actividades:

La línea identificada con el número 1 sirve para verificarque el microcontrolador PICAXE se encuentra conectado al

puerto serie de la PC.La línea identificada con el número 2 sirve para programar

al microcontrolador PICAXE.La línea identificada con el número 3 es la referencia GND

o también conocida como tierra eléctrica.Por último, la tarjeta entrenadora tiene incorporado un re-

gulador de voltaje identificado como IC2 que posee el códigoLM7805, y cuya misión es la de mantener un voltaje de 5V pa-

ra energizar al microcontrolador PICAXE y toda su circuitería;por lo tanto, podemos energizar nuestra tarjeta de entrenamien-

to con una pila de 9 VCD.La lista de componentes se muestra a continuación.

Lista de componentes para armar la

tarjeta controladoraIC1 ................Base de 8 terminales

IC2..................................LM7805D1, D..........................Leds Verdes

D3...................................Led Rojo

S1, S2.......Interruptores Push buttonFigura 18

Figura 19

Page 40: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 40/73

CLU B SABER ELECTRO N ICA 41

R1, R3, R4.............10kΩ 1/ 4 Watt

R2 ........................22kΩ 1/ 4 WattR5, R6, R7 ...........390Ω 1/ 4 Watt

Var ios:

Conector mini jack de audio, conector mi-ni plug de audio, alambres de conexión, bro-

che para pila de 9 VCD y circuito impreso.

Aprendiendo a Programar

la Tarjeta Entrenadora 08

En esta oportunidad, emplearemos la tarjetaentrenadora para implementar en ella la fun-

ción lógica “Y” (AND). El motivo de progra-mar al PICAXE con esta función lógica es un

pretexto para que se tenga en cuenta que sipodemos utilizar las funciones lógicas, enton-

ces podemos darle cualquier aplicación anuestra tarjeta, esto es, en otras palabras po-

demos desarrollar, por ejemplo, lo que se conoce con el nom-bre de unidad central de proceso de un PLC.

Para cada una de las funciones lógicas necesitamos la uti-lización de 2 entradas, por lo que en total requeriríamos de 4,

pero recordemos que el microcontrolador PICAXE – 08 es tansólo de 8 terminales; por lo tanto, se tiene la limitante de que

la mayoría de las entradas y salidas están compartidas. En con-secuencia tan sólo utilizaremos 2 entradas para implementar

las 2 funciones lógicas.En el diagrama de la figura 20, se observa la manera en

que están asignadas tanto las terminales de entrada como lasde salida; por otra parte también tomemos en cuenta que la tar-

jeta entrenadora posee 2 pulsadores para generar los estadoslógicos con los cuales trabajará el PICAXE, y también cuenta

con 2 leds para mostrar el estado de las sali-das.

El ejercicio que desarrollaremos será el si-guiente. Los pulsadores denominados S1 y S2

generan las combinaciones con las cuales seencenderá el led D1 para la función lógica

“Y”, de acuerdo a la tabla lógica siguiente:

S1 S2 Función “Y”

0 0 00 1 0

1 0 01 1 1

Ahora hacemos referencia al diagrama de

identificación de los componentes de la figura21 para observar que las terminales que están

asignadas a la entrada son las denominadas como E3 y E4. Es-

tas entradas se configuran empleando el jumper ES4 hacia laposición E4, mientras que la entrada E3 no tiene que configu-

rarse ya que está directamente conectada al borne de entra-das. En cuanto a las salidas, emplearemos la que está identifi-

cada como S1. La salida S0 se configuran empleando el jum-

per PROG/ SAL0 en la posición de Sal0; esto es porque la ter-minal 7 del microcontrolador PICAXE – 08 se comparte tantocon la salida 0 como con una terminal de programación del PI-

CAXE. La salida S1 requiere que el jumper ES1 se coloque enla posición Sal1. La forma en cómo se deben colocar los jum-

pers también se ilustra en la figura 21, que es una imagen dela tarjeta entrenadora.

Una vez que hemos configurado la parte electrónica de la

Figura 20 - Diagrama esquemático de la tarjeta entrenadora.

Figura 21 - Identificación de componentes y colocación de jumper.

Page 41: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 41/73

42 CLU B SABER ELECTRO N ICA

tarjeta entrenadora, pasamos a elaborar el programa para

controlar la tarjeta.Como lo hemos mencionado antes, es necesario abrir el

ícono cuyo nombre es “PICAXE Programming Editor”, el cual

obviamente tuvieron que instalar con antelación, pero si uste-des aún no poseen el programa, lo pueden descargar de nues-tra página de internet: www.webelectronica.com.ar.

Después de la ventana de bienvenida nos aparecerá la

ventana que se muestra en la figura 22, que es en donde seconfiguran las opciones y por lo tanto el tipo de microcontrola-

dor que emplearemos. En esta oportunidad estaremos utilizan-

do un microcontrolador PICAXE – 08, por lo que seleccionamosesa opción. Si la ventana de opciones no aparece al abrir elprograma, nosotros podemos abrirla desde el menú Ver y des-

pués con el comando Opciones.Hasta este momento no hemos realizado programa alguno

con el Basic, que es una forma de programar a los PICAXE,porque en el desarrollo de esta serie vamos a comenzar apren-

diendo a programar a los microcontroladores del sistema PICA-XE. Por esta situación, nuevamente recurriremos a programar al

microcontrolador a través de diagramas de flujo, por lo queoprimimos el botón de acceso rápido para abrir el ambiente de

trabajo en diagramas de flujo, tal como se muestra en la figu-ra 23.

Dentro del entorno gráfico para generar el diagrama deflujo seleccionaremos, del menú de comandos, el correspon-

diente al que pregunta por el estado de las entradas, tal comose ilustra en la figura 24.

Posteriormente, tal como se muestra en la figura 25, se pue-den seleccionar los bloques que preguntan por el estado de las

entradas. Todo depende de nuestro diagrama, serán los blo-ques que dentro del rombo tienen la palabra “pin”. Por defec-

to, siempre pregunta por el pin 1, por lo que debemos editarlos bloques que sean necesarios para preguntar por la terminal

Figura 24

Figura 25

Figura 23

Figura 22

Figura 26

Figura 27

Page 42: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 42/73

CLU B SABER ELECTRO N ICA 43

que corresponde a la entrada E3 y E4. Para ello nos basamos,

tal como muestra la figura 26, en seleccionar el bloque que nosinterese y después seleccionar la entrada correspondiente. Una

vez que el primer bloque tenga asignada la entrada E3 y los

dos inferiores la entrada E4, ahora procedemos a seleccionarel menú de los bloques que manipulan las salidas; por lo tanto,oprimimos sobre el cuadro que tiene una flecha en forma de U

para regresar al menú principal. Estando en el menú principal,seleccionamos el que hace referencia al control de las salidas,

de acuerdo a como se aprecia en la figura 27.Dependiendo de cuál sea la función lógica que implemen-

temos será la activación de las salidas que usaremos, ya seaun “0” lógico o un “1” lógico; por lo tanto, seleccionaremos el

cuadro con la palabra low o high, respectivamente, tal comose aprecia en la figura 28.

Como en el caso de las entradas, cuando elegimos una sa-lida, por defecto se coloca la salida 0; por lo tanto, tenemos que

evaluar qué salida es la que emplearemos para colocar la que

nos interesa, y tal como se ilustra en la figura 29, seleccionamos

la salida 1 porque la función lógica que implementaremos es la

denominada “Y” (AND). Como ya habíamos designado que se-

ría a través del led D1 de la tarjeta entrenadora donde se visua-

lizaría su respuesta, es el motivo de la selección ya que el led

D1 está conectado a la salida 1 del microcontrolador.

Ya que tenemos todos los bloques correspondientes a la im-

plementación de la función lógica, ahora pasaremos a conec-tarlos para que se obtenga el resultado de la tabla de verdad

de la función lógica “Y”. Tenemos que regresar una vez más al menú principal para

realizar la unión de los diferentes bloques, en función de la ló-gica de operación que hemos desarrollado. Para esta acción,

elegimos la herramienta de conexión tantas veces como blo-ques se tengan que unir, tal como se muestra en la figura 30.

Cuando se realiza la actividad de unir los diferentes blo-ques, se ilumina en color rojo un círculo que se hace presente

en el punto de conexión del bloque cuando acercamos el pun-tero del ratón, y ahí hacemos click con el botón izquierdo pa-

ra fijar la línea de conexión, y la arrastramos hasta el siguien-te punto de conexión del bloque con el que uniremos el ante-

rior, y así continuamos hasta unir todos los bloques que tenga-mos, tal como se aprecia en la figura 31.

El paso siguiente, para verificar que realmente funcionanuestro programa, es simularlo, por lo que seleccionamos la he-

rramienta de simulación tal como nos lo indica la figura 31, y

cuando la oprimimos, aparecerán dos ventanas: en una obser-varemos las variables, y en la otra, que es la que nos interesa

en este momento, se observará cómo se comportan las salidasen función de las entradas.

En la figura 32 se muestra que cuando ésta activa la fun-ción de simulación, las líneas que unen los distintos bloques se

iluminan en color rojo indicando el camino por donde se cum-plen las condiciones lógicas, facilitando de esta manera la ob-

Figura 28

Figura 30

Figura 31

Figura 29

Page 43: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 43/73

44 CLU B SABER ELECTRO N ICA

servación de cómo se va generando la respuesta que finalmen-

te será visualizada a través de una salida. Y para comprobar

que en la salida se tiene como resultante la función lógica

“Y”, se tienen que realizar las distintas combinaciones de “0”lógico y “1” lógico en las terminales de entrada, a través de

los interruptores que se visualizan en la ventana inferior de la

figura 32.

Una vez que hemos superado la etapa de la simulación,

nuestro siguiente paso es la programación del PICAXE a través

de la tarjeta entrenadora, por lo que conectamos el cable alpuerto serie de la PC y el otro extremo al conector minijack de

la tarjeta entrenadora anterormentes se explicó cómo se debe

armar el cable de programación, colocar también el jumper delconector PROG/ SAL0 en la posición de Prog para que sea des-cargado el código al PICAXE.

El paso siguiente es detener la simulación e ir al menú deherramientas organigrama y seleccionar el mando convertir or-

ganigrama a Basic. Como resultado, el diagrama de flujo seráconvertido a Basic y el resumen de estas acciones se observa

en las figuras 33 y 34.De la figura 34 se observa que para descargar el progra-

ma en el microcontrolador PICAXE a través de la tarjeta entre-nadora, se oprime el botón que se refiere a la herramienta de

programación, y como consecuencia se despliega una ventanaque nos va indicando el avance de la programación, tal como

se ilustra en la figura 35.Una vez programado el PICAXE, lo que sigue es probar el

programa sobre la tarjeta entrenadora, por lo que presionare-mos los pulsadores de acuerdo a la tabla de verdad correspon-

diente, por lo que si el led no enciende con respecto a la res-puesta de la tabla de verdad de la función lógica “Y”, algo an-

da mal y tenemos que pasar a revisar desde el circuito de latarjeta entrenadora hasta revisar nuevamente el programa y la

fase de grabación en el microcontrolador.

LISTA DE COMPONENTES PARA REALIZAR EL EJERCICIO. Tarjeta entrenadora del PICAXE – 08 y su cable de progra-

mación.

Juego de Luces Tipo “Auto Fantástico”

(Empleando la Tarjeta Entrenadora)

Vamos a implementar, a través de una tar- jeta entrenadora, un juego de luces que fun-

cione de la misma manera que lo hacían lasluces del auto fantástico. Está claro que parael microcontrolador PICAXE – 08 que posee la

tarjeta entrenadora, sólo se tiene posibilidadde contar con 4 salidas a las cuales les pode-

mos colocar leds para visualizar el efecto delas luces.

Cabe señalar que si usted desea bajar losarchivos para ejecutar el programa, puede

obtenerlos gratuitamente de nuestra web enwww.webelectronica.com.ar, digitando la cla-

ve “kit”.En la figura 36 se muestra el diagrama es-

Figura 33

Figura 34

Figura 35

Figura 32

Page 44: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 44/73

CLU B SABER ELECTRO N ICA 45

quemático de la tarjeta entrenadora, de

la cual emplearemos únicamente el bor-ne de salidas, por lo que en los bornes

identificados como ES1, ES2 y ES4 se

colocará el jumper correspondiente, detal forma que se seleccionen las salidas.

Nota: La tarjeta entrenadora, su im-

plementación, armado y programaciónse publicó en el tomo Nº 7 de la colec-

ción “Club Saber Electrónica”. Ud. pue-de bajar el artículo completo de la web

con la clave dada más arriba.Siguiendo con nuestro montaje, en

el borne identificado como PROG-/ SAL0, una vez que se descargue el pro-

grama sobre el PICAXE, debe colocarseel jumper en la posición correspondien-

te a la salida 0 (Sal0). Una vez predis-puesta la tarjeta entrenadora tal como

se muestra en la figura 37, pasamos adesarrollar el programa.

Recordemos que lo primero que te-

nemos que hacer es abrir el programa

“PICAXE Programming Editor”, tal como se ilustra en la figura

38. Una vez dentro del ambiente de programación del PICA-

XE, seleccionamos la opción de trabajar con diagramas de

flujo, por lo menos hasta que adquiramos la experiencia ne-

cesaria para desarrollar nuestros programas directamente ba- jo BASIC.

Se ha explicado, minuciosamente, lo que significan los íco-nos que aparecen cuando trabajamos con diagramas de flujo,

por lo que ahora avanzaremos un poco más rápido en la cons-trucción de nuestro programa. Ya dentro del ambiente de pro-

gramación, lo primero que tenemos que hacer es inicializar lassalidas que utilizaremos, que por disposición del PICAXE – 08

se tienen dispuestas las salidas 0, 1, 2 y 4. Para no afectar eldesempeño de nuestra aplicación, la inicialización de las sali-

das las realizamos por medio del comando “low” tal como seilustra en la figura 39, una para cada una de las salidas; si no

colocáramos estos comandos, simplemente las salidas no se ac-tivarán. Posteriormente colocamos líneas de conexión para unir

los comandos de activación en estado bajo de las 4 salidas se-leccionadas. Ahora se colocan los comandos para generar el

efecto de luces del auto increíble, para lo cual nos basamos enun algoritmo muy simple y que a continuación explicamos:

Encendemos el led colocado en la salida 0 y mantenemos

Figura 36

Figura 38 Figura 37

Page 45: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 45/73

46 CLU B SABER ELECTRO N ICA

este estado durante 1 segundo para que sea perfectamente vi-

sible, posteriormente encendemos el led colocado en la salida1 e inmediatamente apagamos el led de la salida 0; una vez

realizado esto, fijamos esta condición durante 1 segundo. En

general, vamos encendiendo el led siguiente y al mismo tiempoapagando el anterior y manteniendo el estado durante algúntiempo, y así sucesivamente hasta llegar al último led. Posterior-

mente hacemos que se invierta el encendido y apagado de losleds, causando con esto el efecto luminoso de las luces del au-

to increíble.De la figura 40 se puede observar el diagrama de flujo

que se emplea para controlar el juego de luces, y a través delos bloques “low” apagamos las salidas (las colocamos en “0”

lógico), y con los bloques “high” encendemos las salidas (lascolocamos en “1” lógico). Pues bien, hasta aquí hemos mane-

jado bloques que con anterioridad habíamos utilizado y que nocausan problemas al momento de seguir la ejecución del pro-

grama, pero ahora aparecen 2 nuevos bloques que están iden-

tificados como “wait” y como “pause”, los cuales describiremos

a continuación.El bloque wait se emplea para generar una base de tiem-

po durante la cual el microcontrolador PICAXE estará ocupado

sin realizar ninguna otra actividad, tan sólo se dedica a conta-bilizar el tiempo que va transcurriendo hasta que llegue al con-teo máximo que le hemos fijado. Esta actividad es muy útil, so-

bre todo cuando se requiere el empleo de un temporizador, ode un delay. La característica que tiene el bloque wait es que

el conteo lo realiza de una forma ya establecida y está en se-gundos, los cuales pueden tener valor desde 1 hasta 255 se-

gundos.En este caso estamos empleando el bloque wait para gene-

rar una temporización, de manera que los datos que son envia-dos a las salidas del PICAXE se mantengan durante 1 segundo.

Si omitimos la colocación del bloque wait, provocaríamos quecon la simple operación del microcontrolador, que es muy rápi-

da, tan sólo observemos un destello en los leds pero no vería-mos cuál se enciende y cuál se apaga con detalle. El número

que tiene por delante el comando wait es el número de segun-dos que dura la temporización.

El segundo bloque que observamos en el diagrama de flu- jo de la figura 41, y que no conocíamos, está identificado co-

mo “pause”.El bloque “pause” trabaja de la misma manera que lo ha-

ce el bloque wait, y substantivamente se emplean para lo mis-mo, pero la principal diferencia radica en los tiempos destina-

dos a la temporización de cada uno de los bloques. Para el blo-que wait la temporización se en-

cuentra en segundos, mientrasque para el bloque pause la tem-

porización se contabiliza en mili-segundos. Por lo tanto, como se

muestra en la figura 40, si coloca-mos el bloque “wait 1” equivale a

un tiempo de 1 segundo, y si em-pleamos el bloque “pause 1000”

equivale a un tiempo de 1000 mi-

lisegundos, o sea también 1 se-

gundo.Después de que hemos colo-

cado tanto los bloques como las

uniones entre éstos, procedemos asimular nuestro diagrama de flujo

como se ilustra en la figura 41.Como paso siguiente a la si-

mulación, procedemos a convertirnuestro diagrama de flujo en códi-

go BASIC, por lo que recurrimosal menú Organigrama y dentro de

éste al comando “Convertir Orga-nigrama en BASIC”, por lo que

Figura 39

Figura 40 - Diagrama a bloques completo.

Page 46: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 46/73

CLU B SABER ELECTRO N ICA 47

vamos a generar un código como el ilustra-

do en la figura 42.

Por último, tenemos que programar al mi-

crocontrolador PICAXE, por lo que estando

en el ambiente de código BASIC nos dirigi-mos al menú PICAXE y después al comando

“Ejecutar”. En ese mismo instante se abre una

ventana que nos indica el progreso de la pro-

gramación del PICAXE (figura 43), y una vez

que éste termina de programarse, nos mues-

tra una ventana pequeña en donde nos comu-

nica que se programó perfectamente; en ca-

so contrario, también nos reporta las posibles

causantes del fallo. Como lo hemos mencio-

nado en anteriores entregas, es necesario

abrir el ícono cuyo nombre es “PICAXE Pro-gramming Editor”, el cual obviamente tuvie-

ron que instalar con antelación, pero si uste-

des aún no poseen el programa lo pueden

descargar de nuestra página de internet:

www.webelectronica.com.ar. A lo largo de

esta obra iremos desarrollando ejemplos de

programación, en los cuales aplicaremos los bloques de los dia-

gramas de flujo vistos hasta ahora, y la meta es llegar a realizar

programas con mayor grado de complejidad, para lo cual se tie-

ne contemplado mostrar proyectos con aplicaciones reales.

Lista de Materiales

Tarjeta entrenadora del PICAXE – 08 (el diagrama y des-cripción de ésta se vió anteriormente), su cable de programa-

ción,4 Leds

4 Resistores de 390Ω

Alarma para Puertas y Ventanas

Empleando la Tarjeta Entrenadora PICAXE 08

Para continuar con la utilización de nuestra tarjeta entrena-dora tal como un módulo de uso general, nuevamente hacemos

referencia a ella y por lo tanto volvemos a colocar su diagra-ma esquemático se ilustra en la figura 44. De la tarjeta entre-

nadora sabemos que se cuenta con un total de 4 Entradas/ Sa-lidas, las cuales las tenemos que distribuir adecuadamente en-

tre el sensor, el habilitador de la alarma, la salida a un buzzer(zumbador) y a un contacto que nos representará una señal re-

mota. De acuerdo a lo anterior necesitamos de, por lo menos,

Figura 41 - Simulación.

Figura 42 - Código en BASIC.

Page 47: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 47/73

48 CLU B SABER ELECTRO N ICA

2 entradas y 2 salidas, pero recuer-

den que en el PICAXE–08 algunasterminales son compartidas y cum-

plen con una doble función; dicho

en otras palabras, tanto se puedenconfigurar como terminales de sali-da o como de entrada de datos,

pero una vez configuradas, traba- jará así el PICAXE todo el tiempo.

En la figura 45 se ilustra la pro-puesta de cómo se asignarán las

terminales de entrada y salida dedatos, en las cuales se sugiere que

para proteger a las puertas y ven-tanas de un hogar se utilicen senso-

res magnéticos llamados reed swit-ches, en los cuales, cuando se les

acerca un imán, su contacto se cie-rra, provocando la generación de

los estados lógicos que vemos en latabla 1.

La disposición de los sensoresmagnéticos, tal como se ilustra en

el diagrama esquemático de la fi-gura 45, están conectados de tal

forma que se cumplan las condicio-nes de la tabla 1, y estos estados lógicos se hacen llegar a la

terminal de entrada del PICAXE (Ent3) destinada a detectar siuna puerta o ventana fue abierta sin autorización, por lo que

tenemos que seleccionar qué puerta o ventana de nuestra ca-sa tendremos que proteger, colocando el sensor magnético en

el marco de la puerta o ventana mientras que el imán lo fijare-mos sobre la puerta o ventana.

De acuerdo a lo que se observa de la figura 45, las termi-nales destinadas a las entradas de datos serán las denomina-

das Ent3 y Ent4, mientras que las terminales designadas para

las salidas serán las marcadas como Sal0 y Sal1.Una vez que se han destinado las entradas y salidas que

serán empleadas, ahora procederemos a explicar el diseño delprograma con el cual se gobernará el microcontrolador PICA-

XE, para lo cual partiremos del hecho de que ya tenemos insta-lado el programa llamado “PICAXE Programming Editor”, y si

aún no lo tienen pueden descargarlo de nuestra página www-.webelectronica.com.ar con la clave “picaxe”, o directamente

de la página www.picaxe.co.ukEn la figura 46 observamos la ventana de bienvenida al

“PICAXE Programming Editor”.Consideramos que aún no tenemos la experiencia necesa-

ria para comenzar a programar un PICAXE por medio del len-guaje BASIC, por lo que una vez más seleccionamos la opción

de trabajar con diagramas de flujo, por lo menos hasta quecontemos con la experiencia necesaria para desarrollar nues-

tros programas directamente bajo ambiente BASIC.Debido a que ya hemos explicado paso a paso cómo tra-

bajar con diagramas de flujo, ya no expondremos lo que signi-fican los íconos que aparecen cuando trabajamos con estos

diagramas, por lo que sólo nos abocaremos a

desarrollar el programa con el cual operaránuestro programa.

Para comenzar con el programa, primeroserán definidas las terminales de entrada a

Figura 43 - Ventana que muestra el avance de la programación.

TABLA 1 COMPORTAMIENTO DEL SENSOR MAGNETICOPresencia del imán Contacto del Reed Switch Estado lógicoSi Cerrado 1

No Abierto 0

Figura 44

Page 48: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 48/73

CLU B SABER ELECTRO N ICA 49

través de las cuales se estará habilitando laalarma Ent4 (pin4) y lectura del sensor Ent3

(pin3). De acuerdo a la manera de cómo pre-tendemos que sea la operación de nuestra

alarma, ésta comenzará a funcionar a partirde que la habilitemos por medio del pin4, es-

to es, que en esta terminal esté presente un“1” lógico, y mientras esta condición no esté

presente, la alarma nunca indicará si unapuerta o ventana fue abierta sin autorización,

por lo que podemos considerar que la alarmaestá desactivada para que contemos con la

posibilidad de abrir cualquier puerta o venta-na.

Después de que la alarma fue activada, elpaso siguiente es el revisar que ninguna puerta o ventana sea

abierta sin autorización, por lo que a través del pin3 se debe

leer un “1” lógico para que se cumpla dicha condición.La figura 47 muestra la activación de la alarma y lecturadel sensor. De acuerdo con la figura 47, los primeros bloques

que deben colocarse corresponden a los que realizan la revi-sión de los estados lógicos que guardan tanto el switch que ac-

tiva ó deshabilita la alarma, como con el que corresponde conla lectura del estado en que se encuentra el sensor magnético.

El primer bloque tiene la tarea de preguntar si la alarma ya fueactivada, por lo que se comparará el estado lógico de la termi-

nal de entrada 4 con un “1” lógico. Si la alarma aún no ha si-do activada, no tiene caso seguir con el desarrollo del progra-

ma, por lo que constantemente se estará revisando el estado ló-

gico de la terminal de entrada 4 hasta que la alarma sea acti-vada, esto es, sea colocado en “1” lógico el estado de la ter-

minal 4. Si la alar-ma ya fue activa-

da el paso siguien-

te será leer el esta-do lógico del sen-

sor magnético, porlo que siempre es-

taremos compa-rando el estado ló-

gico de la terminalde entrada 3 con

el estado lógico“0”. Recordemos

que el estado lógi-

co “0” en el sensormagnético signifi-

Figura 45

Figura 46

Figura 47

Page 49: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 49/73

50 CLU B SABER ELECTRO N ICA

ca que alguna puerta o ventana fue abierta y si esto sucediósin autorización, por medio del comando “high” estaremos en-

viando, a través de la terminal de salida 1, una señal a la bo-bina de un relevador para que sea generada una señal de alar-

ma remota.En la figura 48 se ilustran los bloques correspondientes al

establecimiento de una señal audible para avisar del evento deapertura de una puerta o ventana sin autorización.

En el desarrollo de esta parte del diagrama de bloques, en-contraremos dos nuevos, que se describen a continuación:

“let”.- Este bloque es empleado para asignar un valor en

cualquiera de las variables con que cuenta el microcontroladorPICAXE, además de permitir la realización de operaciones en-

tre las variables y valores constantes.

“sound”.- Este bloque contiene los parámetros necesariospara generar una nota musical a través de una terminal de sa-lida del microcontrolador, por lo que la sintaxis es sound termi-

nal de salida (nota, duración).Pues bien, una vez que hayamos revisado el potencial de

los bloques que a continuación utilizaremos, procedemos a ex-plicar la operación de esta segunda parte del diagrama de blo-

ques.De la figura 48 se observa que primero se asigna un 0 a

la variable b0; posteriormente, se incrementa en una unidad lavariable b0 por medio de la utilización de bloques con el co-

mando “let”. El valor de esta variable funcionará como la notamusical que será interpretada por medio del bloque identifica-

do como “sound”.El bloque sound tiene la propiedad de generar una nota

musical con tan sólo indicárselo por medio de los parámetrosque se encuentran dentro del paréntesis. De acuerdo con nues-

tro ejemplo, la variable b0 nos generará la nota que será ex-presada hacia el exterior del PICAXE a través de la terminal 0

y los valores que puede aceptar la variable b0 van desde 0 (si-lencio) hasta 127 notas ascendentes, y de 128 a 255 notas as-

cendentes de ruido. Para nuestro ejercicio, emplearemos las no-tas que van de 0 a 127 para dar vida a la alarma sonora, y

para obtener el efecto de una señal audible ruidosa, tendremosque ir incrementando la variable b0 partiendo de 0 hasta 127,

por lo que utilizaremos un bloque comparador, y cuando la va-riable b0 llegue a 127, nuevamente se iniciará la variable con

el valor de 0, y nuevamente comenzará el conteo ascendentede la variable. Esta actividad mostrará el efecto de notas musi-

cales ascendentes. El dato correspondiente a la duración de lanota dentro del paréntesis del bloque sound se puede expresar

con valores que vandesde 0 a 255, pero

debemos tomar en

cuenta que este valor

tiene que ser multipli-cado por una constan-te de aproximadamen-

te 1mseg.La variable b0 se

incrementará desde 0a 127 cuando se abra

una puerta o ventana,y este lazo continuará

hasta que una perso-na autorizada y con

una llave pueda resta-blecer la alarma, por

Figura 49

Figura 48

Figura 50

Page 50: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 50/73

CLU B SABER ELECTRO N ICA 51

lo que existirá un bloque en donde se esté revisando la condi-

ción lógica de la señal de entrada en el pin4, y cuando lea elestado lógico “0” significa que ya fue desactivada la alarma,

por lo que se tiene que revisar la condición del sensor magné-

tico, ya que si se deja la puerta o ventana abierta y se vuelvea restablecer la alarma, ésta se volverá a disparar generandonuevamente la señal audible y enviando la señal de alarma re-

mota. En la figura 49 vemos el diagrama de bloques comple-to. Como paso siguiente, deberemos simular la operación del

diagrama de bloques para estar completamente seguros deque el programa va a funcionar correctamente. Después de la

simulación, procedemos a convertir nuestro diagrama de flujoen código BASIC, por lo que recurrimos al menú Organigrama

y, dentro de éste, al comando “Convertir Organigrama en BA-SIC”, por lo que vamos a generar un código como el ilustrado

en la figura 50.Por último, para programar al microcontrolador PICAXE, se

tiene que estar dentro del ambiente de código BASIC, y de ahí nos dirigimos al menú PICAXE y después al comando “Ejecu-

tar”. De esta acción se provoca que se abra una ventana quenos va indicando el progreso de la programación del PICAXE.

Una vez que éste termine de programarse, nos muestra unaventana pequeña en donde nos comunica que se programó

perfectamente; caso contrario, también nos reporta las posiblescausantes del fallo.

La tarjeta entrenadora cuya imagen se observa en la figu-ra 51 es el cerebro de las actividades de nuestra alarma, por

lo que en este caso se le tienen que agregar los componentesilustrados en la figura 45, pero claro está que por el tamaño en

cuestión del número de terminales que posee un PICAXE-08, anuestra alarma le está destinado el proteger sólo una puerta o

ventana. Si queremos una alarma con mayor número de senso-res, tendremos que utilizar un PICAXE con mayor cantidad de

terminales y agregar, en el programa, lalectura del estado que tengan dichos sen-

sores.Continuaremos desarrollando ejem-

plos prácticos de programación, ya quenuestra meta es llegar a realizar diseños

de aplicaciones sin importar el nivel decomplejidad.

LISTA DE M ATERIALES

Tarjeta entrenadora del PICAXE – 08

El cable de programación3 Resistores de 390Ω 1/ 8Watt

1 Transistor 2N22221 Diodo 1N4001

1 Relevador para 5 V1 Reed switch

1 Botón con seguro1 Zumbador (buzzer)

Tarjeta Entrenadora PICAXE 18

A lo largo de estas líneas iremos describiendo todo lo que

corresponde a una nueva tarjeta entrenadora, que en estaoportunidad alojará al microcontrolador PICAXE–18, por loque como primer paso recordaremos cuál es el diagrama del

circuito básico de conexión de este PICAXE, para de ahí llegaral diagrama esquemático de la nueva tarjeta entrenadora. En

la figura 52, se muestra el circuito básico del cual se tiene quetomar en cuenta el número total de entradas y salidas que po-

demos manipular para aprovecharlas al máximo.Para el PICAXE–18 se tiene la oportunidad de disponer de

8 terminales de salida y 5 terminales de entrada; de estas últi-mas y dependiendo del tipo de microcontrolador PICAXE (PICA-

XE–18 ó 18A ó18X), se pueden co-

locar hasta tres en-tradas como entra-

das analógicas.La tarjeta entre-

nadora que se pro-pone en esta opor-

tunidad tiene la po-sibilidad de explo-

tar al máximo todaslas propiedades de

un PICAXE–18. Enla figura 53 se

muestra el circuitoesquemático de la

tarjeta entrenadoracompleta.

Figura 51

Figura 52 - Circuito básico de un PICAXE-18.

Page 51: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 51/73

52 CLU B SABER ELECTRO N ICA

A continuación describiremos cada bloque de esta tarjeta

entrenadora para que se le pueda sacar el máximo provecho.

Como primer paso será identificada la ubicación de dóndese encuentra el microcontrolador PICAXE–18, el cual justamen-te debe encontrarse sobre la base identificada como IC1, res-

petando en todo momento la distribución de las terminales.Sobre el conector identificado como salidas, se encuentran

concentradas las 8 de que dispone el microcontrolador PICA-XE, las cuales se encuentran identificadas desde S0 hasta S7.

Este conjunto de salidas pueden emplearse de manera indistin-ta para controlar algún elemento externo que bien puede ser un

actuador (elemento de potencia); todo depende de su naturale-za para, en función de ella, conectar en la salida un optoaco-

plador para encender o apagar un motor de CA, por ejemplo,

así como encender una lámpara incandescente o un simple dio-do led.

Sobre el conector denominado entradas, se tiene el reflejo

precisamente de las terminales de entrada al microcontroladorPICAXE. Las terminales de entrada se encuentran identificadas

como E0, E1, E2, E6 y E7; de estas últimas, dependiendo deltipo de PICAXE (PICAXE–18 ó 18A ó 18X), las terminales E0,

E1 y E2 pueden comportarse como terminales de entrada ana-lógica, esto es, tienen un convertidor analógico – digital. En las

terminales de entrada de datos se tienen que conectar aquelloscircuitos externos que generen algún estado lógico y que refle-

jen fielmente el estado de la actividad que están leyendo lossensores bajo algún proceso. Estos datos de entrada, de mane-

ra general, pueden clasificarse como discretos

o analógicos, entendiéndose como discretostodas aquellas señales que trabajan mediante

la lógica binaria, “0” lógico y “1” lógico,

mientras que las señales analógicas, son aque-llas, como la temperatura, que están variandocon el tiempo y puede adquirir un número infi-

nito de valores dentro de un intervalo bien es-tablecido.

Para esta tarjeta controladora no se nece-sita configurar alguna forma especial de tra-

bajo sobre su circuitería, por lo que sus aplica-ciones son inmediatas, ya que posee termina-

les dedicadas tanto para ingresarle como pa-ra extraerle datos, siendo el microcontrolador

PICAXE el elemento indispensable que realizatodas las acciones de control. Una vez identi-

ficadas las terminales de entrada y salida dedatos de la tarjeta entrenadora, como paso si-

guiente se tienen que identificar los módulosde apoyo para construir, implementar y/ o si-

mular alguna aplicación.El primer módulo de apoyo que describire-

mos es el relacionado con la actividad de re-presentar alguna acción del microcontrolador,

esto es, el poder señalar por medio de un indicador luminosoalguna respuesta. Para ello se cuenta con 2 circuitos basados

en leds que se encuentran en el área de experimentos de la pro-pia tarjeta entrenadora. Estos circuitos se muestran en las figu-

ras 54 y 55. Para hacer uso de estos circuitos, lo que tiene quehacerse es conectar, mediante un pequeño cable, el borne co-

rrespondiente, ya sea de S1 o S2, con cualquiera de las termi-nales de salida del microcontrolador, que pueden ser S0 ó S1

ó S2 ó S3 ó S4 ó S5 ó S6 ó S7 del conector “Salidas”. De es-ta forma, si la salida registra un “1” lógico, se encenderá el led

al cual fue conectado, y por lo contrario, si la salida reporta un“0” lógico, el led se apagará.

El segundo módulo de apoyo es el que genera estados dis-

cretos para poder hacerlos llegar al microcontrolador. Estos mó-

dulos pueden simular la activación o desactivación de determi-nados sensores o botones que se requieren en algún proceso.

Para este requerimiento, sobre la tarjeta entrenadora se cuenta

con 2 circuitos basados en pulsadores que se encuentran sobre

el área de experimentos. Estos circuitos se muestran en la placa

de la figura 55 y lo único que se tiene que hacer es conectar el

borne correspondiente, ya sea E1 ó E2, a cualquiera de las ter-

minales de entrada, que pueden ser E0 ó E1 ó E2 ó E6 ó E7 del

conector “Entradas”. Esto último da posibilidad a que durante la

fase de pruebas del programa del microcontrolador se pueda

evaluar si la secuencia con que se tienen que activar los senso-

res es la correcta o no, para poder estar seguros de que nues-tro programa operará completamente sobre nuestra aplicación.

Figura 53 - Diagrama esquemático de la tarjeta entrenadora PICAXE–18.

Page 52: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 52/73

CLU B SABER ELECTRO N ICA 53

El tercer módulo de apoyo es el que genera señales analó-

gicas para que puedan emplearse con aquel PICAXE que inter-namente posee un convertidor analógico – digital. Este módulo

puede realizar el trabajo de simulación, por ejemplo, de un

sensor de temperatura, de un sensor de presión, de humedad,etc. Para esta parte, la tarjeta entrenadora cuenta con un resis-tor variable identificado como POT1, por medio del cual se

puede cambiar el valor de voltaje que se hace llegar a la ter-minal correspondiente de entrada analógica del microcontrola-

dor que, dependiendo del tipo de PICAXE; éstas pueden ser E0

ó E1 ó E2 del conector “Entradas”. Ahora bien, lo que se quie-re es utilizar en la tarjeta programadora un sensor real, por

ejemplo un LDR (resistencia variable con la luz) o una galga ex-

tensiométrica (resistencia variable con la deformación), etc. Enel módulo de señales analógicas, a través del conector identifi-cado como “SENSOR”, se puede conectar un determinado sen-

sor que, en combinación con el resistor R8, se genera el volta- je cuyo valor responderá de acuerdo a la variable física que

lea el sensor.Cabe aclarar que

el tipo de sensor quese tiene que utilizar en

esta parte de la tarjetaentrenadora debe pre-

sentar un cambio en suvalor de resistencia pa-

ra que, en función deesto, se modifique el

valor de voltaje que eslo que lee el PICAXE

en las entradas analó-gicas. Las terminales

donde se refleja el es-tado del módulo que

Figura 55 - Disposición de los compo- nentes sobre la tarjeta entrenadora.

Figura 54 - Circuito Impresode la tarjeta entrenadora.

Figura 56 - Conector mini Jack de audio.

Figura 57 - Identificación de terminales en los

conectores mini jack y DB9.

Figura 58 - Cable de programación.

Figura 59 - Adaptador para programación.

Page 53: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 53/73

54 CLU B SABER ELECTRO N ICA

genera las señales analógicas se identifican como AN1 y AN2.

El espacio identificado como PROGRA se encuentra ocupadopor un conector de audio estéreo tipo mini Jack, el cual puede

tener cualquiera forma, tal como se ilustra en la figura 56.

El conector de audio estéreo tan sólo tiene 3 terminalesque serán utilizadas para comunicar al microcontrolador conuna PC a través del puerto serie. En la figura 57 se muestra el

diagrama de cómo se deben identificar las terminales, tanto enla tarjeta entrenadora como en el conector DB9 que se conec-

ta al puerto serie de una PC.Las terminales del conector de audio y DB9 realizarán las

siguientes actividades:• La línea identificada con el número 1 en el conector de

audio sirve para verificar que el microcontrolador PICAXE seencuentra conectado al puerto serie de la PC.

• La línea identificada con el número 2 en el conector deaudio sirve para programar al microcontrolador PICAXE.

• La línea identificada con el número 3 en el conector deaudio es la referencia GND ó también conocida como tierra

eléctrica.En la figura 58 se muestra la imagen de un cable de pro-

gramación. De lo contrario puede emplearse un adaptador (fi-gura 59) que realiza la misma función y con éste puede em-

plearse cualquier cable serie que se disponga.Por último, sobre la tarjeta entrenadora se tiene incorpora-

do un regulador de voltaje identificado como IC2 que posee elcódigo LM7805, y cuyo cometido es el de proporcionar un vol-

taje constante de 5V para alimentar al microcontrolador PICA-XE y los módulos auxiliares que tiene incorporados la tarjeta

programadora. Por medio de la utilización del regulador devoltaje es posible que podamos emplear para energizar a nues-

tra tarjeta de entrenamiento una pila de 9V.

LISTA DE COMPONENTES PARA LA TARJETA

CONTROLADORA PICAXE–18

IC 1 Ba se d e 1 8 te rm in a le s

IC 2 LM 7 8 0 5

D1, D2 Leds Verdes

D3 Led Ro jo

S1, S2, RESET Interruptores Push button

R1 , R4 , R5 : 1 0k Ω 1 / 8 W a tt

R 2 : 2 2 k Ω 1 / 8 W a t t

R3 : 1k Ω 1 / 8 W a tt

R6 , R7 , R9 : 3 9k Ω 1 / 8 W a tt

R8 : 1 0 0 k Ω 1 / 8 W a tt

Pot. 1: Preset 100

Sensor : B loque de te rmina les

Varios: Conec t o r m in i j a ck de aud io , co nec to r m in i p l ug

de aud io , a l am br es de conex ión , b r oche pa r a p i l a de 9 V y c i r - cu i to impreso.

Aprendiendo a Utilizar el ADC en la

Tarjeta Entrenadora del Picaxe-18

Con el PICAXE–08 se tiene la posibilidad de utilizar el con-

vertidor analógico a digital (ADC), la forma de utilizarlo bajoel sistema PICAXE es lo mismo para cualquiera de las versionesde microcontroladores, ya sea PICAXE–08, PICAXE–18 ó PICA-

XE–28. El empleo de un ADC es muy útil e inclusive necesario,sobre todo cuando tenemos que utilizar un sensor que nos re-

porta una variable cuyos valores cambian dentro de un rangoestablecido con el transcurso del tiempo. A estas variables se

les conoce con el nombre de analógicas, ya que tienen un com-portamiento como el ilustrado en la figura 60.

Dependiendo de la variable física que se tenga que medir(para, con su información, controlar determinado proceso), es

el sensor que emplearemos.Existen sensores para medir la temperatura, humedad, in-

tensidad luminosa, presión ejercida a una superficie, acelera-ción, deformación de materiales. Estas variables físicas son las

más comunes de medir ya que existen sensores comercialesmuy económicos para estas variables.

El aspecto común de todos los sensores, no importando aqué variable física responden, es que convierten la variable fí-

sica a una señal eléctrica cuyo valor correspondiente de formadirecta a la variable. Para el caso particular de la tarjeta entre-

nadora del PICAXE–18, se requieren sensores que cuenten,preferentemente, con una variación de resistencia al cambiar el

valor de la variable física, ya que sobre la tarjeta entrenadorase tiene implementado un circuito resistivo que, en combinación

con el sensor se genera un divisor de voltaje, el cual se encuen-tra conectado a un potencial de 5V. Las variaciones de éste, de

acuerdo a lo que mida el sensor, que es lo que se hace llegaral ADC del PICAXE.

En la figura 61 se ilustra el diagrama esquemático de latarjeta entrenadora PICAXE–18, de la cual nos interesan, en es-

ta ocasión, las terminales identificadas como AN1 y AN2. Sianalizamos con detalle la terminal que corresponde al borne

AN1, es allí donde se encuentra un conector con tornillos que

sirven para sujetar al sensor que utilicemos, recordando que

debe generar una variación resistiva a los cambios que presen-te la variable física. El sensor que utilicemos estará conectándo-se en serie con un resistor identificado como R8 y cuyo valor es

de 100kΩ. Este circuito serie tiene, en uno de sus extremos, elvalor positivo de 5V, y el otro GND; por lo tanto, al cambiar el

valor de la variable física se tendrá una repercusión sobre elsensor, ya que éste cambiará su valor resistivo. Al modificarse

el valor de resistencia del sensor, se tendrá una mayor o menorcirculación de corriente, recordando que todo depende de la

ley de Ohm, que dice:“El valor de la corriente es inversamente proporcional al va-

lor de la resistencia, y directamente proporcional al valor delvoltaje” (la fórmula matemática es: I = V/ R).

Page 54: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 54/73

CLU B SABER ELECTRO N ICA 55

Si cambia el valor de la corriente

en el circuito serie y nuevamente apli-camos la ley de Ohm, entonces se

tendrán variaciones de voltaje, ya

que la información del valor de volta- je la estaremos obteniendo de la co-nexión del sensor con R8.

El borne, identificado comoAN2, es más sencillo de utilizar, ya

que ahí se tiene un preset identificadocomo POT1, del cual una de sus 2 ter-

minales de los extremos se hace lle-gar al potencial de 5V y el otro a

GND. Es a través de su terminal delmedio de donde se obtiene el valor

de voltaje que se dirigirá posterior-mente al ADC del PICAXE. Observan-

do con detalle este circuito simple,nos daremos cuenta de que se trata

de 2 resistores conectados en serie, y que al modificar el valordel preset, le estaremos agregando resistencia a uno de estos

resistores y quitándole al otro. El propósito de utilizar este cir-cuito es únicamente para cuestiones didácticas, ya que estare-

mos simulando la operación de un sensor aún sin tenerlo, peroestaremos en absolutas posibilidades de comprobar nuestro

programa ya colocado en el PICAXE. La información contenidaen los bornes AN1 y AN2, que es el reflejo de un sensor (pa-

ra el caso de AN1) y la variación de un poten-ciómetro (para el caso de AN2) se tiene que

conectar a la entrada analógica del PICAXE.Para ello, dependiendo del tipo de microcon-

trolador PICAXE (PICAXE–18 ó 18A ó 18X), sepuede disponer de hasta tres entradas del tipo

analógicas. Los bornes de las entradas analó-gicas al PICAXE están identificados como E0,

E1 y E2, por lo que para hacer llegar la infor-mación de los bornes AN1 ó AN2 a E0 ó E1

ó E2, será mediante pequeños cablecillos deconexión, tal como se muestra en la figura 62.

Para ilustrar de mejor manera la utilización delADC del PICAXE vamos a recurrir al empleo de

un ejemplo práctico. Este ejemplo consistirá enencender o apagar una lámpara de alterna del

mismo tipo que utilizamos para iluminar nues-

tra casa. El circuito al que estamos haciendo re-ferencia es el de un control automático de lu-

ces. Este control automático detectará, a travésdel LDR, cuándo se oculte nuestro astro rey

(Sol) y se comiencen a oscurecer las calles, yviceversa, cuando empiece a amanecer, de

igual manera la luminosidad producida serádetectada a través del LDR (figura 63). La en-

trada que será utilizada con el valor analógico de la intensidadluminosa está en el borne de entradas de la tarjeta entrenado-

ra, y se trata de la entrada E0. El LDR, prácticamente, es unaresistencia variable que está constituida por un material fotosen-

sible; por lo tanto, la intensidad luminosa provocará que dismi-nuya su valor de resistencia, mientras que la oscuridad o ausen-

cia de luz ocasionará que tenga su máxima resistencia, y de-

pendiendo del tipo de LDR puede tener valores de resistenciaque son de 2MΩ, ó 10MΩ en la oscuridad. Para controlar el

Figura 60 - Diferentes tipos de señales analógicas

Figura 61 - Diagrama esquemático de la tarjeta entrenadora PICAXE–18.

Page 55: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 55/73

56 CLU B SABER ELECTRO N ICA

apagado o encendido de la lámpara de alterna, se requiere un

circuito que maneje la potencia, o dicho con otras palabras, senecesita que la cantidad de corriente que consuma la lámpara

no la suministre directamente el PICAXE, por lo que se emplea

una interfaz implementada a base de un transistor identificadocomo Q1, además de utilizar también un relevador que se en-

cuentra identificado como RL1. Todo esto se ubica en el diagra-

ma de la figura 62. La salida que se utilizará se encuentra enel borne de salidas de la tarjeta entrenadora y se trata de la sa-

lida S0. En la salida S0 se tendrá un “0” lógico si la intensi-

dad luminosa detectada es suficiente como para que se apa-gue la lámpara; por otra parte, si la intensidad luminosa es

muy baja o se tiene oscuridad total, en

la salida S0 se tendrá un “1” lógico,

provocando que se encienda la lámpa-

ra correspondiente. Esta información se

hace llegar al transistor Q1, que a su

vez, dependiendo de la información

que tenga en su base, energizará o no

la bobina del relevador RL1, siendo los

contactos de este relevador quienes ma-

nejen la tensión alterna de línea y seránellos quienes enciendan o apaguen, fi-

nalmente, la lámpara. Una vez explica-da la parte que corresponde a la electró-

nica de la tarjeta entrenadora, así comolos dispositivos y circuitos que se le agre-

garán para su funcionamiento, ahoraprocederemos a explicar cómo se elabo-

ra el programa con el cual controlaremosel encendido o apagado de una lámpa-

ra de corriente alterna, así que prosiga-mos adelante.

Figura 62 - Conexiones sobre la tarjeta

entrenadora PICAXE-18.

Figura 63 - Imagen

de un LDR.

Figura 64 - Icono del programa

“PICAXE Programming Editor” Figura 65 - Ventana de Opciones.

Figura 66 - Barra de comandos con el menú “Other”.

Page 56: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 56/73

CLU B SABER ELECTRO N ICA 57

Lo primero que tenemos que hacer es abrir nuestro progra-

ma llamado “PICAXE Programming Editor” (figura 64) y quepreviamente tuvimos que instalar, y si aún no se tiene, lo pue-

den descargar de nuestra página de internet www.webelectro-

nica.com.ar con la clave “picaxe”, o en su defecto también lopueden adquirir en la página www.picaxe.uk.co.

Una vez dentro del programa editor de los PICAXE, se

abrirá una ventana en donde se muestran las distintas opcionespara utilizar los PICAXE, y en esta ocasión, tenemos que elegir

alguno de los PICAXE–18; todo depende de cuál de ellos seacon el que contemos.

Comenzaremos programando con diagramas de flujo paraaprender a utilizar los distintos comandos, y posteriormente los

convertiremos en código Basic. Así es que tenemos que selec-cionar el comando que abre la plantilla de trabajo con diagra-

mas de flujo. Observe la figura 65. Ya en el ambiente de programación con diagramas de flu-

jo, lo primero que tenemos que seleccionar en la barra de co-mandos es el que está identificado con la palabra “other” (fig.

66) ya que ahí es en donde se encuentra la herramienta parautilizar el comando de lectura del convertidor ADC del PICAXE.

El comando del ADC está identificado como “readadc” ylo único que tenemos que hacer es seleccionarlo para poderlo

colocar en el área de trabajo, y con el comando de selecciónque está identificado con una flecha, le indicaremos en qué en-

trada estará ubicada la de valores analógicos. Normalmente,cuando seleccionamos el comando “readadc”, por defecto se

selecciona la entrada E0, pero recordemos quepodemos seleccionar cualquiera de las entra-

das E0 ó E1 ó E2 ó las tres al mismo tiempo,ya que sólo tenemos que conectarles el corres-

pondiente circuito con el sensor analógico. Re-cuerden también que dependiendo del tipo de

PICAXE–18 (PICAXE – 18 ó 18A ó 18X) seránlas entradas analógicas que emplearemos. (Fi-

gura 67).Para colocar el comando “readadc”, lo

podemos hacer directamente uniendo el extre-mo superior del bloque del comando “rea-

dadc” (Fig. 68) con el del bloque “start”; estaacción la llevamos a cabo para optimizar es-

pacio en el diagrama de flujo, y ahorrarnos lautilización de la herramienta “wire”.

El comando “readadc” tiene la tarea de

leer el valor de la variable analógica que enesta etapa se encuentra en su correspondiente

valor de voltaje, y tal como se encuentra expre-sado en la figura 68, el 0 que se encuentra

después de la palabra readadc indica qué ter-minal de entrada es la que se está utilizando

con el ADC, y después se encuentra la varia-ble b0, que es donde se aloja el valor analógi-

co que está leyendo

el PICAXE.El paso siguien-

te es verificar qué

valor tiene la varia-ble b0 (Fig. 69) pa-ra que cuando se

compare este valorse sepa si existe lumi-

nosidad u oscuridaden el medio ambien-

te. En este caso, te-nemos que seleccio-

nar el menú “if” paraubicar los comandos

de verificación devalores; posterior-

mente, seleccionare-mos el comando que

está identificado co-mo “var”, ya que es

con éste con el quecompararemos los

valores de las varia-bles con las que

cuenta el microcon-trolador PICAXE.

Figura 69 Co-

mando que com-

para el valor de

la variable b0.

Figura 70 Diagrama

de flujo

completo.

Figura 67 - Comando

“readadc”.

Figura 68 - Colocación del

comando “readadc”.

Figura 71 - Programa completo y ventanas

del simulador.

Page 57: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 57/73

58 CLU B SABER ELECTRO N ICA

Para configurar el comando “var”, tenemos que seleccio-

nar en qué variable se está guardando el dato que será digita-lizado, y que en esta ocasión se trata de la variable b0. Aho-

ra seleccionaremos el operando “mayor que” para indicarle al

PICAXE que para todos los valores analógicos mayores que de-terminado valor nos debe reportar una salida verdadera y en-tonces el flujo lógico se dirigirá a través de la salida identifica-

da como Y. El valor que fijaremos es el de 125, que práctica-mente representa la mitad del rango total que puede ser digita-

lizado y cuyo valor máximo es de 255. Para nuestro programa,cuando se tienen valores por debajo de 124, indicará que se

tiene suficiente luminosidad; por lo tanto, al salir la informaciónpor la salida N del bloque “var”, mandará apagar la lámpara.

Cuando se tienen valores mayores a 125, indicará que la lumi-nosidad es muy baja, por lo que mandará encender la lámpa-

ra. A la salida identificada como N se le conectará el bloque“low”, cuya función será la de apagar la salida S0 que es en

donde se encuentra conectado el circuito externo que controlala lámpara, mientras que a través de la salida identificada co-

mo Y se encuentra el bloque “high” que será la encargada deactivar la salida S0 y de esta manera encender la lámpara. El

diagrama de flujo completo se muestra en la figura 70.En la figura 71 se observa la simulación del ADC; para

ello, se tiene la ventana donde se muestran las entradas y lassalidas y en la parte derecha se muestra el área en donde se

puede manipular la entrada correspondiente al ADC. Al moverla barra correspondiente de la entrada analógica, observare-

mos cómo en la ventana correspondiente a las variables se irámodificando la variable b0, que es donde guardaremos el da-

to originado en el ADC. Cuando hemos visto que nuestro dia-grama de flujo realiza las funciones lógicas que esperamos, en-

tonces estamos en posibilidad de convertir el código a Basic(Fig. 72), para posteriormente descargarlo a nuestro PICAXE

por medio de la tarjeta programadora.En la figura 73 y 74 se muestra la manera de cómo pode-

mos armar nuestro cable de programación o, en su defecto, uti-lizar un cable serie común y un adaptador como el que se

muestra en la figura 75.

Por último, sobre la tarjeta entrenadora se tiene incorpora-

do un regulador de voltaje identificado como IC2 que posee elcódigo LM7805, y cuyo cometido es la de proporcionar un vol-taje constante de 5V para alimentar al microcontrolador PICA-

Figura 75 - Adaptador para

programación.

Figura 74Cable de

programación.

Figura 72 - Programa en código Basic.

Figura 73 - Identificación de terminales en los co- nectores mini jack y DB9.

Page 58: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 58/73

CLU B SABER ELECTRO N ICA 59

XE y los módulos auxiliares que tiene incorporados la tarjeta

programadora. Por medio de la utilización del regulador devoltaje, es posible emplear para energizar a nuestra tarjeta de

entrenamiento una pila de 9V.

LISTA DE COMPONENTES PARA ARMAR LA

TARJETA CON TROLADORA PICAXE–18.

Tarjeta entrenadora PICAXE–18.

D1 -Diodo 1N4001Rext1 -1 kΩ 1/ 8 Watt

RL1 -Relevador 5VQ1 - BC548

LDR

Varios: Cable de programación o Cable serie y adapta-dor, cables de conexión, batería de 9V.

Control de Temperatura con la Tarjeta

Entrenadora del Picaxe-18La temperatura es uno de los parámetros que más se con-

trola, ya que desde una simple casa, hasta algún proceso in-

dustrial de una empresa cuenta con este tipo de dispositivos, loscuales pueden ser muy simples o inclusive llegan a ser elemen-tos muy complejos y avanzados.

En la figura 76 vemos el diagrama esquemático de la tar- jeta entrenadora PICAXE-18, con el sensor LM35 integrado a

ella.Comercialmente existen medidores de temperatura cuya

función es sólo, mostrar el valor de temperatura, y por otra par-te también están presentes los controles de algún proceso que

actúan en función del valor de la temperatura. Estos últimoscontroles basan su forma de operar en un convertidor analógi-

co - digital, si es que el control es electrónico y digitalizado, ymás que mostrar el valor de temperatura, su utilidad principal

Figura 76

Page 59: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 59/73

60 CLU B SABER ELECTRO N ICA

radica en el hecho de realizar tareas como la de controlar demanera autónoma la temperatura de una caldera, de una habi-

tación, de un invernadero, etc.En la figura 77 podemos observar las conexiones sobre la

tarjeta entrenadora PICAXE-18.La temperatura es una de las variables físicas más fáciles y

económicas de controlar. En casi cualquier negocio de produc-tos electrónicos encontraremos, por ejemplo, un simple circuito

integrado identificado como LM35, que es un sensor electróni-co de temperatura.

En esta oportunidad vamos a implementar un algoritmo pa-

ra diseñar un control automático de

temperatura basándonos en nuestromicrocontrolador PICAXE, en el cual fi-

jaremos un valor que servirá de refe-

rencia para saber en qué momento sedeberá activar ó desactivar un equipode aire acondicionado, un ventilador

ó un calefactor, etc.Aquí lo más importante es que de-

bemos seleccionar un sensor que nosentregue un valor de voltaje que tenga

una correspondencia con el valor detemperatura que está midiendo, que

en este caso puede ser el LM35, queya se encuentra calibrado en grados

centígrados (°C). Otro tipo de sensorque se puede emplear para leer la

temperatura, sería un termistor que, adiferencia del LM35, basa su opera-

ción en cambios de valores de resisten-cia de acuerdo a la variación de tem-

peratura.Sea para un sensor que entrega voltaje o para un sensor

que cambia su valor resistivo, la tarjeta entrenadora del PICA-XE - 18 contempla la utilización de ambos, y para ello se cuen-

ta con un espacio reservado a cada uno de los sensores. Si setrata del sensor LM35 que entrega voltaje, se tendrá que conec-

tar en el espacio que se encuentra sobre la tarjeta entrenadoray que se identifica como Pot1. Para ello, se tendrá que retirar

el preset si es que ya había sido colocado, para colocar el sen-sor LM35 en su lugar, respetando la ubicación de las termina-

les del voltaje de alimentación (Vcc y GND). El terminal que en-trega el nivel de voltaje de acuerdo con la temperatura presen-

te, es el AN2, que se tiene que conectar por medio de un pe-queño cablecillo a cualquiera de las entradas E0 ó E1 ó E2 que

tiene el microcontrolador PICAXE.Por otra parte, si se emplea un termistor, sólo tendrá que

colocarse en el conector identificado como “sensor” y en el

cual se tiene contemplado que se utilice un bloque conector con

tornillo. Aquí ya está preparado el circuito que complementaráal termistor (divisor de voltaje) para que de esta manera las va-riaciones de temperatura se conviertan en valores de voltaje en

el terminal AN1, y de igual manera, por medio de un cableci-llo, se puede conectar esta información a cualquiera de las tres

entradas que posee el convertidor analógico digital del micro-controlador PICAXE.

En esta ocasión y para este proyecto, utilizaremos el sensorLM35 para medir la temperatura, y con esta variable física es-

taremos en posibilidad de controlar la temperatura de un recin-to cerrado, como ser una habitación ó el interior de un vehícu-

lo. Ya vimos en la figura 77 el diagrama del circuito que seráadecuado para complementar la operación de la tarjeta entre-

Figura 77

Figura 78

Page 60: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 60/73

CLU B SABER ELECTRO N ICA 61

nadora del PICAXE - 18, como circuitería complementaria a la

tarjeta entrenadora, se observa la conexión del sensor de tem-peratura, que en esta ocasión se trata del circuito integrado

LM35. Por otra parte, también se observa el circuito externo

que activa el ventilador, el cual se encuentra implementado através de un amplificador operacional, un transistor y un rele-vador, principalmente.

En la figura 78 se ve el diagrama de flujo del programa delPICAXE. El sensor de temperatura LM35 proporciona un valor

de voltaje que está de acuerdo con la magnitud de temperatu-ra que se encuentre en el recinto donde esté instalado. De

acuerdo con el fabricante, su rango de operación va de 0V a1.5V, que equivale a 0°C y 150 °C, respectivamente, y a ca-

da cambio de 1 °C, el valor de voltaje cambia en 10mV. Porlo tanto, es muy fácil saber qué valor de temperatura está mi-

diendo al saber el valor de voltaje que entrega el sensor. Porejemplo, cuando se tenga un valor de 35 °C, se tendrá un va-

lor de 350mV.La forma de emplear el sensor LM35 y el circuito exterior

se ilustra puede verlo nuevamente en la figura 77. En ella seaprecia que se puede utilizar un ventilador que puede poseer

un motor tanto de CA como de CD. Esto es posible, ya que es-tamos empleando un relevador como elemento de interfaz en-

tre la etapa de control y la de potencia. La bobina del releva-dor está siendo controlada por un amplificador operacional,

que es el dispositivo que servirá de protección entre la salidadel microcontrolador PICAXE y la bobina del relevador. El am-

plificador operacional, entre otras cosas, tiene la propiedad deno demandar corriente del terminal de salida del PICAXE, y por

ello no se sobrecargue. La configuración en la que se encuen-tra el amplificador operacional se llama seguidor de voltaje, y

en ella el voltaje de entrada es exactamente igual al que estáentregando. Por lo tanto, como el PICAXE le entrega 5V al se-

guidor de voltaje cuando su salida esté activada, la salida delamplificador operacional también será de 5V pero casi sin de-

mandarle corriente al PICAXE. Posteriormente, la salida del se-guidor de voltaje se hace llegar a un transistor 2N2222 (de

propósito general), que es el que se encarga de manejar todala corriente que demandará la bobina del

relevador cuando éste necesite ser activa-do. El transistor le ayuda al amplificador

operacional a que no se caliente cuandocircule una corriente muy alta. Es recomen-

dable que la fuente que energice la bobina

del relevador sea independiente de la queenergiza a la tarjeta entrenadora del PICA-

XE - 18, ya que cuando el relevador se ac-tiva, éste demanda una corriente muy gran-

de, y si empleamos el mismo regulador devoltaje que posee la tarjeta entrenadora, és-

te podría sobrecalentarse demasiado, hastatal punto que puede llegar a bloquearse y

toda la circuitería comenzará a trabajar de una forma muy de-

ficiente y podría, entre otras cosas, comenzar a encenderse yapagarse continuamente, provocando que el ventilador se en-

cienda y apague a cada rato.

El valor de voltaje correspondiente con la magnitud de latemperatura estará en el borne del terminal AN2, y de ahí, pormedio de un cablecillo, haremos llegar esta información al ter-

minal de entrada E0 que configuraremos como entrada para elconvertidor analógico - digital del microcontrolador PICAXE.

Para controlar el encendido o apagado del ventilador, utiliza-remos el terminal S0 de la tarjeta entrenadora, que también co-

rresponde a un terminal de salida del PICAXE.En la figura 79 se ve la simulación del programa.

Para comenzar a programar al microcontrolador PICAXE,primero describiremos qué es lo que pretendemos en cuanto a

la forma de operación de esta aplicación, o sea:El sensor de temperatura se encontrará leyendo de manera

continua la magnitud de la temperatura, que se hará llegar aun canal del convertidor analógico - digital del microcontrola-

dor PICAXE. Este último, de acuerdo con el programa (es lo quevamos a realizar a continuación), activará una de sus salidas

para controlar la bobina de un relevador.Para controlar el apagado o encendido de la bobina del

relevador, se requiere lo siguiente: por medio de un “0” lógicose apagará la salida S0; por lo tanto, la bobina del relevador

se desenergizará, mientras que un “1” lógico en la misma sali-da S0 provocará que la bobina del relevador se energice. Una

vez que ya sabemos de qué manera tiene que operar el micro-controlador PICAXE, procedemos a explicar la realización del

programa.

En desarrollos anteriores hemos comenzado esta parte de la

aplicación con las siguientes palabras, “lo primero que tenemos

que hacer es abrir nuestro programa llamado “PICAXE Program-

ming Editor”. Por lo tanto, nuevamente hacemos la indicación

de que pueden descargar el software de nuestra página de inter-

net si es que aún no lo tienen, la página es www.webelectroni-

ca.com.ar y empleen la clave “picaxe”, en su defecto, también

lo pueden adquirir en la página www.picaxe.uk.co.

Figura 79

Page 61: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 61/73

62 CLU B SABER ELECTRO N ICA

Recuerden que al ingresar en el programa lo primero que

se abrirá será una ventana, de la cual, en la pestaña opciones,seleccionarán el PICAXE que será utilizado para el proyecto, se

puede emplear cualquier microcontrolador PICAXE, ya que la

estructura del programa es válido para cualquiera de ellos, pe-ro recuerden que tenemos microcontroladores de 8, 18, 28 y40 terminales; por lo tanto, las terminales de salida y de entra-

da cambian de posición y cantidad de acuerdo al PICAXE quese vaya a utilizar. Cuando empleamos un convertidor analógi-

co - digital (ADC), lo primero que tenemos que hacer es calcu-lar su resolución y para ellos nos basamos en la fórmula Nº1.

Resolución = Valor del rango

----------------------------------

2N - 1

En este caso el valor del rango es el que tiene la entradadel ADC del PICAXE, que es de 5V. La variable N representa

la cantidad de bits que posee el ADC, que en este caso es de8; por lo tanto, la expresión anterior queda como sigue:

5 5

Resolución = --------------------- = ----------------------- =28 - 1 256 - 1

= 0.0196V = 19.6mV

Con este dato ya sabemos que con cada cambio de0.0196V que exista en el ADC, se tendrá el incremento de un

bit en un conteo a base de 8 bits. Por otra parte, y recordandoque el sensor LM35 trabaja en el rango de 0 °C a 150 °C cu-

yos valores equivalen a 0V y 1.5V, respectivamente, por razo-nes obvias no será empleado todo el rango de trabajo del ADC

del PICAXE, ya que la temperatura ambiente, por ejemplo enun lugar extremo, es de hasta 55 °C, y ya estamos hablando

de un desierto. Para este desarrollo el valor de temperatura quenos interesa es el de 25 °C, ya que por debajo de este valor po-

demos considerar que la temperatura es agradable, pero por

encima de este valor consideraremos que hace demasiado ca-

lor, por lo que tenemos que encender el ventilador (este nivel detemperatura se puede ajustar a las preferencias de las personas

o los lugares). Para la temperatura de 25 °C se tiene un valor

de voltaje equivalente a 250mV; por lo tanto, tenemos que sa-

ber qué número binario será el resultante una vez que es ingre-

sado al ADC del PICAXE. Para ello, emplearemos el valor de la

resolución y el del valor analógico (Va) que tendremos que digi-

talizar. Por lo tanto, Va = 250mV, y para calcular la combina-

ción binaria tenemos la siguiente expresión matemática:

Comb. binaria = Valor Analógico (Va)-------------------------------------–––

Resolución

Por lo tanto:

250mV

Comb. binaria = ----------------------- = 12.75 ≈ 13

19,6mV

El valor de 13 ahora lo tenemos que convertir a su corres-

pondiente valor binario de 8 bits, quedando como sigue:00001101.

Este último valor binario es el que tomaremos como basepara realizar la comparación de los diferentes valores de vol-

taje que tienen una correspondencia directa con el valor detemperatura, y entonces, para cualquier valor por debajo de

00001101 (13), se desactivará el ventilador, mientras que pa-ra cualquier valor por arriba de 00001101 se tendrá que en-

cender el ventilador. Por lo tanto, de la figura 78 observe quedespués de tomar un dato, digitalizarlo y almacenarlo de ma-

nera temporal en la variable b0, se realiza una comparacióndel valor guardado en b0 con el valor de referencia que es 13,

siendo el operador empleado en esta comparación el de un ›(mayor que), para saber en qué momento el valor de la tempe-

ratura sobrepasa la magnitud de 25 °C, tal como se encuentraexpresado en el diagrama de flujo de la figura 78.

El programa es muy simple ya que tan sólo se trata de leerun dato analógico y guardarlo en una localidad de memoria

RAM. El comando para realizar la lectura del dato analógicoes el que está identificado como “readadc” y se encuentra en

el bloque identificado como “other” en la página principal delprograma “Programming Editor”.

Para configurar este comando se le tiene que asignar encuál de las entradas que posee el microcontrolador PICAXE se

estará empleando el ADC, además de indicarle en cuál varia-ble (localidad de memoria RAM) se alojará el dato digitaliza-

do. Posteriormente, para comparar el dato que se obtiene des-pués de la digitalización se toma de la localidad de memoria

este valor y se compara con el valor 13 (00001101) que yafue explicado anteriormente.

El comando para realizar la comparación es un rombo y se

encuentran en la página principal dentro del bloque “if”. De

aquí, si el valor de la variable es mayor que el dato 13, enton-ces se interpretará como que la temperatura se encuentra porarriba de 25 °C, y; por lo tanto, encenderemos la salida S0 del

PICAXE para que se observe esta acción mediante la activa-ción del ventilador.

En la figura 79 se muestra la simulación del ADC, obser-vándose en ella las ventanas donde se muestra el estado de las

entradas, las salidas y las variables temporales.En la figura 80 publicamos el programa en código Basic.

Una vez que el diagrama de flujo ya se encuentra operan-do completamente, el paso siguiente será el de convertir el có-

digo a basic, y posteriormente descargarlo al PICAXE instaladoen la tarjeta programadora.

Page 62: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 62/73

CLU B SABER ELECTRO N ICA 63

Aunque ya lo hemos mostrado anterior-

mente, en la figura 81 nuevamente mostra-mos la manera de cómo podemos armar el

cable de programación con la identificación

de terminales en los conectores mini jack yDB9.

Aún nos falta desarrollar una gran can-

tidad de ejercicios, razón por la cual los in-vitamos a que sigan esta serie de ejemplos

de utilización y consejos de programación.

LISTA DE COMPONENTES PARA ARMAR LA

TARJETA CONTROLADORA PICAXE-18

Tarjeta entrenadora PICAXE-18.D1 - Diodo 1N4001

Rext1 - 5.6kΩ 1/ 8WRext2 - 390Ω 1/ 8W

RL1 RelevadorQ1 - 2N2222

Sensor LM35

Varios: Cable de programación, ó Cable serie y adapta-dor, cables de conexión, batería de 9V.

Programa para Desplegar Números BCDcon la Tarjeta Entrenadora del Picaxe-18

En muchas ocasiones y para la mayoría de las aplicacio-

nes que desarrollamos sobre un microcontrolador, tenemos quemostrar algún resultado sobre un display, que bien puede ser

de segmentos o de LCD, por lo que es nece-sario saber de qué manera se desplegará la

información sobre las salidas que se tienenreservadas en un microcontrolador PICAXE.

Si nos ponemos a contabilizar todo el

conjunto de información que tiene que salir

por el puerto correspondiente de algún micro-controlador para manipular un display, nece-

sitaríamos de una gran cantidad de líneas que

se reserven para ese uso exclusivo. De hecho,

no alcanzarían todas las líneas que tuviera

disponible el microcontrolador, razón por la

cual tenemos que emplear una técnica que

nos ayude a solucionar este problema.En este ejemplo haremos uso de displays

de 7 segmentos, para así aprender a enviar-les la información a éstos.

La técnica que emplearemos es la de mul-tiplexación de la información, por lo que pro-

cederemos a explicar en primera instancia el circuito que se

empleará con los displays de 7 segmentos, el cual incluye un

total de 3 displays de cátodo común.El circuito de los displays recibe el nombre de “Display de

3 dígitos” cuya publicación complementaria se realizó en la re-vista Saber Electrónica Nº 220 Edición Argentina. El principio

de operación es muy básico: se le hacen llegar 4 bits que sonlos que generan el código BCD, además de 3 bits que son los

que indican qué número es el que se estará desplegando, estoes, se controla el encendido del display correspondiente con las

unidades, decenas o centenas.Si se requiere mostrar el valor “578” entonces se requiere

enviarle al circuito del “Display de 3 dígitos” la combinación“1000” (8) y después el bit que enciende el display de la uni-

dades, después se tiene que enviar el “0111” (7) posteriormen-te el bit que enciende el display de las decenas y por último el

“0101” (5) y como paso siguiente se tiene que enviar el bit queenciende el display de las centenas. Este proceso se tendrá que

repetir muchas veces, dando la impresión de que siempre estánencendidos los displays.

Figura 80

Figura 81

Page 63: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 63/73

64 CLU B SABER ELECTRO N ICA

Lo que se pretende con estas instrucciones es adquirir el co-

nocimiento de cómo se tiene que generar la información en unmicrocontrolador PICAXE, para que, posteriormente, ésta sea

enviada a las terminales de su puerto de salida. Por lo tanto, y

de acuerdo a la descripción anterior, que se hizo de la mane-ra cómo funciona el circuito auxiliar denominado “Display de3 dígitos”, se tiene lo siguiente:

De alguna manera, ya debemos contar con datos, que tu-vieron que ser adquiridos previamente por algún proceso por

el microcontrolador PICAXE (por ejemplo la lectura a través delconvertidor ADC descrito anteriormente en esta serie). Una vez

procesados estos datos, de acuerdo con nuestra aplicación,puede ser muy importante desplegar un dato numérico, porque

a lo mejor estamos diseñando un voltímetro digital, por ejem-plo.

En la figura 82 vemos la tarjeta entrenadora PICAXE-18 yla tarjeta del Display de 3 dígitos. Se muestra la manera de co-

nectar el circuito auxiliar “Display de 3 dígitos” a la tarjeta en-trenadora, por lo que ahí se observan las líneas de conexión

entre los terminales de salida del puerto de la tarjeta entrena-dora que van hacia las terminales de entrada del circuito auxi-

liar. Cabe aclarar que ésta es tan sólo una sugerencia de có-mo hacerlo, ya que cada uno puede realizar las conexiones de

la mejor manera posible y así optimizar los recursos de la tar- jeta entrenadora.

Sobre la misma figura 82 no se hace mención de la cone-

xión de la energía al display de 3 dígitos, pero ésta se pue-

de tomar de los terminales disponibles sobre la tarjeta entre-nadora que tienen la identificación de +5V, y hacer llegar es-

te voltaje al borne identificado como +Bat. Una vez descrita

la disposición de la circuitería, procedemos a explicar el de-

sarrollo del programa del microcontrolador PICAXE. Para es-

ta explicación, como ya se había establecido en líneas ante-

riores, la información que será desplegada de alguna mane-

ra ya fue adquirida o procesada por el microcontrolador, por

lo que la única tarea que se tiene es la de mostrarla a través

del display.

Supongamos que se requiere desplegar la información“246” a través del display; por lo tanto, en primera instanciase tiene que leer el dato de una localidad de memoria tempo-

ral donde fue alojado para su posterior utilización. El dato aser desplegado lo debemos seccionar en tres partes, para su

mejor manejo; por ello, se tiene que el número cuenta con lassiguientes partes: unidades, decenas y centenas, por ser 3 las

cifras que componen al número total. En esta ocasión y comosugerencia, el dato de las unidades se encontrará ubicado en

la localidad de memoria temporal representada por el registrodel microcontrolador PICAXE b0, el dato de las decenas se en-

contrará en el registro b1 y las centenas en el registro b2.En el programa que se va a describir, observe la figura 83.

Los primeros bloques muestran la manera de cómo se guardaun dato en los registros antes mencionados (b0, b1 y b2). Este

fragmento del programa puede omitirse o reemplazarse total-mente, dependiendo de la aplicación, y nuevamente recorda-

mos que esta parte del programa es para uso específico de es-ta aplicación. En la figura 83 vemos los bloques de asignación

de valores a los registros b0, b1 y b2.El comando “let” permite la asignación de valores a varia-

bles. Esta asignación se puede dar de una forma directa comoestá expresado en esta aplicación, o también se puede efectuar

la asignación del resultado de una operación aritmética (+, -,*, / ) ó por el resultado de una operación lógica (and, or, ne-

gación, etc.). En este ejercicio se está empleando el comandode asignación de manera directa sobre los registros para alo-

jar los valores que corresponden a las unidades, decenas ycentenas en b0, b1 y b2, respectivamente.

Figura 82

Page 64: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 64/73

CLU B SABER ELECTRO N ICA 65

Antes de continuar con la explicación del desarrollo del

programa, regresemos por un instante al circuito de la figura82 para saber de qué manera están organizados los datos que

salen por el puerto de salida del microcontrolador PICAXE, yaque así será más sencillo seguir el desarrollo del programa.

En la figura 82 también se muestra la forma de conectar eldisplay a la tarjeta entrenadora y del circuito se observa lo si-

guiente: las terminales de salida S0, S1, S2 y S3 representanlos 4 bits que generan las diferentes combinaciones BCD (Bi-nary Code Decimal o en español Código Binario Decimal) de

acuerdo con la tabla 2. De ésta, que contiene los números BCDy su equivalente decimal, podemos obtener el peso específico

de cada uno de los bits que generan el valor numérico BCD,siendo S0 el bit menos significativo (bms), mientras que S3 re-

presenta el bit más significativo (BMS). Esta información BCDse hace llegar a los 3 displays al mismo tiempo, razón por la

cual se tiene que indicar cuál de estos displays estará activo deacuerdo con la cifra que se quiere desplegar, ya que de otra

manera los 3 se encenderán con la misma in-

formación. La solución a lo anteriormentedescrito se encuentra en el circuito de la figu-ra 82, en donde se observa que las termina-

les S4, S5 y S6 corresponden al control delas cifras de las unidades, decenas y cente-

nas respectivamente, de acuerdo con la in-formación que se encuentra en la tabla 3.

Una vez que hemos visualizado la ma-nera en cómo se encuentra ordenada la in-

formación del puerto de salida del microcon-trolador PICAXE, ahora procederemos a ex-

plicar la manera en que se envían los datosal circuito del display de 3 dígitos.

Se mencionó en líneas anteriores que en

esta aplicación solamente se desplegará la in-formación que se encuentre contenida en los

registros b0, b1 y b2. Para un programa de un

proceso completo, de alguna manera estos re-gistros tendrán que ser manipulados; por lotanto, consideramos que esa actividad ya se

realizó y los datos ya se encuentran en los re-gistros antes mencionados. Como siguiente pa-

so, procedemos a la acción de enviar cadauna de las cifras del número completo a los dis-

plays y que en esta ocasión se trata del valor“246”, por lo que comenzamos con el armado

de la información que será enviada al puertode salida del microcontrolador PICAXE. La pri-

mera cifra que sufrirá la manipulación es la co-rrespondiente a la de las unidades, razón por

la cual, en primera instancia, emplearemos unnuevo registro, el “b3”. Ahí alojaremos un da-

to de manera directa a través del comando deasignación “let”, tal como se ilustra en la figura 84. El valor que

se está guardando enel registro b3 es el

16(10) que equivale ala combinación bina-

ria 0010000(2), quees precisamente la que

controla el encendidodel display de la uni-

dades. Posteriormente,para enviar la informa-

ción completa al puer-to de salida del PICA-

XE, se hace uso nueva-mente del comando de

asignación “let”, peroen esta ocasión el re-

sultado de esta asigna-

TABLA 2

Número BCD Número

(S3,S2,S1,S0) Decimal

0000 0

0001 1

0010 2

0011 3

0100 4

0101 5

0110 6

0111 7

1000 8

1001 9

Tabla 3 - Activación y desactivación de los displays.

(S6,S5,S4) Display Centenas Display Decenas Display Unidades

000 Apagado Apagado Apagado

001 Apagado Apagado Encendido

010 Apagado Encendido Apagado

100 Encendido Apagado Apagado

Tabla 4 - Resultado de la operación lógica OR entre los registros b0 y b3.

S7 S6 S5 S4 S3 S2 S1 S0

b0 0 0 0 0 0 1 1 0

b3 0 0 0 1 0 0 0 0pins 0 0 0 1 0 1 1 0

Figura 83

Figura 84 Figura 85

Figura 86

Page 65: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 65/73

66 CLU B SABER ELECTRO N ICA

ción la enfocaremos directamente a los terminales de salida,

por lo que se selecciona, después del comando “let”, el desti-no “pins”, ahora tenemos que unir el dato que se encuentra en

el registro b0 (unidad cuyo valor es 6) con el que se encuentra

en el registro b3 (control del encendido del display de la uni-dad), por lo que empleamos el operador lógico conocido comoOR, cuyo símbolo es “| ”. El resultado de la operación lógica

se da de la manera como se ilustra en la tabla 4.En la figura 84 se muestra el bloque que genera la opera-

ción lógica OR y cómo el resultado es enviado a los terminalesde salida del microcontrolador PICAXE. De esta forma, aunque

el valor numérico 6 está llegando al mismo tiempo a los 3 dis-plays, sólo se encenderá el que tiene la cifra significativa de las

unidades, mientras que los otros 2 displays (decenas y cente-nas) permanecerán apagados.

En la figura 84vemos los bloques de

asignación de valoresal registro b3 y termi-

nales de salida del PI-CAXE.

En la figura 85vemos los bloques de

asignación a los re-gistros b0, b1, b2 y

b3, además de los terminales de salida del PICAXE. Estos son

los bloques que se han implementado hasta este momento, yque controlan el encendido del display de las unidades.

Como paso siguiente al envío de la información para en-

cender el display de las unidades, ahora se tiene que proseguircon el dato correspondiente a la siguiente cifra significativa,que es la decena, recordando que el valor numérico que se

quiere desplegar es el “246”. Por tanto, continúa el turno delvalor 4. Para ello, a través del registro temporal b3, almacena-

remos la información correspondiente al encendido del displayde las decenas. En este registro alojaremos nuevamente un da-

to de manera directa, utilizando el comando de asignación“let”, tal como se ilustra en la figura 86. El valor que se estará

guardando en el registro b3 es el 32(10) que equivale a lacombinación binaria 00100000(2), que es precisamente la

que controla el encendido del display de las decenas.En la figura 86 vemos el bloque de control de los displays

de las unidades, y decenas. Para complementar la informaciónque será enviada al puerto de salida del microcontrolador PI-

CAXE, hacemos uso, una vez más, del comando de asignación“let”, dirigiendo el resultado directamente a las terminales de

salida del PICAXE, por lo que en el comando “let” marcamosel destino a donde dirigiremos la información: los terminales

denominados “pins”. Posteriormente, para unir el dato que seencuentra en el registro b1 (decenas cuyo valor es 4) con el que

se encuentra en el registro b3 (control delencendido del display de las decenas),

nuevamente empleamos el operador lógi-co conocido como OR (O en español), cu-

yo símbolo ya lo habíamos expresado y es“| ”.

El resultado de la operación lógica seilustra en la tabla 5.

En la figura 86 se muestran los blo-ques correspondientes al control de los dis-

plays de las unidades y las decenas, loque nos da la posibilidad de mostrar el da-

to “46”, faltando tan sólo el control del dis-

play de las centenas. A continuación lo ex-

plicamos.Por último, corresponde controlar la

tercera cifra significativa que es la cente-

na. El valor numérico que falta por desple-gar es el “2”. Para ello, en el registro tem-

poral b3 almacenaremos la informacióncorrespondiente al encendido del display

de las centenas. Utilizando el comandode asignación “let”, guardamos el valor

64(10) en el registro b3 que equivale ala combinación binaria 01000000(2), la

cual controla el encendido del display delas centenas.

Tabla 5 - Resultado de la operación lógica OR entre los registros b1 y b3.

S7 S6 S5 S4 S3 S2 S1 S0

b1 0 0 0 0 0 1 0 0

B3 0 0 1 0 0 0 0 0

pins 0 0 1 0 0 1 0 0

Tabla 6 - Resultado de la operación lógica OR entre los registros b2 y b3.

S7 S6 S5 S4 S3 S2 S1 S0

B2 0 0 0 0 0 0 1 0

B3 0 1 0 0 0 0 0 0

pins 0 1 0 0 0 0 1 0

Figura 87 - Diagrama de flujo completo.

Page 66: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 66/73

CLU B SABER ELECTRO N ICA 67

Como ya se ha explicado detalladamente la forma de có-mo se arma el dato que será enviado al puerto de salida del PI-

CAXE, procederemos a controlar el display de las centenas deuna manera más simplificada que las anteriores cifras significa-

tivas.Por medio del comando “let” uniremos el dato que se en-

cuentra en el registro b2 (centenas cuyo valor es 2) con el quese encuentra en el registro b3 (control del encendido del dis-

play de las centenas), empleando el operador lógico OR. El re-sultado de la operación lógica se ilustra en la tabla 6.

En la figura 87 se muestran los bloques completos del con-trol de los 3 displays que corresponden al de las unidades, de-

cenas y centenas, por lo que ahora sí contamos con el poderde mostrar cualquier número completo de 3 cifras.

Con lo expuesto anteriormente, ya estamos en posibilidadde diseñar una aplicación en la que esté involucrado un tecla-

do y un display para desplegar los datos que se van generan-do. También ya hemos revisado cómo trabaja el convertidor

analógico a digital (ADC).Sólo nos falta procesar la información para mostrarla en

los displays, para que de esta manera diseñemos, por ejemplo,

un voltímetro digital, proyecto que en breve publicaremos. Re-cuerden que necesitamos del programa llamado “PICAXE Pro-

gramming Editor”, por lo que nuevamente hacemos la invita-ción de que lo descarguen de nuestra página de internet, que

es www.webelectronica.com.ar y empleen la clave “picaxe”;en su defecto, también lo pueden adquirir en la página www-

.picaxe.uk.co.Una vez que ya se tiene el programa en Basic (figura 88),

descargamos el programa al microcontrolador PICAXE que se

encuentra instalado en la tarjeta programadora. Aunque ya lo

hemos publicado en reiteradas ocasiones, nuevamente mostra-mos la manera de armar el cable de programación, o en su de-

fecto, utilizar un cable serie común y un adaptador que ya he-mos descrito varias veces y que volvemos a mostrar en la figu-

ra 89. Sobre esta tarjeta entrenadora para un PICAXE - 18 setiene la posibilidad de desarrollar un sinnúmero de proyectos,

los cuales iremos abordando poco a poco.

LISTA DE COMPONENTES PARA UTILIZAR

LA TARJETA CONTROLADORA PICAXE-18.

Tarjeta entrenadora PICAXE-18.

Módulo Display de 3 dígitos

Varios: Cable de programación, ó cable serie y adapta-

dor, cables de conexión, batería de 9V.

Figura 88

Figura 89 - Identificación de terminales enlos conectores mini jack y DB9.

Page 67: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 67/73

68 CLU B SABER ELECTRO N ICA

Cerradura Electrónica empleando la Tarjeta

Entrenadora PICAXE-18

Existen diversas maneras de diseñar una cerradura electró-

nica, pero la constante que es común en todas es que debenasegurarnos la seguridad de ya sea un cuarto cerrado, una bó-veda, una zona ó un área completa; por lo tanto la cerradura

se puede colocar desde una casa habitación, hasta un banco,un negocio, empresa o un centro comercial (figura 90).

Los elementos importantes de toda cerradura electrónicason el teclado, que es por donde se le ingresa la clave para po-

der acceder, y el actuador, que es un solenoide que funciona a

manera de pasador y que es el que atora una puerta.En esta ocasión emplearemos la tarjeta entrenadora del mi-

crocontrolador PICAXE-18, ya que a su vez utilizaremos un te-

clado matricial de 4 X 4, y el PICAXE-08 no tiene el suficientenúmero de terminales de entrada y salida.

El aspecto más importante que debemos tomar en cuenta y

que emplearemos en este proyecto es principalmente la de leerel teclado matricial, ya que es por medio de este que ingresa-

remos uno a uno los caracteres que conforman la clave de ac-ceso de la alarma.

El teclado será como el que semuestra en el diagrama esquemático

de la figura 91.De hecho, por obvias razones es

lo único que será visible de la cerra-dura electrónica, ya que lo demás, la

tarjeta entrenadora PICAXE-18 y el so-lenoide deben permanecer ocultos.

Realmente el circuito que se pro-pone es muy simple, y esto se debe a

que la cerradura electrónica es unbloque muy compacto, que inclusive

puede ser instalando dentro de unacaja del mismo tipo que las emplea-

das para colocar los apagadores delos focos de las casas.

En el esquema de la figura 92, semuestra la manera en que tiene que

conectarse tanto la tarjeta entrenado-ra del PICAXE-18, como el teclado

matricial, además de los dispositivoselectrónicos complementarios.

La forma de operar de la cerradura electrónica es la si-guiente: La cerradura se basa principalmente en la lectura del

teclado matricial, por lo que se emplean 4 salidas del micro-controlador PICAXE-18 para tal efecto, las salidas empleadas

se encuentran identificadas como S0, S1, S2 y S3. Por otra

parte para completar la lectura del teclado es necesario el em-

pleo de otras 4 terminales del PICAXE, pero ahora serán termi-nales de entrada siendo las terminales E0, E1, E2 y E6 las quese dedican a dicha labor.

Para que se tenga una buena referencia eléctrica de la in-formación que se hace llegar a las terminales de entrada del

microcontrolador PICAXE, se utilizan los resistores identificadoscomo Rext4, Rext5, Rext6 y Rext7.

Una vez que se ingrese la clave adecuada a la cerraduraelectrónica, será necesario enviar una señal que active un sole-

noide para que abra (desatore) el cerrojo de una puerta, paraello se emplea la salida S4 del microcontrolador PICAXE-18, y

para activar al solenoide se hace por medio de los contactosde un relevador, que a su vez la bobina del relevador tiene que

Figura 90 - Puerta protegida por una cerradura electrónica

Figura 91 - Diagrama esquemático de la tarjeta entre- nadora PICAXE-18.

Page 68: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 68/73

CLU B SABER ELECTRO N ICA 69

ser energizada por medio de la salida antes mencionada (S4).

Como se sabe, la bobina de un relevador es clasificado comoelemento de potencia, y ninguno de éstos (aunque se trate de

un led) debe ser alimentado directamente por la salida de unmicrocontrolador cualquiera que este sea. Por lo tanto para

activar la bobina del relevador se emplea un amplificador ope-racional, en la configuración de seguidor de voltaje, el resistor

identificado como Rext2 tiene la tarea de colocar una referen-cia de voltaje a GND en la entrada del seguidor de voltaje, y

para manejar la corriente que demanda la bobina finalmentese tiene un transistor (Q1), y por último un diodo identificado

como D1 cuya función es la de eliminar la fuerza contra-elec-

tromotriz que produce la bobina del relevador. Las termina-les del contacto del relevador que será empleado para activar

ó desactivar al solenoide se identifican como TerSol1 y TerSol2,entre estas terminales puede utilizarse un solenoide ya sea pa-

ra voltaje de corriente directa (CD) como para voltaje de co-rriente alterna (CA), por lo que dependiendo del tipo de ener-

gía se tiene que hacer llegar ésta al contacto del relevador.Después de explicar cuál es el circuito que será empleado

para nuestra cerradura electrónica, ahora procederemos a de-sarrollar el programa para que el microcontrolador PICAXE-18

realice la función de la cerradura.Para comenzar con el programa en primera instancia expli-

caremos cuál es el algoritmo sobre el que trabaja la lectura delteclado matricial, para ello se emplean las salidas S0, S1, S2

y S3 y a cada una de las salidas se tendrá que enviar un “1”lógico a la vez, mientras las 3 restantes se fijan con un “0” ló-

gico. Esos “1's” lógicos se hacen llegar al teclado matricial,y en él se van activando cada una de sus filas, y así tenemos

que para activar la fila F0 se tiene que enviar un “1” lógico através de la salida S0, posteriormente tenemos que enviar un

“1” lógico por la salida S1 para que sea activada la fila F1, yasí sucesivamente hasta llegar a la fila F3 que corresponde con

la salida S3. Lo que es importante tomar en cuenta es que si en

una salida se tiene un “1” lógico, las 3 terminales restantes se

fijarán con un “0” lógico. El “1” lógico tiene que ser enviadosólo uno a la vez, para que de esa manera se sepa que fila es

la que se está activando.

Una vez que el “1” lógico se encuentra en el teclado ma-tricial, ahora sólo tenemos que esperar a que sea presionadauna tecla y dependiendo de la que sea oprimida, se regresara

a una de las terminales de entrada el “1” lógico que previa-mente se envió a través de una salida del PICAXE (S0, S1, S2

ó S3).Recordemos que las terminales de entrada que se utilizarán

son E0, E1, E2 y E6, que respectivamente corresponden a lascolumnas 0, 1, 2 y 3.

En el teclado matricial cuando es presionada una tecla, secierra un interruptor que interconecta una fila con una columna,

es por ello que solo se envía un “1” lógico a la vez a la fila co-rrespondiente, porque ese “1” lógico se reflejara en una colum-

na que es en donde se oprime el botón del teclado matricial.Si fueran enviados mas de “1” lógico a la vez, no se tendría

control de que botón fue el que se oprimió.En la figura 93 se muestra el teclado matricial y la identifi-

cación de sus teclas, para poder ingresar los datos que se re-quieren y se pueda validar alguna clave de acceso. En esta

ocasión del teclado matricial de 4X4 solo serán empleadas 3de sus 4 columnas, pero eso no quiere decir que no se pueden

utilizar todas sus teclas, ya que aparte de los números se pue-den implementar las funciones de “borrar”, “validar”, etc.

En la tabla 7 se muestra cuál es la combinación de fila ycolumna que se presenta cuando una tecla es oprimida.

Figura 93 - Teclado matrical y la definición de sus teclas para la cerradura electrónica

Figura 92 - Conexión de la cerradura electrónica

Page 69: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 69/73

70 CLU B SABER ELECTRO N ICA

A continuación vamos a explicar el programa con el que sehace trabajar al microcontrolador PICAXE, teniendo el progra-

ma la misma base de operación que la propuesta para contro-lar al teclado matricial.

Tal como se explicó en líneas anteriores que lo que se tie-ne que ir haciendo es activar cada fila una por una, por lo tan-

to, se tiene que comenzar de la primera, o sea la fila 0. Pa-ra ello a través del comando “let pins=1” se envía un “1” lógi-

co a la salida S0 del microcontrolador PICAXE y que correspon-de con la fila 0. Como paso siguiente se produce un retardo o

espera de 10 mseg, tiempo suficiente para eliminar el rebote

que genere el interruptor que se oprima del teclado, una vezque termina el tiempo de 10 mseg, podemos dar por hecho

que si fue oprimida una tecla, ésta ya se estabilizó y por lo tan-to ahora se puede saber que tecla fue la que se acciono, por-

que como ya se explicó en la parte de la electrónica del circui-to de la cerradura electrónica, una vez que se activa una fila

del teclado matricial, es a través de la columna que sabemosqué tecla se oprimió.

Es por ello que se pregunta por cuál terminal de entrada serecibe un “1” lógico (si es que se oprimió una tecla). Recorde-

mos que pueden ser posibilidades las que nos reporten la posi-

ble identificación de una tecla, porque si se activa la fila 0 se

Figura 94 - Fragmento del diagrama de flujo que activa la fila 0 del teclado matricial.

Figura 95 - Fragmento del diagrama de flujo que activa la fila 1 del teclado matricial.

Tabla 7 - Combinación de filas y columnas

C0 = E0 C1 = E1 C1 = E1 C3 = E6

FO=S0 1 2 3 NI

F1=S1 4 5 6 NIF2=S2 7 8 9 NI

F3=S3 * 0 # NI

NI - No Implementado.

Page 70: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 70/73

CLU B SABER ELECTRO N ICA 71

tiene abierta la identificación de las teclas “1”, “2” y “3” que

corresponden con las columnas 0, 1 y 2, y que a su vez se re-cibe la información a través de las entradas 0, 1 ó 2. Es

por ello que si una condición es valida en los comandos “if” delfragmento del diagrama de flujo de la figura 94, dependiendo

cuál entrada se esté comparando se le asignará a la variable“b0” el valor correspondiente con la tecla que ha sido identifi-

cada (si es que ésta fue presionada). Una vez que fue presio-

nada una tecla entonces se procede a guardar el valor de la te-cla en la localidad que le corresponde, esto es, si la clave pa-

ra abrir la cerradura es de 4 dígitos, se guardara el valor dela tecla en la posición correspondiente, digito 1 digito 2 o di-

gito 3 ó digito 4, esto se hace en un paso posterior emplean-do el salto identificado como un 1 encerrado en un circulo.

Si ninguna tecla de la fila 0 es accionada, entonces el re-sultado de los comandos “if” de la figura 94 darán como resul-

tado una acción no valida, y por lo tanto ahora se tiene queactivar la fila siguiente que en este caso se refiere a la fila 1,

para esto se emplea el salto identificado con el valor 2 ence-rrado en un circulo, y por lo tanto ahora se estará activando la

fila 1, tal como se ilustra en la figura 95.Para llevar un control sobre qué dígito de la clave se esta

guardando, se emplea la variable “b13” que se es quien a tra-

vés de un contador se lleva el control de la posición del dígitoque integra la clave de la cerradura electrónica. En este

ejemplo se tiene una clave de 4 dígitos, por lo tanto dependien-

do del dígito que se este buscando, será el valor de la variableb13, y por lo tanto llegará hasta máximo un valor de 4.

Básicamente cuando se pasa a la activación de la fila 1, el

proceso es el mismo que para la fila 0, solo que en esta opor-tunidad, la salida que se activará será la identificada en el mi-

crocontrolador PICAXE como S1 y que corresponde con la fila1, haciéndose esta operación por medio del comando “let

pins=2”. De igual manera para evitar los rebotes mecáni-cos de los interruptores del teclado matricial, es empleado un

retardo (comando “pause 10”) de 10 mseg. Acto seguido de-pendiendo en que columna se encuentra la tecla que se opri-

ma, será por donde se reciba el correspondiente “1” lógico através de la terminal de entrada, solo que en esta ocasión las

posibles teclas que pueden ser activadas con las identificadascomo 4, 5, ó 6. Que corresponden con las entradas E0, E1

Figura 96 - Fragmento del diagrama de flujo que activa la fila 2 del teclado matricial.

Figura 97 - Fragmento del diagrama de flujo que activa la fila 3 del teclado matricial.

Page 71: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 71/73

72 CLU B SABER ELECTRO N ICA

ó E2. Si fue presionada una tecla de la fila 1, se procederá a

guardarla en el registro correspondiente dependiendo de la po-sición del dígito que se esta buscando. En caso de que no se

oprima tecla alguna de la fila 1, entonces se pasara a buscar

si en la fila 2 es en donde se presione una tecla.La operación que se realiza para las filas 0 y 1 es la mis-

ma que se utiliza para las filas 2 y 3, pero buscando que se

oprima cualquiera de las teclas 7, 8 ó 9 para la fila 2, ó las te-clas *, 0 ó # para la fila 3, de acuerdo a como se observa en

las figuras 96 y 97 correspondientemente.En la fila 3 las teclas * y # las relacionamos con un valor

digital que son el 255 para * y 254 para #, por lo tanto aun-que no se trate de un valor numérico, podemos relacionar cual-

quier acción que queremos que haga una tecla con un identifi-cador para que al final se tenga la posibilidad de tener varias

opciones para fijar en un teclado matricial.Por último, en la figura 98 se muestra que dependiendo del

valor que tenga la variable “b13”, será alojado el valor de la

tecla que fue encontrado previamente, el dato antes de ser alo-

jado adecuadamente se encuentra en una variable temporal yse trata de la variable “b0”. Si el digito que se esta buscando

es el primero, entonces su valor será alojado en la variable

“b1”, o en la variable “b2” si se trata del segundo dígito, y así sucesivamente hasta completar los 4 dígitos.

Si el valor de b13 es menor que 4, entonces una vez que

se ha guardado el valor de la tecla, se incrementa en una uni-dad el valor de b13, mientras que si después de guardar el va-

lor del cuarto dígito (recordemos que la clave propuesta es de4 dígitos), entonces el paso siguiente es el de corroborar que

la clave es valida, por lo tanto se compara dígito por dígito conrespecto a un valor previo que fue almacenado. En caso de que

la clave no sea la “buena”, entonces se limpian los registros delos dígitos de la clave y nuevamente nos vamos a recorrer la fi-

la 0 del programa. En esta ocasión la clave preestablecida esla dada por la siguiente secuencia de dígitos”4321”.

Una vez que se observa que la clave es la misma que la

Figura 98- Fragmento del diagrama de flujo que valida la clave del teclado matricial.

Page 72: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 72/73

CLU B SABER ELECTRO N ICA 73

preestablecida, entonces como paso siguiente se procede a re-correr el cerrojo de la puerta, haciéndose esta acción por me-

dio de la salida 4 que es por medio de ésta que se activa alsolenoide. La salida 5 también es activada para que un indi-

cador luminoso nos avise que la cerradura electrónica nos per-

mite ingresar a una determinada zona.La activación del solenoide no será permanente, y es por

ello que se dispone de un temporizador para que esta accióndure tal solo 3 segundos, tiempo suficiente para empujar o ja-

lar la puerta que acaba de abrirse a través de la cerraduraelectrónica. Cuando se cumple el tiempo de 3 segundos, se de-

sactivan las salidas 4 y 5, y también se limpian los registros delos dígitos de la clave de la cerradura electrónica

En la figura 99 se muestra el diagrama de flujo completodel programa que controla la cerradura electrónica.

A continuación se encuentra el código del programa del

microcontrolador PICAXE en basic, que es la conversión deldiagrama de flujo.

Programa en Basic del Diagrama

de Flujo de la figura 99

main:

label_35: let b13= 1label_3C: let pins = 1 ' %00000001

pause 10if pin0=1 then label_5B

if pin1=1 then label_54

label_23: if pin2=1 then label_4D

let pins = 2 ' %00000010pause 10

if pin0=1 then label_A3if pin1=1 then label_9C

if pin2=1 then label_95

let pins = 4 ' %00000100

pause 10if pin0=1 then label_154

if pin1=1 then label_14Dif pin2=1 then label_146

let pins = 8 ' %00001000

pause 10if pin0=1 then label_1B0

if pin1=1 then label_1A9

if pin2=1 then label_1A2

goto label_3C

label_4D: let b0= 3

label_43:label_B6: if b13= 1 then label_F7

if b13= 2 then label_F0if b13= 3 then label_E9

if b13= 4 then label_E2label_230: let b1= 0

let b2= 0

let b3= 0let b4= 0

Figura 99 - Diagrama de flujo completo.

Page 73: Club Saber Electrónica - Aprenda Microcontroladores PICAXE

8/21/2019 Club Saber Electrónica - Aprenda Microcontroladores PICAXE

http://slidepdf.com/reader/full/club-saber-electronica-aprenda-microcontroladores-picaxe 73/73

goto label_35

label_54: let b0= 2goto label_43

label_5B: let b0= 1goto label_43

label_95: let b0= 6label_101:

goto label_B6

label_9C: let b0= 5goto label_101

label_A3: let b0= 4

goto label_101

label_E2: let b4=b0if b1= 1 then label_20F

goto label_230

label_E9: let b3=b0label_2E: let b13=b13+ 1

label_1E0: if pin0=0 then label_1EBgoto label_1E0

label_F0: let b2=b0

goto label_2E

label_F7: let b1=b0goto label_2E

label_146: let b0= 9

label_15D:goto label_B6

label_14D: let b0= 8

goto label_15D

label_154: let b0= 7goto label_15D

label_1A2: let b0= 255

label_1B9:goto label_B6

label_1A9: let b0= 0goto label_1B9

label_1B0: let b0= 254goto label_1B9

label_1EB: if pin1=0 then label_1F6

goto label_1EB

label_1F6: if pin2=0 then label_1D2goto label_1F6

label_1D2:

goto label_3C

label_20F: if b2= 2 then label_21Agoto label_230

label_21A: if b3= 3 then label_225

goto label_230

label_225: if b4= 4 then label_25Egoto label_230

label_25E: high 4

high 5wait 3

low 4low 5

goto label_230

Recuerden que a través de nuestra página de internet

www.webelectronica.com.ar pueden descargar el programa

“Programming Editor” los códigos, tanto en diagrama de flu-

jo como en basic del presente ejemplo, tan sólo utilicen la cla-ve “picaxe”. ************