Вы находитесь на странице: 1из 329

Curso práctico sobre

( T e o ría , P r o g r a m a c i ó n , D i s e ñ o , P r á c t i c a s y P r o y e c t o s c o m p l e t o s )

El C u rso p r á c tic o s o b re MICROCONTROLADORES ele CEKIT S . A. se publica


en forma de 40 fascículos de aparición semanal, encuadernables en 3 volúmenes. C a p a c i t a m o s p a r a v i v i r m e j o r

Cada fascículo consta de 4 páginas de cubiertas y 20 páginas de contenido a todo


color. De estas últim as, 8 están d ed icad as a la sección de ,4 a C a lle 2 2 N° 8 - 2 2 , P iso 2.
PROGRAMACIÓN y 8 a la sección de PROYECTOS. Teléfonos
(6 )3 3 4 8 1 7 9 -3 3 4 8 1 8 7 -
Las páginas de cada sección son encuadernables por separado. Por esta razón, al 3348189 - 3348193
formar los volúmenes, debe cuidarse de desprender previamente, de todos los F ax : ( 6 ) 3 3 4 8 0 2 0
BereiraCxáombia
fascículos, las 8 páginas centrales de PROYECTOS, las 4 de PROGRAMACIÓN C a rre ra 13 N° 3 8 - 4 3 , P iso 1.
y por último las 8 páginas de . Durante la publicación de los fascículos se T eléfo n o s: 2 8 7 3 0 8 6 -
pondrán a la venta las tapas de los 3 volúmenes de la obra para su encuademación. 2873420 - 2877318
Bogotá - Colombia
CEKIT S.A. garantiza la publicación de la totalidad de la obra, el suministro de la
tapas necesarias para su encuademación y el servicio de números atrasados hasta un e-mail: ecekit@col2.telecom.com.co
año después de terminada la circulación del último fascículo. También garantiza la http://www.cekit.com.co
fidelidad de la infonnación teórico-práctica suministrada y el correcto funcionamiento
Gerente General:
de los programas incluidas como ejemplos de la obra. Jo rg e H ern án A lvarez
GerenieComercial:
Motorola, Microchip, PIC, Intel, Atmel, Parallax. Zilog, Phillips, son mancas registradas de M arcelo A lvarez H.
las diferentes empresas en los Estados Unidos y en otras países. Otras productos y nombres de Director Editorial:
compañías mencionadas en esta obra pueden ser mancas registradas de a is propietarios. M an u el Felipe G onzález G.
Circulación Internacional:
H um berto Real Blanco.
Este curso lia sido elaborado segú n el p lan d el editor y d e su s autores, y
bajo su responsabilidad, p o r los siguientes integrantes del A u to res
departam ento técnico d e CEKIT S A
JUAN ANDRÉS CASTAÑO W.
Distribución Internacional MANUEL FELIPE GONZÁLEZ G.
GILBERTO VARGAS C.
A r g e n t in a : Importador: Editorial ConosurS.A. Av. Belgrano 355 10’. Tel: 4342-9029 Fax: 4342-9025
JUAN DIEGO HERNÁNDEZ F.
e-m ail: gconosur@ speedy.com .a r Disi. C apital: VACCARO SANCHES Y CLA. - M oreno 794.
9°(1092) B uen os Aires. Dist. Interior: DISTRIBUIDORA BERTRAN S.A.C. - Av. V élez Sarsfield P ro y e c to s
1950(1285) B uenos Aires. - B o liv ia : AGENCIA MODERNA LTDA. - C h ile : DISTRIBUIDORA
a l f a s .a . - C o lo m b ia : d i s t r i b u i d o r a s u n id a s . - V e n e z u e la : d i s t r i b u i d o r a c o n t i ­
JOHN JAIME ROBBY G.
n e n t a l - M é x i c o : c o n s o r c i o s a y r o l s - E c u a d o r : d i s t r i b i i d o r a ANDES. - P a n a m á : Diseño carátula: Luz Angela Plata B.
p a n a m e x s .a . - Perú: d i s t r i b u i d o r a BOiJVARiANA s .a . - P a r a g u a y : SELECCIONES S.A.C. Diseño: Gloria M arcela Gómez G.
- U ru g u a y :D IS T R IB n D O R A CAREAGA Diagram ación: H éctor HugoJim énez

© CEKIT S.A. 2 0 0 1
Suscripciones (n o válidas en A rgentina), núm eros atrasados Pereira - Colombia
y consultas técnicas en Colombia
Todos los derechos reservados. Prohibida su
CEKIT S.A. reproducción parcial o total por cualquier medio sin
permiso escrito del editor.
Calle 22 N° 8 - 22, Piso 2, A.A. 19 4 Pereira(C olom bia)
o a n u estro c o rre o electrónico: EDICIÓN CONO SUR
ecekit@ col2.telecom .com .co Internacional G raph ics & Printing Co.
2600 D o ugias R oad, Suite 40S
C o ral C a b le s , F lo rid a 33 1 3 4 , U .S.A.
ISBN (F a s c íc u lo 8 ):9 5 8 -6 5 7 -5 1 0 -l Im p reso y e n c u a d e rn a d o p o r:
ISBN (V o lu m e n 1 ):9 5 8 -6 5 7 -4 9 8 -9 RR D o n n e lle y
ISBN (O b ra c o m p le ta ): 9 5 8 -6 5 7 -4 9 7 -0 A m érica Latina
R uta P a n a m e r ic a n a K m . 3 8 .7 0 0
B u e n o s A ire s A rg e n tin a
Im p re s o e n A rg e n tin a
J u n i o 2002
Curso práctico sobre

M IC R O C O N T R O L A D O R E S
Teoría. P ro g ra m a ció n . Diseño. Prácticas y Proyectos co m p le to s

Estudie co n el m é to d o de
f
C E K IT de "Aprender haciendo , la tecnolo­
Libere
creativihd
gía de los Microcontroladores, una de las que
más han cambiado el mundo en los últimos años
y gane mucho dinero. Estos pequeños cerebros
electrónicos se encuentran en todas partes: au­
tomóviles, computadoras, electrodomésticos,
i
alarmas, juegos de luces, instrumentos, equipos
de comunicaciones, etc. mitirá la comunicación de hechos y datos entre
personas y objetos formando la red del conoci­
n este curso incluimos los principios teóri miento, base de la economía del nuevo milenio
eos, los fundamentos de su programación, Capacítese y form e parte activa de la nue­
una gran cantidad de actividades prácticas y va econom ía.
proyectos completos para ensamblar.
Las personas con buenos conocimientos de
Los microcontroladores son los elementos bá­ esta tecnología, tendrán muchas oportunida­
sicos y fundamentales de una nueva revolución, des laborales o podrán fabricar sus propios
la interconexión de todo con todo en u n a red aparatos en forma industrial, lo que puede
m un dial de información y control. Esto per- ser la base para una empresa m uy rentable.

Como está estructurado el curso


i IVIICROCONTROUDORES
El C u r s o p r á c tic o s o b re M ic r o c o n t o la d o r e s d e
C E K I T S .A . se p u b lic a rá en 4 0 fascículos con tres
secciones c a d a u n o , y al fin al, se a g r u p a r á en tres to ­
m o s d e p asta d u r a co n c a d a u n o d e los tem as p r in c i­
pales. Para su fácil id e n tific a c ió n , c a d a u n a d e las sec­
cio n es tie n e u n co lo r d iferen te. La d is trib u c ió n de
los to m o s es la sig u ie n te :

Tomo 1: Teoría Tomo 2: Programación Tomo 3: Proyectos


3 2 0 p á g in a s ( l a 3 2 0 ) 1 6 0 p á g in a s (1 a 1 6 0 ) 3 2 0 p á g in a s (1 a 3 2 0 )
Los siguien tes son los principales tem as
tratados en esta sección:
In tro d u cció n a los m icroprocesadores
In tro d u cció n a los m icrocontroladores
D iferencias en tre un m icroprocesador
y u n m icro co n tro lad o r
P rincipales fam ilias de m icrocontroladores
E n la sección d e teo ría, se e stu d ia n los E stuctura básica de los sistem as con
m icro co n tro lad o r
fu n d a m e n to s teóricos y fu n c io n ales de
(M o to ro la y P IC de M icro ch ip )
los m icro co n tro lad o res. Esto se refiere A rq u itectu ras de m icrocontroladores
a la e stru c tu ra o a r q u ite c tu r a in te rn a La C P U y la A LU
de los m ism o s, a sí c o m o a la fu n ció n Los registros
O rgan izació n d e la m e m o ria
d e c a d a u n o d e los te rm in a le s o pin es
La E P R O M d e datos
d e los d iferen tes dispositivos tratados Las in terru p cio n es
en el curso cu yo c o n o c im ie n to es n e ­ Los puertos de entrada/salida (I/O)
cesario para d ise ñ a r circu ito s con estos Los tem porizadores ( Timers)
Las opciones C o m p aració n / C ap tu ra/ P W M
co m p o n e n te s.
El p uerto serial síncrono SSP, bssp
La U S A R T
Se em p ieza con un repaso sobre el tem a Las referencias de voltaje
d e los m ic ro p ro c e sa d o re s, los cu ales Los com paradores
dieron origen a los m icrocontroladores, Los converso res A/D
M odos de bajo co n su m o (sleep y watchdog)
y se d esarro llan d u r a n te las lecciones,
Bits de co n figu ració n
los diferentes aspectos técn ico s d e esta P ro gram ació n en el circu ito (in circuit)
tecn o lo gía. El c o n ju n to (set) de instrucciones
Las co m u n icacio n es seriales
O tros m icrocontroladores
Parallax (B asic Stam p)
Intel
( ' a p a c i t a t m t N p a r u v i v i r n i v j a r A tm el
ion de Programación
T odo ap arato o proyecto con m icro co n tro lad o res incluye, adem ás de los diferentes cir­
cuito s, u n o o varios p ro g ram as q u e se d eb en e n c rib ir en el lenguaje apropiado según el
tip o d e m ic ro c o n tro la d o r u tiliz ad o . Este curso le p ro p o rcio n ará los con ocim ientos nece­
sarios p ara q u e a d q u ie ra la h a b ilid a d d e p ro g ram arlo s.
Los p rin cip a les tem as tratad o s son:
P ro gram ació n de u n m icro co n tro lad o r
Diagramas de flujo El ciclo de desarrollo de u n p ro gram a
H erram ien tas d e softw are
Programas
P ro gram ació n en m odo in m ed iato
P ro gram ació n o rien tad a a registros
C o n tro l de flujo de un program a
Explicación de Puertos de entrada/salida
los programas S u b ru tin as
Interrupciones
P rogram ación en len gu aje estructurado
T em porizadores
P ro gram ació n serial
P ro gram an d o los conversores A/D y D/A
P rogram ación en len gu aje C
T ó p ico s avanzados de p ro gram ació n
ion de proyectos
E n e s ta im p o r t a n t e s e c c ió n d e l c u rs o , se e n tr e g a
In d icad o r b in ario de 4 bits u n a a m p lia in f o r m a c ió n c o n la c u a l e l a lu m n o
A larm a p ara el h o gar y el au to m ó v il p o d r á e n s a m b la r u n a b u e n a c a n t id a d d e p ro y e c ­
R eloj d ig ita l y calendario to s. P a ra c a d a u n o d e e llo s se in c lu y e la te o r ía d e
S ecu en ciad o r de luces p ro gram ab le f u n c io n a m ie n to , el d ia g r a m a e s q u e m á tic o , la lis­
C e rra d u ra co d ificada ta d e m a te r ia le s , las in s tr u c c io n e s p a r a e l e n s a m ­
A ctivación de aparatos vía telefónica
b la je y el lis ta d o d e l p r o g r a m a .
T em p o rizad o r universal
Guía de ensamble Teoría y funcionamiento
Aviso lu m in o so con diodos LED
Luces rítm icas
C o n v ertid o r paralelo-serial
P u n ta lógica
T em p orizado r m in iatu ra
F recuencím etro
G en erad o r de señales
P ro gram ad o r de m em o rias
A d q u isició n de dato s en 16 bits
M in iro b o t con m icro con trolador
A d q u isició n de dato s p o r el puerto
serial
T arjeta I/O p ara el p uerto serial
y m u ch o s otros... Diagrama de bloques Diagrama esquemático
A quienes va dirigido el curso
El te m a de los m icrocontroladores es d e gran u tilid ad para un grup o m u y am plio d e perso
ñas q u e requieran conocer esta tecnología por su gran cantidad d e aplicaciones.
‘f

Los p rin cip a les g ru p o s d e u su ario s son: J L *á< *

E studiantes y p ro fesio n ales de


In g en iería y T ecnologías:
• E lectró n ica
• E léctrica
• M e c á n ic a
• S istem as
• B io in g e n ie ría ^
• M e c a tr ó n ic a .
• A u to m a tiz a c ió n *
• E stu d ian tes d e colegios téc con énfasis en electró n ica

T écn icos en: ^


• E lectró n ica in d u strial
• A u to m a tiz a c ió n
• E lectró n ico s en gen eral
• A lu m n o s d e los cursos
d e C E K I T S .A .
• E stu d ian tes y profesionales en F IS IC A ,
p ara sus n ecesid ad es d e in stru m e n ta c ió n

A u to d id a c ta s o aficion ad os con c o n o c im ie n to s en:


• E lectró n ica D ig ita l
• M icro p ro cesad o res

UC W ac,ona
Certificado
U n a vez te rm in a d o el curso y a p ro b a d a la e v a lu a c ió n q u e se p u b li­
cará al fin alizar la obra, el a lu m n o recib irá u n C e r tific a d o d e A p ti­ Ccw*5 cvnoó*

tu d O c u p a c io n a l o to rg ad o p o r C E K I T S.A . y ap ro b ad o p o r las MICROCONTROLADORES

respectivas a u to rid a d e s ed u cativ as. Este certificad o 1er p e rm itirá


acc ed er a puestos calificad o s d e trabajo.

Otra obra con la calidad editorial y didáctica de G m W n m *


C 'a p ticittin n tM p tir tt v i u / r m v jt t r
PROYECTOS CON
MICROCONTROLADORES ■

En esta sección tendremos una serie de proyectos


completos con diferentes tipos de m icrocontrola-
dores con el fin de practicar y com probar la teoría
expuesta, y así cum plir con los objetivos didácti­
cos esperados. En todos los cursos de electrónica,
a cualquier nivel, si no se practica es m uy difícil
aprender algo. Por lo tanto, recomendamos que
los alum nos construyan, ojalá, todos los proyectos
que aquí se presentan lo que les garantizará el ver­
dadero aprendizaje de esta tecnología de tanta ac­
tualidad y aplicaciones. FreeLibros

Curso práctico de Microcontroladores


■m
introducción a los proyectos

Podríam os decir qu e ésta es la sección m ás im p o rtan te del curso y a qu e a q u í se ponen en práctica


todos los conocim ientos ad q u irid o s en las dem ás secciones, pero teniendo siem pre presente qu e un
proyecto con m icrocontroladores, sin las bases teóricas, no tiene m ucho valor. U na vez qu e el lector
h aya term in ad o el curso, solam ente podrá decir qu e habrá apren dido si es capaz de realizar sus
propios proyectos p artien do de un problem a o u n a necesidad; logrando adem ás una solución o rig i­
nal la cual p ued e convertirse en un producto final de am p lia aceptación en el m ercado lo cual le
traería beneficios económ icos tanto a nivel personal com o local, regional y nacional.

U n buen diseñador y ejecuto r de proyectos con m icrocontroladores, siem pre tendrá o p o rtu n i­
dades de trabajo, ya sea com o em pleado o com o creador de productos electrónicos innovadores.

Los proyectos qu e se p ub lican en este curso se han seleccionado com o ejem plos m u y represen­
tativos de soluciones a los problem as m ás com unes q u e se en cuentran en el diseño de todo tipo de
dispositivos electrónicos con m icrocontroladores y han sido am p liam en te com probados. C ad a uno
de ellos puede ser considerado com o una aplicación co m p leta o ser la base de un aparato m ás co m ­
plejo qu e se obtiene añ ad ien d o m ás funciones p ara cu m p lir los requerim ientos exactos de esa solu­
ción. Desde otro p unto de vista, estos se pueden tom ar sim p lem en te com o la m ejor fo rm a de visua­
lizar el desarrollo concreto de los conceptos teóricos q u e se han analizado en las secciones de teoría
general y program ación.

Metodología Nombre, objetivo e


P ara c u m p lir co n los o b je tiv o s d e esta se c c ió n , se in c lu ­ importancia del proyecto
y e n p ro yecto s d e d ife re n te s tip o s co m o ju e g o s d e lu ces, En este p u n to se destacan sus ap li­
te m p o riz a d o re s, a la rm a s , relo jes, in s tr u m e n to s , c irc u ito s caciones, su p o sib ilidad de form ar
d e c o n tro l, c ir c u ito s q u e se c o n e c ta n a los p u e rto s se ria l o parte en otros proyectos m ás com ­
p a ra le lo d e u n a c o m p u ta d o r a tip o P C , c irc u ito s d e co ­ plejos y las alternativas de expan­
m u n ic a c io n e s , etc. f ig u r a 1 .1 . C a d a u n o d e esto s p ro y e c - sión o m o dificació n para obtener
variantes del diseño ori

Figura 1.1 Proyectos con m icrocontroladores

Curso práctico de M icrocontroladores


Proyectos

Explicación del Instrucciones de


diseño ensamblaje
Es la explicación concisa En este curso se hará un
y detallada de cada una de especial énfasis en los cu i­
las partes q u e form an el O O O » d a d o s e in s t r u c c io n e s
proyecto. Para hacer esto p ara arm ar cada uno de
de la forma m ás clara y d i­ los proyectos, para lo cual
dáctica posible, se a c u d i­ se m ostrará gráficam ente
rá a d ia g ra m a s d e b lo ­ la evolución de este pro­
q u es, sim u la c io n e s por ceso. C o n este fin ta m ­
co m p u tad o ra y d escrip ­ bién se in clu irá u n a guía
Figura 1.2 Componentes con funciones de entrada
ción paso a paso de cada para la correcta ubicación
u n a de las etapas qu e for­ de los com ponentes y la
m an el sistem a. T am b ién se in ­ En cu an to a los disp o siti­ conexión de los accesorios ex­
clu irán d iagram as de tiem pos vos de salida, se pueden tener ternos qu e form an parte del cir­
de las señales digitales qu e se otros c irc u ito s in teg rad o s ya cuito o aparato, fig u ra 1.4.
m an ejen , en d o n d e la ap lica­ sean de uso general o especia­
ción lo am erite. le s , in d ic a d o r e s lu m in o s o s Explicación de los
co m o d io d o s L E D , p an tallas programas (softw a re )
Esta explicación in clu ye el (,displays ) o indicadores de siete A un que en la sección de pro­
d iagram a esquem ático o plano segm entos, pantallas de cristal gram ació n se explican los con­
en el cual se m uestran todos los líq u id o (L C D ), indicadores so­ ceptos generales para el diseño
com ponentes del circuito y la noros, relés electrom agnéticos de los program as, en cada pro­
fo rm a co m o se in tercon ectan o de estado sólido, optoacopla- yecto se m ostrará su program a
entre ellos. dores, transistores, triacs, sole- com pleto, d eb id am en te d o cu ­
n o id es, m o to res, etc., fig u ra m entado, si el espacio lo per­
Componentes 1.3. En cada proyecto se expli­ m ite. Si es m u y extenso, éste se
complementarios carán las características y el fun­ pub licará, igual qu e los dem ás,
C a d a proyecto de este tipo p o ­ cio n am ien to de estos com po­ en la p á g in a w eb de C E K IT
see, ad em ás d el m icro co n tro - nentes. S .A . (w w w .c e k it.c o m .c o ) en
lador, u n a serie d e co m p o n en ­ una sección especial creada para
tes a d ic io n a le s q u e re a liz a n Lista de materiales este curso. Todos los program as
funcio nes de en trad a co m o re­ Todos los proyec­
c ib ir y aco n d icio n ar señales de tos tienen una lista
diferentes tipos (sonoras, lu m i­ c o m p le ta d e los
nosas, de vo ltaje, de corriente, materiales que los
e t c .) ; d e te c c ió n d e ó rd e n e s conforman para fa­
co m o en el caso de in te rru p ­ cilitar su adquisi­
to res, p u lsad o res y teclad o s, ción en el mercado.
entre otros; conversores an álo ­ C ada componente
go/digitales (A/D); circuitos de se enumera con su
reloj en tiem p o real; circu ito s respectiva etiqueta
de co m u n icacio n es con otros y valor o referencia
dispositivos sim ilares y a sea h a ­ q u e lo id en tific a
cia un sólo elem en to o a una dentro del diagra­
red, etc., fig u ra 1.2. m a esquemático. Figura 1.3 Componentes con funciones de salida

Curso práctico de Microcontroladores


Introducción a los proyectos

Para que las explicaciones de conexiones {protoboard), soldar


de la program ación cu m ­ correctamente los componentes en
plan con el objetivo p lan ­ los circutios impresos y montar los
teado, el lector debe po­ accesorios externos en la caja o
seer conocim ientos sobre chasis; si esto no se hace bien, los
las instrucciones del m i­ circuitos tienen muchas posibili­
crocontrolador, de las he­ dades de fallar. A este nivel de co­
rram ientas qu e se necesi­ nocimientos, suponemos que esto
tan para escribir el progra­ ya se tiene, pero si no es así, se pue­
m a y de la form a como de lograr fácilmente estudiándolo
éste se lleva a la m em oria y practicando. En el Curso Prácti­
del circuito integrado; te­ co de Electrónica Moderna de CE-
mas que se explicarán am ­ KIT S.A., se encuentran varias lec­
pliam ente en la sección de ciones y actividades prácticas so­
program ación. bre estos temas.

Calibración y Nota para los alumnos


pruebas que se inician en el tema
En esta parte se describen C o m o en los primeros proyec­
las pruebas y ajustes de tos no se tienen las bases teóri­
Figura 1.4 Guía para e l m ontaje de los com ponentes
calibración q u e se deben cas y de program ación suficien­
in clu irán un d iagram a de flujo se g u ir p ara a se g u ra r el tes, probablem ente no entende­
d o n d e se vea claram en te el al­ funcionam iento correcto del sis­ rá algunos temas. N o se preocu­
go ritm o establecido y los pasos tem a, si el diseño así lo requie­ pe, qu e al avanzar el curso los irá
qu e el program a debe ejecutar. re. com prendiendo perfectamente.

D e igual m anera, algunos Recomendación Pasos que se deben seguir


proyectos in clu yen program as importante para el diseño de un
en lenguajes de alto nivel como Para hacer los experim entos y proyecto con
V isual Basic, C++ o LabV IE W construir los proyectos de este cur­ microcontroladores
cuyos códigos fuente tam bién so, es m u y recomendable que el C o m o y a lo m encionam os, el
estarán disponibles para ser uti­ alum no tenga buenas habilidades objetivo final y principal de este
lizados por cu alq u ier persona. para arm ar circuitos en un tablero curso es que al terminarlo, los lec-

Botones de Control

■ ■ Convertidor 1 Microcontrolador Convertidor


A/D (unidad de TTLa
• Señal
8 bits control) R S - 232
análoga
0-5V

1 i
Memoria Computadora
personal
EEPROM
serial Figura 1.5 Diagrama de bloques de un proyecto con
m icrocontrolador

S .A . Curso práctico de Microcontroladores


Proyectos

Cuando se diseñ a un p royecto con un m icrocontro-


Ltdor, realm ente fa b rica m os un circuito integrado
propio, hecho a la m edida, don de se verán releja ­
das p a rte d e nuestras ideas y conceptos. En este pro­
ceso se deben seguir los siguientes pasos:

1) Definir claramente en palabras comunes los ob­


jetivos del proyecto, detallando cada una de sus
funciones y el comportamiento del circuito, te­
niendo en cuenta los elementos que es necesario
controlar ya sean de entrada, de salida o ambos.
Figura 1.6 Diferentes tipos de m icrocontroladores

tores puedan crear sus propios circuitos y diseños 2) D iseñar el d iagram a de bloques con base en
con microcontroladores. Los proyectos que aq u í se el p u n to anterior, fig u ra 1.5.
presentan son sólo ejemplos para facilitar este pro­
ceso el cual será una manifestación de nuestra crea­ 3 ) Seleccio nar el m icro con trolador adecuado de
tividad, lo que seguram ente nos brindará grandes acu erd o a los req u erim ien to s m en cio n ad o s,
satisfacciones si se logra desarrollar correctamente. fig u ra 1.6.

Suiches de
configuración

— oC.A.
Salidas

Figura 1.7 Diagram a esquem ático de un proyecto con m icrocontrolador

Curso práctico de Microcontroladores


introducción a los proyectos

Figura 1.8 Componentes para un proyecto con Figura 1.9 M ontaje del proyecto en un tablero de conexiones
m icrocontrolador (protoboard)

4) Diseñar el diagrama esquemá­ totipo para com probar el di­ tor de texto para computado­
tico, figura 1.7, el cual debe seño y realizar los ajustes ne­ ra, siem pre pensando en el
incluir todos los com ponen­ cesarios si no se cum plen los diagrama esquemático y en la
tes externos al microcontrola­ objetivos iniciales. El micro­ forma en que están conectados
dor; además, se deben consi­ controlador se puede instalar los pines de los puertos, esta­
derar las características eléctri­ sin tener grabado el programa bleciendo si las cargas se acti­
cas de éste (capacidades de co­ para dejar listas sus conexio­ van con “unos” o “ceros”, figu­
rriente por puerto, por pin, nes, figura 1.9. ra 1.10.
voltajes, velocidades, etc.) y las
de las cargas o circuitos conec­ 8) Elaborar el d iagram a de flu­ 10) U tilizar un program a en ­
tados a los puertos. jo del program a para facili­ s a m b la d o r p a r a c o r r e g ir
tar la escritura del m ism o. errores de sintaxis y “trad u­
5) E laborar u n a lista co m p leta cir” las instrucciones a có di­
de m ateriales con todas las 9) Escribir el programa en un edi­ gos binarios.
e s p e c if ic a c io n e s d e c a d a
un o de los co m p o n en tes, lo
m ás d e ta lla d a p o sib le. Lo
m ás reco m en dable es elab o ­ [Mjrrf* Bbx. de nu>«i BRP
fl»ehvo g ó o á n AyyS»
rarla en Excel con el fin de bsf
btfse
P O R T B , LED1
PORTB, L E U
.d
asign arle los precios a cada bef P O R T B , L E01

c o m p o n e n te y o b te n e r el bs»
bef
S I 0 t u s , RPO
1N T C O N , T O I f
; conm ita a p a g in a 1
; l i n p i a bandera de in t e r r u p c ió n del
bef S1RTUS. RP« ; vu e lve a l a pagina co ro
costo total d el proyecto. noulu BxfF/? ; c o n fig u r o SSL d e l c ic lo ó tíl
nouwf THRt

re tfie
6) Con base en la lista anterior, in ic io
bsf S T A T U S . RPB vo y a l a páqina 1
conseguir todos los componen­ bef P O R T B . HZ sa lid a
bsf P O R T B , SENSOR entrada

tes ya sea en los suministros lo­ bef


bef
P O R T B . L EO
O P T I OH R E C , I B C S
sa lid a
configuro tnrO
bef INTCON. TB IF 1 in p ío bandera de i n t . d e l tnrO
cales, nacionales y aún del ex­ bsf
bef
INTCON. C IE
S T A T U S , RPB
b a b ilit a d o r g r a l . de interru p cio ne s
v u e lvo a la pagina B
nou) w b ’ BBBBBBB1'
terior, si se trata de un compo­ tris P O RT B

«I
nente especia], figura 1.8.

7) A rm ar el circuito en un proto­
board o en un circuito impre­
so universal, con el objeto de
tener una versión inicial o pro­ Figura 1.10 Escribiendo e l program a en un editor de textos

. . Curso práctico de Microcontroladores


5 4
Proyectos I
de d e te r m in a r si es E lla c o n siste en s im u la r
n ecesario m o d ific ar dentro del circuito y en los pi-
el p ro g ram a p r in c i­ nes d el m icro co n tro lad o r, los
pal o alg u n as ru tin as p ro g ra m a s o c a m b io s q u e el
(por ejem p lo , las de usuario ejecute desde su com ­
tiem p o ), p ara lo cual putadora; a q u í el m icrocontro­
se regresa al ed ito r de lador aú n no se en cu en tra pro­
texto y se hacen los gram ado. La últim a etapa es una
c a m b io s p e r t i n e n ­ em u lació n en tiem p o real del
tes, r e p itié n d o s e el program a, consistente en qu e la
p ro ceso h a sta lo g rar c o m p u ta d o r a , c o n a y u d a de
a l c o m p o r ta m ie n to unos equip o s especiales (em u ­
Figura 1.11 Programadores para m icrocontroladores d esead o . ladores), puede ejecutar el pro­
g ra m a e im ita r el c o m p o rta ­
11) Trasladar, por m edio de un Es conveniente, por ejem ­ m iento de los term inales según
p ro gram ado r apropiado se­ plo, acudir a la ayuda de un pro­ lo in d iq u e el program a qu e se
g ú n la m arca y referencia del gram a sim u la d o r, c o n el c u a l va a grabar en el m icro con tro ­
m icrocontrolador, el código se p u e d e c o n o c e r el c o m p o r­ lador. Esto se hace a u n a veloci­
b in ario (.hex) obtenido des­ ta m ie n to de to d o s los re g is­ dad tan alta, qu e si se com para
de la co m p utado ra a la m e­ tros de R A M y R O M c u a n ­ a sim p le vista el fu n cio n am ien ­
m o ria de program a del m i­ do se d e s a rr o lla n r u tin a s o to del m icrocontrolador progra­
crocontrolador. A este pro­ c á lc u lo s m a te m á tic o s . E ste m ado y la em u lació n , no se no­
ceso se le llam a en algunas paso se p u e d e d e n o m in a r la tarán diferencias.
regiones, “q u em ar el m icro­ s i m u l a c i ó n f u e r a d e lín e a
controlador”, fig u ra 1 .1 1 . ( o ff- li n e ). L u e g o se p u e d e C o n estos procedim ientos,
p en sar en la e je c u c ió n de u n a se podría dedu cir qu e el proyec­
12) M o n tar n u evam en te el m i­ s im u la c ió n en lín e a ( on -lin e ), to fu n cio n aría m ejo r con otros
cro co n tro lad o r en el proto- si se tien en las h e rra m ie n ta s com ponentes o con otra confi­
board, p ara verificar el fu n ­ a d e c u a d a s o si se u tiliz a un g u ració n del circu ito , lo cual
c io n a m ie n to del proyecto. m ic r o c o n tr o la d o r q u e p e r ­ h ará qu e se rediseñe el proyec­
En este m o m en to se hacen m ita lle v a r a cab o e sta ta re a , to, m odificando b uen a parte de
todas las pruebas y se pue- f ig u r a 1 .1 2 . lo hecho hasta este punto.

Figura 1.13 Proyecto term inado con su circuito im preso


Figura 1.12 Sim ulación d e l program a y caja de m ontaje

Curso práctico de Microcontroladores


Introducción a los proyectos

S u p e r a d a s to d a s las e ta p a s a n te r io r e s y En la sección de teoría se explicará detalladamen­


fu n c io n a n d o d e m a n e ra ó p tim a , ta n to el c ir ­ te, a través de las diferentes lecciones, de que se trata
c u ito co m o el p ro g ra m a , se p u e d e n d is e ñ a r y cada uno de estos términos con el fin de que el alum­
c o n s tr u ir el c ir c u ito im p reso fin a l y la c a ja de no los pueda analizar correctamente; así que no se pre­
m o n t a je , q u e a lo ja r á lo s c o m p o n e n t e s d e ocupe si no los entiende bien por ahora. Al avanzar en
m a n e ra d e fin itiv a d a n d o p o r c o n c lu id o el p ro ­ el curso, los irá conociendo y entendiendo mejor.
ceso , f ig u r a 1 .1 3 .
Para facilitar esta tarea, cada fabricante de micro­
Para realizar los ex p erim en to s y c o n stru ir controladores tiene disponibles una serie de manuales
los pro yectos d e este cu rso , es c o n v e n ie n te p o ­ de datos técnicos donde se describen las principales
seer c o n o c im ie n to s previos en e le c tró n ic a d i­ características de cada uno de sus dispositivos.
g ita l, e le c tró n ic a a n á lo g a y bases sobre el m a ­
n ejo de c o m p u ta d o ra s. Si se tien en d e fic ie n ­ Así mismo, cada empresa tiene su página web en
cias en a lg u n a de estas áreas, les reco m en d a­ la internet con una información inmediata y m uy com­
m os a c u d ir a los curso s q u e sobre estas m a te ­ pleta sobre todos los microcontroladores disponibles
rias h a p u b lic a d o C E K IT S.A. para el diseño de provéaos de todo tipo. Dentro de
esta información se encuentran las “Notas de aplica­
Selección del tipo de microcontrolador ción” (Application Notes), estas son proyectos comple­
C u an d o se desea co n struir un aparato utilizando tos, incluyendo el diagrama y el programa, que brin­
un m icrocontrolador com o elem ento cen tral, se dan soluciones a muchas de nuestras necesidades.
deben tener en cu en ta varios aspectos. Para em ­
pezar, se d eben conocer los alcances y requeri­ En la práctica, seguram ente se encontrarán,
m ientos del proyecto con el fin de escoger el m i­ com parando cada casa fabricante, características
crocontrolador m ás adecuado. m u y sim ilares en cada una de las líneas de pro­
ductos. La decisión de cual se va a utilizar debe
Esta decisión, se puede tom ar basándose en entonces co n tem p lar aspectos com o el acceso a
la lista de requisitos qu e se tienen para la ap lica­ las h erram ien tas de desarrollo, el precio, el so­
ción. Si co m p ara esta lista con las hojas de des­ porte del fabricante, la d isp o n ib ilid ad cercana y
cripció n de los distintos m icrocontroladores, se­ la fam iliarid ad , y los conocim ientos qu e tenga el
gu ram en te podrá iden tificar fácilm ente el dispo­ usuario frente a u n a m arca determ inada.
sitivo qu e m ás se acom ode a su proyecto.
Esta sección de proyectos se ha enfocado en la
Entre las características qu e se deben tener utilización de microcontoladores Motorola, PIC y
en cuenta, se tienen: Basic Stamp, por estar ellos entre los de m ayor difu­
sión y comercialización a nivel regional y mundial.
• Entradas/salidas paralelas program ables
• C an ales análogos program ables C o m o en el m ercado existen m uchas otras
• Salidas de P W M p ara control de motores m arcas de m icrocontroladores de igual calid ad a
• Condiciones para la generación de interrupciones los tratados en este curso, con la estructura pro­
• C an tid a d y tam año de los tem porizadores porcionada, el lector podrá m igrar fácil y rápida­
• C an tid a d de m em o ria m en te a otra tecnología.
• T ip o d e m e m o r ia d e p r o g r a m a ( R O M ,
E P R O M , P R O M y E E PR O M ) Esperamos qu e esta sección les sea de m u­
• C ó m p u to del p unto flotante cha u tilid ad para aprender sobre los m icrocon­
• N iveles de voltaje y corriente que troladores y tener una idea de las tantas cosas que
pueden m anejar ellos pueden hacer para nosotros.

8 0 (Ú M M H W s * Curso práctico de Microcontroladores


m mm

* W - «&
'•V \ • ^ '\ *r *wy* ’
ÍV *5"‘
- g ír ^
*7°
? W ' $** a¿> «^ s - -A ^

LECTOR BINARIO DE 4 BITS


Por su sencillez, este es un proyecto m u y apro­
piado para in iciarn o s en la p ráctica de ap licacio ­
nes con m icrocontroladores. En este sistem a se
u tilizan los puertos o líneas de entrada/salida de
un m icrocontrolador, para lectura y salid a de d a ­
tos d igitales.

Características
• Lectura de cuatro señales digitales de entrada
provenientes de un in terrup to r dipsw itch
• Salida de datos digitales a través de diodos LED
• Manejo de buffer para amplificación de la corriente
• Incluye fuente regulada

Curso práctico de M icrocontroladores i r » .A .


Lector binario de 4 bits

Funcionamiento Cuatro (4)


Microcontrolador Cuatro (4)
interruptores tipo
Para in tro d u c irn o s de m an era rá p id a en el m a ­ PIC 16F84 diodos LED
dipswitch
nejo de los m icro co n tro lad o res, y en este caso
Unidad de Unidad de Unidad de
de los P IC , vam os a h acer u n m o n taje en d o n ­
entrada proceso salida
de se co n ectan cuatro in terru p to res (tip o dip-
sw itch) com o en trad as del m icro co n tro lad o r y Figura 1.1 Diagram a de bloques d e l proyecto
cu atro d io d o s LE D co m o salidas. Este proyecto electro válvu las, etc. La figu ra 1.2 m u estra el
tien e la co n figu ració n típ ic a de un sistem a de d iagram a esquem ático del circuito.
co n tro l con m icro con troladores: elem entos de
e n tra d a , u n id a d de proceso y elem en to s de sali­ N ótese q u e los interruptores tienen resisten­
d a ; tal co m o se p ued e ap reciar en el d ia g ra m a cias de 1 KQ conectadas al positivo de la fuente
de bloques de la figu ra 1.1. El p ro gram a se en ­ de alim en tació n ; estas sirven para fijar un nivel
carga de verificar el estado de los interruptores alto cuan do el in terru p to r correspondiente no
en cu an to a su n iv el ló gico (1 ó 0) ó de voltaje, esté haciendo contacto. En este caso, cuan do no
y d e acuerdo a esta lectu ra, se d eben en cen d er o se en cu en tra cerrado n in g ú n interruptor, el m i­
no los d io d o s LED respectivos. cro c o n tro la d o r lee, en sus lín eas d e en trad a,
“unos” y cu an d o algu n o se en cu en tre cerrado
Este proyecto es fun d am en tal para ejercitar­ leerá un “cero”, figura 1.3. Por otra parte, para
nos en el m an ejo de los puertos y podem os en en cender los diodos LED se utiliza com o buffer
u n m om ento dado reem plazar los dipswitch por o acoplador un circuito integrado U L N 2 8 0 3 , el
diferentes sensores de en trad a y los LED de sali­ cual tien e u n co n ju n to de transistores que in ­
da, por otro tipo de actuadores com o relés, triacs, vierten el nivel de voltaje (si es alto lo pasan a

Entrada
CC
\C2
+v ULN2803A

Circuito de
oscilación

Figura 1.2 RESET


Nota: El funcionamiento y estructura de los circuitos de oscilación
Diagrama y reset se analizarán detalladam ente en la sección de teoría
esquem ático

Curso práctico de Microcontroladores


Proyectos

+5V diendo de la polaridad entre sus d istrib ució n de pines la vemos


term inales (ánodo y cátodo), se en la fig u ra 1.5. Sus principales
ha incluido en la entrada como características son:
1K
una protección para el circuito
-oQV de este circuito si hay una inver­ • M em o ria de program a Flash
sión prolongada en la polaridad de 1K x 14
Nivel del voltaje de alim entación. • M em o ria de datos R A M de
bajo 68 bytes
L o s d io d o s e m is o r e s d e • M em oria de datos EEPROM
Figura 1.3 Obtención de los niveles
lu z L E D (L igh t E m ittin g de 6 4 bytes
lógicos en las líneas de entrada
D iod.es) • PILA de 8 niveles
bajo y viceversa) y am p lifican la Son un tipo de diodos qu e se • C u atro tipos de fuentes de
corriente. Por lo tanto, el nivel usan generalm ente com o indica­ interrupción
de salida para encender un LED dores lum inosos y com o visuali- • 35 instrucciones
debe ser positivo. zadores, fig u ra 1.4. Para qu e un • E ncapsulado de 18 pines
diodo LED pueda em itir luz, es • Frecuencia de trabajo m áx i­
L a f u e n t e r e g u la d a d e necesario que sea polarizado d i­ m a de 10 M H z
v o lta je rectam ente con un voltaje posi­ • U n solo tem porizador
A u n q u e los m icro co n tro lad o ­ tivo entre ánodo y cátodo supe­ • 13 líneas en total d e entra­
res P IC p u ed en ser a lim e n ta ­ rior a 1.5V aproxim adam ente. da/salida (I/O)
dos con vo ltajes en tre 3 y 6V, • C o rrien te m áxim a absorbi­
es recom endable sum inistrarles Las p rin cipales ventajas de da: 80 m A en el puerto A y
u n vo ltaje estable y de b ajo ri­ los LED com o em isores de luz 150 m A en el puerto B
zado, d en tro de d ich o rango, es su tecnología de fabricación • C o rrien te m áxim a su m in is­
p ara qu e el co m p o rtam ien to de en estado sólido, lo cual im p li­ trada: 50 m A en el puerto A
los circuito s q u e poseen en su ca qu e su desgaste o vid a ú til es y 100 m A en el puerto B
in te rio r sea el esp erad o y no m uch o m ás am p lia qu e la de los • C o rrien te m áxim a absorbi­
ocasione a lg ú n p ro b lem a en la in d icad o res lu m in o so s in c a n ­ da por línea: 25 m A
ejecu ció n de los program as. descentes. Bajo condiciones de • C o r r ie n t e m á x im a s u m i­
p olaridad directa, el diodo LED n is tra d a p o r lín e a : 2 0 m A
El diseño de la fuente inclu­ b rilla con una in ten sid ad lu m i­
ye al regulador positivo de 5V, de nosa proporcional a la m a g n i­ M e m o ria d e p ro g ra m a
la serie de reguladores integrados tu d de la corriente qu e pasa a Es u n a m em o ria de 1 K byte de
de tres terminales 78L05, cuya ca­ través de él, la cual debe ser li­ tam año con palabras de 14 bits.
pacidad de suministro de corrien­ m ita d a a m enos de 5 0 m A (típ i­ Cápsula
te es del orden de lOOmA, sufi­ c a m e n te 5m A ) p ara ev itar su plástica
de color
ciente para alim entar el circuito. destrucción por calentam iento.

Para m ejorar la estabilidad El m ic r o c o n t r o la d o r


y garantizar el buen desem peño A ntes de co n tin u ar con la ex­
del regulador, éste d eb e estar p lica ció n del fu n cio n am ien to
acom pañado de los condensado­ de este p ro yecto , a n alicem o s Cátodo
(K)
res C l , C 2 y C 3 . El diodo recti­ b rev em en te las características
Ánodo
ficador de propósito general D 1, del m icrocontrolador utilizado. (A)
qu e abre o cierra el paso de la S e t r a t a d e l m u y c o n o c id o
Figura 1.4 Los diodos LED (aspecto físico
corriente hacia el circuito depen­ P IC 1 6 F 8 4 de M icro ch ip , cu ya y símbolo)

s
Curso practico de Microcontroladores S .A .
Lector binario de 4 bits

Dentro de este m apa podemos apreciar el re­


gistro de estado en la dirección 0 3 H , figura 1.8.
Este registro contiene el estado aritmético de la AL.U,
la causa del reset y los bits de preselección de página
para la m em oria de datos (R A M ). Estos últimos
son especialmente útiles cuando trabajamos con mi­
crocontroladores P IC de m ás capacidad qu e el
16F84. En esos dispositivos, la m em oria de progra­
m a (R O M ) se divide en varias “páginas” o bloques
Figura 1.5 D istribución de pines d e l m icrocontrolador 16F84 de programa y la m em oria de datos se divide en
varios bloques denom inados “bancos”.
C o m o es del tipo F L A SH se p ued e p ro gram ar y
borrar eléctricam ente, lo q u e facilita el desarro­ Podem os observar q u e la m em o ria R A M , en
llo de los program as. En la Figura 1.6 vem os el el caso del PIC 16 F 8 4 , se divide sólo en dos “ban­
m ap a o d istrib ució n de esta m em o ria; en ella se cos”. Para tener acceso a cada uno de los regis­
p ued e apreciar el espacio de la p ila y las u b ica­ tros, debem os decirle al program a qu e direccio-
ciones específicas q u e deben o cup ar cada u n a de n e el banco correspondiente según el registro que
las porciones del program a com o el reset (0 0 0 0 H ), deseem os trabajar. Para cam b iar de banco, se u ti­
el vector de in terru p ció n (0 0 0 4 H ) y la dirección liza el bit cinco del registro de estados, p onién­
de inicio del program a (0 0 0 5 H ). dolo en uno o en cero según corresponda.

En la n um eració n 0 0 0 0 H , 0 0 0 4 H y 0 0 0 5 H , Descripción del programa


las prim eras cuatro cifras in d ican una posición C u a n d o se lee el estado de los dipsw itch se debe
de m em o ria (0 0 0 0 , 0 0 0 4 y 0 0 0 5 ) y la letra H al in v ertir el valor leíd o , p ara asegurarse qu e el in ­
Final, in d ica qu e están escritas en el sistem a de te rru p to r q u e está cerrad o se co n vierta en una
n um eració n hexadecim al, qu e es m u y utilizada señal p ositiva p ara en cen d er el LED correspon­
para este tipo de datos. d ien te. En la fig u ra 1.9 se m u estra el d iag ram a

Memoria RAM PC <12:0> 00H 'D irec. Indirecto 80H


*Direc. Indirecto

El P IC 16F 84 puede direc- 01H TM R0 0PTI0N 81H


CALL
13 02H
RETLW PCL PCL 82H
cionar hasta 128 posiciones RETFIE 03H STATUS STATUS 83H
de mem oria RA M , pero sólo RETURN 04 H FSR FSR 84H
05 H PORTA TRISA 85H
tiene establecidas físicamen­
06H P0 R T B T R ISB 86H
te las p rim eras 8 0 (0 0 H - 07H 87H
4F H en hexadecim al). De 08 H EEDATA EEC0N1 88H
09H EEADR EEC0N2
éstas, las primeras 12 son re­ 89H
0AH PCLATH PCLATH 8AH
gistros que tienen un propó­ 0000H 0BH INTC0N INTC0N 8BH
sito especial en el control del 0CH 8CH
68 Registros Mapeado en
de propósito
microcontrolador y las 68 si­ general
página 0
4FH CFH
guientes son registros de uso 0004H S0H D0H
general que se pueden utili­ 0005H
M EM ORIA
zar para alm acenar los datos DE PROGRAMA 7FH FFH
temporales de la tarea que se BANCO 0 BANCO 1
03FFH
está ejecutando. En la figura 0400H No es un registro físico
Posiciones no establecidas
1.7 se aprecia el m apa de la 1FFFH
Figura 1.7 M apa de la m em oria RAM del
m em oria R A M . Figura 1.6 Mapa de la memoria de programa
PIC16F84

S .A . Curso práctico de M icrocontroladores


Proyectos

R eg istro : STATUS
INICIO

IR P RP1 RPO TO PD Z DC C
I
bit 7 bitO Program ar
O puertos
D irección: 03h
Condición de reset. 000??XXX
ciclo
IRP: S e le c to r de p ág in a p a ra d ire c c io n a m ie n to in d ire cto .
Este bit no se utiliza efectivam ente en el PIC16F84, por lo que
s e puede u tiliz a r com o un bit de p ropósito g en eral.
RP1.0: S e le c to re s de p á g in a p a ra d ire cc io n a m ie n to d irecto .
o RB3=

Solam ente RPO se utiliza en el PIC16F84. RP1 se puede utilizar


com o un bit de propósito general.
TO: Tim e O ut o B it de fin a liz a c ió n d el te m p o riz a d o r.
S e coloca en 0 cuando el circuito de vig ilan cia Watchdog RA1
finaliza la temporización.
PD: Power Down o Bit de bajo consum o. S e coloca en 0 por la
instrucción SLEEP.
Z: Zero o Bit de cero. Se coloca en 1 cuando el resultado de una et2
operación lógica o aritm ética es cero. NO et3
DC: Digit Carry o Bit de acarreo de dígito. En operaciones aritméticas RB2= 1? RAO
s e a c tiv a cu a n d o h ay a c a rre o en tre e l bit 3 y el 4.
O
C: Carry o Bit de
acarrreo. En instrucciones aritm éticas se activa
cuando se presenta acarreo desde el bit m ás significativo del
resultado.

Figura 1.8 Registro de estado i


O &
de flujo co rresp o n d ien te al ejercicio y en la fi­
g u ra 1 .1 0 el p ro gram a respectivo.
i-
et4

C a d a un o de los bloques del d iag ram a de o R B4 = 1 ?

flujo se ha etiq uetado con u n núm ero, al igual


qu e cada u n a de las partes del código del progra­
m a se ha m arcado con letras p ara ser referencia-
dos dentro de la explicación qu e se d ará a co n ti­ O
n uació n ; esta m etodo logía se seguirá aplicand o a
lo largo de este curso.
et6

C uando escribim os un program a para un mi- © R B5 = 1 ?

crocontrolador, debem os tener en cuenta el m apa


de las direcciones de la m em oria R A M q u e po­
sea. Este m ap a de direcciones debe co n ten er los
puertos, el registro de estado, el registro de in te­
rrupciones, etc., y debe estar incluido en todos Figura 1.9 Diagrama de flujo del programa

los program as q u e desarrollem os; estas d efin icio ­


nes están dadas dentro de la sección A del pro­ Los nom bres qu e se escogen son libres y a
gram a a través de la directiva E Q U . La función elección del program ador; por ejem p lo , status lo
de esta directiva es defin ir una constante a un hubiéram os podido llam ar ‘ estado” o tener cual­
nom bre en el program a; cu alq u ier valor defin i­ q u ier otro nom bre, pero siem pre se referirá a la
do p o r EQ U es fijo y no se puede m o dificar en dirección 0 3 H de la m em o ria R A M qu e corres­
n in g u n a parte del program a. ponde a ese registro {STATUS). C ad a qu e utili-

Curso práctico de M icrocontroladores S .A .


Lector binario de 4 bits

¡E n caso de que un número se


¡En caso de que e l número se
¡En caso de que un número se
¡ S i no se e s p e c i f i c a n ad a, se
¡ d e f i n i c i ó n de r e g i s t r o s
pe equ 02H
s ta tu s equ 03H
ptob equ 06H ; e l p u e rto B e s t á en l a d i r e c c i ó n 06 de l a RAM
p to a equ 05H ; e l p u e rto B e s t á en l a d i r e c c i ó n 06 de l a RAM
tr is b equ 86H ; r e g i s t r o de c o n f ig u r a c ió n d e l p u e rto B
t r is a equ 85H ; r e g i s t r o de c o n f ig u r a c ió n d e l p u e rto A
w equ 00H ; i n d i c a que e l r e s u lt a d o se g u a rd a en W

re se t org 00 ; e l v e c t o r de r e s e t e s l a d ir e c c ió n 00
goto in ic io ;s e s a l t a a l i n i c i o d e l programa
o rg 05 ; e l program a em pieza en l a d ir e c c ió n de memoria 05

in ic io bsf s ta tu s ,5 ;s e u b ic a en e l segundo banco de RAM


movlw 3CH ;s e c a rg a e l r e g i s t r o W con 3C
movwf tr is b ;s e programan l o s p in e s d e l p u e rto B
movlw 03H
movwf t r is a
bef s ta tu s ,5 ;s e u b ic a en e l p rim e r banco de memoria RAM

c ic lo b tfs s p to b ,3 ; chequeo e l p in 3 d e l p u e rto B , ( d i p A )


goto e tl ; s i e s tá en c e r o s a l t o a e t l
bsf p to a ,l ; s i e s tá en uno, pongo un uno en e l p in RA I
e t2 b tfs s p t o b ,2 ; chequeo e l p in 2 d e l p u e r to B ( B I T B d e l d ip )
goto e t3 ; s i e s t á en c e r o , s a l t o a e t3
bsf p to a ,0 ; s i e s tá en uno, pongo un uno en e l p in RA0
e t4 b tfs s p t o b ,4 ; chequeo e l p in 4 d e l p u e rto B ( B I T C d e l d ip )
goto e t5 ; s i e s tá en c e r o , s a l t o a e t5
bsf p to b ,7 ; s i e s t á en uno, pongo un uno en e l p in RB7
e t6 b tfs s p to b ,5 ; chequeo e l p in 5 d e l p u e r to B ( B I T D d e l d ip )
goto e t7 ; s i e s t á en c e r o , s a l t o a e t7
bsf p to b ,6 ; s i e s tá en uno, pongo un uno en e l p in RB6
e t8 goto c ic lo ; r e p i t o to d o e l p ro ceso

e tl bef p t o a ,1 ; pongo c e r o en e l p in 1 d e l p u e r to A
goto e t2 ¡r e g r e s o a ch e q u e a r e l punto B d e l d ip
e t3 bef p to a ,0 ¡pongo c e r o en e l p in 0 d e l p u e r to A
goto e t4 ¡r e g r e s o a ch e q u e a r e l punto C d e l d ip
e t5 bef p to b ,7 ¡pongo c e ro en e l p in 7 d e l p u e rto B
goto e t6 ¡r e g r e s o a ch e q u e a r e l punto D d e l d ip
e t7 bef p t o b ,6 ¡pongo c e r o en e l p in 6 d e l p u e rto B
goto e t8 ¡r e g r e s o p a ra c o n t in u a r e l c i c l o
end


1 F u s ib le s de programi

y Ose XT

y Watchdog OFF

y Code p r o t e c t OFF

y Power-Up-Tim er 0N+
• M ic ro .
y PIC 16F84

Figura 1.10 Programa para e l proyecto


cem os la palabra status en el program a, el en sam ­ gram a, del código qu e sigue a continuación y que
blador encenderá qu e nos estam os refiriendo a la se debe ubicar en la dirección qu e ella referencia.
dirección 0 3 H de la m em o ria R A M . Por facili­ Si m iram os el m ap a de la figura 1.6, observare­
dad de en ten d im ien to , es m u y conveniente asig­ mos qu e esta parte del program a lo qu e hace es
nar siem pre nombres relacionados con la función ub icar al código en su posición correcta, el vec­
de cada uno de los registros para qu e nos ayuden tor de reset en la dirección 0 0 0 0 H y el inicio del
a recordarlos. program a en la dirección 0 0 0 5 H .

En el b lo que B del program a, se observa una C uando desarrollamos una aplicación con m i­
nueva directiva d en o m in ad a O R G . C o n ella es­ crocontroladores, uno de los primeros pasos que
tablecem os la dirección, en la m em o ria de pro- debemos seguir es configurar el funcionam iento

Curso práctico de Microcontroladores


Proyectos

trisb
de los puerros, es decir si cada
uno de los pines o terminales del C o n fig u ra c ió n : bit 7 0_
3 C = 0011 1100
microcontrolador va a servir para bit 6 O
bit 5 1
entrar datos o para originar sali­
R e g is tr o
bit 4 1
da de datos. En algunos casos, tris b bit 3 1
un m ism o pin puede alternar su
bit 2
fu n cio n am ien to , pero esto lo Figura 1.11 Configuración
bit 1
del puerto B p o r m edio de
analizarem os m ás adelante. En la instrucción trisb bit O O
el bloque 2 del diagram a de flu­
jo y en el bloque C del progra­ colocar un “cero” en el bit co­ da, se utiliza la instrucción btfss
ma, se establece esta configura­ rrespondiente al pin, se configu­ <registro>yb , la cual lee el bit
ción. Esto se hace a través de los ra corno salida, m ientras qu e si indicado por la letra b del regis­
registros trisa y trisb , los cuales se escribe un “uno”, el pin o ter­ tro indicado en <registro> (en
son registros de ocho bits que m in al queda configurado como este caso los puertos A y B), y se
configuran los puertos A y B; al entrada, figura 1.11. En el pro­ salta la siguiente instrucción si
gram a observamos cómo se hace ese bit está en “uno”; si el bit está
PARA SA BER MÁS
el cam bio a la página uno para en “cero”, el program a ejecuta la
Un ensamblador es una herramienta de de­
sarrollo de software utilizada para trasla­ poder acceder a trisa y trisb para siguiente instrucción la cual co­
dar un conjunto de instrucciones en ensam­ modificarlos. rresponde a un goto< etiqueta >.
blador (llamado código fuente) a instruccio­ La instrucción g o to perm ite sal­
nes que pueden ser entendidas por la com ­
putadora (denominado código de máquina).
Los num erales 3 al 14 del tar in c o n d ic io n alm en te varias
Las instrucciones en ensamblador son un diagram a de flujo y la parte D posiciones hasta el lugar donde
conjunto de comandos establecidos a tra­ del program a, tom an el valor leí­ se encuentre la etiqueta que se
vés de los cuales un programador humano
do de los in te rru p to re s c h e ­ referencia en <etiqueta>. U na
puede ejecutar efectivamente instrucciones
en lenguaje de máquina. queando uno a uno los bits RB3, vez se han leído los cuatro ter­
R B 2, R B 4 y R B 5. Según el esta­ m inales del interruptor, y origi­
El lenguaje ensam blador de los microcon­
do de cada uno de esos pines, se nado la salida correspondiente,
troladores PIC presenta tres com ponentes
principales:
debe sacar un “cero” o un “uno” el program a retorna al punto 2
Instrucciones mnemónicas por los pines R A I, RAO, R B 7 y del diagram a de flujo o etiqueta
Directivas R B 6, respectivamente. Para leer ciclo del program a, para repetir
M acros
cada uno de los pines de entra­ todo el proceso.
M nem ónicos son instrucciones que se
LISTA DE MATERIALES
trasladan directamente en código de m á­
Cant. Ref. Descripción
quina. S e usan para realizar operaciones
1 IC1 Microcontrolador PIC16F84
matemáticas y lógicas sobre datos residen­ 1 IC2 Regulador fijo de +5V, LM78L05
tes en la memoria. También pueden mover 1 IC3 Driver de transistores NPN, ULN2803
datos entre registros, al igual que saltar a 1 D1 Diodo rectificador de propósito general 1N4004
lo largo de la memoria de programa. 4 LED1.LED2,
LEÜ3 y LED4 Diodos LED de 5mm, rojos
2 C1 yC3 Condensadores cerámicos de 0.1 uF - 50V
Las directivas son las que controlan la
1 C2 Condensador electrolítico de 47uF - 25V
operación del ensamblador, pues orientan
2 C4 y C5 Condensadores cerámicos de 20pF - 50V
sobre cómo se deben tratar los mnemó­
1 XT1 Cristal de cuarzo de 4MHz
nicos, referenciar datos y en qué formato 4 R1.R2, R3 y R4 Resistencias de 1KQ, 1/4W
se originará el archivo de salida. 4 R5, R6, R7 y R8 Resistencias de 330 Q , 1/4W
1 R9 Resistencia de 100 Q, 1/4W
Un m acro es una secuencia de com an­ 1 R10 Resistencia de 10K Q , 1/4W
dos de instrucciones en ensamblador. Es 1 S1 Interruptures tipo DIPswitch de 4 posiciones
1 S2 Pulsador pequeño de 4 pines, para circuito impreso
un bloque de program a que realiza una
1 K-321 Circuito impreso CEKIT
función específica y por la tanto puede ser
2 Bases para circuito integrado de 18 pines
invocado cada vez que se necesite.
1 Conector de tornillo de 2 pines

Curso práctico de M icrocontroladores 5 . A .


Lector binario de 4 bits

Ensamblaje del proyecto


Aunque este proyecto es sim ple y emplea pocos componentes, e l proceso de ensam blaje se
debe hacer de una form a técnica contando con las herram ientas básicas tales com o e l
cautín, las pinzas, e l cortafrío, e l pelacables y la soldadura de estaño; usando la guía de
ensam blaje dibujada sobre la cara de los com ponentes en e l circuito im preso, y siguiendo
cuidadosam ente estos pasos: * * 4

Figura 1.12 En la figura se m uestra e l


conjunto de com ponentes electrónicos,
elem entos electrom ecánicos y
accesorios, que se requieren para
Figura 1.13 Usando alam bre telefónico ensam blar e l le cto r binario de 4 bits.
desnudo núm ero 24, construya con las pinzas
los dos puentes de alam bre y suéldelos al
nivel de la superficie de la tarjeta.

Figura 1.14 Ubique y suelde Figura 1.15 Suelde a Figura 1.16 fíje ahora, con Figura 1.17 Suelde el regulador
todas las resistencias y e l diodo continuación las bases y los soldadura, los condensadores IC3, e l pulsador S2, el
rectificador. diodos LED, orientando cerámicos primero, luego el interruptor tipo DIP y el
cuidadosam ente e l ánodo y el condensador electrolítico y el conectar de entrada.
cátodo. cristal de 4 MHz.

Figura 1.18 En la fotografía, se m uestra el


aspecto del proyecto ensamblado.

Figura 1.19 Con una batería o fuente


de 9V CC, alim ente la tarjeta sin e l
m icrocontrolador, y m ida con un
m ultím etro e l voltaje e n tre lo s p in e s
14 y 5 d e la base d e l
m ic ro c o n tro la d o r (IC1), e l c u a l
debe s e r + 5 / CC, s i e l c irc u ito
e stá re g u la n d o bien.

Figura 1.20 Instale en su base e l m icrocontrolador 16F84 program ado; alim ente el
circuito y conm ute cada uno de los interruptores del interruptor tipo DIP (A,B,C,D), y
observe que cada uno de los diodos LED se enciendan o apaguen en respuesta a la
acción sobre su correspondiente interruptor. Si esto ocurre, e l circuito está trabajando
bien. S i no es así, revise m uy bien la posición de los componentes, todas las soldaduras
y e l program a del microcontrolador.

' S .A . Curso práctico de Microcontroladores


* Vr'V.’ . . /M ÍA * - * X 1 / »"*>
» xvN\v;x..;. ax -x^ y ;vXy v \x-X- v :’ S w '•%'%'V

18138695

DE PULSOS
Por medio de este proyecto, tendremos un circuito
que cuenta, de 0 a 9, los pulsos provenientes de un
pulsador y los muestra en un display o indicador de
siete segmentos. Aprenderemos a manejar rutinas de
retardo y conoceremos el funcionamiento de un os­
cilador RC para un m icrocontrolador.

Características
• Lectura de una señal de entrada proveniente de
un pulsador. Este elem ento puede ser en un
m om ento dado un sensor u otro sistem a de
detección.
• C uen ta los pulsos que se originan en la entrada.

Curso práctico sobre M icrocontroladores S .A .


Contador decimal de pulsos

Funcionamiento com o en trad a al sistem a un pulsador. En la fig u ­


En este segundo proyecto, aprenderem os concep­ r a 2.1 observam os el d iag ram a de bloques de este
tos y técnicas m u y im p ortantes para el desarrollo proyecto; la u n id ad de entrada la conform a el
de aplicaciones con microcontroladores PIC. Este pulsador S i , la u n id ad de proceso es un m icro-
m o ntaje tien e por objeto visualizar en un display controlador P IC 1 6 F 8 4 , el cual hem os seleccio­
de siete segm entos el conteo de las veces qu e se nado por las ventajas qu e tenem os al trabajar con
acciona un pulsador (S I ). C o m o por ahora tra­ un dispositivo con m em o ria E E PR O M y final­
bajarem os con un solo display , visualizarem os el m ente, la u n id ad de salida está com puesta por
conteo desde cero (0) hasta nueve (9) y luego un circuito decodificador de B C D a siete seg­
iniciarem os de nuevo. m entos y un display de siete segm entos, en el cual
observarem os el resultado del conteo.
M uchas veces, cuando desarrollam os circu i­
tos prácticos con m icrocontroladores y distintas En la fig u ra 2 .2 se m uestra el d iagram a es­
clases de sensores, nos encontram os en la situa­ qu em ático del circuito. La en trad a de S i se ha
ción de tener qu e detectar señales digitales de conectado a una línea del puerto A , en este caso
corta duració n. Para estos casos, existen algunos a RAO (pin 17) y las señales para el display salen
m étodos qu e nos p erm iten leerlas correctam en­ por los pines RBO, R B 1, R B 2 y R B 3 del puerto
te, los cuales tratarem os en esta ocasión al tener B. En estos cuatro pines se o rigina el código B C D

Microcontrolador Display de ||
Pulsador Decodificador
PIC16F84 7 segm entos II
h
H.

iiti i i •i » t ■ ■
Unidad de
entrada proceso
salida
F ig u ra 2.1 Diagram a de bloques del contador de pulsos

D ISPLAY 1

Circuito de reloj l'" ' > R4


u oscilador RC

Figura 2 .2 Diagram a esquem ático del circuito

18 II TTs.a. Curso práctico sobre Microcontroladores


Proyectos

correspondiente al n úm ero ; el R C , con una resistencia de 10


circuito integrado T T L 7 4 4 7 se KQ y un condensador de 20 pF. q f COM a b

encarga de trad u cir este código Esto se hace para qu e el sistem a 10 | 9 | 8 | 7 | 6 |

y entregar la representación en sea m ás económ ico y teniendo


el form ato de siete segm entos. en cu en ta qu e este tipo de osci­
Esta es u n a técn ica sencilla qu e lador se puede utilizar en ap li­
nos perm ite ahorrar líneas (pues caciones d o n d e no se requiere Segm entos
sólo necesitam os cuatro líneas m u ch a velocidad o precisión de
para m an ejar los siete segm en­ tiem pos. Al in corp ora r esta red
tos) al trabajar con este tipo de RC com o circu ito oscilador\ se
Punto
visualizadores. d eb e co n figu ra r esta elecció n en
decim al
e l m om ento d e p rogra m a r e l m i­
112 |3 |4 | 5 |
N o tem o s q u e el p u lsad o r crocon trola d or ; habilitando la
e d COM c p
S i tien e u n a resistencia de 1 op ción q u e in d ica q u e este tipo
KÍ2 co n ectad a al positivo d e la d e oscilador es e l q u e se va a uti­ Figura 2 .5 Designación de los segm entos
fu e n te d e a lim e n t a c ió n ; p o r lizar ; fig u r a 2.3. del display y num eración sus term inales
esta razón, cada vez q u e el p u l­
sador S i se o p rim e, se o rig in a Esta opción form a parte de ca en la figura 2 .5 . La m ayoría
u n estado ló gico b ajo (0 v o l­ los “fusibles” de program ación, incluyen un LED ad icio n al que
tios) en la en trad a de la p rim e­ los cuales son las opciones con sirve com o p unto decim al.
ra com puerta (pin 1); de lo co n ­ las qu e se le dice al software pro­
trario , d ich a en trad a siem p re gram ador qu e grabe el progra­ Los displays p u ed en ser de
p erm an ecerá en estado lógico ma. En la figura 2 .4 se in d ican án o d o o de cátodo co m ú n , de­
alto (5 voltios). las frecuencias de oscilación que p en d ien d o d e co m o estén co­
originan en el microcontrolador, nectados in tern am en te los seg­
Circuito de reloj distintos valores de R y C. m en to s. El u tiliz a d o en este
lo d o circuito con este tipo de proyecto es de ánodo co m ún.
m icrocontrolador, y en general R C
Frecuencia En este caso, todos los ánodos
(Aprox.)
con la gran m ayo ría de ellos, de los LED están conectados
10K 20pF 62.5 KHz
debe llevar un circuito externo entre sí, fo rm an do un ánodo
10K 220pF 80 KHz
de reloj qu e p ued e ser u n cris­ co m ú n , y todos los cátodos es­
10K 0.1 p F 85 Hz
tal, u n resonador o u n a red R C , tán libres. En un display de cá­
tem a qu e se exp licará a m p lia ­ F ig u ra 2 .4 F recuencias de o scila ció n todo c o m ú n , su ce d e to do lo
m en te en la sección de teoría. originadas p o r distintos valores en la red RC contrario.
En este caso se h a u tiliz a d o
com o circuito oscilador una red El display de 7 N otem os qu e extern am en ­
segmentos te disp on em o s de 10 te rm in a ­
E P I C W in - C o n ü g ta a h o n O x 3 F F 3
Otdator
Es un dispositivo sem ico n d u c­ les de c o n e x ió n : dos p ara el
r lp r x t r hs e rc r - tor q u e se utiliza para visualizar á n o d o c o m ú n (COM), siete
r
r IMTF rinrítttf
r '
C
\ los núm eros del 0 al 9, así como
algun as letras y sím bolos espe­
para los cátodos de los segm en­
tos (a, b, c, d, e, f, g) y uno
Codo Protocbon
ciales. Los segm entos, cad a uno p ara el cáto do del p u n to d e c i­
de los cuales está form ado por m al (P). Los term in ales se n u ­
Figura 2 .3 Habilitación del oscilador RC a l un LEE) con form a rectangular, m eran del 1 al 10 com o se in ­
momento de program ar el microcontrolador.
están organizados en form a de d ica en la fig u ra 2 .5 . Para v i­
Esta opción forma parte de lo s " fusibles" de
program ación que se deben configurar “8 ” y se designan com o se indi- sualizar un carácter, por ejem -

Curso práctico sobre Microcontroladores


C o n t a d o r d e c i m a l d e p u ls o s

pío el núm ero 4 , deben encenderse ciertos seg­ trada (RAO), una falsa lectura y así ocasionar un
m entos (b, c, f y g, en este caso) y m antenerse incremento desordenado de la cuenta de los pulsos
apagados los dem ás. El color de la luz em itid a efectivos lo que se podrá apreciar en el display.
por los segm entos del dispLiy puede ser rojo, am a­
rillo, verde y n aran ja, dep en d iendo del diseño y L a p rim e ra c o m p u e rta de IC 3 se en carg a
la referencia del m ism o. de efe c tu ar un p rim e r paso en e l filtrad o , al
lim it a r la tra n sic ió n de 1 a 0 ó viceversa, por
El decodificador de siete segmentos m e d io d e la h istéresis c a ra c te rístic a de la te c ­
El 7 4 4 7 es un circuito integrado d ig ital T T L d i­ n o lo g ía sch m itt trigger. U n se g u n d o n iv el de
señado para m an ejar d irectam ente un display de a m o rtig u a m ie n to se o b tie n e c u a n d o la sa lid a
7 segm entos de ánodo co m ún; por ello, cada uno d e d ic h a c o m p u e rta se a p lic a al filtro p asab a-
de sus pines de salida, destinados a operar los jos fo rm ad o p o r R 2 y C 2 . Los valores d e estos
segm entos del display, es una fuente de corriente dos e le m e n to s d efin en el nivel d e a m o r tig u a ­
con capacidad para m anejar hasta 1OmA por seg­ m ien to deseado.
m ento. Para m an ejar el display , el circuito in te­
grado tiene las salidas a, b, c, d, e, f y g, qu e se Este filtro retarda la llegada del nivel lógico
deben conectar a través de resistencias lim itad o ­ 0 ó 1 a la entrada de la segunda com puerta schmitt
ras de corriente con cada uno de los segm entos. trigger de 1C3, q u e se en carga de co m p lem en tar
el nivel de en trad a, logrando así o btener un nivel
Para fo rm ar c u a lq u ie ra de los n úm ero s de­ lógico directo en la salid a del elim in ad o r de re­
cim ales a través d e los segm en to s del display , el botes (pin 4 de 1C3) en función del nivel de la
d eco d ificad o r c u e n ta con cu atro en trad as b in a ­ en trad a de pulsos.
rias (A, B, C y D ) en las cuales se representa el
n ú m ero deseado p o r m ed io del có d igo B C D . El d io d o D I se utiliza dentro del circuito
Por ejem p lo , p ara visualizar el n úm ero 5, las en ­ com o un elem en to de protección. Su función es
tradas d el d ec o d ificad o r d eben ser: A = l, B=0, actu ar com o u n a válvula unidireccional qu e per­
C=1 y D=0. m ite el paso de la co rriente solam ente cuan do se
polariza d irectam en te y opera com o un circuito
El circuito eliminador de rebotes abierto cuan do su p olaridad está invertida. De
Los interruptores m ecánicos generan unas seña­ esta form a, se protege el circuito co n tra las in ­
les no deseadas de conexión y desconexión qu e versiones qu e p ued an presentarse en la p olaridad
originan falsas lecturas cuan d o se conectan como del voltaje de alim en tació n , qu e podrían dañar
entradas en los circuito s con m icro con trolad o ­ perm anentem ente el m icrocontrolador y los otros
res. Estas señales se d en o m in an “de rebote" ya circuitos integrados.
qu e se o rigin an cu an d o dos piezas m etálicas se
acercan o alejan , o rebotan entre sí. Descripción del programa
En la figura 2 .6 observam os el d iag ram a de flujo
En este proyecto, el circuito eliminador de rebo­ del program a y en la figura 2 .7 el código fuente
tes está compuesto por dos compuertas tipo schmitt del m ism o. Recordem os qu e en este curso la nu­
trigger contenidas en el circuito integrado 7414, y m eración de los bloques y del código del progra­
un filtro pasabajos formado por la red R2 y C 2 . El m a, se hicieron para poder iden tificar cad a una
propósito del circuito es am ortiguar las conm uta­ de las partes dentro de la explicación.
ciones rápidas que se presentan al accionar el pulsa­
dor S I , entregando un pulso único y lim pio cada En el bloque A del código fuente, se ha escrito
vez que éste se acciona. De esta forma, evitamos una directiva con la cual se establecen algunas confi­
que el microcontrolador pueda detectar por su en­ guraciones con las que el programa ensamblador crea-

S .A .
Curso práctico sobre M icrocontroladores
Proyectos

INICIO
del RESET y del inicio del programa, dentro de la
memoria de programa del microcontrolador.
Configurar
puertos En el b lo que E del código del program a y en
el n um eral 2 del d iag ram a de flujo, se establece
Borrar contador
el fu n cio n am ien to de los puertos A y B; el puer­
to B se configura com o salid a y el puerto A com o
entrada. Podemos notar qu e en esta ocasión no
B orrar puerto B se utilizó el proceso tradicional de direccionar el
banco 2, configurar con trisa y trisb, y luego re­
Cargar
gresar al banco 0. En este caso se utilizó la ins­
Lím ite— ►09 trucción tris, la cual nos ahorra este trabajo al
co n figu rar d irectam en te cada puerto con el va­
lor qu e ten ga el registro w en ese m om ento.

En esta m ism a porción del program a y en


los num erales 3, 4 y 5 del d iag ram a de flujo, bo­
rram os el contenido de los puertos A y B y del
registro contar, en el cual se llevará la cu en ta de
M over contador los pulsos originados por S I cada vez q u e o p ri­
Retardo al puerto B m am os y carguem os el registro lím ite con OAH
(1 0 en d ecim al); este proceso podría denom inarse
“in icializar los parám etros del sistem a”.

C u an d o el conteo de pulsos ha llegado hasta


nueve (9), en el displayse m ostrará un nueve, pero
al sigu ien te pulso se debe volver a iniciar el co n ­
teo, es d ecir qu e el display m ostrará un cero y se
Increm entar increm entará de nuevo con cada pulso. A ntes de
contador
en viar el contenido del registro contar al puerto
B, debem os verificar qu e el conteo no ha supera­
do el núm ero nueve; para asegurar esa situación,
antes de en viar el dato al puerto B, restamos el
Contador>
Lím ite? núm ero qu e vam os a enviar, al núm ero diez.

Si esas dos cifras son iguales, el resultado de la


resta dará cero, y por lo tanto la bandera de cero
(Z, bit 2) del registro de estado se activará. Basado
Figura 2 .6 Diagram a de flu jo d e l program a
en el contenido de esa bandera, el program a pue­
rá el código objeto; en este caso sólo se le dice que se de tom ar una decisión del paso qu e se va a seguir.
va a trabajar con un microcontrolador PIC 16F84 y
que el formato por defecto de los valores constantes, D ebido a q u e en este proyecto el registro
es el hexadecimal. En el bloque B, se asignan las di­ contar n un ca tom ará u n valor superior a 10, solo
recciones en la RA M para cada uno de los registros utilizarem os los cuatro bits bajos (LSB) de ese
que se van a utilizar. El bloque C del programa, uti­ registro. Por ejem plo, cu an d o el conteo ha llega­
liza la directiva ORG para establecer las direcciones do al núm ero diez, contar tendrá el valor de 0000

Curso práctico sobre Microcontroladores S .Á .


Contador decimal de pulsos

; PROYECTO: CONTADOR DECIMAL DE PULSOS


1010. Esta situación nos perm ite co­
; CURSO PRACTICO SOBRE MICROCONTROLADORES
;C E K IT A nectar directam ente el decodificador
lis t p=16f84, R = HEX; e s p e c ific a c io n e s para e l a r c h v io LST 7 4 4 7 a los pines RBO, R B 1 , R B 2 y
R B 3 (q ue son los bits del puerto B)
T IT L E «CURSO PRACTICO SOBRE MICROCONTROLADORES» y visualizar el resultado correcto en
y* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
.
el display de siete segm entos.
; d e s ig n a c ió n de c o n s t a n t e s p a ra e s t a b le c e r e l d e s t in o
:d e l a s o p e r a c in e s
.****************************************************
Ahora podem os verificar si se ha
w equ 0
f equ 1 pulsado S 1; esto se hace en el bloque
.****************************************************
F del program a y en los num erales 6,
;mapa de memoria RAM ( s f r + ram de p r o p o s ito g e n e r a l)
.i******)»*********************************************
e s ta d o equ 03 ; r e g i s t r o de e s ta d o de l a cpu
B 7 y 8 del diagram a de flujo. Podemos
p o rtb equ 06 ; u b ic a c ió n d e l p u e r to B en l a RAM notar que se hace una prim era lectu­
p o r ta equ 05 ; u b ic a c ió n d e l p u e r to A en l a RAM
c o n ta r equ le ; v a r i a b l e p a ra a lm acen ar e l co n te o de lo s
ra del puerto RAO; si no existe nivel
; p u ls o s p o r RA0 lógico bajo, se retorna a la etiqueta
l i m i t e equ Id ; l i m i t e d e l co n te o
lo o p s equ 0d ; v a r i a b l e s a u x i l i a r e s p a ra l a ciclo para que siga leyendo ese pin; si
lo o p s 2 equ 0e ; r u t in a de r e ta r d o
ha detectado efectivam ente un nivel
re se t o rg 00 ; e s t a b le z c o e l r e s e t en l a d ir e c c ió n 00 bajo, se llam a a una subrutina de re­
; de l a mem. de prog. /■%
goto
o rg
in ic io
05
;
;
s a lto a in ic io
e l program a se u b ic a desde l a
P tardo y luego se chequea de nuevo si
; p o s ic ió n 05 de l a ROM
el nivel bajo perm anece; num eral 8
del diagram a de flujo.
r e ta r d o ; s u b r u t in a de r e t a r d o de 100 ms
movlw D * 100 * ; e l r e g i s t r o lo o p s c o n t ie n e e l número de
movwf lo o p s ; m ilis e g u n d o s de e s t a r u t in a de r e t a r d o
top2 movlw 0*110*
Este tipo de chequeo de seguri­
movwf lo o p s2 d ad es necesario en casos donde se
top nop
nop
nop
D lean pulsadores debido a la estruc­
tu r a físic a d e esto s d is p o s itiv o s .
d e c fs z lo o p s2 ; p re g u n ta s i te rm in ó 1 ms
goto to p C o m o ya lo m encio nam o s, en estos
d e c fs z lo o p s ; p re g u n ta s i te rm in ó e l r e t a r d o
g o to top2 elem entos es co m ú n q u e se origine
r e t lw 0
u n a serie de contactos involuntarios
i n i c i o movlw 00 c o n f ig u r o e l p u e rto B o rebotes antes de la pulsación real y
tr is p o rtb como s a l i d a s
movlw 11 c o n f ig u r o e l p u e rto A aún después de soltar el pulsador.
e tl
tr is
c lr f
p o r ta
p o rtb
como e n tr a d a s
b o rro e l p u e r to B p a ra i n i c i a l i z a r
E
c lr f p o rta b o rro e l p u e r to A Para evitar este problem a, ade­
c lr f c o n ta r b o rro e l r e g is t r o de conteo de lo s pulsos
movlw 0ah c a rg o con e l número oah ( 1 0 ) e l r e g i s t r o m ás del circuito an tireb o te de la en ­
movwf lim it e lim it e
trada, cuan d o detectam os un nivel
c ic lo b tfs c p o r t a ,0 p re g u n to s i e l p u ls a d o r S I e s t á o p rim id o lógico b ajo esperam os un espacio
goto c ic lo s i no l o e s t á c o n tin u o r e v is á n d o lo
c a li r e ta r d o s i e s t á o p rim id o r e t a r d o 100 ms corto de tiem po (del orden de los m i­
b tfs c p o r t a ,0 p a ra comprobar
goto c ic lo s i no l o e s t á v u e lv e a r e v i s a r
lisegundos) y leem os de nuevo para
in c f c o n ta r, s i se c o n firm a e l p u ls a d o r ,
in c re m e n to e l co n ta d o r
F corroborar qu e el nivel lógico bajo
movf c o n ta r, c a rg o e l r e g i s t r o w con e l v a lo r se m an tien e y qu e en realidad se tra­
d e l co n te o
subwf lim it e , r e s t o e se v a lo r d e l v a lo r de l í m i t e (1 0 )
ta de u n a entrada del p ulsado r y no
b tfs s e s ta d o , y m iro s i esa r e s t a d ió c e r o . (Z -> 1 ) una señal accidental.
goto e t2 s i no d ió c e r o , puedo c o n t in u a r
in crem en tan d o e l co n ta d o r
goto e tl s i d ió c e r o , r e i n i c i o e l p ro c e s o y
b o rro e l c o n ta d o r
Para in c o rp o rar el tiem p o de
e t2 movf c o n ta r, c a rg o w con e l v a l o r d e l co n teo esp e ra e n tre la s dos le c tu r a s del
movwf p o rtb l l e v o a l p u e rto B d ic h o v a lo r
goto c ic lo r e g r e s o a l e e r de nuevo e l p u ls a d o r p u erto , acu d im o s a u n a su b ru tin a
end
de retardo.
Figura 2 .7 Código fuente d e l program a

€ M iK < n m Curso práctico sobre M icrocontroladores


Proyectos

U n a su bru tin a es u n a par­ una pulsación en S i e inm edia­ in stru ccio n es y q u e no p u ed a


te especial d el p ro g ram a qu e tam ente se increm enta el conta­ co n tin u ar con el program a has­
efectúa u n a función específica dor de pulsaciones; numeral 10 ta q u e esa c an tid ad sea ejecu ­
y qu e puede ser llam ada en cual­ del diagram a de flujo. C om o este tad a, o b ten d rem o s un espacio
q u ier m om ento m ed ian te una contador no puede pasar de nue­ de tie m p o q u e nos será ú til
sola instrucción. En este caso la ve, restamos el contenido del con­ p ara n uestro p ro g ra m a . Este
rutina retardo es, com o su nom ­ tador del contenido del registro tip o de retard o se d e n o m in a
bre lo su giere, un retardo de límite, es decir, de 10 (numeral retardo p o r softw are y lo único
tiem po del orden de los m ilise- 11 del diagram a de flujo). qu e h ace es que, cu an d o invo­
gundos qu e utilizam os para in ­ cam os la su b ru tin a , se en tra en
co rp o rar u n a espera antes de C h eq u ean d o la bandera de un p erío d o de espera qu e p u e­
calificar co m o válid o el nivel cero (Z) del registro de estado, de ajustarse según las necesida­
bajo leído en el puerto A. nos dam os cu en ta si contador des d el sistem a.
ha llegado a diez; si no ha llega­
do podemos mover directam en­ O bservam os en el p ro gra­
PA R A S A B E R M Á S te el contenido de contador al m a q u e el registro loops se car­
Su b ru tin a
puerto B. Si contador ha llega­ ga con el n ú m ero d ecim al 100
Es un fragmento de instrucciones que lla­ do a diez se salta a e t l donde se y el registro loops2 co n el n ú ­
mamos dentro de un programa. Norm al­ borra el contador y se reanuda m ero d ecim al 110. El retardo
mente se coloca una subrutina dentro de
el conteo. se in ic ia en la su b ru tin a top2;
un programa para una separación lógica de
una función del resto del código fuente. Con a llí se em p ieza a d ecrem en tar
este recurso podemos econom izar espacio La subrutina de retardo el registro loops2 y hasta que
de m em oria pues solo se escribe una vez el U na su b ru tin a qu e proporcione no lleg u e a cero, el program a
grupo de instrucciones necesarias.
un tiem po de retardo, es m u y p erm an ece h acien d o ese ciclo.
La estructura de una subrutina es la útil en una gran cantidad de apli­
siguiente: caciones con m icrocontrolado­ D en tro de ese ciclo se re­
Etiqueta
res. En el bloque D del código c o r r e n u n a s in s t r u c c i o n e s
Instrucción 1
Instrucción 2 fuente, observamos la subrutina N O P (no o p eració n ), q u e sim ­
Instrucción 3 de retardo desarrollada la cual p lem en te no hacen nada, solo
pasamos a analizar: “retardo” es a y u d a n en la r u tin a a in c re ­
Instrucción n el nom bre o etiqueta qu e indica m e n tar el n úm ero de in stru c­
retlw el inicio de las instrucciones de cio nes qu e se d eben ejecutar.
la su b ru tin a q u e será llam ad a
Etiqueta es el nombre de la subrutina el cual
utilizamos para invocarla desde cualquier pun­
desde el program a principal. C u an d o loops2 ha llegado
to del programa a través de la directiva CALL. a cero, se decrementa en una uni­
Al final de cada subrutina debe aparecer la En este caso, el retardo de dad el registro loops y se carga
instrucción RETLW para que la CPU pueda re­
tiem po se logra ejecutando m i­ nuevam ente loops2 con su va­
gresar a la ejecución de las instrucciones que
seguían en el programa después del CALL. les (o m illones) de instrucciones lor original.
qu e en realidad no hacen nada.
De esta m anera, logram os
Si al hacer la segunda lectu­ C o m o la ejecu ció n de una que se ejecute 100 veces el de­
ra del puerto A desaparece el ni­ instrucción em plea cierto tiem ­ crem ento total de loops2. H as­
vel lógico bajo, asumimos que se po, d ep en d ien d o d el procesa­ ta que loops no sea igual a cero,
trataba de un rebote, pero si se d o r y del circu ito oscilador qu e la rutina se continuará ejecutan­
m antiene el nivel bajo, tendre­ posea, al in tro d u cirn o s en un do y no se retornará al progra­
mos la certeza de que se trata de c ic lo q u e c o n s u m a m ile s de m a principal.

Curso práctico sobre M ic


Contador decimal de pulsos A
L
Ensamblaje del proyecto LISTA DE MATERIALES

Cant. Ref. Descripción


1 IC1 Microcontrolador PIC16F84 programado
1 IC2 Decodificador de BCD a 7 segmentos para ánodo común, 7447
1 IC3 Compuertas inversoras s ch m itt trigger, 7414
1 D1 Diodo rectificador de propósito general 1N4001 o 1N4004
1 DISPLAY1 Display de 7 segmentos ánodo común
1 C1 Condensador electrolítico de 47uF - 16V
1 C2 Condensador electrolítico de 10uF - 16V
• f f 1 C3 Condensador cerámico de 20pF - 50V
2 R1 y R4 Resistencias de 1 KL l - 1/4W
8 R2,R5,R6,R7,R8,R9tR10,R11 Resistencias de 330 L l - 1/4W
1 R3 Resistencia de 10 KL l -1/4W
2 S1 yS2 Pulsador pequeño de 4 pines. para circuito impreso
Figura 2 .8 A quí se m uestra el conjunto de 1 K-322 Circuito impreso CEKIT
com ponentes electrónicos y los 1 Base para circuito integrado de 18 pines
accesorios que se requieren para 1 Base para circuito integrado de 14 pines
1 Base para circuito integrado de 16 pines
ensam blar e l proyecto. 1 Conector de tornillo de 2 pines

Paso 1 Paso 2
C E K I T K-322
ici ice
•• • • O ISP L A Y 1

RESET CONTADOR DECIMAL DE PULSOS 'M


Figura 2.10 Suelde a continuación las bases para los circuitos
rectificador D1. integrados.
Paso 3 Paso 4

Figura 2.11 Instale y suelde ahora e l display de siete segmentos. Figura 2 .1 2 Instale y suelde los dos interruptores
Observe la posición correcta del punto decimal, e l cual debe pulsadores y e l term inal para la alim entación.
quedar abajo a la derecha.
Paso 5 Paso 6

ET-Ty R2 CEKIT K-322 R2 » * * '» CEKIT K-3SS


é reí re? -
r» • •*
....
■ * i , « 1i 1!
■ 8
:O7¡ •: »: i.* f ¡
Tdi C2 • i tlP -
50 3U L J 8 2 . “ I¡ Qr t ,
PU LSO S EL P U LS O S * 20pT

J l .A . O JU JU

Figura 2.13 Instale ahora, con soldadura, e l condensador cerámico Figura 2 .1 4 Instale en su base e l m icrocontrolador PIC 16F84
primero, y luego los dos condensadores electrolíticos observando program ado y los circuitos integrados 7447 y 7414 observando
su polaridad. para cada uno, la posición correcta del p in No. 1

Paso 7. Prueba final


Para probar e l circuito, alim éntelo con una fuente regulada de 5 voltios y presione e l pulsador RESET; e l display debe
indicar 0. Presione luego e l interruptor S I; observe que cada vez que se presiona, e l display debe increm entar e l conteo
en 1. Si esto ocurre, e l circuito está trabajando bien. Si no es así, revise m uy bien la posición de los componentes, todas
las soldaduras y e l program a d e l microcontrolador.

Curso práctico sobre Microcontroladores


SECUENCIADOR DE 8 CANALES
En esta ocasión construiremos un dispositivo que
origina secuencialmente una serie de datos de 8 bits.
Este circuito puede usarse en juegos de luces o en el
control secuencia! de algún proceso o aparato. La
salida se visualiza por medio de diodos LED, pero
puede adaptarse a una tarjeta de potencia con tiris-
tores para activar bombillas de m ayor voltaje.

Características
• Secuenciador de ocho bits u ocho salidas
• C onfiguración de la velocidad con que se ori­
gina la secuencia: cuatro posibilidades
• Configuración de la secuencia: ocho posibilidades
• C ada secuencia es de ocho pasos
• Salida por medio de diodos LED e interfaz hacia
circuitos de potencia
El*:;
Secuenciador de 8 canales

Funcionamiento Interruptor
Microcontrolador
tipo Diodos LED
U n secuenciador de luces es uno de los proyectos PIC16F84
dipswitch
qu e todo aficionado a la electrónica ha querido
fabricar algu n a vez. Por esta razón y por la u tili­ Unidad de Unidad de Unidad de
entrada proceso salida
dad práctica qu e puede tener un dispositivo de
Figura 3.1 Diagrama de bloques del secuenciador
esta naturaleza, hem os querido presentarles este
circuito, el cual se puede am p lia r o acom odar do dato, luego con el tercero y así sucesivam ente
según sus necesidades. U n secuenciador, com o hasta recorrer todos los datos de la tabla. C u a n ­
su nom bre lo sugiere, es un aparato qu e a través do se ha term in ad o con el últim o dato, se llam a
de sus salidas puede en viar varios datos digitales otra vez al prim ero, volviendo a in iciar el proce­
un o tras otro, cu m p lien d o con una secuencia es­ so en u n a especie de ciclo continuo.
tablecida. Por lo general, una secuencia se com ­
pone de un núm ero determ in ad o de datos alm a­ Este secuenciador perm ite por medio de un
cenados en u n a tabla qu e constituyen los pasos interruptor tipo dipswitch , seleccionar la velocidad
de la secuencia. El proceso em pieza to m an d o el con que se envían los datos secuenciales al puerto,
p rim er dato de la tabla y llevándolo al puerto de es decir, el tiempo que cada uno de ellos va a per­
salida, d o n d e perm anece por u n tiem po deter­ m anecer en la salida. D e igual m anera perm ite se­
m inado. Luego se repite el proceso con el según- leccionar la secuencia o tabla que se va a trabajar,

V dd RB7
} O fA W
RB6

RAO RB5 <£^/W


RAI RB4

RA2 RB3 < £ A ^ V


RA3 RB2
< 1^V W
i RB1 <d^AA/v
S £
o RBO <E^AW
8 X 4 7 0 Í2
INTERFAZ DE
POTENCIA

(D ® ® © R ESET
IN T E R R U P T O R E S

Oscilador RC

Figura 3 .2 Diagram a esquem ático del secuenciador

Curso práctico sobre Microcontroladores


Proyectos

Modo configuración Modo RUN


+5V

Configuración
de la
velocidad Selección
del
efecto

Figura 3 .3 M odos de funcionam iento del sistem a

entre ocho posibilidades qu e se secuencias distintas, todo con un nales RAO, RAI y RA2, con los
h a n e s t a b le c id o d e n tr o d el dipswitch de cuatro pines. Este que se selecciona una entre las ocho
programa.En otras palabras: exis­ sistem a se ha diseñado para que tablas que se han construido.
ten ocho tablas distintas, cada una funcione en dos formas o m o­
de ocho pasos y ocho bits, entre dos: el modo “program ación" y En la figura 3 .4 se m ues­
las cuales se escoge una para esta­ el m o do n o rm al o “R U N ”. La tran los dos p rim ero s efectos
blecer la secuencia. En la figura 3.1 elecció n del m o do de trab ajo qu e se o rigin an cuan do se han
tenem os el diagrama de bloques se hace a través d el pin 4 del seleccio nado las tablas 1 y 2.
general del proyecto, en el se ob­ dipsw itch conectado al pin RA3; C u a n d o nos en co n trem o s en
serva al dipswitch como dispositi­ si este interruptor se encuentra m o do R U N podem os cam biar
vo de entrada, un microcontrola­ abierto, en RA3 se leerá un nivel en cu alq u ier m om ento el tipo
dor PIC 16F84 como elemento de alto y el sistema entenderá que de s e c u e n c ia a e n v ia r p o r el
p ro cesam iento y ocho diodos está en modo “programación"; y puerto, pero no podrem os cam ­
LED como elementos de salida. si el interruptor se encuentra ce­ b ia r la v e lo c id a d ; si se desea
rrado, en RA3 se leerá un nivel cam b iar la velo cid ad, se debe
En la figura 3.2 se ilustra el bajo y el sistema entrará en modo ab rir el pin 4 del dipsw itch y
diagrama esquemático del circui­ “R U N ”, figura 3.3. d a rle u n reset al siste m a por
to. El dipswitch es de cuatro pines m edio del pulsador S2. En ese
y se ha conectado a los terminales Cuando estamos en el modo m om ento, entram os de nuevo
RAO, R A I, RA2 y RA3 del m i­ de programación, podemos esta­ al m o do de program ación.
crocontrolador, el puerto B se ha blecer la velocidad del secuencia-
utilizado como salida de la secuen­ dor leyendo los dipswitch 1 y 2 co­ Descripción del
cia; por lo tanto, allí van conecta­ nectados a los pines RAO y RA I, programa
dos los ocho diodos LED cada uno teniendo en cuenta la Tabla 3.1. A ntes de analizar en detalle el
de los cuales se activa con un nivel En el momento que activamos el p ro g ra m a , a n a lic e m o s co m o
bajo en la salida del puerto. Com o pin 4 del dipswitch en RA3 se lee trabajar con tablas en lenguaje
oscilador se ha utilizado una red un nivel bajo y entramos a modo ensam blador, lo cual es una he­
RC y para la alimentación se utili­ RUN. La velocidad seleccionada rram ienta de gran u tilid ad en el
zó un regulador 78L05 con un cir­ ya se ha almacenado y ahora po­
V e lo c id a d
cuito de filtrado. demos seleccionar la secuencia o (Aprox.)
el efecto que se visualizará en los .3 seg.

Configuración del diodos LED. La selección de la .5 seg.


.7 seg.
sistema secuencia depende del dato origi­
0.9 seg.
Podemos seleccionar entre cua­ nado por los pines 1, 2 y 3 del
tro velocidades y ocho tipos de dipswitch conectados a los term i­ Tabla 3.1 Configuración de la velocidad

Curso práctico sobre Microcontroladores <fcj«r#r:


Secuenciador de 8 canales

RA2 I RA1 | rao_ Efecto


RAO
0 Ola a la derecha 1
1 Efecto
2
Ola a la derecha Ola a la izquierda 1 Ola a la izquierda 1

0 Abanico
RB7 RBO RB7 RBO
1 Alternados
sss::::: M — Paso 1
Paso 2
•*— Paso 3
SSSSSS8S Gusano 1

M — Paso 4 Ola a la derecha 2


Paso 5
Paso 6 1 1 Gusano 2
Paso 7
aso 8 1 1 Alternados

Figura 3 .4 Selección de la secuencia

desarrollo de aplicaciones y q u e se utilizará en posición d eterm in ad a. En la figura 3.5 observa­


repetidas ocasiones en este proyecto. mos la estructura básica del m an ejo de u n a tabla
localizada den tro de la m em o ria de program a.
Existen varios m étodos para acceder a las p o ­
siciones de m em o ria d en om in ados métodos d e di- In icialm en te se carga el registro de trabajo
reccionam iento. U no de ellos corresponde al di- (W ) con el valor ín d ice o la posición de la tabla
reccionam iento relativo el cual básicam ente altera q u e querem os acceder; luego se llam a la su b ru ti­
el contenido del contador de program a (P C ). De na T A B LA en donde al P C se le su m a el co n ten i­
esta m an era se logra saltar a alg u n a posición des­ do de W y por lo tanto la C P U se dirige a la
de el p u n to donde se en cu en tra el P C hasta una posición en la tabla dada p o r W (03 en este ejem ­
p lo). C ad a u n a de las posiciones de la tabla tiene
C argar W con la la instrucción RETLW , la cual causa qu e el regis­
posición deseada
(03) tro W se cargue con el valor ubicado a c o n tin u a ­
ción en la m ism a línea y se salga de la subrutina.
C u an d o se regresa al flujo n orm al del program a,
W viene cargado con el nuevo dato tom ado de la
Llam ar subrutina tabla (5 3 en este ejem plo) y ese nuevo dato es el
Tabla qu e se en vía por el puerto.
Su b ru tin a

I INDICE equ 03
En la figura 3 .6 observamos el diagram a de
moví INDICE, w; pos.-^w flujo del programa y en la figura 3.7 el código fuente
cali tabla: llama subrutina del mismo. En el bloque A del program a se estable­
movwf portb; muestra resultado
ce que se va a trabajar con un P IC 16F 84; que el
goto ET1

addwf pe.1; p eIN D IC E


formato por defecto es el hexadecimal, se asignan
RETLW
retlw 3f; posición 0 las posiciones de las variables en m em oria R A M y
RETLW
retlw 00; posición 1
RETLW se establecen las direcciones de RESET y del inicio
01; posición 2 Tabla
RETLW
53; posición 3
del programa, dentro de la m em oria de programa
retlw 6f; posición 4 del microcontrolador. La forma como se hacen es­
RETLW
tas asignaciones ya se explicó en los dos proyectos
R eto rn o de la anteriores. En el bloque C del código del programa
su b ru tin a
y en el num eral 2 del diagram a de flujo, se establece
M ueve el dato el funcionam iento de los puertos A y B; el puerto B
retornado al
Puerto B
se configura como salida y el puerto A se configura
(53) como entrada. D e igual m anera, en esta porción
del código se lim p ia el contenido de los registros
Figura 3 .5 Manejo de tablas
V A LO R y PO R T B para no correr el riesgo de que

H W d. Curso práctico sobre Microcontroladores


Proyectos

algún dato parásito o aleatorio se cargue en estas INICIO


posiciones de memoria. O

Configurar
En el bloque D y num eral 3, se selecciona el O puertos
m odo de operación del sistema; si el pin RA 3 lee
Enm ascarar
un nivel alto entra al m odo de programación y si RAO y RA1
lee un nivel bajo, entra al m odo R U N . En el modo FUNCION
CONFIGURACION
de programación, bloque E, el puerto B se pone en
0 0 H para que todos lo diodos LED se enciendan y © Pin = 0 ? P o rtB m Port B
RA3 no
el usuario pueda asegurarse que está en este modo
de operación. En el m odo “programación” se esta­ RUN
blece la velocidad con que salen al puerto los datos
de la secuencia dependiendo de la lectura de los
pines RAO y RAI del puerto A. Se lee el puerto A y
o
ese valor se lleva a una operación lógica A N D con ©
el núm ero 03 H (0000 0011) el cual se ha almace­
o Enm ascarar

©
RAO, RA1 y RA2
nado en el registro T E M P O R A L ; esta operación se Cali Tabla X
hace para enmascarar o perm itir que sólo queden
los bits RAO y RAI con el valor leído del puerto, los
dem ás bits quedan en cero; numerales 3 y 6 del
© C argar TDT
(Tipo de tabla)
© T
Retardo

diagram a de flujo. Finalmente el valor enmascara­


i I
do es llevado al registro VALO R, quien configura
la velocidad de la secuencia, numeral 7. © D ireccionar la
tabla
correspondiente
© Inc. Indice

Después de qu e se ha cargado V A LO R , se
i
Dec. Fin
retorna a la etiqueta F U N C IO N para d eterm i­
nar si en el pin RA 3 y a se ha dado la señal de
h ab ilitació n del m odo R U N ; m ientras esto no
ocurra, el program a entra en un ciclo de lectura
y en m ascaram ien to del puerto A , p ara d eterm i­
© Fin = 0 ?
No

nar el valor definitivo del registro VALO R. C u a n ­ SI


i
©
do finalm en te se ha detectado un nivel bajo en
R A 3, entram os al m o do R U N , bloque F del có­ Ir a run

digo. A hora leem os de nuevo el puerto A y esa


Figura 3 .6 Diagrama de flujo del programa
lectura la m ovem os al registro T D T (T ip o De
T ab la) en el cual se enm ascaran los tres prim eros bandera Z del registro de estado (STATUS REGIS-
bits qu e corresponden a RAO, RAI y R A 2, n u ­ TE R) se pondrá en nivel alto. Por eso se puede uti­
m erales 9 y 10. El valor alm acenado en T D T lizar esa bandera para verificar la igualdad. Este pro­
servirá para llam ar la tabla correspondiente a cada ceso se repite para cada valor entre cero y ocho, y
tipo de efecto, n um eral 11. en el m om ento que se determ ine el valor exacto de
T D T se llam ará a la tabla correspondiente.
En el bloque G es donde se establece cual tabla
se va a llam ar entre las 8 posibles. Por ejemplo, para C u a n d o se ha d eterm in ad o cual es la tabla
determ inar si la lectura fue uno, al valor cargado en correcta, se llam a la ru tin a correspndiente en el
T D T se le resta 01 H , si esta resta da cero, significa bloque H (T A BLA _x), n um eral 14. El registro
que en T D T h ay 0 1 H tam bién, y si eso ocurre, la IN D IC E , qu e com o su nom bre lo in d ica, es el

Curso práctico sobre Microcontroladores


Secuenciador de 8 canales

PROCESSOR 16F84 SUBLW 04H ; HA LEIDO CUATRO EN EL D IP?


RADIX HEX BTFSC ESTADO,2 ; S I SE LEE CUATRO, ENTONCES
PC EQU 02 GOTO TABLA_5 ; SALTAMOS A LA TABLA 5
FIN EQU 1E
INDICE EQU 2D MOVF TDT,W
LAZOl EQU 13 SUBLW 05H ; HA LEIDO CINCO EN EL D IP?
VALOR EQU 14 A BTFSC ESTADO,2 ; S I SE LEE CINCO, ENTONCES
LAZ EQU 10 A GOTO TABLA_6 ; SALTAMOS A LA TABLA 6
LAZOQ EQU 11 r \
ESTADO EQU 03 MOVF TDT,W
TEMPORAL EQU 15 SUBLW 06H ; HA LEIDO S E IS EN EL D IP?
PORTA EQU 05 BTFSC ESTADO,2 ; S I SE LEE S E IS , ENTONCES
PORTB EQU 06 GOTO TABLA.7 ; SALTAMOS A LA TABLA 7
W EQU 0
F EQU 1 MOVF TDT,W
TDT EQU 12 SUBLW 07H HA LEIDO SIETE EN EL D IP?
RESET ORG 0 BTFSC ESTADO,2 S I SE LEE S IE T E , ENTONCES
GOTO IN IC IO GOTO TABLA_8 SALTAMOS A LA TABLA 8
ORG 5
TABLA_1 MOVLW 00H CARGAMOS INDICE CON LA PRIMERA
•RUTINA DE RERTARDO, DEPENDE DEL REGISTRO VALOR MOVWF INDICE POSICION DE LA TABLA
.• • * • * • * * * * * « * * * * * * « « * « * • * * * * * « * * * * * * * * * * * * * * * * * * * *
TI MOVF INDICE,W INDEXAMOS LA POSICION EN LA
RETARDO MOVF VALOR,W TABLA
ADDLW 01 CALL TABLA1 LLAMAMOS LA TABLA 1
MOVWF LAZ MOVWF PORTB LA LECTURA LA MANDAMOS AL
RETAR MOVLW D’ 7 0 ' PUERTO B
MOVWF LAZOl CALL RETARDO Y SE DEJA DURANTE UN TIEMPO

R ll
MOVF
ADDWF
MOVLW
VALOR,W
LAZOl,F
D’ 110'
B INCF IN D IC E,F

DECFSZ FIN
SE INCREMENTA EL INDICE DE LA
TABLA
Y SE DECREMENTA EL REGISTRO
MOVWF LAZOQ LIMITE
MOVF VALOR,W GOTO TI S I NO HA LLEGADO A CERO SE
ADDWF LAZOQ,F REPITE EL PROCESO
R1 GOTO RUN S I LIM ITE LLEGA A CERO SALIMOS
DECFSZ LAZOQ DE LA RUTINA
GOTO R1
DECFSZ LAZOl TABLA1 ADDWF PC,1 ESTA ES LA TABLA 1, DONDE SE
GOTO R ll RETLW B’ 1 10 00000 ; REGISTRAN LOS VALORES QUE SE
DECFSZ LAZ RETLW B’ 0 1 1 0 0 0 0 0 ' ; MANDARAN SECUENCIALMENTE POR
GOTO RETAR RETLW B ’ 0 0 1 1 0 0 0 0 ' ; EL PUERTO B
RETLW 0 RETLW B’ 00011000'
IN IC IO MOVLW B ’ 00000000' ; CONFIGURA EL PUERTO B COMO SALIDA RETLW B’ 00001100'
T R IS PORTB ; A L L I VAN LOS LED RETLW B’ 00000110’

C MOVLW
T R IS
CLRF
B ’ 11111111' ; Y EL PUERTO A COMO ENTRADAS
PORTA
PORTB
; A LL I VA EL DIPSWITCH
; INICIALIZO EL PUERTO B CON CEROS
RETLW
RETLW
B’ 00000011'
B’ 10000001'
CLRF VALOR ; IN IC IA L IZ O LA VELOCIDAD
FUNCION: ; SELECCION ENTRE MODO PROGRAMACION/RUN
BTFSC PORTA,3 ; S E L E C C IO N DE FUNCION
D GOTO
GOTO
CONFIGURACION:
CONFIGURACION : PROGRAM. DE LA VELOCIDAD
RUN ; MODO RUN
; AQUI ESTABLEZCO LA VELOCIDAD DEL SECUENCIADOR H
MOVLW B ’ 00000000' ; SE ENCIENDE TODO EL PUERTO B
MOVWF PORTB ; PARA INDICAR QUE ESTA EN MODO •

V PROGRAMACION
MOVLW B ’ 00000011 ' ; CARGO TEMPORAL CON 03H

E MOVWF
MOVF
ANDWF
TEMPORAL
PORTA, W
PARA ENMASCARAR EL DATO LEIDO
CARGO EL PUERTO A EN W
TEMPORAL,W ENMASCARO LOS DOS PRIMEROS

B IT S RAO-RAI
MOVWF VALOR LA LECTURA DE LA VELOCIDAD
REQUERIDA QUEDA EN VALOR TABLA.8 MOVLW 00H CARGAMOS INDICE CON LA PRIMERA
GOTO FUNCION REGRESO A LEER EL DIP4
MOVWF INDICE POSICION DE LA TABLA
RUN: MOVLW 07H CADA EFECTO ES DE 8 PASOS T8 MOVF INDICE,W *
INDEXAMOS LA POSICION EN LA
MOVWF FIN FIN ES QUIEN DA EL LIM ITE PARA TABLA
EL INDEXADO CALL TABLA8 LLAMAMOS LA TABLA 3
CLRF TDT IN IC IA L IZ O ESTE REGISTRO MOVWF
F MOVF
MOVWF
BCF
PORTA,W
TDT
TDT, 3
EL PUERTO A LO LLEVO A W
SELECCIONAR LA TABLA INDICADA
ENMASCARO LOS B IT S QUE
CALL
INCF
PORTB

RETARDO
IN D IC E,F
LA LECTURA LA MANDAMOS AL
PUERTO B
Y SE DEJA DURANTE UN TIEMPO
SE INCREMENTA EL INDICE DE LA
NECESITAMOS TABLA
BCF TDT, 4 RAO, RA I Y RA2 DECFSZ FIN Y SE DECREMENTA EL REGISTRO
MOVF TDT,W LIM ITE
SUBLW 00H DETERMINAR S I SE HA LEIDO CERO GOTO T8 S I NO HA LLEGADO A CERO SE
EN EL DIP REPITE EL PROCESO
BTFSC ESTADO,2 S I SE LEE CERO, ENTONCES GOTO RUN S I LIM ITE LLEGA A CERO SALIMOS
GOTO TABLA.l SALTAMOS A LA TABLA 1 DE LA RUTINA

MOVF TDT,W
SUBLW 01H ; HA LEIDO UNO EN EL D IP? TABLA8 ADDWF P C .l ESTA ES LA TABLA 8, DONDE SE
BTFSC ESTADO,2
G
; S I SE LEE UNO, ENTONCES RETLW B '1 1 1 0 0 1 1 1 ' REGISTRAN LOS VALORES QUE SE
GOTO TABLA_2 ; SALTAMOS A LA TABLA 2 RETLW B’ 11000011' MANDARAN SECUENCIALMENTE POR
MOVF TDT,W RETLW B’ 10000001' EL PUERTO B
SUBLW 02H ; HA LEIDO DOS EN EL D IP ? RETLW B’ 0 0 0 0 0 0 0 0 '
BTFSC ESTADO,2 ; S I SE LEE DOS, ENTONCES RETLW B’ 10000001'
GOTO TABLA_3 ; SALTAMOS A LA TABLA 3 RETLW B’ 1 1 0 0 0 0 1 1 '
MOVF TDT,W RETLW B’ 1 1 1 0 0 1 1 1 '
SUBLW 03H ; HA LEIDO TRES EN EL D IP? RETLW B’ 1 1 1 1 1 1 1 1 '
BTFSC ESTADO,2 ; S I SE LEE TRES, ENTONCES
GOTO TABLA.4 ; SALTAMOS A LA TABLA 4
MOVF TDT,W END
Figura 3 .7 Código fuente del proyecto

# W Z1 Curso práctico sobre Microcontroladores


Proyectos

índice qu e nos va a servir para recorrer toda la rean u d ar el p ro ceso y le e r de nuevo la s e c u e n ­


tabla. Este IN D IC E se establece in icialm en te en c ia s e le c c io n a d a , la c u a l p u d o h a b e r su frid o
0 0 H qu e corresponde a la prim era posición en la a lg ú n c a m b io .
tabla. El contenido de este registro se lleva a W y
luego se llam a a la ru tin a TA BLA qu e es donde Nota: Por razones d e espacio en muchas ocasiones
se ub ican los datos de la secuencia. C u a n d o en no podrem os pu b lica r e l código com pleto d e los p ro­
W se ha recuperado el dato de la tabla indicado gramas. Todos ellos están disponibles en nuestra
por IN D IC E , este dato se en vía al puerto B para página:%w w w .eekit.com.co.
qu e se visualice en los diodos LED; enseguida se
invoca la ru tin a R E T A R D O , la cual p erm ite que
el dato perm anezca en el puerto d u ran te deter­ El byte de potencia
m inado tiem po. D espués de cu m p lido el tiem po El circuito puede manejar cargas de m ayor potencia
de retardo, se increm enta el registro IN D IC E para a través de una interfaz que hemos denominado el
direccionar la sigu ien te posición en la tabla y se “byte de potencia”. El circuito con referencia K-79
decrem enta el registro FIN , num erales 16, 17 y de CEKIT, es una interfaz optoacoplada con triacs,
18 del d iagram a de flujo. Este últim o registro es que se utiliza para efectuar la conmutación segura de
u n a especie de contador iniciado con 0 7 H en el cargas C A que se alimentan con 1 10V o 220V y
b lo que F, qu e im pide qu e IN D IC E direccione consumen hasta 1OA. El circuito se ha diseñado con
posiciones inexistentes en la tabla, esto es, como ocho módulos iguales, tal como se muestra en el
cad a u n a de las tablas solo tiene ocho posiciones, diagrama esquemático simplificado de la figura 3.8.
IN D IC E no debe direccio n ar por ejem p lo , la C ada módulo tiene a la entrada de C C un optotriac
posición d iez de la tabla; si se da este caso, se (M O C 3021) que se encarga de aislar los niveles de
presentará un error. tensión de la carga y del circiüto de control, y activar
por medio de la luz emitida por un diodo LED, un
D e esta m an era IN D IC E sólo se in crem en ­ pequeño triac de disparo óptico. Éste, a su vez, hace
tará siete veces, m ien tras FIN llega a cero. T en­ disparar el triac de potencia y la carga conectada a él.
ga en c u e n ta q u e in ic ia lm e n te IN D IC E to m a Las salidas de los triacs se conectan a diferentes cir­
el v alo r de 0 0 H ; co n este v alo r se d ire c c io n a la cuitos con bombillos o lámparas incandescentes.
p rim e ra p o sició n de la tab la y p o r lo ta n to sólo
d eb e ser in c re m e n ta d o siete veces p ara hacer Bombillas
el b arrid o co m p leto .

La rutina de retardo, bloque B, produce un


retardo por software directam ente proporciona] al
contenido del registro VALO R, el cual recorde­
mos, se estableció en la fase de program ación. La
dependencia consiste sim plem ente en qu e al valor
de los registros qu e se decrem entan, se le adiciona
el contenido del registro VALO R. D e esta m anera
el tiem po qu e perm anece un dato en el puerto
depende de la configuración inicial.
IC3-IC10: Optoacoplador M0C3021
C a d a u n o d e los d a to s d e la ta b la se le c ­ 01-Q8: Triacs de 1QA/400ó 600V
R11-R18 1KU.1/4W
R19-R20 22012.1/4W
c io n a d a se van sacan d o u n o a un o p o r el p u e r­
to B, c u a n d o ha sa lid o el ú ltim o , el p ro g ra m a NOTA: Los triacs deben ir montados con disipadordecalor

r e to rn a a la e t iq u e t a R U N , b lo q u e F, p ara Figura 3 .8 Diagram a esquem ático d e l byte de potencia

Curso práctico sobre Microcontroladores S .A .


Secuenciador de 8 canales

Ensamblaje LISTA DE MATERIALES I


Cant. Ref. Descripción
1 IC1 Regulador fijo de +5V -100mA. 78L05
1 IC2 Microcontrolador PIC16F84 programado
1 BR1 Puente rectificador circular de 1A, W06
8 LED1 a LED8 Diodos LED rojos de 3mm
1 LED9 Diodo LED verde de 3mm
1 C1 Condensador electrolítico de 1000uF - 25V
1 C2 Condensador cerámico de 0.1uF - 50V
1 C3 Condensador electrolítico de 10uF - 16V
1 C4 Condensador cerámico de 20pF - 50V
9 R1y R8 a R15 Resistencias de 470 - 1/4W
6 R2.R3.R4.R5.R6 y R7 Resistencias de 10k - 1/4W
1 S1 Interruptor tipo DIP de 4 posiciones
1 S2 Pulsador pequeño de 4 pines. para circuito impreso
1 C0N1 Conector CA/CC
Figura 3 .9 Este es e l conjunto de com ponentes electrónicos 1 C0N2 Conector en linea de 8 pines
1 K-323 Circuito impreso CEKIT
y los accesorios que se requieren para ensam blar el 1 Base para circuito integrado de 18 pines
proyecto. 1 Lámina de acrilico de 95mm X 55mm
Tornillos de 1/8" X 1/2" con sus tuercas y separadores

Paso 1 Paso 2
s'VAC/DC vn
©0
IX OT

ugv'cC -i*'*-»
m m -*
!2 , 1 5 •*“ * * B , t -------------------) *2
i DZP!
D IP l ¡ j O

RESTT

1 m&stnwL
Figura 3 .1 0 Ubique y suelde todas las resistencias (15) y los Figura 3.11 Suelde a continuación los diodos LED teniendo en
puentes de alam bre cuenta su polaridad (ánodo y cátodo)
Paso 3 Paso 4

— 4, - r « r

Figura 3 .1 2 Instale y suelde ahora la base para el Figura 3 .1 3 Instale y suelde los dos interruptores
m icrocontrolador (IC2) (dispsw itch y e l pulsador S2), e l puente rectificador
y e l regulador de voltaje IC1.
Paso 5 Paso 6

Figura 3.14 Instale ahora los cuatro condensadores observando la Figura 3 .1 5 Instale en su base e l m icrocontrolador PIC 16F84
polaridad de los electrolíticos (C1 y C3), luego los conectores de program ado, observando la posición correcta del p in No. 1
alimentación y el de salida para e l circuito de potencia (C0N2)

Paso 7. Prueba final


Para probar e l circuito, alim éntelo con una fuente regulada o no, hasta de 12 voltios y presione e l pulsador RESET; luego siga las
instrucciones de operación descritas anteriorm ente y e l circuito debe m ostrar la secuencia en los diodos LED; s i no es así, revise m uy
bien las conexiones y verifique que e l program a esté grabado en e l microcontrolador.

§ T 1 Curso práctico sobre Microcontroladores


ALARMA PARA EL HOGAR
En este proyecto construirem os una alarm a
básica para el hogar utilizando un m icrocon­
trolador M otorola 6 8 H C 0 8 . Es un disposi­
tivo sencillo, si lo com param os con las alar­
mas que ofrecen las empresas especializadas
en seguridad, pero puede ser de gran u tili­
dad en nuestro propio hogar u oficina.

Características
• Salida por m edio de relevo
• D iodos LED indicadores del estado de
la alarm a
• D istintas zonas de operación

Curso práctico sobre Microcontroladores


Alarma para el hogar

Funcionamiento gar qu e se protege; su función es detectar una


U no de los problem as m ás grandes qu e afronta­ introm isión y activar un estado de prealarm a d u ­
mos actualm ente es la inseguridad y los sitios fa­ rante unos 2 0 segundos, tiem po d u ran te el cual
voritos de los am igos de lo ajeno son las casas y se debe desactivar el sistem a o de lo contrario se
oficinas qu e perm anecen solas gran parte del d ía o iniciará una condición de alarm a.
de la noche. A fortunadam ente, la detección elec­ Zona inm ediata (Z ona 2 ). U na intrusión en esta
trónica de estas introm isiones no es m u y com pli­ zona genera una condición de alarma en forma ins­
cada. Por otro lado, la tecnología de los m icro­ tantánea.
controladores hace qu e el circuito que se requiere
para llevar a cabo tal función sea lo m ás pequeño Existen varios tipos de sensores p ara detec­
posible, con una eficacia y seguridad que lo con­ tar las introm isiones indeseadas en los sitios que
vierten en una excelente opción. El sistema de alar­ se en cuentran protegidos por un sistem a de se­
m a de nuestro proyecto es m u y sencillo y prácti­ gu rid ad . E ntre ellos se cu en tan los infrarrojos,
co, figura 4 .1 . Para entenderlo mejor, es necesario qu e p erm iten detectar m ovim ientos en un área
defin ir algunos térm inos y funciones: de cubrim ien to determ inad a; los sensores de rup­
tu ra, qu e se ubican en las ventanas y detectan
A rm a d o . E stado en el c u a l el siste m a está v ig i­ cuan do se rom pe un vidrio; los m agnéticos, que
la n te y se p u ed e g e n e ra r u n a co n d ic ió n de a la r­ se instalan en las puertas y detectan el m om ento
m a al d e te c ta r a lg u n a a n o rm a lid a d . en qu e se abren, etc. En este caso en p articu lar se
D esarm ado . Estado en el q u e no se puede gene­ ha asu m id o qu e las zonas poseen u n a configura­
rar una condición de alarm a ya qu e la u n id ad no ción de sensores en serie y en paralelo com o se
se en cu en tra vigilante. m uestra en la figura 4.2.
Z ona. Es un circuito de sensores qu e se encarga
de vigilar u n sector del sitio q u e se desea prote­ En la figura 4.3 observamos el diagram a es­
ger; se conecta al sistem a de seguridad y le indica quem ático del circuito. El corazón del proyecto es
a éste si se detecta algu n a violación. un microcontrolador M otorola 6 8 H C 9 0 8 JK 3 ; los
Sensor. Es un dispositivo que detecta alguna condi­ dos diodos LED indicadores se han conectado por
ción particular de intromisión y le indica a la unidad los pines 10 y 12, que corresponden a los pines 6
central que debe generar una condición de alarma. del puerto D y 3 del puerto B; la salida del sistema
está por el pin 9 que es el pin 7 del puerto D;
Este sistem a consta de dos zonas: finalm ente los sensores de la alarm a de la zona 1
Z o n a tem p o rizad a (Z ona 1). En ella se deben se han conectado por el pin 2 del puerto B y los de
conectar los sensores qu e vigilan el acceso al lu- la zona 2 por el pin 1 del puerto B.
Salida

El dispositivo que da la salida p ara in d icar la


condición de alarm a es u n relevo, el cual tiene

Unidad de control
Alimentación (Microcontrolador Sensores en serie
Motorola) Pulsador normalmente cerrados
principal

T Zona 2
Sensores en paralelo
normalmente abiertos

Inm ediata

Figura 4.1 Diagram a de bloques de la alarma Figura 4 .2 Configuración de los sensores

’M W H Curso práctico sobre M icrocontroladores


i Proyectos

D1
1N4004
S2 I I Reset

2N3904

Zonal
S1 BO N /O FF

VCA/CC

330 í i

GN D Figura 4 .3 Diagram a esquem ático de la alarm a

sus contactos n o rm alm en te abiertos y se cierran m icrocontrolador. C u an d o se pulsa S i , se acti­


en el m o m en to qu e se debe señalizar. Los ap ara­ van los dos diodos LED (L Z l y LZ 2) indicando
tos qu e se usan para in d icar u n a alarm a son ge­ qu e se dispone de un corto tiem po para salir del
n eralm ente sirenas, bom billos o discadores tele­ lugar. Este tiem po se conoce com o tiem po d e sa­
fónicos. La salida del relevo es de libre utilización; lida, después del cual se en tra a u n a verdadera
a m anera de ejem plo, en la figura 4 .4 se muestra condición de alarm a. U no de los sensores de la
com o sería la conexión de una sirena de 12 voltios Z o n a 1 debe ser el de la puerta p rin cip al para
C C y de una sirena de corriente alterna. poder en trar y salir antes de qu e se active la alar­
m a. C u an d o se h a term in ado el tiem po de sali­
Señalización del sistema da, se tiene el estado de arm ado de la alarm a en
El sistem a de alarm a se controla con u n pulsador el cual se detecta p erm an en tem en te el estado de
( S i ) el cual da la señal de arm ado/desarm ado al los sensores de cada u n a de las zonas; cuando se

Curso practico sobre Microcontroladores ém H € H T sl


Ai arm a para el hogar

SIREN A DE CO RRIENTE ALTERNA cio n am ien to de este proyecto, analicem o s bre­


S A LID A RELEVO vemente las características del microcontrolador utili­
COM NO zado. Se trata del 68H C 908JK 3 de Motorola, cuya
distribución de pines se muestra en la figura 4.6. Sus
principales características son:
1 1 0 /2 2 0 VCA

• C PU de 8 bits
• 4 K bytes para memoria de programa (FLASH)
S IR E N A D E 1 2 V C C • 128 bytes de memoria RAM
S A LID A RELEVO • 10 canales para conversión de análogo a digital de 8 bits
COM NO • 15 pines de entrada/salida
• 2 temporizadores de 16 bits
• 8 fuentes de interrupción

Arquitectura interna del 68HC908JK3 y


Figura 4 .4 Ejem plo de conexión de sirenas
modelo de programación
En la figura 4 .7 se muestran los registros internos de la
p ro d u ce a lg u n a a n o m a lía , se activ a el relevo y C PU 08 mediante los cuales se procesan las instruc­
a través de los d io d o s LE D se in d ic a a cu al de ciones, los operandos y los resultados. La ílinción bási­
las zo n as p erten ece el sen so r q u e se a c tiv ó , fi­ ca de cada uno de ellos se describe a continuación.
g u ra 4 .5 .
Acumulador (A)
C u an d o se activa el estado de arm ad o existen Es un registro de 8 bits de propósito general usado en
varias opciones: las operaciones aritméticas y lógicas.
• U na detección en alg u n a de las zonas in m e­ Registro índice (H:X)
diatas generará una co n d ició n de alarm a. Por Es un registro de 16 bits utilizado como apuntador en
lo tanto, la salida qu e consiste en los co n tac­ el modo de direccionamiento indexado.
tos del relevo se cerrará y podrá activar el d is­ Puntero d e pila (SP)
positivo señ alizad o r qu e se h aya instalado. Es un registro de 16 bits que contiene la dirección de la
• U n a detección en la zona tem p o rizad a hará posición disponible en la pila.
q u e se in icie u n a co n dició n de p realarm a y Contador d e program a (PC)
los dos diodos LZ1 y LZ 2 se activarán, in d i­ Es u n registro de 16 bits qu e co n tien e la direc­
cando qu e se cu en ta con algunos segundos ción de la sigu ien te instrucción u operando que
p ara desarm ar el sistem a usando el pulsador va a ser procesado.
S I . Si no se ejecuta esta operación, se genera­
r á una co n dició n de alarm a.

El microcontrolador
Antes de co n tin u ar con la explicación del fun-

D IO D O S LED IN D IC A D O R E S DE ZO NA

LED 1 LED 2 ZO NA

• O ZO NA 1: Zona tem porizada

O • ZO NA 2: Zona inm ediata

Figura 4 .5 Señalización de los diodos LED Figura 4.6 Distribución de pines del m icrocontrolador 68HC908JK3

Curso práctico sobre Microcontroladores


Proyectos

0 riables que vamos a utilizar. En el bloque B y nume­


ral 2 del diagrama de flujo, configuramos los puertos
D y B del microcontrolador según la función de cada
uno de sus pines, de acuerdo a lo establecido en el
diagrama esquemático de la figura 4.3. En el caso de
los microcontroladores Motorola, se debe tener en
cuenta que un pin de salida se configura con un “1”
y un pin de entrada se configura con un “0 ”, es decir,
que se configura de manera inversa a como se confi­
guran los microcontroladores PIC. En el bloque C
del programa y numeral 3 del diagrama, se verifica la

soooo Puertos y
Registros Internos (64
bytes) registros de
S003F configuración

No usada
Figura 4 .7 Estructura de los registros internos y ubicación de las banderas
S 0080 RAM
(variable stack)
Registro d e banderas (CCR) S00FF (128 bytes)

Es un registro de 8 bits que contiene el bit de en­ No usada

mascarado general de interrupciones y 5 banderas SEC00


Memoria Flash
de estado, las cuales indican ciertas condiciones ori­ (Programa de usuario) (4096
bytes)
ginadas por la instrucción previamente ejecutada. SFBFF

ROM monitor
M a p a de m em oria
En la figura 4.8 observamos el m apa de memoria SFFDE
ADC Fin conversión (H)
completo del 68 H C 908JK 3. A llí se encuentran las
ADC Fin conversión (L)
direcciones de los registros internos, la posición que
SFFE0 KBI (H)
ocupa la RA M y la parte asignada al programa de
usuario. De igual manera, se observa la zona en la KBI (L)

cual se encuentra almacenado el programa de fá­ No usado

brica (R O M M O N IT O R ) que nos perm ite hacer No usado

sim ulación, depuración y programación del micro­ SFFF2


Overflow Timer (H)
controlador. En la zona alta de la m em oria, se en­ Overflow Timer (L) -i
cuentran los vectores de interrupción y en ellos se SFFF4 a
Timer Canal 1 (H)
encuentra la dirección (2 bytes) con la cual se carga c

el contador de programa (PC) cuando se presenta


Timer Canal 1 (L) i
SFFF6
Timer Canal 0 (H)
alguna de las interrupciones.
Timer Canal 0 (L)

No usado
Descripción del programa
SFFFA IRQ H
En la figura 4 .9 está el diagram a de flujo y en la
figura 4 . 10 una parte del código fuente. El progra­ IRQ L

m a completo lo puede o btener de nuestra página: SFFFC Interrupción SWI (H)

www.cekit.com .co Interrupción SWI (L)

En el bloque A del programa establecemos las direc­ SFFFE RESET (H)

ciones del inicio y final de las memorias RAM y RESET (L)

R O M , de acuerdo a lo indicado en el m apa de la


figura 4.8, al igual que definimos el mapa de las va­ Figura 4 .8 Mapa de m em oria interna d e l m icrocontrolador

Curso práctico sobre Microcontroladores < ^m iK< iiT


Alarma para el hogar

activación del pulsador de inicio (SI). Esto se hace los sensores. La Zona 2 es la denom inada zona de
con la instrucción brclr PBO,PORTB,ZONA2, la detección inm ediata, por lo tanto, debe leerse per­
cual podemos interpretar como: chequee si existe m anentem ente. Todo lo contrario ocurre con la
un cero en el pin PD4 (definido como 4) del puerto Zona 1; en ésta debemos esperar un tiempo para
D y de ser así, salte a ZONA2. que el sistema entre en estado de arm ado, es decir,
pendiente de cualquier sensor. Para lograrlo, se ha
C uando se ha detectado la señal de activación acudido a un truco m u y sencillo: sim plem ente es­
de la alarma, el programa salta a la etiqueta ZONA2, tablecemos un retardo por programa el cual se eje­
bloque F, num eral 4 donde se hace la detección de cuta un determ inado número de veces antes de que

Configurar
puertos

ZONA 2

DESACTIVAR

Port B, 3 — •
Port D, 6 — •
Port D, 7 — »
Bandera, 2
CLR Bandera

VBLE1 DEC VBLE1


0?

Bandera, 2
= 1?

Retardo

Figura 4 .9 Diagram a de flu jo d e l program a

Curso práctico sobre M icrocontroladores


se active la detección de la Z ona 1. C ad a vez que se
IN IC IO : B
llam a la rutina RETARD O y ella se ejecuta, el pro­ c lr CONTA
mov #$C0,DDRD C o n fig u ro p u e rto D
gram a salta a la Zona 2 para leer los sensores ubica­ mov C o n fig u ro p u e rto B
dos en ella y generar la señal de alarm a si es necesa­ mov #$9T,VBLE1 A s ig n o 9 a v b l e l

rio. C uando se term ina el tiempo de espera, el siste­ CICLO:


c lr BANDERA L im p io e l r e g i s t r o
C
m a queda com pletam ente arm ado y pendiente de
bandera
cualquier anom alía en el sitio vigilado. Si no detec­ b r c lr PB0,PORTB,Z0NA2 Chequeo s i e s t á e l
p u ls a d o r o p rim id o
ta señal de algún sensor de la Zona 2, se salta a la b ra CICLO
etiqueta ER, numeral 10, donde se decrementa la Z0NA1 •
D
variable VBLE1 quien contiene el número de veces b rse t 2 , BANDERA,Z1 S i se ha cu m p lid o e l
tiempo de temporización,
que se ejecuta la rutina de retardo. Luego se llam a a b c lr PD5, PORTD s a lt o a Z1
b c lr PB3,PORTB s i no, chequeo l a zona 2
RETARD O y se salta a la etiqueta Z O N A 2 para js r RETARDO a c t i v o ambos le d de
hacer el chequeo correspondiente, bloques D y E. s e ñ a liz a c ió n
b ra Z0NA2 cuando e s t o y en e l
p e r ío d o de te m p o riz .
ER dbnz VBLE1,Z0NA1 decrem ento e l número
En este programa hemos incluido un registro
de r e ta r d o s
denom inado BANDERA en el cual establecemos bset 2 , BANDERA A c t iv o e s t e b i t cuan­
do han te rm in ad o lo s
algunos bits como “testigos” de que se han presenta­ p e río d o s de e s p e ra de
l a zona 1
do ciertos eventos. El bit c a o de este registro se pone
en alto en el momento que la alarma de la zona in­ Z1 b r c lr P B 2 ,P O R T B ,z o n l S is te m a armado
b ra Z0NA2 S a l t o a ch eq u ear l a
mediata se ha activado, es decir, se ha detectado la zona 2
zonl bset 0 , BANDERA
activación de un sensor. El bit uno se pone en alto S i se a c t iv a l a r
a la rm a de e s t a *-
cuando se ha detectado un intruso en la zona tem­ js r RETARDO zona, e l b i t 0 de
bandera s e pone
porizada y el bit dos de BANDERA se pone en alto js r RETARDO en a l t o y s e dan l a s
b c lr PD6, PORTD señalizaciones de lo s led
cuando se ha terminado de invocar los tiempos de bset PB3,PORTB a c t i v a r l e d de zona 1
temporización de la zona 1. Por esta razón, en el blo­ bset PD7, PORTD s e a c t i v a l a s e ñ a l de
a la rm a e x te rn a
que D , después de que se ha terminado de decre- b ra DESACTIVAR s e s a l t a a l r u t i n a de
d e s a c t iv a c ió n
mentar el registro V B L E l, se activa este bit.
Z0NA2
F

b r c lr PB1,PO RTB,zon2 Se chequean l o s


C uando term ina de invocarse la rutina de re­ s e n s o re s de e s t a zona
b r c lr 2 , BANDERA,ER se v e r i f i c a que no ha
tardo, las dos zonas quedan en estado de armado,
term inad o l a tem p o riz.
es decir, en perm anente vigilancia; si alguna se dis­ bra Z1 de l a zona 1 . S i ha
te rm in a d o , s a l t a a Z1
para, se enciende el LED correspondiente de acuer­ zon2 bset 1 , BANDERA Cuando s e d e t e c t a un
in t r u s o en l a zona 2
do a la figura 4.5 y el programa se dirige a la rutina b c lr PD5, PORTD se a c t i v a e l le d de
DES AG I1VAR, bloque G , numeral 7 del diagra­ l a zona 2
bset PD6,PORTD se d e s a c t iv a e l le d
m a de flujo. A llí se chequea de nuevo la existencia de l a zona 1
bset PD7,PORTD y se a c t iv a l a se ñ al
de una señal proveniente del pulsador S i ; en este de a la rm a e x te r n a
caso para apagar la alarm a y borrar la señalización. b ra DESACTIVAR s e s a l t a a l a r u t in a
de d e s a c t iv a c ió n

La rutina de retardo DESACTIVAR:


b r c lr PB0,PO RTB,ET1 s e chequea de nuevo
Recordem os qu e un retardo por program a es una e l p u ls a d o r S I
b ra DESACTIVAR y s i s e oprim e
ru tin a q u e se en carga d e ejecu tar u n a serie de ET1 bset PB3,PORTB s e apagan l o s le d Q
bset PD6,PORTD s e d e s a c t iv a l a
instrucciones (q ue no llevan a cabo n in g u n a fun­ alarm a
ción im p o rtan te) en cerradas den tro de u n c i­ b c lr PD7,PORTD y se re to rn a a i n i c i o
c lr BANDERA p a ra e j e c u t a r de
clo , un n úm ero d eterm in ad o d e veces. D e esta nuevo e l programa
b ra IN IC IO
m an era se lo gra un espacio de tiem p o q u e po­
d em o s u tiliz a r den tro de otras rutinas. Figura 4 .1 0 Código fuente d e l proyecto

Curso práctico sobre Microcontroladores ir S .A .


Ensamblaje LISTA DE MATERIALES
C ant. Ref. D e s c r ip c ió n
1 IC1 M ic ro c o n tro la d o r 6 8 H C 9 0 8 JK 3
1 IC2 R e g u la d o r fijo d e + 5 V - 1 A , 7 8 0 5
1 01 T ra n s is to r d e p ro p ó s ito g e n e ra l NPN. 2 N 3 9 0 4
1 BR1 P u e n te re c tific a d o r c irc u la r d e 1A . W 0 6
1 01 D io d o d e p ro p ó s ito g e n e ra l 1 N 4 0 0 4
2 LED1 y LED3 D io d o s LED v e rd e s d e 5 m m
2 LE D 2 y LED4 D io d o s LED ro jo s d e 5 m m

••• 1
3
C1
C 2, C 4 y C7
C o n d e n s a d o r e le c tro lític o d e 1 0 0 0 u F - 25V
C o n d e n s a d o re s c e rá m ic o s d e 0.1 uF - 50V
1 C3 C o n d e n s a d o r e le c tro lític o d e 1 0 uF - 16V
2 C 5 y C6 C o n d e n s a d o re s c e rá m ic o s d e 2 2 p F - 50V
1 XTAL C ris ta l d e 5M H z
Figura 4.11 Este es e l conjunto de componentes 3 R 1 ,R 5 y R6 R e sis te n c ia s d e 3 3 0 Í 2 - 1 / 4 W
5 R 2 .R 7 , R 8, R 9 y R 10 R e s is te n c ia s d e 1 k - 1 / 4 W
electrónicos y los accesorios que se requieren para 1 R3 R e s is te n c ia d e 4 .7 k - 1 /4 W
ensam blar e l proyecto. 1 R4 R e s is te n c ia d e 1 0 M - 1 /4 W
1 S1 P u ls a d o r n o rm a lm e n te a b ie rto p a ra c h a s is
1 S2 P u ls a d o r p e q u e ñ o d e 4 p in e s , p a ra c ir c u ito im p re so
Paso 1 1 RL1 R e le vo d e 1 2 V 5 A C C
1 K -3 2 4 C irc u ito im p re s o CEKIT
1 C o n e c to r CA/CC
3 C o n e c to re s e n lin e a M /H d e 2 pin e s
1 C o n e c to r d e to m illo d e 3 p in e s
2 C o n e c to re s d e to m illo d e 2 p in e s
1 B a s e p a ra c ir c u ito in te g ra d o d e 2 0 pin e s

Paso 4

Figura 4 .1 2 Ubique y suelde los puentes de alam bre, las


resistencias (10), e l diodo D1, e l puente BR1 y la base para IC1

Paso 2

Figura 4 .1 5 Suelde a continuación e l resto de los componentes


teniendo en cuenta la polaridad de los condensadores C1 y C3

Paso 5

Figura 4 .1 3 Instale y suelde ahora e l regulador IC2 (7805) y los


diodos LED 1 y 2 observando su polaridad

Paso 3
LZ1 LZ2

Figura 4 .1 6 Instale en su base e l m icrocontrolador 68HC908JK3


program ado, observando la posición correcta d e l pin No. 1

Paso 6. Prueba in icia l


Para probar e l circuito, alim éntelo con una fuente regulada o no,
hasta de 12 voltios y siga las instrucciones de operación descritas
anteriormente. Conecte un puente en los term inales de Zona 1.
Presione el pulsador S1 y verifique que la señalización de los LED
de la zona temporizada sea correcta. M ientras esta señalización se
está dando, haga un puente en los contactos de la Zona 2 y se
debe generar una salida p o r e l relevo. Retire el puente de la Zona 2,
Figura 4 .1 4 Instale ahora los cinco condensadores cerám icos y el repita e l procedimiento, y retire el puente de la Zona 1. En ese
crista l de 5 MHz
momento se debe producir la activación del relevo y de la alarma.

M W s.a. Curso práctico sobre Microcontroladores


AVISO LUMINOSO CON DIODOS LED
■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ M M M M M H H H M I H H M H H B M M f lM M n H B I O M M D I O B t M O O H M B B W f l

Construya este proyecto y diviértase con él.


Es una matriz de diodos LED de ocho co­
lum nas y ocho filas, donde se pueden mos­
trar textos o graficar algunas figuras que re­
sultan m uy simpáticas. Anímese y cree sus
propios patrones.

Características
• Tablero de 8 x 8 diodos LED
• Tres efectos de anim ación diferentes den­
tro del tablero
Aviso
i— :
luminoso
___
con diodos LED A
i

Este proyecto es m u y interesante para todos Funcionam iento


los interesados en la experim entación con m icro­ Existen m uchas técnicas para la elaboración de este
controladores. Se trata de un pequeño tablero ani­ tipo de dispositivos. Generalmente se utilizan re­
m ado, con diodos LED, de 8 x 8 pixeles en do n ­ gistros de desplazamiento en cascada para habilitar
de podem os conocer los principios básicos de este secuencialmente las colum nas e ir enviando el dato
tipo de tableros, por supuesto m ás grandes, los adecuado a cada una de las filas por uno de los puer­
cuales se en cuentran en avenidas, estaciones de tos. En este caso se ha optado por m anejar todos los
transporte, vitrinas de alm acenes, etc. LED desde un solo puerto, multiplexando secuen­
cialm ente el control de las filas y las columnas. En
La m atriz se m o n ta sobre un circuito im p re­ otras palabras, el puerto en vía en un instante de
so referencia K -208 de CEKIT, en el cual se in ­ tiem po el dato adecuado p ara las filas y al siguien­
cluyen todos los com ponentes y sus conexiones. te instante envía el dato para las columnas.

R egulador de vo ltaje
Entrada CC

pn
i
i

IC3 74HC374

HABILITACIÓN COLUMNAS
DO D1 D2 D3 04 D5 D6 D7

X -------------------------------------------------------------------

Figura 5.1 Diagram a esquemático

m VCMT1 Curso práctico sobre Microcontroladores


i Proyectos

El P I C 1 6 F 8 4 n o tie n e s u ­ D ebe tener cu id ad o en el


fic ie n te s lín e a s d e I/O p a ra program a para no seleccionar va­
m a n e ja r todos los LE D d ire c ­ rias filas sim ultáneam ente; de lo
ta m e n te . El p u e rto B (lín eas contrario, se sobrecargará la co­
RBO a R B 7 ), se u sa co m o bus lum n a, y por lo tanto, la capaci­
de d ato s tal co m o se m u e stra dad del circuito integrado de su­
en la d ia g ra m a esq u em ático de m inistrar corriente [flan out) será
la fig u ra 5 .1 . Este se c o n e cta a excedida, ocasionando qu e algu­
las e n tra d a s DO a D 7 d e dos nos o todos los LED d ism in u ­
flip -flo p s o ctales ( 7 4 3 7 4 ) . Las yan el nivel de su ilum inación.
sa lid a s de estos flip -flo p s m a ­ Por esto se d eb en co n fig u ra r
n e ja n las lín eas d e las filas y cu id ad o sam en te las frecuencias
las c o lu m n a s. Las líneas o p i­ de ap arició n y ro tació n d e los
nes RAO y R A I se u tiliz a n d ib u jo s.
co m o salidas p ara las señales de
reloj (generadas p o r program a) A l trab ajar con un display
qu e sincronizan los dato s en las de 8 x 8 , in e v itab lem e n te sa­
lín e a s de filas y c o lu m n a s. len a r e lu c ir lim ita c io n e s de
m e m o ria en el P IC 16 F 8 4 . Por
Para configurar una fila o eso, p ara un proyecto sim ilar
colum na, al diseñar una figura, co n m ás cap acid ad , sería u n a
se deben en viar los datos desea­ b u en a p ráctic a,d iseñ ar un av i­
dos en la fila, (el bit de la fila de­ so co n u n m icro co n tro lad o r de
seada se debe poner en alto y las m ás m em o ria.
dem ás deben estar en bajo) en el
puerto B, (líneas BO a B7) y en ­ O tro asunto qu e debe tener
viar un flanco de subida por la en cuenta es que el flip-flop que
línea R A I del puerto A para ac­ m ejor se ajusta en cuanto a ca­
tivar el reloj del flip -flop 7 4 3 7 4 . pacidades eléctricas de consum o
y sum inistro de potencia, carac­
L uego se en vían los datos terísticas de tiem po s, y rango
d e la c o lu m n a p o r el m ism o aceptable de alim entación, es el
p uerto B (lín eas BO a B7) y se 7 4 H C 3 7 4 de M otorola. Sin em ­
en v ía el p ulso de activ ació n del bargo, si no tiene este dispositi­
flip flo p p o r la lín e a RAO del vo, puede utilizar cualquier otro
p uerto A. En este caso, c u a n ­ circuito integrado de la m ism a
do h ay un 0 en u n a lín e a o bit , fam ilia 7 4 X X 3 7 4 .
se en cien d e un LED y cuan do
h ay un 1, está ap agad o . Antes Efectos gráficos
de pasar a la siguiente fila, se debe Se han incluido dentro de este
enviar el dato FF (1 1 1 1 1 1 1 1 ) tablero algunos efectos gráficos
p o r las lín eas de las co lu m n as sencillos; sin em bargo, se pue­
p ara lim p ia r el display, de o tra den crear m uchos más efectos si
m an era se presentarían p ro b le­ utiliza un microcontrolador con
m as al p asar d e u n a fila a la una m em o ria de program a de
Figura 5 .2 Efectos gráficos creados
sig u ie n te . m ayor capacidad.
dentro de la m atriz

Curso práctico sobre Microcontroladores


Aviso luminoso con diodos LED

INICIO
El p rim e r efecto es la p alab ra C E K IT q u e a p a­
rece en la p a n ta lla y q u e rota secu en cialm en te
h ac ia arrib a; después d e éste, aparece el d ib u jo
p arp ad ean te de u n a cara feliz y fin a lm e n te , una
esfera qu e rebota dentro del tablero. Esta secuen­
cia se rep ite in d e fin id a m e n te , fig u ra 5 .2 .

Descripción del programa


D e b id o a la ex te n sió n d e l p ro g ra m a d e este
p ro yec to , so lo p u b lic a m o s sus p artes p r in c i­
p ales, p ero el có d ig o c o m p le to se e n c u e n tra
d is p o n ib le en n u e stra p á g in a d e in te rn e t:

w w w . cekit. co m .co

En la fig u ra 5 .3 se m u e stra el d ia g ra m a de flu ­


jo d el p ro yecto y en la fig u ra 5 .4 p arte del có ­
d ig o fu en te.

El program a se ha dividido en una serie de


subrutinas, cada una de las cuales cu m p le con una
función específica y luego retorna al punto desde
donde fue invocada. Esas rutinas se encargan de
cargar los datos qu e conform an el dibujo, de des­
plegarlo en la p an talla y de rotarlo.

En los b lo q u es A , B y C d el p ro g ra m a , se
h acen las a sig n a c io n e s c o rre sp o n d ie n te s a las
d ireccio n es en la m e m o ria R A M p ara cad a u n a
Figura 5 .3 Diagram a de flu jo de la m atriz
d e las v ariab les. En el b lo q u e D se h ace u n lla ­
m ad o a la s u b r u tin a Show V ersion, la cu al des­ o ch o p o sicio n es de m e m o ria R A M , e m p e z a n ­
p lie g a un letrero in ic ia l q u e no se re p ite m ás d o d esd e la 1 0 H , d o n d e se e n c u e n tra el regis­
a d e la n te y q u e sirve p ara m o strar la v ersió n de tro ScreenO. Luego se invoca la subrutina Repita-
la t a r je t a ; es d e c ir , e s ta s e ría la v e r s ió n 1. Dibujo en la cual se llam a a la rutina DisplayDibu-
S h o w V ersio n está reseñ ad o co n la le tra I; a llí jo, bloque G , la cual hace aparecer en el tablero los
se c a rg a n los d ato s d e l letrero d e v ersió n en datos cargados durante un tiempo determinado.

PARA SABER MAS El funcionamiento en realidad es muy sencillo: el


El modo de direccionamiento indirecto de la me­ registro especial de que hablábamos hace un mo­
moria de datos se utiliza cuando las direcciones mento se denomina FSR (File S elect Register. Re­
en esa memoria no son fijas. Un registro especial gistro de selección de archivo). El valor que espe­
se utiliza como apuntador a las posiciones de la cifica ese registro es una dirección que contiene
memoria de datos que van a ser leídas o escritas. un dato y ese dato es almacenado automáticamente
Como este apuntador está en la RAM, sus conte­ en otro registro denominado INDF. En otras pala­
nidos pueden modificarse por programa. Esto es bras, cualquier instrucción que utilice el registro
muy útil para el manejo de tablas de datos. INDF, tiene acceso al registro apuntado por FSR.

7 4 Curso práctico sobre Microcontroladores


Proyectos

) MOVLW H’ 01* ; para v is u a liz a r s e en


MOVWF TempDibu ; l a p a n t a lla .
ORG 0
PowerOn BSF STATUS, RP0 MOVLW Screen0 + ALTURA.PANTALLA ;FSR se
MOVLW H’ 00' MOVWF FSR ; carga con e l v a lo r más
MOVWF TRISB ; C onfigura todos lo s b it s ; a l t o de l a ta b la .
;d e l PORTB como s a lid a s
MOVWF TRISA ; Configura todos lo s b it s DFLoop MOVLW B ’ 00000000'; In ic ia lm e n te se desha-
;d e l PORTA como s a lid a s MOVWF PORTA b ilit a n todas la s f ila s .
DECF FSR,1 Empieza e l b a rrid o

D CALL ShowVersion ; La prim era visua-


; liz a c ió n que se tie n e
MOVF
MOVWF
INDF,0
PORTB
de a r r ib a hacia abajo.
Se toma e l dato y se
;e s l a versió n d el proyecto. l l e v a a l p u erto B.

MOVLW H’ 10' ; Luego se hace v is u a lz a r MOVLW B *00000001'; Luego se h a b i l it a la


;ese patrón 10 veces MOVWF PORTA ; prim era columna.
CALL R ep ita D ib u jo MOVF TempDibu,0 ; E l orden e s, primero
MOVWF PORTB ; e l dato en e l p u erto B
MOVLW B *00000010'; y luego l a h a b ilita c ió n
LAZO MOVWF PORTA ; de l a columna en e l
BCF STATUS,RP0 ;S e establecen l a s velo- puerto A.
MOVLW RATA_DE_MULTIPLEXACION jc id a d e s de RLF TempDibu,1 Se r o ta h a c ia l a
MOVWF
MOVLW
M u ltip le x R a ta ; m u ltip le x a c ió n de
RATA_DE_DIBUJO ; lo s d ib u jo s
G BCF TempDibu,0 ;
derecha e l h a b ili-
ta d o r de columnas.
MOVWF RataDibu CALL Sh o rtD elay ; Se espera un momento.
MOVLW B ’ 11111111’ ; Se a c t iv a todo e l
MOVWF PORTB ; puerto B por un
MOVLW B'00000001'; momento y se d e s a c tiv a
CALL cek itLo g o ; e l prim er e fe c to grá- MOVWF PORTA ; para e v i t a r e l e fe c to
MOVLW H’ 10' ; f i c o es e l de e l nom- MOVLW B*00000000'; de fantasmeo de algunos
CALL R ep ita D ib u jo ; bre CEKIT rotando MOVWF PORTB ; LED. Es d e c ir que no
MOVLW H’ 40' ; desde a b ajo hacia MOVLW B'00000010'; queden medianamente
CALL RepitaRotUp ; a r r ib a MOVWF PORTA ; a ctiva d o s.
DECFSZ C o n ta D ib u ,!; Se decrem enta e l
co n ta d o r de b a rrid o ,
GOTO DFLoop s i no lle g a a ce ro ,
CALL ShowCarita se llam a una ru tin a se d ire c c io n a la
MOVLW H’ 10' ; donde se asignan lo s s ig u ie n te p o s ic ió n .
E CALL
CALL
R ep ita D ib u jo ; v a lo r e s b in a rio s
BlankScreen ; que s a ld rá n por e l DECFSZ R e t D ib u jo ,l ; se decrementa e l
MOVLW H’ 04' ; puerto y p e rm itirá n ; número de veces que
CALL R ep ita D ib u jo ; v is u a liz a r l a c a r i ­ ; se debe hacer todo e l
CALL ShowCarita ; t a . Luego se borra la GOTO DFOuterLoop ; b a rr id o . Y se r e p ite
MOVLW H’ 10' ; p a n t a lla y v u e lv e a RETLW 0 ; m ien tras e s te no
CALL R ep ita D ib u jo ; ap arecer ; lle g u e a cero.

MOVLW RATA_DE_DIBUJO / 2 ; ahora se patrón b in a r io que co n fig u ra l a c a r i t a f e l i z


MOVWF RataDibu ; cambia e l d ib u jo por
ShowCarita
MOVLW H’ 00' ; una b ola rebotando en e l MOVLW B ’ 11000011' ; a p a r t i r de l a
CALL R e p ita B o la ; i n t e r i o r de l a panta MOVWF Screen0 ; d ir e c c ió n del
; l i a a una v e lo cid a d MOVWF Screen0+H’ 7 ' ; r e g is t r o Screen0
MOVLW RATA_DE_DIBUJO ; determinada MOVLW B ’ 10111101' ; se colocan
MOVWF RataDibu MOVWF Screen0+H’ l ' ; consecutivam ente
MOVWF Screen0+H’ 6 ' ; lo s bytes

GOTO LAZO ; toda l a secu en cia se H MOVLW


MOVWF
B ’ 01011010' ;
Screen0+H’ 2 ' ;
que sald rá n
por e l puerto
; r e p ite indefin idam en te MOVLW B '01111110' ; y que co n fig u rarán
MOVWF Screen0+H’ 3 ' ; en l a m a triz de LED
MOVLW B ’ 01011010' ; l a g r á f ic a de la
SUBRUTINA MUESTRA EL MISMO DIBUJO [W] MOVWF Screen0+H’ 4 ’ ; c a r ita f e liz
MOVLW B ’ 01100110’ ; con todos esto s v a lo ­
R e p ita D ib u jo MOVWF Scratch0 ; se cargan lo s v a lo re s MOVWF Screen0+H’ 5 ' ; re s cargados se
Lazo l CALL D isp la y D ib u jo ; d e l e fe c to RETLW 0 ; re to rn a de e sta
DECFSZ S c r a t c h 0 ,l ; co rresp o nd ien te su b ru tin a
F GOTO Lazo l ; y se in vo ca l a ru tin a
patrón b in a r io de v is u a liz a l a v e rs ió n
; de v is u a liz a c ió n
RETLW 0
ShowVersion MOVLW B ’ 01011111' ; e s ta es o t r a ru tin a
muestra e l d ib u jo por un in t e r v a lo c o rto . En e sta MOVWF Screen0 ; donde se cargan la s
su b ru tin a se hace un b a rrid o de lo s v a lo r e s cargados en MOVWF Screen0+H’ l ' ; p o sicio n e s a p a r t i r
la s p o s icio n e s donde se han config urado lo s d is t in t o s MOVLW B ’ 10111111' ; de Screen0 con lo s
patrones g r á fic o s . E sto se hace d irecio n an d o con e l MOVWF Screen0+H’ 2 ' ; datos que mostrarán
r e g is t r o s FSR y tomando e l dato d e l r e g is t r o INDF. MOVLW B ’ 11111111' ; l a v e rs ió n del
MOVWF Screen0+H’ 3 ' ; proyecto .
D isp la yD ib u jo MOVF RataD ibu,0 se carga e l número MOVLW B '01111011' ; E sta g r á f ic a s o lo se
MOVWF RetD ibujo de veces que se hace MOVWF Screen0+H’ 4 ' ; muestra a l i n i c i o
e l b a rrid o de lo s da­ MOVLW B ’ 01110101' ; d e l sistem a y luego
to s de lo s d ib u jo s MOVWF Screen0+H’ 5 ' ; no se v u e lv e a rep e­
MOVWF Screen0+H’ 6 ' ; tir .
DFOuterLoop MOVLW ALTURA_PANTALLA MOVLW B '01011011'
MOVWF ContaDibu ; Número de p o s icio n e s MOVWF Screen0+H’ 7'
; que se deben b a rre r RETLW 0

Figura 5.4 Código fuente

Curso práctico sobre Microcontroladores


A v is o l u m i n o s o c o n d io d o s LED i
La rutina DisplayDibujo M ie n tr a s su v a lo r no lle g u e a ce ro , e l p ro ­
C u a n d o se invoca esta ru tin a desde cu a lq u ier g ra m a tra e rá el s ig u ie n te d a to de la m e m o ria
parte del program a, debe cargar el registro W con a través d e l registro ap u n tad o r F S R , e l c u a l se
el n úm ero de datos qu e van a salir en cada efecto d e c re m e n tó p re v ia m e n te en el n u m e ra l 4 .
gráfico. Ese valor se alm acen a en el registro Ra-
taDibu qu e es el qu e d eterm in a el n úm ero de El proceso se rep ite, p ero esta vez co n el
veces q u e se repite la ru tin a de visualización. se g u n d o d a to (D 7 ) d esp leg ad o en la c o lu m n a
2 , y co n tin ú a h a sta c o m p le ta r el reco rrid o de
En el registro ContaDibujo, se gu ard a el n ú ­ los ocho datos.
m ero de filas q u e tien e la m atriz; por lo tanto, en
cad a visualización, no se p ued e exceder este va­ C u a n d o el re g istro C ontaD ibujo h a lle g a ­
lor. En la figura 5 .5 se aprecia un d iag ram a del d o a cero , s ig n if ic a q u e se h an m o stra d o to ­
fu n cio n am ien to de esta ru tin a, y en la figura 5 .6 dos los v alo res d e l g rá fic o q u e se q u ie re v i­
el d iag ram a de flujo de la m ism a. su a liz a r. En este m o m e n to , e l flu jo d e l p ro ­
g r a m a lo lle v a al n u m e ra l 1 5 , en d o n d e se de-
L a r u tin a e m p ie z a co n el registro F S R di- c r e m e n ta el re g istro R etD ibu e l c u a l in d ic a
re c c io n a n d o la p rim e ra p o sic ió n a p a r tir de la c u a n ta s veces se v a a re p e tir to d o e l p ro ceso
c u a l se h a a lm a c e n a d o la fig u ra q u e se p re te n ­ c o m p le to de v is u a liz a r to d as las c o lu m n a s de
d e d e sp le g a r en el tab le ro , n u m e ra l 2 ; esta es m a n e r a c o n s e c u tiv a . C u a n d o el p ro ceso se ha
la 10 H q u e co rre sp o n d e al registro ScreenO. re p e tid o ese n ú m e ro d e veces, se sale d e la
s u b r u tin a .
El co n ten id o de esta dirección es un dato
(D 8) qu e está disp o n ib le en IN D F y qu e se en ­ En el b lo q u e E d el p ro g ra m a se in v o can
v ía por el puerto B para qu e sea el dato de las c a d a u n a de las fig u ras y en cad a u n a de ellas
filas, n um erales 5 y 6 ; in m ed iatam en te se envía se h ace a lu sió n a la r u tin a an terio r, p ero c a r­
al puerto A el n úm ero 0 1 H p ara activar el bus de g a n d o d istin to s datos.
las filas y luego se pasa al registro TempDibu, el
cual co n tien e el núm ero p ara activar cada u n a de Recomendaciones para el montaje
las co lum n as en el p uerto B. En las fig u ra s 5 .7 a 5 .1 3 p u é d e o b serv ar la
g u ía d e e n sa m b la je d e la ta r je ta , los LE D de
Luego se en vía el núm ero
Col 8 Col 1
0 2 H al p uerto A p ara h ab ilitar
la en trad a de ese dato en las co­
t I
Screen 0 í — Fila 8
lu m n as, bloque 9. El resultado
es la visu alizació n del p rim er
dato en la p rim era co lu m n a el P o rtB

cual perm anece durante un cor­


to tiem po, n um eral 11. T
INDF = D8 ^ ^ ^ ^ Ría 1
En el n u m e ra l 10 se ro ta t il! t
h a c ia la iz q u ie rd a el reg istro
TempDibu p a r a te n e r listo el P o rtB
A: FSR ♦ 17H B: TempDibu- ♦ 01
v a lo r q u e a c tiv a r á la s ig u ie n ­ INDF • D8 P o rtB — ♦ T e m p D ib u
Port B- •D8 Port A-
te c o lu m n a . Esto se h a c e d e- P ortA - •01
♦002
TempDibu
c re m e n ta n d o el reg istro C on­
taD ibu jo , n u m e ra l 17. Figura 5 .5 Funcionam iento de la rutina DisplayDibujo

I I 7/L Curso práctico sobre Microcontroladores


Proyectos

5 m m se h a n alin ead o y colocado de la


m an era m ás cercana posible, al igual qu e
D is p la y D ib u jo
los circuito s integrado s, con el objeto
de d arle u n a ap a rien c ia m ás com pacta.

De todas m aneras se pueden utilizar


los LED de 3 m m , si se desea un tam año
m enor. Para m o n tar el circuito, debe te­
ner en cu en ta qu e lo prim ero qu e debe
hacer es soldar los puentes.

La m anera m ás fácil de instalarlos es


tom ar un solo cable largo, y trenzarlo o
“tejerlo” a lo largo de cada u n a de las lí­
neas de las co lum n as, después soldar en
los puntos indicados y luego recortar el
cable sobrante. D espués de instalados los
puentes, debe soldar los d em ás com po­
nentes; sin em bargo, es b uen a idea que
em piece con los de bajo perfil, com o las
resistencias y luego, con las bases de los
integrados y los dem ás com ponentes.

En n u estro p ro yec to , la m a triz in i­


c ia m o stra n d o la p a la b ra C E K IT , la
c u a l ro ta h a c ia a rrib a , d e sp u é s aparece
u n a c a ra feliz y lu e g o u n a esfera d an d o
b o tes d e n tro de la m a triz . Estos son
RLF Columna
só lo e je m p lo s de la in f in id a d de p a tro ­
nes q u e se p u e d e n c re a r; el lím ite es
s u im a g in a c ió n . U ste d m is m o p u e d e Retardo
crear sus p ro p io s p atro n es gráfico s p ara
lo c u a l d eb e m o d ific a r el p ro g ra m a . En
los sitio s c o m e rc ia le s es c o m ú n e n c o n ­ Lim piar filas
tra r to d a clase d e m o tiv o s, a lg u n o s con
d ise ñ o s m u y esp eciales.
DEC ContaDibu RetDibujo Retorne
O7
A l tra b a ja r co n este c irc u ito usteda- \

p re n d e m u c h a s cosas ú tile s . U n b u en
p ro g ra m a d eb e a h o rra rle la u tiliz a c ió n
d e un o o v ario s c irc u ito s e x te rn o s. El ContaDibu DEC RetDibu
h ardw are y el softw are fin ales d eb en co ­
m u n ic a rs e co n ta l s in c r o n ía y e x a c ti­
tu d , q u e p r á c tic a m e n te se v u e lv a n u n a
so la u n id a d . Figura 5 .6 Diagram a de flu jo de la rutina DisplayDibujo

Curso práctico sobre Microcontroladores é m ic iT i


Aviso luminoso con diodos LED i

Ensamblaje LISTA DE MATERIALES ,


Cant. Reí. Descripción
Figura 5 .7 Este es el
8 R1 a R8 Resistencias de 39Q1/4W
conjunto de 1 IC1 PIC16F84 programado
componentes 2 IC2 - IC3 74HC374
1 IC4 Regulador fijo +5V, 7805
electrónicos y los 2 C1 yC2 Condensadores cerámicos de 22 pF - 50V
accesorios que se
1 Xtal Cristal de cuarzo de 4MHz
requieren para 64 LED 1 a LED 64 Diodos LED de 5 mm. rojos
ensam blar el 1 K - 208 Circuito impreso CEKIT
2 Bases para circuito integrado de 20 pines
proyecto.
1 Base para circuito integrado de 18 pines
1 Conector de tomillo de 2 pines

Paso 1 Paso 4
Instale y suelde los
Con un alam bre delgado,
dem ás com ponentes _
haga un tejido para
com o resistencias,
conectar los puentes que
condensadores, las
van debajo de los diodos
LED. Esta es la parte más bases para los t ; . ii s i. i
circuitos integrados,
delicada en el -—- í: :
1 i' t / *■í”

ensam blaje de este


e l cristal, e l regulador w.-v
*•
i
>
•9
m
9

•*
de voltaje y el
9
9 9 f ' i
proyecto y debe hacerse a 9
9
9
9 1 t 5 j
term inal para la ^* .i ~' ■ 9
con m ucho cuidado.
alim entación. 111 V •«
i <

*
)

i•
i

4
Figura 5 .8 1
i * 4

Figura 5.11 \
1 í 1 f

Paso 2
Paso 5
Los puentes
anteriores se deben Instale y suelde los 64
soldar en cada una diodos LED
de sus conexiones, cuenta su posición, ya
en la cara de las que s i se instalan al
soldaduras. contrario, no se
Figura 5 .9 encienden. El símbolo
en e l circuito im preso
indica su polaridad.
Figura 5.12

Paso 6 íi
Paso 3 1 ti. M- ,
Instale en su base el :
Instale y suelde ---- f 1
los demás m icrocontrolador PIC 1 •
1 1
1 1 ••. <• ' ■ ■1* . * ^ •
puentes de 16F84 program ado __ • |
i 1 »m
—---- • 1 *á ; f•
alambre. y los dem ás circuitos <•. *• 11 • ««
’■* ■11 Qjn ; t í0 ,t : :> • : •
Figura 5.10 integrados • i

Figura 5.13 ii 9 1 y * . *• .i

.
LJ
•i ¿sto*
| »•
III
etc

Paso 7. Prueba final


Para probar e l circuito, alim éntelo con una fuente regulada o no, hasta de 12 voltios. En ese m om ento deben aparecer lo s efectos
m encionados en e l texto anterior. Si no es así, revise m uy bien las conexiones y verifique que e l program a esté grabado en el
m icrocontrolador.

Curso práctico sobre Microcontroladores


CONTADOR DE EVENTOS
Este circuito cuenta desde 0000 hasta 9999 en
forma ascendente o descendente todo tipo de
eventos. Aprenderemos a m anejar técnicas de
multiplexado para la presentación de datos nu­
méricos en visualizadores de siete segmentos y a
utilizar macros en nuestros programas.

C aracterísticas
• C uen ta en un rango entre 0 y 9999.
• Lím ite de cuenta programable, tanto en modo
ascendente com o descendente.
• Generación automática de una señal de alarma
cuando la cuenta llega a su límite prefijado.
• Conexión externa para un dispositivo de alarma.
En muchos procesos industriales resulta m u y El m icro co n tro lad o r recibe tres señales de
útil un dispositivo que lleve la cuenta de algún en trad a: u n a p or el bit 2 d el puerto B (pin 8),
evento físico que ocurra con cierta frecuencia, proveniente de un p u lsad o r ( S i ) , y dos por los
por ejem plo, la cantidad de objetos que pasan bits 0 y 1 del m ism o puerto (pines 6 y 7), p ro ­
por u n a b an da transportadora; y genere al m is­ venientes de dos puentes o ju m p ers ( J 1 y J 2 ) . La
mo tiem po una señal de control cuando esa cuen­ salida de a la rm a o fin de cuenta del sistem a se
ta llegue a un valor lím ite. Nuestro proyecto res­ hace a través d el bit 3 del puerto B (pin 9). Ini­
ponde a esta necesidad. El m ism o, identificado cialm en te, es necesario p ro gram ar el valor lím i­
con la referencia K -325 de CEKIT, cu en ta las te en el cual se gen era esta señal de control. Para
veces que se produce un evento externo, detecta­ q u e esto sea posible, d eb e estar puesto el ju m -
do m ed ian te un pulsador u otro tipo de disposi­ p e r J 1, lo cual o b lig a al sistem a a en trar en el
tivo de entrada, y presenta el resultado en cuatro m o do de program ación.
visualizadores (displays) de siete segmentos.
Después de instalado J 1, el contador sitúa
A dicionalm ente, genera una señal de co n ­ todos los displays en cero (0 0 0 0 ) y queda listo
trol o alarm a cuando esa cu en ta llega a un valor para leer el dato que se va a program ar como lí­
lím ite, previam ente program ado por el usuario. m ite. Para fijar este ú ltim o , el usuario sim ple­
La dirección de la cuenta, ascendente o descen­ m en te debe oprim ir el pulsador S i hasta que la
dente, es tam b ién program able por el usuario. cuenta observada en el display llegue al valor de­
seado, por ejem plo 2 3 4 5 .
Funcionamiento
En la figu ra 6.1 se m uestra el d iagram a esque­ U n a vez se llega a este punto, debe especifi­
m ático del contador de eventos C E K IT K-325- carse la dirección de la cuenta. Para ello se utiliza
El corazón del sistem a es un m icrocontrolador el ju m p er J2 . Si este últim o está conectado, la
P IC 1 6 F 8 4 (IC 1 ), el cual controla cuatro displays cuenta se efectúa en sentido descendente a partir
de siete segm entos de cátodo com ún (D I S P l- del valor fijado, m ientras que si está desconecta­
D ISP4) a través de un decodificador B C D (IC2). do, se hace en sentido ascendente a partir del
El primer display (D IS P 1) representa el dígito más m ism o valor. Las funciones de los jum pers J 1 y
significativo de la cuenta y el últim o (D ISP 4) el J 2 se resumen en la tabla anexa a la figura 6.1.
m enos significativo. Los cátodos de los displays
se conectan y desconectan de tierra m ed ian te En el modo ascendente, la cuenta en los dis­
cuatro transistores N P N (Q 1 -Q 4 ), controlados plays se inicia con el valor 0 0 0 0 y se increm enta en
a su vez por las líneas 4 , 5, 6 y 7 del puerto B. Las una unidad con cada pulso de entrada externo,
líneas 0 , 1, 2 y 3 del puerto A, por su parte, pro­ hasta llegar al valor programado. C u an d o esto su­
porcionan secuencialm ente el dato que será vi­ cede, la señal de control disponible en la línea RB3
sualizado en los displays. (pin 9) se activa en alto y permanece así por algu­
nos segundos. Hecho esto, la cuenta retorna a 0000
Para cada dígito de la cu en ta se utiliza un para iniciar u n a nueva cuenta ascendente.
código B C D de cuatro bits, donde el M S B {bit
de m ayor peso) es el RA3 (D ) y el LSB {bit de En el m odo descendente, por su parte, la
m enos peso) es el RAO (A). Las cuatro líneas cu en ta en los displays se inicia con el valor pro­
anteriores alim entan un circuito integrado 7 4 4 8 gram ado previam ente y se decrem enta en una
(IC 2 ), el cual hace la conversión de B C D a siete unidad con cada pulso de en trad a externo hasta
segmentos. Las resistencias R1 a R 7 tienen por llegar a cero. C u a n d o esto sucede, nuevam ente
objeto lim itar la corriente que fluye a través de se dispara, d u ran te algunos segundos, la salida
los segm entos de cada display a un valor seguro. de control de alarm a. H echo esto, la cuenta re-

0 M H & H T T d .. Curso práctico sobre Microcontrolao


DISPLAY 1 DISPLAY 2 DISPLAY 3 DISPLAY 4

7 RB6 RB5
IC1
PIC16F84

SALIDA

_ED 1

ENTRADAS MODO V
SALIDAS

ENTRADA
CA/CC
de 9V

Figura 6.1 Diagram a esquem ático del proyecto

torna al valor program ado para iniciar u n a nue­ d e d u c ir q u e c u a n d o se tien e un nivel lógico
va cu en ta descendente. alto en la base de c u a lq u ie r transistor, éste e n ­
tra en estado de c o n d u c c ió n y c o n e cta d in á ­
Manejo de los displays de siete segmentos m ic a m e n te a tierra la lín e a de h a b ilita c ió n del
Por la c o n fig u ra c ió n d el c irc u ito , es m u y fácil display correspondiente. Si n in gu n o de los tran-
j¡ *
Curso práctico sobre Microcontroladores < Ú M Ifá / / Til
ontador de eventos

D IS P 1 D IS P 2 D IS P 3 D IS P 4
Registro

P u e rto A— "-DIG4

: n ■
O o 0
1 1 I I :- 1 i -1 n i
U :; U : L J u H a b ilita c ió n

T D IS P 4

í
OFF OFF
t
OFF ON
t
Figura 6.2 Esquema de habilitación de un display determ inado

sistores tien e u n nivel lógico alto a p lic a d o en mas bien estructurados, modulares, óptimos y en
sus bases, no se en c e n d e rá seg m en to algun o . lo posible “bonitos”, es decir que respondan a un
criterio estético. U n a de las técnicas más conoci­
Así, por ejem plo, si se quiere m ostrar el nú­ das para lograr este propósito son los “macros”.
mero tres (3) en el segundo display m enos signi­ U n m acro es u n a secuencia de instrucciones que
ficativo (D ISP 3), se deben seguir estos pasos: pueden insertarse dentro del código de ensambla­
dor en cualquier m om ento sim plem ente llam án­
1. D eshabilitar todos los segm entos para evitar dolas a través de una instrucción CALL.
visualizaciones indeseadas
2. Colocar el número binario 0 0 1 0 en el puerto El m acro d e b e d efin irse p rim e ro antes de
que controla los transistores (RB 7...4) ser invocado . D en tro d e u n m a c ro p u e d e in ­
3. Enviar el código binario 0011 por el puerto vocarse otro m acro o invocarse a él m ism o de
que controla los segmentos (RA3...0) m a n e r a recursiva.

Para visualizar sim ultáneam ente los datos en En el programa de este proyecto se han elabora­
los cuatros displays, es necesario conectar los tran­ do algunos macros que cumplen con funciones es­
sistores en forma secuencial mientras se envían, pecíficas. Por ejemplo, se han creado macros para
por el puerto que controla los segmentos, los da­
H A B I_D ISP 1 MACRO
tos correspondientes a cada dígito. Este proceso BCF P0R TB,4 ; D ESH A BILIT 0 D ISP4
debe ser efectuado a una velocidad tal que engañe BCF P0R TB,5 ; D ESH A BILIT 0 D ISP3
BCF P0 R T B,6 ; D ESH A BILIT 0 D ISP2
la retina y parezca que se realiza sim ultáneam ente BSF P0R TB,7 ; H A B ILIT O D ISP1
ENDM
sobre todos los displays.
H A BI_D ISP2 MACRO
BCF P0R TB,4 ; D ESH A BILIT 0 D ISP4
El tiempo necesario para sostener el dato en BCF P0R TB,5 ; D ESH A BILIT 0 D ISP3
BCF P0R TB,7 ; D ESH ABILITO D ISP1
cada display y producir esta sensación varía depen­ BSF P0R TB,6 ; H A BILITO D ISP2
diendo, entre otros factores, del valor de las resis­ ENDM

tencias limitadoras, del número de dígitos que se H A B I_D ISP 3 MACRO


BCF P0R TB,4 ; D ESHABILITO D ISP4
tengan que mostrar y de las características propias BCF P0R TB,7 ; D ESH ABILITO D ISP1
del display. A este proceso se le conoce como m ulti- BCF P0R TB,6 ; D ESHABILITO D ISP2
BSF P0R TB,5 ; H A BILITO D ISP3
plexaje o m ultiplexación y es m u y utilizado en los ENDM

circuitos con microcontroladores. H A B I_D ISP 4 MACRO


BCF P0R TB,7 ; D ESH ABILITO D ISP1
BCF P0R TB,5 ; D ESH ABILITO D ISP3
Descripción del programa BCF P0R TB,6 ; D ESH ABILITO D ISP2
BSF P0R TB,4 ; H A BILIT O D ISP4
Concepto de macro ENDM
U na de las principales metas de todo program a­
dor en lenguaje ensam blador es elaborar progra- Figura 6.3 M acros de habilitación de cada uno de los displays

é s jK iY : Curso práctico sobre Microcontroladores


Proyectos

Dig1 — ► W MOSTRAR MOVF D IG 1 , W SE PONE EL CONTENIDO


W — ► Puerto A MOVWF PORTA DEL D IG ITO 1 EN ELPTO A
H A B I. D ISP1 H A BILIT O EL D ISPLA Y 1
CALL RETARDITO AGUARDAR UN MOMENTO

MOVF DIG2,W SE PONE EL CONTENIDO


HABI-DISP1 MOVWF PORTA DEL DIGITO 2 EN EL PTO A
H A BI_ D ISP2 H A BILIT O E L D ISPLA Y 2
CALL RETARDITO AGUARDAR UN MOMENTO

CALL Retardito
MOVF DIG3,W SE PONE EL CONTENIDO
MOVWF PORTA DEL DIGITO 3 EN EL PTO A
H A B I. D ISP3 H A BILIT O EL D ISPLA Y 3
CALL RETARDITO AGUARDAR UN MOMENTO

MOVF DIG4,W SE PONE EL CONTENIDO


MOVWF PORTA DEL DIGITO 4 EN EL PTO A
H A B I. D ISP4 H A BILIT O EL D ISPLA Y 4
CALL RETARDITO AGUARDAR UN MOMENTO

RETLW 0 ; RETORNO DE LA SUBRUTINA

CALL Retardito Figura 6.5 Código de la rutina MOSTRAR

el macro H ABI_D ISP1 dentro segmentos se utiliza u n a subru­


del programa principal, se ejecutan tina d en o m in ad a M O S T R A R .
D ig3— ► W
W — ► P u e rto A las instrucciones contenidas en él. En la fig u ra 6 .4 podem os ver el
d iagram a de flujo de esta ruti­
i
HABI-DISP3
P ara v is u a liz a r los datos na. Su código fuente se presen­
adecuados en cada uno de los ta en la figura 6.5.

; ----------- BLOQUE A ----------


CALL Retardito PR IN C IPA L CALL MOSTRAR ; RUTINA DE VISUALIZACION
CALL INCREMENTAR.P ; INVOCO RUTINA DE
; INCREMENTO DEL NUMERO A
PROGRAMAR
CALL MOSTRAR V ISU A LIZ O DE NUEVO
GOTO GUARDAR GUARDO EL NUMERO
SA LIR BT FSS P0RTB,1 CHEQUEO EL JUMPER J1
GOTO PR IN C IPA L S I NO SE HA QUITADO
REGRESO PARA SEGUIR AUMENTANDO
EL NUMERO
GOTO MODO.RUN
-BLOQUE B------------
BTFSC PORTB,2 CHEQUEO EL PULSADOR DE
ENTRADA
RETLW 0 RETORNO S I NO ESTA PULSADO
CALL Retardito
B CALL RETARDO AGUARDO UN MOMENTO,
V ISU A LIZ O Y CHEQUEO DE
NUEVO
CALL MOSTRAR PARA EVITAR
Retorno BTFSC PORTB,2 REBOTES INDESEADOS.
GOTO INCREMENTAR.P S I ESTA PULSADO
CALL MOSTRAR INVREMENTO LOS D IG ITO S
Figura 6 .4 D iagram a de flu jo de la
Y V ISU A LIZ O DE NUEVO.
visualización en lo s displays CALL CALCULAR.INC ESTA ES LA
RUTINA DE CALCULO EXACTO DE
producir la señal de habilitación MOSTRAR CADA UNO DE LOS DIGITOS
RETLW 0
de cada uno de los displays. C uan­
GUARDAR MOVF DIG4.W AQUI ALMACENO CADA UNO
do se pretende visualizar un dato MOVWF D IG 4 .P DE LOS D IG ITO S EN
en algún display determinado, se MOVF DIG3.W REGISTROS A U X ILIA R E S
MOVWF DIG3_P UBICADOS EN OTRAS
debe habilitar ese display y desha­ MOVF DIG2.W PO SICIO N ES EN RAM.
MOVWF D IG 2_P
bilitar los demás, figura 6.2. Los MOVF DIG1,W
macros de la figura 6.3 hacen esa MOVWF D IG 1_P
GOTO SA LIR
tarea, de manera, que invocando Figura 6.6 Subrutina de program ación d e l valor lím ite

Curso práctico sobre Microcontroladores á m íc n


Contador de eventos ^

-BLOQUE C --------------
ASC.DES MACRO MACRO QUE DETECTA
BTFSC PORTB,0 EL SENTIDO DEL
C GOTO ASCEND CONTEO MEDIANTE EL
Mostrar DESCEN BSF BANDERA,0 CHEQUEO DE EL
R EST .D IG IT O S B IT 0 DEL PUERTO B
GOTO OUT SEGUN ESO LOS DIGITOS
ASCEND BCF BANDERA,0 IN IC IA N EN 0 0 CON
IN IC IA R .D IG IT O S EL VALOR PROGRAMADO
Incrementar OUT NOP
digitos_P ENDM
• BLOQUE D -----
y
MODO.RUN ASC.DES ;SE CETBMNA S I EL CCNTEO ES
BTFSS BANDERA,0 ; ASCENDENTE 0 DESCEN.

Mostrar
D GOTO INCREMENTAR ; SEGUN EL B IT 0 DE
; BANDERA, SALTO A
GOTO DECREMENTAR ; INCREM. 0 DECREM.
BLOQUE E --------------
PORTB,2 CHEQUEO DE EL
PULSADOR DE ENTRADA
Guardar
NORMAL SE AGUARDA UN
dígitos RETARDO PARA
RETARDO EVITAR LECTURA DE
MOSTRAR REBOTES DEL PULSADOR.
PORTB,2 S I SE CORROBORA LA
LECTURA, SE IN/OCA LA
GOTO INCRBCNTAR SUBRUTINA QUE HACE
MOSTRAR UN INCREMENTO DE UNA
CALCULAR_INC UNIDAD EN LOS
VALORES DE LOS DISPLAYS
MOSTRAR SE FINALIZA MOSTRANDO
NORMAL LOS DATOS.
DECREMENTAR PORTB,2 SE LEE EL PULSADOR DE
ENTRADA.
GOTO NORMAL SE AGUARDA UN RETARDO
CALL RETARDO PARA EVITAR LECTURA DE
CALL MOSTRAR REBOTES DEL PULSADOR.
BTFSC PORTB,2 S I SE CORROBORA LA LEC­
Figura 6 .7 Diagram a de flujo de la subrutina de program ación GOTO DECREMENTAR TURA, SE INVOCA LA
SUBRUTINA QUE
MOSTRAR HACE UN DECREMENTO DE
La ru tin a an terio r es en realidad m u y sen­ UNA UNIDAD EN LOS VALO­
cilla. Su función consiste en tom ar el co n te n i­ CALL CALCULAR_DEC RES DE LOS DISPLAYS
MOSTRAR SE FIN A LIZA MOSTRANDO
do de los registros D I G 1 , D IG 2, D IG 3 y D IG4, LOS DATOS
NORMAL
los cuales co ntienen el dato com p leto que se -BLOQUE F
debe en tregar a cada uno de los displays , y en ­
NORMAL CALL MOSTRAR EN ESTA SUBRUTINA SE
viar el código de c ad a d íg ito , uno a la vez, al HACE UNA COMPARACION
ALARM BTFSS BANDERA,0 ENTRE EL NUMERO
puerto A m ien tras h ab ilita el display correspon­ GOTO WE ACTUAL QUE SE ESTA
dien te. Para ello recurre al m acro asociado a ese F ; ORIGINANDO CON EL PULSADOR
GOTO WE1 CON EL VALCR PROGRAMADO.
display. En la figu ra 6 .6 observamos la s u b r u ti­ WE CALL ALARMA S I SON IGUALES SE
ACTIVAN LAS RUTINAS DE
na con la cu al se p ro g ram a el valor lím ite del GOTO INCREMENTAR ALARMA. HAY UNA
co ntad o r y en la figu ra 6 .7 se m uestra su res­ WE1 CALL ALARMA2 RUTINA PARA EL
INCREMENTO Y OTRA
pectivo d ia g ra m a de flujo. GOTO DECREMENTAR PARA EL DECREMENTO

Figura 6.8 Código de la subrutina que ejecuta e l funcionam iento


En esta subrutina se lee el pulsador de entrada norm al del sistem a
conectado al bit 2 del puerto B (bloque B del códi­ registros auxiliares para ser utilizados más adelante
go). En caso de confirmarse una entrada externa, se con el fin de verificar cuando debe generarse la se­
invoca la subrutina C A L C U L A R J N C , la cual se ñal de control. En el bloque A del código se efecma
encarga de asignar a cada uno de los registros DIG 1 un ciclo continuo. M ediante este ciclo se muestran
hasta DIG4, su valor exacto. los datos programados actualmente, se determina
si hay entrada externa y se guardan los datos nue­
Hecho esto, mediante la subrutina G U A R ­ vos. Dicho ciclo se repite indefinidamente mien­
DAR, los valores de los dígitos se almacenan en tras el ju m p er J 1 no sea removido. Cuando se retira
*
ffá ffW¡a Curso práctico sobre Microcontroladores
Proyectos

Normal
P A R A S A B E R M ÁS
¿Qué es un macro?
Por definición, un “ macro” se refiere a un ele­
Mostrar
mento que se compone de varias partes más
pequeñas. Esta misma definición se aplica a los
macros del ensamblador, los cuales son con­
Port B , 2= 0?
SI juntos de directivas e instrucciones definidas por
Verificar
alarma el usuario y que pueden ser incluidos dentro del
código al invocar el macro.
I
Mostrar Los macros pueden escribirse de tal forma que acep­
ten argumentos, haciéndolos muy flexibles. Entre otras,
Encender salidas
de la alarma el uso de macros tiene las siguientes ventajas:
Calcular • Proporcionan un alto nivel de abstracción, ha­
incremento
ciendo los programas más comprensibles
• Ofrecen soluciones consistentes a funciones
Normal
que se realizan con cierta frecuencia
• Simplifican los cambios
Figura 6 .9 Diagram a de flu jo de la operación en m odo RUN • Facilitan la prueba y depuración del programa

J 1, el programa entra al modo R U N o de ejecución


Las aplicaciones más frecuentes de los macros son:
normal del sistema. Las acciones efectuadas por esta
• Construcción de tablas complejas
parte del programa podemos apreciarlas en el códi­
• Creacción de códigos usados con frecuencia
go de la figura 6 .8 y en el diagrama de la figura 6.9.
• Realización de operaciones complejas

En el bloque D se lee el estado de J 2 para


Definición de un macro
d eterm in ar si la cu en ta va a ser efectuada en for­
La definición de un macro se divide en tres
m a ascendente o descendente. En el bloque C se
partes: la cabecera, el cuerpo y la terminación.
hace un macro el cual, según el estado de J2 , hace
La cabecera de un macro posee la siguiente
que los valores de los registros DIG1 a D IG 4
sintaxis:
adopten el valor 0 0 0 0 en caso de cuenta en modo
ascendente, o el valor program ado previam ente
<nombre> MACRO [<arg> [, <arg>] ]
si se ha seleccionado el m odo descendente.

donde <nombre> es el nombre del macro y


En el bloque E del programa se monitorea per­
<arg> son los parámetros que se le entregan
manentemente el estado de la entrada externa para
al macro desde el punto donde se invoca. El
hacer la cuenta. Si, en un momento dado, se lee
cuerpo del macro empieza inmediatamente des­
una entrada válida por este pin, se invoca la subru-
pués de la cabecera y continúa hasta que se le
tina C A L C U L A R _ I N C o C A L C U L A R _ D E C
da la terminación. El cuerpo del macro se com­
para calcular el nuevo valor de los registros que guar­
pone de una serie de líneas de código que cum­
dan el valor de cada dígito. A partir de este punto se
plen con una determinada labor.
entra en un nuevo ciclo, en el cual se incrementan
o decrementan los valores de los dígitos, se mues­
La directiva ENDM termina la definición del ma­
tran en los displays y se verifica si han llegado al
cro. Ella debe existir antes de que se encuentre
valor límite para disparar la alarma o señal de con­
otro nuevo macro.
trol, bloque F del programa.

Curso práctico sobre Microcontroladores ¿M KM T


Contador de eventos A

Ensamblaje I
C a n t. R eí.
L IS T A D E M A T E R I A L E S
D e s c r ip c ió n
1 IC1 M ic ro c o n tro la d o r P IC 16F 84 p ro g ra m a d o
1 IC2 D e c o d itic a d o r d e s ie te s e g m e n to s c á to d o c o m ú n , 7 4 4 8
Figura 6.10 1 IC3 R e g u la d o r fijo d e + 5 V - 1 A , 7 8 0 5
5 01 a Q 5 T ra n sis to re s d e p ro p ó s ito g e n e ra l NPN, 2 N 3 9 0 4
Conjunto de 1 BR1 P u e n te re c tific a d o r c ir c u la r d e 1A , W 0 6 M
4 DISP1 a DISP4 D is p la y s d e s ie te s e g m e n to s c á to d o c o m ú n
componentes 1 01 D io d o d e p ro p ó s ito g e n e ra l 1 N 4 0 0 4
electrónicos y los 1 LED1 D io d o LED ro jo d e 5 m m
2 C1 y C2 C o n d e n s a d o re s c e rá m ic o s d e 2 2 p F - 50V
accesorios que se 1 C3 C o n d e n s a d o r e le c tro lític o d e 1 0 0 0 u F - 2 5 V
2 C 4 y C6 C o n d e n s a d o re s c e rá m ic o s d e 0 .1 uF - 50V
requieren para 1 C5 C o n d e n s a d o r e le c tro lític o d e 2 2 u F - 16V
ensam blar el 1 XT1 C ris ta l d e q u a rz o d e 4M H z
7 R1 a R7 R e s is te n c ia s d e 4 7 i2 - 1 /4 W
proyecto. 5 R 8 a R 12 R e s is te n c ia s d e l k - 1 / 4 W
1 R 13 R e s is te n c ia d e 3 3 0 Í2 - 1 /4 W
3 R 1 4 . R 1 5 y R 16 R e s is te n c ia s d e 1 0 k - 1/4W
1 S1 P u ls a d o r p e q u e ñ o d e 4 p in e s , p a ra c irc u ito im p re s o
2 J1 y J2 J u m p e rs p a ra c ir c u ito im p re s o
1 K -3 2 5 C irc u ito im p re s o CEKIT
Paso 1 1 C o n e c to r CA/CC
1 C o n e c to r e n lin e a M /H d e 2 p in e s
Con un alam bre delgado, 1 C o n e c to r d e to m illo d e 2 pin e s
instale y suelde los 1 B a se p a ra c ir c u ito in te g ra d o d e 1 8 p in e s
1 B a se p a ra c ir c u ito in te g ra d o d e 1 6 p in e s
puentes m arcados en el 1 C o n e c to r m a c h o tip o c e rc a d e 4 pin e s
circuito impreso.
Figura 6.11 Paso 6
Instale los cuatro
condensadores cerámicos
C1, C2, C4 y C6
Paso 2 Figura 6.16
Luego instale y suelde
las resistencias (16) y el Paso 7
diodo D1. Instale e l crista l XT1 y los
Figura 6.12 condensadores electro­
líticos C 3 y C 5
observando su posición
Figura 6.17
Paso 3
Paso 8
o sockets para los dos Instale los term inales
circuitos integrados para los puentes J1 y J2,
e l conector J3, el
Figura 6.13
pulsador S1
de alim entación
Figura 6.18
Paso 4
Instale y suelde los cinco Paso 9
transistores NPN Instale los
observando su posición circuitos integrados en
correcta sus bases y los puentes
Figura 6.14 J1yJ2
Figura 6.19

Paso 5
Instale y suelde los cuatro
displays, e l LED 1, el
regulador IC3 y e l puente
re ctificad o r BR1.
Figura 6.15

Paso 10. Prueba final


A lim ente e l circuito con una fuente regulada o no, hasta de 12 voltios. Conecte los puentes J1 para activa r e l modo de program ación y
J 2 para establecer e l m odo de la cuenta. Con e l pulsador S1 seleccione e l núm ero que se va a contar. Retire e l puente J1 y presione
S1 repetidam ente, en ese m om ento se debe increm entar o decrem entar e l núm ero según e l m odo seleccionado. Si no es así, revise
bien las conexiones y verifique que e l program a esté bien grabado en e l microcontrolador.

em K H T,. Curso práctico sobre Microcontroladores


'

DECODIFICADOR DE TECLADO
HEXADECIMAL
En este proyecto se m anejan sim ultáneam ente
un teclado y cuatro displays. Existen m uchas
aplicaciones del m undo real donde se requiere
m anejar estos dos elem entos, por eso la im ­
portancia de entender bien este concepto.

C aracterísticas
• Lectura de teclado de 4x4
• V isualización de los datos en 4 displays de
siete segmentos
• U t iliz a el m ic r o c o n tr o la d o r M o to r o la
6 8 H C 9 0 8 JK 3

Curso práctico sobre Microcontroladores < m /K ff7 ñ


Decodificador de teclado hexadecimal

U n o d e los p ro b lem as q u e en fren tan con


1 D a to 1 - -► E n te r
frecu en cia los d ise ñ ad o res y ex p erim en tad o res
d e sistem as electró n ico s con m ic ro c o n tro la d o ­ 1
res es q u e a lg u n a s veces las lín eas de entrada/
■ V is u a liz a c ió n 1
sa lid a q u e tie n e n d isp o n ib les en un d isp o siti­
vo, parecen no ser su ficien tes p ara u n a a p lic a ­ i
ció n d e te rm in a d a . ¡ D a to 2 - - * • E n te r

En o casio n es, a lg u n a s té c n ic a s y truco s


p u e d e n a y u d a r a o p tim iz a r las funcio nes de los V is u a liz a c ió n
m icrocontroladores, reduciéndose el tam añ o de
los circ u ito s im presos y la n ecesid ad d e c o n ­
s e g u ir circ u ito s in teg rad o s co n m a y o r n ú m ero
de lín eas I/O; aspectos estos q u e , n ecesaria­
mm
m e n te , d is m in u y e n los costos. N u estro p ro p ó ­
sito en esta o p o r tu n id a d , es p ro p o rcio n arle a l­ 1
i
________ 1
V is u a liz a c ió n H
----------—q
g u n a s d e estas técn icas q u e p u e d a n a y u d a r a
o p tim iz a r los diseños. *
D a to 4 - E n te r 1

La m u ltip lex ació n , q u e se d efin e com o una


form a d e c o m p a rtir secu en cialm en te el tiem po
V is u a liz a c ió n
p ara q u e dos o m ás señales se p u ed an tra n sm i­
tir a la vez p or u n m ism o m ed io conductor, es
sin d u d a una gran h e rra m ie n ta (y en ocasiones Figura 7.1 Rutina general para la entrada y visualización de los datos

la única) p ara co n segu ir u n m ejo r aprovecha­


m ien to de u n dispositivo. Esta técnica se utiliza Funcionamiento
a m p lia m e n te en co m u n icacio n es (aún m ás con En la figura 7 .2 puede apreciar el diagrama esque­
el a u g e de la fibra óptica). U sted la utilizará para mático del circuito en el cual vemos que se utiliza
la lectura de teclados y la visualización a través un microcontrolador Motorola 68 H C 908JK 3. La
de displays de siete segmentos. salida de los datos hacia los displays se hace por los
bits 4 , 5, 6 y 7 del puerto B, correspondientes a los
En este proyecto se hará la lectura de un pines 11, 8, 7 y 6, respectivamente. Los bits 1, 2 y 3
teclado de cuatro filas y cuatro co lu m n as y po­ del puerto B y el bit 6 del puerto D se configuran
drá visualizarse el resultado en cu atro displays como salidas y van conectados a las filas del teclado.
de siete segm entos. Los displays m u estran in i­
cialm en te el n úm ero 0 0 0 0 y luego m u estran los Manejo de teclados
datos q u e se van in tro d u cien d o p or el teclado. La clave para m anejar este tipo de teclados consis­
C o m o son cu atro displays , h a y q u e e n trar c u a ­ te en enviar por las líneas de salida sólo un cero
tro datos, cada uno de ellos se ingresa por el por vez; por ejem plo, si enviamos un cero por la
teclado y se d a u n en ter para in d ic a r q u e se ha línea P T D 6 (pin 10), cuando oprim im os una te­
acep tad o el n ú m ero y q u e se p uede pasar al si­ cla en la prim era fila (el 0 , 1, 2 ó 3), un nivel lógi­
g u ie n te display. En el teclad o c u a lq u ie r letra co bajo se reflejará en el pin correspondiente de
en tre la “A ” y la “E ” sirve para dar la señal de las líneas de entrada (P T D 2 , P T D 3 , P T D 4 y
en ter y la letra “F ” sirve para borrar los displays. P T D 5 respectivamente); así, si se encuentra un
En otras palabras la rutina es la que se m uestra nivel lógico bajo en la línea P T D 5 se puede con­
en la figu ra 7.1 . cluir que la tecla presionada fue el dígito 3.

em n € iT Curso práctico sobre Microcontroladores


Proyectos

cü -Q O -O Q) *- O)

O- IC2 o
O 7447 ’Z L
CD *HI
s+ >
o
< en o o h- cCcÜ co
cc

— CNJ co

o g o O
co
co r^- CD

CO CNJ CO cnj co r r in kt m co r-
o CÜ CO CÜ O O Q O CÜ co CÜ e
Q_
o £ £ £ £ £ £ £ £ £ £ £
C\J
li£
1Ll.
co cnj
£M f8060H89 n
VDD

0SC2

101
0SC1

Figura 7.2 Diagram a esquem ático

Curso práctico sobre Microcontroladores X .á.


Decodificador de teclado hexadecimal i

Si se quiere explorar todo el teclado, bastará Lectura


del teclado
con rotar el cero circularm ente, de tal m anera
q u e solam ente un cero se encuentre en las filas
del teclado, cuando se hacen las lecturas de las
líneas de entrada (las colum nas) com o se m ues­ Colocar cero en
la primera fila
tra en la figura 7 .3 . C u a n d o el cero llegue a la
fila más significativa del teclado, debe reingresar
Desplazar cero
en la próxim a ocasión por la menos significativa, en filas
reiniciando la exploración del teclado.
SI

U n d ia g ra m a de flu jo para este proceso, Leer columnas


El cero está
en d o n d e el m ic ro c o n tro la d o r q u e d a en clav a­ en la cuarta
fila?
do le y e n d o el teclad o h asta q u e se d e te c ta la
presión de u n o d e sus elem en to s, se m uestra
en la fig u ra 7 .4 . No A Alguna
^ columna está
en cero?
Otro aspecto que no se puede olvidar, son los
rebotes causados por la pulsación de una tecla. SI

C u an d o una tecla se oprim e, sus contactos actúan


como resortes, y la unión eléctrica no es estable, se Rutina de
tratamiento de
generan u n a serie de uniones y desuniones mecá­ tecla
nicas durante un intervalo significativo de tiem ­
po. Estos rebotes pueden dar lugar a que, en una
aplicación real, el program a los interprete como si TERMINAR

hubieran generado muchas pulsaciones, si es que


no se tom an los correctivos del caso. Figura 7.4 Diagrama de flujo para la lectura de un teclado m atricial

Para ello existen soluciones por hardware y Explicación del program a


por softw are ; en este caso consideramos más inte­ El programa cuenta con un lazo principal que se eje­
resante la segunda pues simplifica el diseño. A llí la cuta de manera indefinida, compuesto por tres su-
solución más obvia es que después de la detección brutinas, figuras 7.5 y 7.6. La primera se denomina
de la tecla pulsada, se genere un retardo en la lec­ ActualiceDisplay y como su nombre lo indica, ac­
tura del dato, de tal manera que se ignoren los tualiza y muestra datos en cada uno de los displays de
contactos subsiguientes debidos a los rebotes. siete segmentos; LeaTeclado se encarga de hacer el
□ barrido de las columnas para detectar cual de los
------------- Dato en la s fila s ------------- 1
pulsadores se ha activado y AnaliceTecla se encarga
I I \ de determinar el valor que se ha asignado a cada tecla
que se oprima. Los valores de los pulsadores se van
acumulando y cada vez que se presiona una de las
teclas de enter, se procede a su visualización.

D ebido a la configuración de los transisto­


res que van conectados al ánodo co m ú n , cuando
se aplica un nivel cero a cada una de las bases, se
habilita el display correspondiente. En la figura
Figura 7.3 Secuencia para la lectura de un teclado m atricial 7 .7 se muestra el código de la habilitación de cada

S é. Curso práctico sobre Microcontroladores


. Proyectos

* * * * I n i c i o d e l program a a l d a r RESET * * * * * * * * *

S ta rt:

j s r In it D is p la y ; r u t in a de i n i c i a l i z a c i o n de l a t a r e a
;d e d is p la y
Inicializar display js r In itK e y ; r u t in a de i n i c i a l i z a c i o n de l a ta re a
;d e t e c la d o
js r In it A n a lic e ; r u t in a de i n i c i a l i z a c i o n de l a ta re a
;d e a n á l i s i s

Inicializar teclas lo o p P p a l ;lo o p p r i n c i p a l que i n v i c a to d a s l a s


; t a r e a s d e l s is te m a
js r A c t u a lic e D is p la y ;T a r e a de d is p la y
js r Le a T e cla d o ;T a r e a t e c la d o
js r A n a lic e T e c la ;T a r e a de a n á l i s i s
Inicializar análisis
b ra lo o p P p a l

Figura 7.6 Código fuente d e l lazo principal del program a

El c ó d ig o d e e sta o p e r a ­ E n m a sc a ra r: té cn ica co n la
c ió n se m u e s tra en la f ig u r a cual se utiliza una “m á sc a ra ’
7 .9 y el d ia g r a m a de flu jo en o ru tin a de inhibición con el
la f ig u r a 7 .1 0 . fin de alterar o aislar ciertas
posiciones de bit .
En este p ro c e d im ie n to se
observa co m o se lleva al a c u ­ N ib b le : grup o de 4 bits (m e ­
m u la d o r el d a to a s ig n a d o a dio byté) operado co m o una
cada u n o de los displays D e­ unidad.
b id o a q u e el d ato d eb e salir
p or los cu atro bits m ás altos carar el nibble bajo e in terca m ­
del p u erto B, se d e b e en m as- b ia r d e p o s ic ió n los n ibbles
E n a b le D is p l
b c lr PD6,PORTD C o n fig u ro e l b i t 6 d e l p u e rto D
Figura 7.5 Diagrama de flu jo d e l lazo bset DDRD6,DDRD ( p i n 1 0 ) como s a l i d a y l o pongo en c e ro
RTS
princip al d e l program a
E n a b le D isp 2
b c lr PB1,PORTB C o n fig u ro e l b i t 1 d e l p u e rto B
bset DDRB1.DDRB ( p i n 1 4 ) como s a l i d a y l o pongo en c e ro
uno de los displays y en la fig u ­ RTS
E n a b le D isp 3
ra 7 .8 se m uestra su diagram a b c lr PB2,PORTB C o n fig u ro e l b i t 2 d e l p u e rto B
de flujo. En este código puede bset DDRB2,DDRB ( p i n 1 3 ) como s a l i d a y l o pongo en c e ro
RTS
o b se rv a r la in s t r u c c ió n b c lr E n a b le D is p 4
P B 1 ,P O R T B por m edio de la b c lr PB3,PORTB C o n fig u ro e l b i t 3 d e l p u e rto B
bset DDRB3,DDRB ( p i n 1 2 ) como s a l i d a y l o pongo en c e ro
cual se lleva un cero al bit PB1 RTS
D is a b D is p l
del registro P O R T B . bset PD6,PORTD C o n fig u ro e l b i t 6 d e l p u e rto D
bset DDRD6,DDRD ( p i n 1 0 ) como s a l i d a y l o pongo en uno
RTS
Para visualizar los datos en D isab D isp 2
bset PB1,PORTB C o n fig u ro e l b i t 1 d e l p u e rto B
los displays , se sigue el mismo bset DDRB1.DDRB ( p i n 1 4 ) como s a l i d a y l o pongo en uno
procedim iento que en el pro­ RTS
D isab D isp 3
yecto anterior; se carga el acu­ bset PB2,PORTB C o n fig u ro e l b i t 2 d e l p u e rto B
bset DDRB2,DDRB ( p i n 1 3 ) como s a l i d a y l o pongo en uno.
m ulad o r con el dato que corres­ RTS
D isab D isp 4
ponde a cada displayy este se en ­
bset PB3,PORTB C o n fig u ro e l b i t 3 d e l p u e rto B
vía por los pines 4 , 5, 6 y 7 del bset DDRB3,DDRB ( p i n 1 2 ) como s a l i d a y l o pongo en uno.
RTS
puerto B y luego se habilita el
display correspondiente. Figura 7.7 Código para la habilitación de los displays

Curso práctico sobre Microcontroladores a .á


Decodificador de teclado hexadecimal

Habilitar
display 1 PTD6 = 0 alto y b ajo ; el resu ltad o se lle ­ Si h a pulsado la tecla n ú ­
PT D 6 — ►Salida v a fin a lm e n te al p u erto B. m ero cero “0 ”, el p u e r to D
debe leer el núm ero 0 0 1 1 1 0 0 0 ,
Habilitar Para e je c u ta r el p ro c e d i­ de m an era que si se com para
display 2 PTB1 = 0 m i e n t o d e d e t e c t a r la te c la la lectura con ese n úm ero y son
PTB1 — »-Salida
p u lsad a en un m o m en to dado, igu ales, se p u ed e d e te rm in a r
se d eb e e n v ia r u n a señal alta q u e la tecla “0 ” fue la pulsada,
Habilitar
display 3 p or c ad a u n o de los p in es de fig u r a 7 .1 1 .
PTB2 = 0
PTB2 — ►Salida
las filas y leer el d a to re su lta n ­
te en el p u e rto D. Al activar u n a fila se debe
Habilitar
co m p arar el d ato leído con to ­
display 4 Por ejemplo, en el momento das las p o sib ilid ad es de cada
PTB3 = 0
P T B 3 — ►Salida en que se activa la fila 1 (con un u n a de las teclas, p or lo tanto
cero), estamos detectando si se ha lo s d a to s p a ra e s ta b le c e r la
Figura 7.8 Diagram a de flujo de la
habilitación de lo s displays pulsado una tecla entre el 0 y el 3. co m p aració n con cada u n a de
las teclas se a lm a c e n a n en una
U pdateD ispl tabla, fig u ra 7 .1 2 .
Id a PORTB Cargo e l acumulador con e l dato
and #$0F que se va a mandar por e l pu erto B
s ta PORTB lo enmascaro y lo lle v o de nuevo a l puerto. L a c o m p a r a c ió n co n los
Id a d a to D is l Cargo e l dato d e l prim er d is p la y
nsa in tercam b io de p o s ic ió n lo s n ib b le s d ato s d e la ta b la se d a p ara
ora PORTB a l t o y bajo y l o mando a l pu erto B.
s ta PORTB E sto se debe a que se u t i l i z a n lo s c a d a u n a d e las filas. D e m a ­
j s r En a b le D isp l b i t s más a lt o s d e l pu erto B n era q u e c u a n d o se lee el m is­
b c lr UPDATE1,dispStatus para mandar lo s datos
bset UPDATE2,dispStatus a l d is p la y . Luego m o n ú m e r o 0 0 1 1 1 0 0 0 pero
RTS h a b ilito e l d is p l y se muestra e l dato.
UpdateDisp2
se está v e rific a n d o la se g ú n -
Id a PORTB Ahora se r e p ite e l mismo proceso
and #$0F para e l dato d el d is p la y 2.
s ta PORTB Se carga e l dato co rresp ond iente PortB— *-Acumulador
Id a datoDis2 a l segundo d is p la y , se l e intercam bian
nsa de p o s ic ió n lo s n ib b le s a l t o y bajo
ora PORTB para que salgan por lo s p in e s adecuados
s ta PORTB d e l puerto B y finalm ente se h a b ilit a el
j s r EnableDisp2 d is p la y dos para m ostrar e l re s u lta d o . Enm ascaro acumulador
b c lr UPDATE2,dispStatus E sta s dos ú ltim as son banderas
bset UPDATE3,dispStatus que in d ic a n que se han a c tu a liz a d o .
RTS
UpdateDisp3
Id a PORTB E l procedimiento se repite para los displays
and #$0F tres y cuatro. De manera que a n la irMxación de
s ta PORTB estas subsutinas secuencialmente, se actualiza
Id a datoDis3 y h a b ilit a n cada uno de lo s d is p la y s .
nsa In tercam b io de n ib b le s .
Dato display 1— ►Accum
ora PORTB Operación ló g ic a OR con e l puerto B.
s ta PORTB E l re s u lta d o se queda en e l puerto B.
j s r EnableDisp3 Se h a b i lit a e l d is p la y t r e s ,
b c lr UPDATE3,dispStatus se a c tiv a n la s banderas
bset UPDATE4,dispStatus r e s p e c tiv a s . Acum or PortB
RTS Se s a le de l a su b ru tin a.
UpdateDisp4
Id a PORTB E s te es l a su b ru tin a de a c tu a liz a c ió n
and #$0F para e l u ltim o d is p la y .
s ta PORTB De nuevo se carga e l dato d e l r e g is t r o | Accum -— PortB |
Id a datoDis4 datoDis4, se enmascara, se intercambian
nsa lo s n ib b le s y e l re su lta d o acondicionado
ora PORTB se re to rn a a l pu erto B.
s ta PORTB Luego se h a b ilit a e s te d is p la y y
j s r EnableDisp4 se a c tiv a n la s banderas re s p e c tiv a s | Habilitar display 1 |
b c lr UPDATE4,dispStatus d el r e g is t r o d is p S ta tu s .
b set U PD A TEl,dispStatu s
RTS
Figura 7.10 Diagrama de flujo de la visuali­
Figura 7.9 Código de ia visualización de los datos en los displays zación de los datos en los displays

S . Á . Curso práctico sobre Microcontroladores


( Proyectos

d a fila del te c la d o , se d e b e sa­


ber q u e es u n “4 ” y n o un “0 ”.

En la figura 7 .1 3 se muestra
0 el código que hace la verificación
r 'r\ y\ y Fila 1
de los posibles valores de la tecla
oprimida para cada una de las fi­
las. Se hace una comparación con
los números establecidos en la ta­
* bla. Debido al poco espacio dis­
PTD 2 = 0 PTD 3 = 1 PTD 4 = 1 PTD 5 = 1 — ► PTD ponible, solo se ha colocado la
lectura de la primera fila.
PTD = 0 0 1 1 1 0 0 0
v De acuerdo a la tecla opri­
Columnas
mida se realiza la acción corres­
Figura 7.11 Dato leído a l pulsar la tecla “0"
pondiente. Si es la tecla de bo­
rrar, simplemente se borran los re­
TECLA0 equ *00111000 ;v a lo r del p u e rto p ara v a l i d a r l a t e c l a 0
TECLA1 equ *00110100 ;v a lo r del p u e rto p ara v a l i d a r l a t e c l a 1
gistros donde se almacenan los da­
TECLA2 equ *00101100 ; v a lo r del p u e rto p ara v a l i d a r l a t e c l a 2 tos de los displays. Si es un núm e­
TECLA3 equ *00011100 ; v a lo r del p u e rto p ara v a l i d a r l a t e c l a 3
TECLA4 equ *00111000 ;v a lo r del p u e rto p a ra v a l i d a r l a t e c l a 4 ro, esos registros se actualizan y si
TECLA5 equ *00110100 ; v a lo r del p u e rto p ara v a l i d a r l a t e c l a 5
TECLA6 equ *00101100 ; v a lo r del p u e rto p a ra v a l i d a r l a t e c l a 6
es un enter se establece el valor fi­
TECLA7 equ *00011100 ; v a lo r del p u e rto p a ra v a l i d a r l a t e c l a 7 nal de cada uno de los dígitos.
TECLA8 equ *00111000 ;v a lo r del p u e rto p ara v a l i d a r l a t e c l a 8
TECLA9 equ *00110100 ; v a lo r del p u e rto p a ra v a l i d a r l a t e c l a 9
TECLAA equ *00101100 ; v a lo r del p u e rto p a ra v a l i d a r l a t e c l a A
TECLAB equ *00011100 ; v a lo r del p u e rto p a ra v a l i d a r l a t e c l a B
C o m o sie m p re , recuerde
TECLAC equ *00111000 ; v a lo r del p u e rto p a ra v a l i d a r l a t e c l a C que el código fuente completo
TECLAD equ *00110100 ;v a lo r del p u e rto p a ra v a l i d a r l a t e c l a D
TECLAE equ *00101100 : v a lo r del p u e rto p a ra v a l i d a r l a t e c l a E está d isp o n ib le g ra tu ita m e n te
TECLAF equ *00011100 ; v a lo r del p u e rto p a ra v a l i d a r l a t e c l a F
CLEAR equ S0F ; v a lo r del puerto p ara v a lid a r l a t e c la c le a r ( F )
en nuestra página en la internet:
ENTER equ $0E ; v a lo r del pu erto p ara v a li d a r l a t e c l a e n te r C E) www. cekit. com . co
en el enlace de este curso.
Figura 7.12 Tabla que perm ite establecer qué tecla fue la que se pulsó

L e a T e c la F ila l y
se d e te c ta
Id a PORTD Cargo en e l acum ulador b s e t 0 ,N ew T ecla ; l a t e c l a 1. De nuevo se
and #*00111100 e l d a to d e l p u e r to D. y
a c t iv a n l a s
cmp #N0_TECLA Y em piezo a com parar con mov # 1 ,t e c l a ; b a n d e ra s y s e c a rg a
beq n o K e yl l o s d a to s de l a t a b l a . t e c l a con 1 .
cmp #TECLA0 S i a l com parar con e l RTS
beq is T e c la 0 d a to que i n d i c a que no is T e c la 2
cmp #TECLA1 h ay n ing una t e c l a o p rim id a b s e t l, w a s T e c la ; L a s b a n d e ra s que se
beq i s T e c l a l en e s t a f i l a , s e s a le p a ra y
a c t iv a n s ir v e n
cmp #TECLA2 ch eq u ear l a s ig u ie n t e . b s e t 0 ,N ew T ecla ; p a ra i n d i c a r que se ha
beq is T e c la 2 se compara con cad a número y
d e te c ta d o
cmp #TECLA3 p o sib le y se s a lt a a l a ru tin a mov # 2 , t e c l a ; una t e c l a o p r im id a . Es
beq is T e c la 3 c o rre sp o n d ie n te cuando se ha p a ra s e ñ a liz a c ió n
n o K e y l RTS e s t a b le c id o una ig u a ld a d . RTS ; en o t r a s p a r t e s d e l
is T e c la 0 program a.
b s e t l,w a s T e c la ; E s t a e s l a p rim e ra , se t r a t a is T e c la 3
b s e t 0,N ew Tecla ; de l a d e t e c c ió n de l a b s e t l,w a s T e c la ; E s t a es l a ú lt im a
«
3
t e c l a 0. y
s u b r u t in a en l a c u a l
mov # 0 ,t e c l a ; Se a c t i v a n l a s b an d eras b s e t 0 ,N ew T e cla ; s e d e t e c t a l a p u ls a c ió n
«
S r e s p e c t iv a s y
de l a t e c l a 3.
RTS ; y se carga e l r e g is t r o t e c la mov # 3 , t e c l a ; Se c a r g a t e c l a con e l
«
J
con 0. número 3.
is T e c la l RTS
b s e t l,w a s T e c la ; E s ta es l a r u t i n a cuando

Figura 7.13 Código de lectura y detección de la tecla oprimida

Curso práctico sobre Microcontroladores


Decodificador de teclado hexadecimal

Ensamblaje
IC1 Microcontrolador motorola 68HC908JK3
Figura 7.14 IC2 Decodificador de siete segmentos ánodo común, 7447
Conjunto de IC3 Regulador fijo de +5V a 1A, 7805
Q1,02, Q3 y Q4 Transistores de propósito general PNP, 2N3906
componentes
BR1 Puente rectificador circular de 1A, W06M
electrónicos y los DISPLAY1 a DISPLAY4 Displays de siete segmentos ánodo común
accesorios que se C1 y C2 Condensadores cerámicos de 22pF - 50V
C3 Condensador electrolítico de 10OOuF - 25V
requieren para C4 y C6 Condensadores cerámicos de 0.1uF - 50V
ensam blar el C5 Condensador electrolítico de 22uF -16V
proyecto. XT1 Cristal de quarzo de 5MHz
R1 Resistencia de 10MÍ2-1/4W
R2 a R8 Resistencias de 220íi - 1/4W
R9 a R16 Resistencias de 1KíZ - 1/4W
6 S1 a S16 Pulsadores grandes de 4 pines, para circuito impreso
K-326 Circuito impreso CEKIT
Conector CA/CC
Base para circuito integrado de 20 pines
Base para circuito integrado de 16 pines

Paso 1
Con un alam bre delgado, instale y suelde los puentes
m arcados en e l circuito im preso. Figura 7.15

Instale y suelde e l regulador IC3, e l puente rectificador BR 1 y


e l conector de alim entación CA/CC. Figura 7.19

Paso 2
Luego instale y suelde las resistencias (16).
Figura 7.16

Paso 6
Instale los cuatro displays y los cuatro condensadores
cerámicos C1, C2, C4 y C6. Figura 7.20

Paso 3
Instale y suelde las bases o sockets para los dos circuitos
integrados. Figura 7.17

Paso 7
Instale e l crista l XT1 y los condensadores electrolíticos C3
y C5 observando su posición Figura 7.21

Paso 4
Instale y suelde los cuatro transistores PNP y las teclas que
form an e l teclado hexadecim al (16), observando su posición
correcta. Figura 7.18

Paso 8. Prueba final


Instale los circuitos integrados. A lim ente e l circuito con una fuente regulada o no, hasta de 9 voltios. Los displays se
deben activar indicando e l núm ero 0000. De no se r así, asegúrese de que los integrados estén bien ubicados y que los
niveles de voltaje estén correctos. Pulse alguna tecla y observe su visualización.

Curso práctico sobre Microcontroladores


SISTEMA DE DESARROLLO PARA
MICROCONTROLADORES
MOTOROLA MC68HC908JK3/JK1

Esta tarjeta de desarrollo para m icrocontro­


ladores M otorola perm ite editar, ensamblar,
sim ular y program ar los microcontroladores
6 8 H C 9 0 8 JK 3 , y así construir proyectos de
m anera sencilla, rápida y económ ica.
fiia de desarrollo para m icrocontroladores Motorola

El M C 6 8 H C 9 0 8 JK 3 es uno de los miembros seguridad interno del microcontrolador. El pulsa­


de la familia 08 de Motorola, caracterizados por su dor R S T está conectado a la señal de reset del m i­
bajo costo y alto desempeño. Dentro de las principa­ crocontrolador permitiendo el control por el usua­
les características de estos microcontroladores tene­ rio de esa función.
mos su memoria Flash (borrable y programable eléc­
tricamente), diez canales de conversión de analógico En el circuito de alim entación, se deben ins­
a digital (ADC) y, tal vez lo más importante, un blo­ talar preferiblemente reguladores tipo 7 8 L 0 5 y
que de memoria denominado R O M M O N IT O R , 78L 08 con encapsuladoTO -92, figura 8.3a, orien­
en el cual se almacena un programa de fabrica que tados com o se muestra en la figura 1. Si va a utili­
permite establecer comunicación con un programa zar reguladores con encapsulado T O -2 2 0 , figura
de computadora y hacer simulación, depuración y 8.3b , debe hacer los puentes correspondientes en­
programación del microcontrolador. tre el regulador y el circuito impreso, para que cada
uno de los pines quede ubicado correctamente.
Funcionamiento
El proyecto que construiremos consiste en un sis­ J3> J 4 y J 5 corresponden a tres de los pines
tem a de desarrollo que soporta los microcontrola­ del microcontrolador (P T B 3 P T B 2 y PTB1); para
dores JK 3 y el M C 6 8 H C 9 0 8 JK 1 (JK1) de la fa­ poder entrar al modo simulación-program ación,
m ilia 08 de M O T O R O L A . Este proyecto se pue­ ellos deben tener instalado el ju m p er respectivo. Si
de adquirir bajo la referencia K-218 de CEKIT. usted utiliza estos pines en su aplicación final, de­
berá remover los jum pers cuando arranque el sis­
El sistem a consta de u n program a (software ) tem a en modo aplicación ( J 1 en posición APP).
y de una tarjeta en la cual se inserta el m icrocon­
trolador con los elem entos básicos para su fun­ La tarjeta posee un conector en lín ea m acho
cionam iento; el d iagram a esquem ático de esta de 3 pines (C N 2 ), el cual perm ite la conexión
t a r je t a se p u e d e a p r e c ia r en la f ig u r a 8 .1 . directa a la P C (para sim ulación-program ación)
En la figura 8 .2 podemos apreciar una gu ía de y m ediante los conectores en línea C N 3 , C N 4 y
ensam blaje que nos servirá como referencia al ins­ C N 5 se tiene acceso a todos los pines del chip,
talar los elem entos. La tarjeta posee entrada para con los cuales puede conectar el sistema de desa­
alim entació n de C C , conversores de nivel T T I . a rrollo a su aplicación final.
R S -2 3 2 que perm iten conexión serial a una com ­
p utado ra para sim ulación y program ación, cir­ Adicionalmente, el sistema cuenta con un LED
cuito oscilador basado en cristal y un LED in­ verde conectado a uno de los pines del microcontro­
dicador de alim entación. lador (PD7) y un jum per que conmuta entre +VDD
y tierra conectado al pin PB5; mediante estos dos ele­
E\ju m p er J 1 selecciona el modo de funciona­ mentos ilustraremos el manejo de entradas y salidas.
miento. En la posición «PR O G » el sistema arran­
ca en m o d o S I M U L A C I Ó N - P R O G R A M A ­ En el m o m en to del ensam blaje, tenga la pre­
C IÓ N , perm itiendo m ediante el programa insta­ caución de soldar prim ero los com ponentes de
lado, hacer simulación y posterior programación bajo nivel, tales com o resistencias y condensado­
del chip. J 1 en la posición «APP» permite que el res; después puede co ntinuar con los transistores
sistema arranque en modo aplicación; es decir, eje­ y dem ás elem entos. Al finalizar, rem ueva los ex­
cute el programa grabado por el usuario. cesos del fundente de la soldadura con algún lim ­
piador electrónico de contactos o con thinner, y
SW 1 es un interruptor tipo corredera de dos co nstruya el cable de interfaz con la co m p u tad o ­
polos y dos posiciones, que permite remover la ali- ra, haciendo los puentes com o se ilustra en la
mentación completa del sistema cuando el progra­ figu ra 8 .4 (en el conector D B 9 : el pin 4 unido
m a de la P C así lo solicite para validar el código de con el pin 6 y el pin 7 un id o con el pin 8).
4

" *
«4. Curso práctico sobre Microcontroladores
L Proyectos

S Z IS T M

v w -

W V -*

•*—w v

LSI
£Mr8060H890IAI e|OJo;o|/\|

Figura 8.1 Diagrama esquemático

Curso práctico sobre Microcontroladores


r_

istem a de desarrollo para m icrocontroladores Motorola

Orientación correcta de
los reguladores

J Doblar

Conector en
línea de 3
pines

Figura 8.2 Guia de ensam blaje de la tarjeta


Puente de
alambre
in te rn e t visitan do la p á g in a w w w .p em icro.com
(lin k : M o to ro la M 6 8 H C 9 0 8 K its). La d o c u ­
m e n tació n del m icro n tro lad o r y las notas de
ap licació n para el m anejo de todos los m ódulos
Pruebas iniciales de la tarjeta
internos del procesador, se pueden en co ntrar en
Para hacer las prim eras pruebas a la tarjeta, pue­
w w w .m o t-sp s.c o m . Para manipular este sistema,
de seguir el siguiente procedim iento:
tenga en cuenta el siguiente procedimiento:
1. Sin el m icrocontrolador JK 3, alim en te el cir­
1. Instale el programa ICSJL de www.pemicro.com.
cuito con un adaptador de 12V C C con ter­
m inación redonda. Tenga precaución con la
2 . Para v erificar el fu n c io n a m ie n to de la ta rje ­
polaridad: el term inal externo debe ser el posi­
ta con el p ro g ra m a I C S J L , co n ecte el c ir­
tivo (+) y el terminal interno, el negativo (-) o
c u ito al p u e rto serial d e la c o m p u ta d o r a
conexión de tierra.
(D B 9 ) y ejecu te el p ro g ram a I C S 0 8 J L Z De-
2. M id a el voltaje entre T P 4 (G N D ) y T P 3 (5V),
v e lo p m e n t K it > W in I D E D e v e lo p m e n t
debe ser alrededor de 5 V C C ; de lo contrario
E n v iro n m e n t. A llí se accede el seg u n d o ico­
revise el m ontaje del circuito. M id a el voltaje
no de iz q u ie rd a a d erech a ( I n - C ir c u it Si-
entre T P 4 (G N D ) y T P 2 (IRQ ), debe ser al­
m u la t o r (E X E 1)), f ig u r a 8.5 .
rededor de 8 V C C ; de lo contrario revise el
m ontaje del circuito.
3 . En ese m om ento se crea una nueva ventana
3 . R em ueva la alim entació n de la tarjeta y colo­
de configuración fig u ra 8 .6 , en la cual se d e ­
que el m icrocontrolador JK 3 en la base.
ben establecer las siguientes opciones:

Software de desarrollo
El p ro gram a m e d ia n te el cu al se p ued e hacer
* T arget H ard w a re Type
ed ició n , en sam b laje, sim u lac ió n , p rogram ación
• Closs III - Vustom Board (no ICS) with
y debu g es gratuito y puede ser descargado de la
MON08 serialport circuítry built in.

* P C serial port co n figu ratio n


• Port: COM1(Com2) Baud: 9600
Entrada

Tierra
* T arget M C U S e c u rity bytes
Salida
Entrada
Salida • Attempt All K now security codes
Tierra
in order
Figura 8.3a Encapsulado TO-92 Figura 8.3b Encapsulado TO-220

S .A . Curso práctico sobre Microcontroladores


Proyectos

DB9 cer u n a co m unicación satis­ través d e u n c o n ju n to de


factoria. El program a em pie­ c o m a n d o s e s ta b le c id o s,

I za a ensayar diversos códigos


de seguridad, y antes de en ­
c u y a lista se e n c u e n tra en
el m e n ú de a y u d a .
8
sayar cada uno, se debe apa­
7 ! gar y encender la tarjeta me­ 5. Para ilustrar la evaluación del
6 d ian te el interruptor S W l , bardiuare con la ayu d a del
CN1 CN2 CN3 p a r a lo c u a l el p ro g r a m a software IC SJL Z , el circuito
m uestra una nueva ventana provee una salida (LED D2)
Figura 8.4 Cable que se conecta a l que irídica el m o m en to en y u n a entrada (Jumper J2 ).
puerto se rial de la PC para com unicarse que esta operación se debe C o lo q u e y rem ueva el ju m ­
con la tarjeta realizar, figu ra 8.7. p e r } ! de la tarjeta. Este cam ­
bio debe verse reflejado en
En caso de problem as de co­ 4. Al obtener comunicación con la zona de puertos del pro­
nexión, active el recuadro: el circuito, debe aparecer en gram a (esta es la forma como
Ign ore secu rity fa ilu r e a n d la pantalla una nueva inter­ se p ued e evaluar que las en­
en ter m on itor mode. faz en la que se tienen venta­ tradas de su proyecto funcio­
nas d e p u e r t o s , z o n as de nen a d e c u a d a m e n te ). Para
C o n la c o n fig u ra c ió n d is ­ m em oria y p ro g ram a en e n ­ evaluar la salida acceda a la
p u esta de esta m a n e ra , se s a m b la d o r ( assem bler ), el línea de com andos del pro­
puede proceder a establecer cu al p u ed e ejec u tarse paso gram a (inferior izquierda) y
c o n ta c to co n esta ta rje ta , por paso en la tarjeta, f i g u ­ m o d i f i q u e el e s t a d o d el
haciendo clic en C ontacttar- r a 8 .8 . U n a d e las p r in c i­ p u e r t o D d e l M C U p in
g e t w ith this settings... pales h e rra m ie n ta s con que P D 7; para esto debe poner
c u e n ta este e n to rn o de si­ el pin com o salida colocan­
Ahora debe iniciar el proce­ m u la c ió n es u n a ventana de do en el registro D D R D del
so de verificación del código c o m a n d o s, en la cu al usted M C U el valor $ 8 0 (hexade-
de seguridad interno del m i­ p u ed e d a r ó rd en es e inte- cim a l), (com ando: D D R D
crocontrolador para estable­ r a c tu a r co n el p ro g ra m a a 80) y a co ntin uació n, el va-

Ensamblar/compilar

Simulador en el circuito

Programador

Depurador en el
circuito Ventana de edición del
programa
Simulación
; rrto rn

<t» d o m y . is r ; noc C o n v e r s ió n C o n p le t * V e c to r

Figura 8.5 Entorno Win IDE


*
Curso práctico sobre Microcontroladores S i.
— ~ -
Tyi»
P Q *«sl •ICS B o e d pocetsot rw u fc d P o o tto «M Ja ln n C4bfe com edien (Pow v co n *o fcd *a («n d iD rR fare)
r Ü «m I •IC S 8oa«d w ftnul ptocMMV Compeled lo l«ge< vw MON08 Cotte (MONOS •H o powai conkofl
Seleccionar class CIsm U -Cintera B o a d Ino IC S) w íh MONOS v m u t port c*cuby b u t •> INOOTR •N o poww corftoft
P D *M N O ntcra B o a d |«o IC S) vMh MON08 t t n é pod c*o jh y «nd «kfeontf « A n e » * e r o * tu * «

PC Señal Po»« Conñ^jiaten

Seleccionar puerto serial |CÓM2 3 Baud f% 00 Baud


Configurar a 9600 baudios
Target MCU$eo*d>b><e:
Esta opción permite . * C f a t e * ¿ t if r ¿ ü n t o p e a d * r A lte p t FF-FF-FF-FF-FF-FF-fFFF (Fto » » c u tfy r d
r A fe a p t FF-FF-FF-FF-FF-fF-FF-FF (B la rt D evee) P A n o * * FF-FF-fFFF-FF-fF-FFfF (Fro * m cu* .» )
buscar el código de
P A M n p i FF F F - F F f F-FF-FF-FF-FF (From m c u * n ) WecenÜ P Alten*) FFFF-FF-FFFFFFfF-FF (Fxm u c w * .n )
seguridad P Alteme* F F F F fF fF F F F F - F F - F F (Fiom w cuH y n ) P Alten** FF-FF-FF-FFFF-FFFF FF (F io » u o r t y n )

P Alten** FF-FFFF-FFFF-FF-FF-FF (Fia n se cu ty re) P Alien*- (XtOKCKXHXKOOOOO fBter* c r « o » devxei|


P Alteo©* FF-FF-FF-FF-FF-FF-FF-FF (Fiom M c u k p n ) P U n e |CÜ-<XKX)O0(»(X>CO-00 Lo «JtK raS1 3

P Alten** F F F F F F F F F F F F F F F F (F r o m i« c u * re) r IGNO RE wccety la á M and ante* m o r é a mofe

S ta t e U iM b fc l o o p o n C O M I. C h e ck *PC S e tiM P o rt C o n fig u rte » '


0 IC S H « 4 * « e topbacfc detectad 4 D e w * ontond monto) mode
1 O evcnechondcom eM cuiybttos 5 R « e t * m Pw w rO n Ra»at
2 Devic# echood a l *ecxrty t$*ej 6 ROM N ac é t e la tu vtacu ad t --------------
2 O nvee u g n S e d monte* moda w*h a bieak

T Show d w dofog batata attencfcng lo cortad the (argel 68HC06 botad


Establecer comunicación
con la tarjeta — Contad (argel wrth Ihnte taUingt SIM ULAÍIQ N ork»

F/g ura 8 .6 Entrada a I program a sim ulador del sistem a y configuración de la tarjeta

do: P O R T D 8 0 ). Después T I O N o n l y (esta s im u la ­


de la ejecución de estos dos ción es reco m en d ab le para
com andos, el LED D 2 debe zonas de p ro g ram a que no
encenderse, indican d o la co­ tengan in teracció n directa
nexión adecuada (de m an e­ con el hardware).
ra sim ilar se pueden evaluar
Figura 8 .7 Ventana de señalización de
las dem ás salidas del proyec­ Programa ejemplo
encendido y apagado de la tarjeta to en particular). El e je m p lo q u e ilu s tra m o s a
c o n tin u a c ió n co n siste en un
lo r del p in en el registro 6. La sim ulación de programas sencillo p ro g ram a que varía la
P O R T D del M C U en el es­ p u e d e h a c e r la s in la c o ­ frecuencia de oscilación de en ­
tado requerido (para nuestro n e x ió n del c ir c u ito , acce­ cen d id o del LED D 2 , d e p e n ­
caso en “ 1” lógico), (co m an ­ d ien d o al botón S I M U L A - d ien d o del estado de la entra-

P » E-CU . t fr * ~ r t i *

¿ u i FkM ‘ElUól -Mol *1 ?1


Comportamiento de
las variables

Estado de la CPU
M apa de la memoria

fwnktm 1
lIR A C f
u n im t W lle p d
C C Ii xx u n in lt ia l U íd
Ventana de estado cc» XX u n in t lia liz e d
IC B3 XX u n in U ia lÚ v d - Ventana del código
t e BU «X u n in it ia liz e d
tc r. ;SE
XX u n ln itia liífd
ic e * XX u n in tt id li/ r d
ICO/ (X u n in lt t a lla r d •
IC U8 XX m lA it la ilz M
* « r |M»rlt» IC BV XX u n t n ilt d li/ e d
▼<n pite id 1
IC Bfl XX u n in ilíd liz e d
( to o XX u n in lU d lD M
rco c XX u n t n it ia li/ p d
Entrada de comandos * * -y
ce oe. nx u n ln it io li/ P d
I
11 TeUt?18 Taxi B r* « *f*3 Ir— ,

Figura 8.8 Entorno del program a de sim ulación


4
( f á t W s é. Curso práctico sobre Microcontroladores
Proyectos

S In c lu d e ‘ j ! 3 r e g s . i n c ’ ¡A r c h iv o de d e f i n i c i ó n de r e g i s t r o s da J 2 (ju m p er puesto, m eno r


FLASH_START_JK3 equ SEC00 ¡ d i r e c c i ó n de i n i c i o de l a f l a s h
frecuencia de oscilación), fig u ­

u_
U_
U_
LU
R ESET .V EC equ ¡ d i r e c c i ó n d e l v e c t o r de r e s e t
¡ d e f i n i c i ó n de b i t s
COPD equ 0 ¡ b i t de C0NFIG1 p a ra h a b i l i t a r /
ra 8 .9 . Para la p ro gram ació n
¡ d e s h a b i l i t a r e l watchdog d e l M C U co n el p r o g r a m a
PD7 equ 7 ¡ b i t de co n ex ió n a l a s a l i d a (L e d D2)
PB5 equ 5 ¡ b it de conexión de l a entrada (ju rp e r J2 ) ejem p lo , utilice los pasos que
o rg FLASH_START_JK3
S ta rt:
siguen a co n tin u ació n .
Rsp ¡ i n i c i a l i z a s ta c k p o in t e r
B s e t C0PD,C0NFIG1 ¡ d e s h a b i l i t a e l COP (w a tc h d o g )
B sr In it _ L e d ¡ r e a l i z a lla m a d o a l a s u b r u t in a de 1. Digite el program a en el ed i­
¡e s ta d o i n i c i a l d e l le d
LoopD:
tor del W inID E .
B r s e t P B 5 ,P O R T B ,H a lfl ¡ v e r i f i c a e l e s ta d o de l a e n tr a d a J2
Lda #255T ¡ca rg a e l AccA con e l v a lo r 255 decim al
B ra D ly l 2. E nsam ble el p ro g ra m a h a ­
H a l f l : Lda #70T ; J 2 co lo c a d o . Se c a rg a e l AccA con un
¡ v a l o r menor
c ie n d o c lic en el p r im e r
D ly l: B s r D e la y ¡in v o c a s u b r u t in a de r e ta r d o icono (de izq u ierd a a d e ­
Deca ¡d ecrem en ta e l AccA
Bne D ly l recha) de la b arra de h erra­
B s r Led_0N ¡e n c ie n d e Led D2
B r s e t P B 5 ,P 0 R T B ,H a lf2 ¡ v e r i f i c a e l e s ta d o de l a e n tr a d a J2
m ien ta s, f ig u r a 8 .1 0 .
Lda #255T ¡c a rg a e l AccA con e l v a lo r 255 decim al
B r a D ly2
H a l f 2 : Lda #70T ¡ J 2 c o lo c a d o . Se c a r g a e l AccA con 3. Acceda el tercer icono del pro­
un ¡ v a l o r menor
D ly 2 : B s r D e la y ¡in v o c a s u b r u t in a de r e ta r d o
g r a m a W in I D E D evelop-
Deca ¡d e cre m e n ta e l AccA ment environment (program-
Bne D ly2
B s r Led .O FF ¡ap ag a Led D2 m er (EXE2)).
B r a LoopD
Led .O FF
B c l r PD7,PORTD ; PD7 en 0 4. A ntes de grab ar c u a lq u ie r
RTS
Led_0N: program a en la m em oria del
B s e t PD7,PORTD ¡PD7 en 1
m ic r o c o n tr o la d o r , éste se
RTS
¡s u b r u t in a de r e t a r d o b á s ic a debe borrar. Al en trar al soft -
D e la y
Id h x #$FFFE ¡carga re g istro doble H:X con v a lo r i n i c i a l ware de program ación debe
Loopl A ix #-1 ¡d ecrem en ta e l r e g i s t r o H :X
Cpx #0 ¡com para con 0
escoger entre el modo borrar
Bne Lo o p l ¡ s i no ha lle g a d o c o n tin u a e l re ta rd o y el m odo programar. Esto
RTS ¡ r e t o r n a d e l llam ad o
In it .L e d : se logra haciendo clic en el
B s e t PD7,DDRD ¡e stab le ce e l pin PD7 d el MCU como s a lid a
m e n ú dev ice> algo ritm , fi­
B c l r PD7,PORTD ¡apaga e l le d D2
RTS ¡ r e t o r n a de l a s u b r u t in a gu ras 8.11 y 8 .1 2 .
Org RESET.VEC
Dw S t a r t ¡ a l d a rs e r e s e t s a l t a a S t a r t
5. Borrar el M C U presionando
Figura 8 .9 Programa ejem plo el icono 6 (de izquierda a de­
recha el icono con borrador
w tx ic f x iirü ü ji3 w :
sobre el chip), figura 8.13.
Botón para
ensamblar
W lic jtlM i s m m t to
6. C arg u e en m em oria el algo­
; A p p lic a tio n ru n n in q on
O N tra tfs in t e r r ritm o de program ación del
c a tió n In f o iM t io M an T i l .MCSflftJI¿\ D f M O JI 3 ASM M C U JK 3 ( 9 0 8 J K 3 . 0 8 ) ,
; ( 1) o » tp « t coNparr
Cwram f * r UCSnaJlTNDf MOJI 3 ASM
* *•*- t i * a p p ll
. ana i s c o n tin
Ventana que indica figu ra 8.14.
Botón para lo u t in r . Ih * in t a r Pa«i 7 : Auemblmg
que se está llevando
; ( ? ) 4ro**í«»es t h r t e « N
acceder al entorno i an a a n ax iau n
a cabo el ensamblaje
th r fr In it ia lly 153
de programación 7. Especifique el archivo que va
AJ :/í ‘
a programar m ediante el ico­
.

no 7 (de izquierda a derecha,


Figura 8.10 Ensamblaje del program a
el icono con disquete), figura

Curso práctico sobre Microcontroladores «j


r J
ma de desarrollo para m icrocontroladores Motorola

Antes de program ar un
microcontrolador Motorola,
éste se debe borrar Al entrar
al entorno de programación se
debe seleccionar el algoritmo
que se va a utilizar siendo las
opciones: borrar y programar
Haciendo clic en este menú
elegimos el tipo de algoritmo.

E s ta v e n ta n a de estado
informa qué algoritmo se
ha cargado y las acciones
que se ejecutan sobre el
microcontrolador.

Figura 8.11 Entorno de program ación

8.15. Los archivos binarios que se graban en el


microcontrolador poseen la extensión s i 9. E
i l p l ’io o itW M n a n u A U iiM t lh m l o U s o *

6 u K *e r, | Jo 0 9 f c 3 s j o jliF t t J
¿908*10*
8. Programar el chip presionando el icono 8 (de - g a o e jo o *
49O6J3O0P
lJO.
izquierda a derecha el icono de rayo sobre el
chip) , figu ra 16.
y rr < ^ eje » c W | j( 3 o a id

A iih r^ n A jo a
9. Para ensayar el program a en la tarjeta, cambie
el ju m p er J 1 de la posición 2 -3 (PROG) a la
posición 1-2 (APP); desenergice y energice la
E ste es el algoritm o que se debe
tarjeta nuevam ente para proporcionar un reset. s e le c c io n a r p ara borrar el m ic ro ­
controlador. Es el primer paso en la pro­

1 0 .Para volver al m o do sim u lació n in-circu it y gramación.

p ro gram ació n , cam b ie J1 de la posición 1-2 Figura 8 .1 2 Selección del algoritm o que
(APP) a la posición 2 -3 (PROG), remueva se va a trabajar Inicialm ente e l de borrado
la alim e n tac ió n y conéctela nuevam ente.

Haciendo clic en este icono


damos inicio al proceso de
borrado. Si el algoritmo de
Este indicador nos dice que borrado no se seleccionó

se ha cargado el algoritmo previam ente, e ste icono


de borrado. estará desactivado para el
usuario.

. IM t lá lllU .
r r H T « A « f i l o f o r i M i tSKCOOOJis proeoo oor -4 K FLASH U N I .
;T M o So f o r V ro o ln * R l«n k O ^ l R f Seo J I J P IS O f o r p ro p r
Al momento de borrar, en V o to to * I .O O . aoloooo* 07/17/09

esta ventana se muestra el


a u m e n to p ro g re s iv o de
este procedim iento en el
microcontrolador.
Figura 8.13 Borrado del m icrocontrolador

S .A . Curso práctico sobre Microcontroladores


Proyectos

Una vez borrado el microcontrolador Haciendo clic en el icono del disquete,


lo puede programar. Para iniciar este puede cargar el archivo binario resultante
proceso debe cam b iar el algoritmo de ensam blar el código fuente, y el cual se
de borrado por el de programación va a g rab ar en la m em oria Flash del
seleccionando la opción que se mu­ microcontrolador. Los microcontroladores
estra en esta figura. A ella puede Motorola manejan un formato *.S19 para
acceder en el menú D e v ic e » C h o o s e sus archivos binarios. En este momento
algorithm . seleccione el archivo que v a a trabajar en
e s ta ve n ta n a , el cu a l tie n e el m ism o
nombre que el del código fuente.
F igura 8.14 Selección del algoritm o de
program ación

Haciendo clic en este icono


se entra a program ar el
Selección del archivo S19 microcontrolador

Verificación de que el micro­


Borrado del microcontrolador controlador ha quedado pro­
(Previa selección del algo— gramado correctamente. F ig u ra 8 .1 5 Selección del archivo binario
ritmo de borrado) que se va a grabar en el m icrocontrolador
Lectura de la memoria del
microcontrolador

»•« OlanW cfctck ring


i li i«yi i» 1*4119* Al hacer clic en el icono del rayo, el sistema graba
iU t f í W W 4 r * ti«r
el archivo S19 seleccionado en el paso anterior
dentro de la memoria del microcontrolador. Una
vez iniciado este proceso en la ventana de estado
se visualiza el porcentaje progresivo en que se
va cumpliendo el proceso de programación.

•Ventana de estado

F ig u ra 8 .1 6 Program ación del m icrocontrolador

El en torno I C S 0 8 JL Z De- A p r o v e c h a n d o la ROM A pesar de que dicha sim u ­


v elo p m en t Kit, proporcionado M onitor de estos m icro co n tro ­ lación dentro del circuito es un
g ra tu ita m e n te p or la em presa ladores, estos program as le per­ proceso q u e ejecuta le n ta m e n ­
Pemicro (www.pem icro.com ), y m iten hacer no solo la tradicio­ te cada u n a de las in struccio ­
sus program as de ed ició n , e n ­ nal sim u lació n fuera de línea, nes escritas en un program a, si
sam blaje, sim u lació n y p ro gra­ sin o t a m b ié n la s im u la c ió n lo com param os con un progra­
m a c ió n , c o n s t i t u y e n h e r r a ­ d en tro d el circu ito . C o n esta m a de e m u la c ió n , sigu e sien­
m ien tas m u y im p o rtan tes que poderosa característica pode­ do m u y i m p o r t a n t e p a ra el
pueden ser utilizadas por todos m os d e p u ra r rá p id a m e n te usuario, quien puede visualizar
los interesados en iniciarse en n uestros p ro g ram as, d etectar el fu n cio n am ien to de sus algo ­
la tecnología de los m icrocon­ erro res y m ir a r el f u n c io n a ­ ritm os al ser aplicados dentro
troladores M otorola. m ien to de la aplicación final. del circu ito externo.

& *
o ntro la d ore s d m / c ir : 73
Sistem a de desarrollo para m icrocontroladores Motorola
- -___________________________________________________________________________________________________________________________________________________________________________A

Ensamblaje C a n t. R ef.
L IS T A D E M A T E R I A L E S
D e s c r ip c ió n
1 IC1 M ic ro c o n tro la d o r M C 6 8H C 9 08 JK 3 C P
Figura 8.17 1 IC 2 R e g u la d o r 7 8 L 0 8
1 IC3 R e g u la d o r 7 8 L 0 5
Conjunto de 1 IC4 C o m p u e rta 7 4 H C 1 2 5
componentes 1 01 T ra n s is to r NPN 2 N 2 2 2 2
1 Q2 T ra n s is to r PNP 2 N 2 9 0 7
electrónicos y los 1 D1 D io d o LED ro jo 3 m m
accesorios que se 1 D2 D io d o LED v e rd e 3 m m
1 D3 D io d o re c titic a d o r 1 N 4 1 4 8
requieren para C 1.C 8 C o n d e n s a d o re s e le c tro lític o s 2 2 u F /5 0 V
ensam blar e l 4 C 2 .C 3.C 6.C 7 C o n d e n s a d o re s c e rá m ic o s 0 .1 u F /5 0 V
C 4.C 5 C o n d e n s a d o re s c e rá m ic o s 2 2 p F /5 0 V
proyecto. 1 X1 C n s ta l d e c u a rz o d e 5 M h z
1 R1 R e s is te n c ia 1 0 M 1 /4 W
1 R2 R e s is te n c ia lO O h m 1 /4 W
6 R 3 .R 4 .R 5 .R 6 .R 1 3 .R 1 6 R e s is te n c ia s 10K I/4 W
Este proyecto constituye una im portante herram ienta para 1 R7 R e s is te n c ia 1 0 0 K I/4 W
2 R 8.R 10 R e s is te n c ia s 4 7 0 K 1 /4 W
cualquier persona que desee inciarse en la tecnología Motorola. 2 R 11.R 15 R e s is te n c ia s 3 .3 K 1 /4 W
Para e l ensam blaje de la tarjeta tenga en cuenta los siguientes 2 R 12.R 14 R e s is te n c ia s I 0 0 0 h m 1 /4 W
1 R9 R e s is te n c ia 2 .2 K 1 /4 W
pasos: 1 SW1 In te rru p to r c o rre d e ra d e 2 p o lo s 2 p o s ic io n e s
1 RST P u ls a d o r p e q u e ñ o p a ra c ir c u ito im p re s o
1 CN1 C o n e c to r CA/CC
1 CN2 C o n e c to r e n lin e a d e 3 pin e s
1 CN3 C o n e c to r e n lín e a d e 4 pin e s
Paso 1 C N 4. CN5 C o n e c to re s e n lin e a tip o S o c k e t d e 1 0 p in e s
Con un alambre delgado, instale y 1 J1 C o n e c to r p a ra ju m p e r d e 3 p in e s e n lín e a
4 J 2 .J 3 J 4 .J 5 C o n e c to re s p a ra ju m p e r d e 2 p in e s e n línea
suelde los puentes marcados en el 1 K -2 1 8 C irc u ito im p re s o CEKIT
circuito impreso , instale y suelde 5 TP 1.T P 2.T P 3.T P 4.T P 5 E sp a d in e s
1 C o n e c to r D B 9 h e m b ra n o rm a l c o n c a rc a s a
también las resistencias, las bases y 1 B a s e p a ra c irc u ito in te g ra d o d e 2 0 p in e s
los conectores en línea CN4 y CN5. 1 B a s e p a ra c ir c u ito in te g ra d o d e 1 4 p in e s
5 J u m p e rs
Figura 8.18 1m C a b le rib b o n d e 3 h ilo s

Paso 2
Paso 5
Luego instale y suelde los diodos
Instale y suelde e l pulsador de
LED, los transistores (01 y 02) y
reposición (RST) y el interruptor de
los dos circuitos integrados
corredera SW1.
reguladores de voltaje (IC2 e IC 3 ).
Figura 8.22
Figura 8.19 - ..i*

Paso 3 Paso 6
Instale y suelde los condensadores Instale y suelde e l conector de
cerám icos C2 a C7. alim entación CA/CC (CN1) y los
Figura 8.20 conectores tipo cerca J1 a J5.
Figura 8.23

Paso 4
Instale y suelde lo s dos Paso 7
condensadores e le c tro lític o s (C1 Instale y suelde p o r últim o los dos
y C8) y e l c ris ta l de cuarzo de 5 conectores en línea CN2 y CN3.
M Hz (X I). Figura 8.24
Figura 8.21

Paso 8. Pruebas finales


A lim entar la tarjeta m ediante un adaptador de 12 7C C y sin e l m icrocontrolador JK3. La m edida de voltaje entre TP4 y TP3 debe ser
alrededor de los 5V y entre TP4 y TP2 alrededor de los 8V. Instale e l m icrocontrolador e intente ejecutar e l program a de sim ulación
dentro d e l circuito configurando adecuadam ente la ventana de entrada ta l com o se explicó anteriorm ente.

*
K Í Í V il Curso práctico sobre Microcontroladores
PROGRAMADOR "ln Circuit" DE • -a-- •-í'/.V-f-vv •■■■■/y «
' -'xx •-.v ' '-■: :
> : - ••
:. : -otS --ÍW

MICROCONTROLADORES PIC

El desarrollo de sistemas electrónicos con m icro­


controladores requiere de tres pasos fundam enta­
les: escribir el program a, ensam blarlo para crear
un archivo binario, y un program ador que tome
ese archivo y lo alm acene en la m em oria del m i­
crocontrolador para que éste lleve a cabo las ta­
reas dispuestas por el usuario. En este proyecto se
construirá un program ador de m icrocontrolado­
res PIC y se analiza paso a paso su m anejo. En
general este procedim iento es m u y sim ilar para
cualquier program ador de cualquier marca.
J l * / y '
C urso p rá c tic o so b re M ic ro co n tro la d o re s é m K iT ,: 75
r
ló g ra m a d o r “ In Circuit” de m icrocontroladores PIC

Características base tipo ZIF en la cual se inserta el P IC en el


• Interfaz interactiva m o m en to de program arlo, luego deben retirarlo
• A cepta la variedad de microcontroladores del program ador e insertarlo dentro del circuito.
PIC 1 6 C x x y l 2 C x x
• L ectura y escritura de archivos en formato Para utilizar este program ador debe tener a
IN 8H E X disposición el prototipo m ontado, en el cual se
• C h eq ueo de m em o ria vacía co n ecta la tarjeta p ro gram ad o ra, tal co m o se
• Lectura de m em o ria de program a y de la p a ­ m uestra en la fig u ra 9.1.
labra de configuración
• P ro g ram ac ió n “in circu it”, o d e n tro d e la El diagrama esquemático del circuito lo puede
a p lic a c ió n apreciar en la figura 9.2; allí puede ver un microcon­
trolador PIC16F84 quien controla la comunicación
Este es un p ro g ra m a d o r q u e p u ed e c o n s ti­ con la computadora y todas las funciones de los de­
tu irse en u n a im p o r ta n te h e r r a m ie n ta d e tra ­ más circuitos. Tenga en cuenta que este microcon­
bajo en c u a lq u ie r eq u ip o de la b o ra to rio o de trolador es pane fija e indispensable del circuito, su
d esarro llo electró n ico . D en tro d e las esp ecifi­ programa debe ser entendido como un jirmware , el
cacio n es d adas p or M ic r o c h ip para la p ro g ra ­ cual no debe ser alterado por el usuario.
m a c ió n de sus m icro co n to ro lad o res, se d e s ta ­
can dos técn icas d e p ro g ra m a c ió n : la p aralela Los m icrocontroladores P IC que se van a
y la serial o “in circu it ”, es decir, d e n tro del program ar pueden conectarse de dos m aneras: la
circ u ito o a p lic a c ió n final. prim era es a través de las bases m aqu in ad as pre­
sentes en el circuito impreso y la segunda es co­
U n p ro g ram ad o r “in circuit ” se caracteriza nectando la tarjeta al prototipo m ed ian te un co-
p or en viar el p ro g ram a d irectam e n te a la m e­ nector de seis pines, cada uno de los cuales debe
m o ria del P IC en c u a lq u ie r sitio en d o n d e se ser conectado con el P IC objetivo, así:
en cu en tre u b icad o ; de esta m an era un aparato
q u e se ten ga p reviam en te p ro gram ad o dentro 1. M C L R . D ebe conectarse al pin de reset del
d e a lg ú n circu ito , p ued e reprogram arse sin n e­ m icrocontrolador que se va a programar.
cesidad de rem overlo del sitio d o n d e hace su 2. DATA. Por este pin van los datos de progra­
trabajo. Así el P IC p ued e estar soldado en for­ m ación y debe conectarse al pin R B 7 del PIC
m a p erm a n en te (sin base), sim p le m e n te conec­ objetivo.
tando a d e c u a d a m e n te la tarjeta p ro gram ad o ra 3. C L O C K . Es la señal de reloj, debe conectarse
al m icrocontrolador. al pin R B 6 del P IC que se va a programar.
4 . G N D . Es la tierra del program ador, debe co­
Esa es la principal diferencia con respecto a nectarse a la tierra del prototipo.
los programadores “ST A N D A L O N E ”, indepen­ 5. G N D . Tierra.
dientes o paralelos, los cuales cuentan con una 6 . V C C . Salida de 12V.

Prototipo

Figura 9.1 Esquema de conexión del program ador

m iK iT , A. Curso práctico sobre Microcontroladores


( Proyectos

saura 81

3Q/0VAQI

Md9l3ld
101

Figura 9.2 Diagrama esquemático del program ador “in Circuit”

Curso práctico sobre Microcontroladores < S E m T .A .


(§) |PRQ GR AMADOR P IC ‘ IN C[RCUIT’
REG I 78
BRl
U06M

REG a
!
7805 Reguladores de voltaje
1—T

DI
Conector D B9 hacia Conector con los puntos
el puerto serial de de salida hacia los
la computadora microcontroladores para
programación In C ircuit

Tabla señalizadora de los


pines para programación
ICI In C ircuit
P [C 16 ^8 4

Diodos LED indicadores de. Microcontrolador


las operaciones que se " PIC16F84 con el
hacen sobre el microcontro­ firmvzare de la tarjeta
lador (lectura, escritura) ■

Base maquinada para


microcontroladores de
28 y 40 pines Base maquinada para
' microcontroladores
de 8 y 18 pines
Bases maquinadas
auxiliares para programar
los microcontroladores
dentro de la tarjeta

C E K IT

F igura 9 .3 Guía de m ontaje del program ador

En la fig u ra 9 .3 observe la g u ía de m ontaje 9 6 0 0 bps; para esto se debe hacer una conexión
de la tarjeta que sirve de m odelo para instalar como se muestra en la figu ra 9.4 , en donde el pin
ad ecu a d am en te todos los co m p on entes. El im ­ 2 de conector viene del pin 14 (Tx) del M A X 232
preso cu en ta con dos bases: una para los m icro­
controladores de 8 y 18 pines y otra para los
m icrocontroladores de 28 y 4 0 pines; cada base
cu en ta con marcas para in d icar la correcta posi­
ción en que se deben u b icar los P IC para su
ti
p ro gram ació n . Las bases se h an in sta lad o para
b rin d a r la p o s ib ilid a d de p ro g ra m a r tam b ién
8
d e n tro de la tarjeta y no sólo m e d ia n te el co ­ GND r r
n ecto r de salida.

Este programador funciona a través del puer­


to serial de una com putadora a una velocidad de
Figura 9.4 Conexión con la computadora

Curso práctico sobre Microcontroladores


Proyectos

> progra /C O M I
Si la tarjeta no se encuentra co­
> ERROR, PRO GRAM AD O R NO RESPONDE! nectada al puerto serial o el /zr-
mware ha sido alterado, no se es­
F igura 9 .5 A l igual que en cualquier program ador com ercial tablecerá comunicación y el pro­
convencional, s i existe algún problem a en la detección de la grama no se ejecutará, figura 9.5.
tarjeta, e l program a no funcionará

Si la conexión entre la P C y
y el pin 3 del conector viene del tengan los sistemas operativos la tarjeta, al igual que el cable
pin 13 (Rx) del M A X 2 3 2 . Sin D O S , W in d o w s 3.1/95/98 ó serial están bien instalados, el
embargo, para que usted se des­ O S/2; y en m áq u in as que po­ firm w a re del microcontrolador
preocupe de esta conexión, ella sean procesadores Intel del 386 podrá llevar a cabo un proceso de
ya viene hecha en el D im B 9 ins­ en adelante. reconocimiento [hand-shaking) y
talado en la tarjeta; de esta m a­ podrá entrar a la pantalla inicial
nera el cable de conexión entre Para instalar el programa sólo del programa, figura 9.6.
la tarjeta y la com putadora es un basta copiarlo en alguna carpeta
cable D B 9- D B 9 normal conec­ del disco duro de la computado­ En esta pantalla se indican:
tado uno a uno. ra; no altera ningún registro del el PIC actualmente seleccionado,
sistema operativo y de la misma el contenido del buffer&z memo­
Instalación del software manera, para retirarlo sólo basta ria (si éste aún no se ha cargado
y guía rápida de borrar el archivo. aparecerá el aviso de “no defini­
programación do”), la palabra de configuración
El software del program ador está Para ejecutar el program a y un m enú de opciones. Para se­
escrito en lenguaje C para D O S debe digitar en el símbolo in d i­ leccionar cada una de las posibi­
y el ejecutable es un archivo por cador {prompt) del DO S: lidades de este m enú, basta con
lotes ( batch ); debe ejecu tarlo teclear la letra que se encuentra a
desde un prom pt o línea de co­ s p rogra /com í (o c o m 2 , se­ la izquierda de cada opción entre
m a n d o s D O S . El p ro g r a m a g ú n el p u e rto d o n d e lo te n g a paréntesis; analicemos cada uno
puede trabajar en m áquinas que c o n e c ta d o ). de los ítem de este menú.

Configuración del
existe ningún archivo
puerto serial
hexadecimal cargado en
« 3 W 1 A W * C E X IT - r r j/ D K .
Í C Í A c e r c a de
memoria
PIC actualmente seleccionado. hirrto s e r ia l -: CflHl.9600.0,1 .N
u le a c t u a l. . : 16ER4
El programa inicia por - p .,la b ra A r c a n t . x x ll lili 1111 1111
Conten!*» del f>.ffer NO DLTIMIDO AQUI
defecto con el PIC16F84 Con la tecla R se lee el
1*1 LEfB PIC # ....................... ..
( I I CAMAR AKU1U0 1N8HEX microcontrolador
Menú principal (T I SELECCIOHAft T IP O DE P IC
IH I PANEL DE PM if.KAS D LL HAKDUAflE
IK 1 D EU W 8 ILIT A R PROTECCION DE CODIGO

Con la tecla L se carga un


P r o g r a m a d o r ln C irc u it
■ archivo hexadecimal

CEKÍT S. A desde el disco

Curso práctico sobre Microcontroladores


• U t t C lW E «1 am ñ H M l 0 ( K C 1 PA PA CA L1R : Con la tecla T se selecciona
el microcontrolador que se
va programar

F igura 9 .6 Si no existe ningún problem a en las conexiones,


e l program a inicia su operación

Curso práctico sobre Microcontroladores é s n i r :


rogram ador “ In Circuit” de m icrocontroladores PIC

Referencias de los distintos ELEGIDO -> 16C924 n O D R Ift DE 11000


EL t i ™ DE flC ELEGIDO

microcontroladores a t ir o
u tiro
D I flC
DE PIC ELEGIDO
-> I6C923
-> 16F84
KD10RIA
H D W K IA
flD W R IA
DE 40%
DE = 1024
DE ■ 512
<1000
<0400
<0200
ELIG ID O -> 1&FB3
t i tiro DE PIC -> 16C04 n cn o n iA d e = 1024 <0400
ELEGIDO
aceptados por la tarjeta. A a tiro DE r íe -> 16C77 n O O B IA DE = 8192 <2000
n nWI DE flC ELEGIDO
>1DV)RIA DE 8192
i i u ro DE PIC ELEC ItftJ - y ioC76 <2000
través del teclado se van a t ir o DE flC ELEGIDO -> 16C74B nETIORIA DE - 409b <1000
DE flC ELEGIDO HEJIORIft DE * 4096
u. uro -> 16C74A <1000
mostrando secuencialmente t i u r o DE PIC ELEGIDO -> 16C74 H D « R I« DE * 4096 <1000
a t ir o DE flC ELEGIDO
a Tiro d e fie ELEGIDO
-> 16C738
-> 16C73A
HEHORIA
n D W R IA
DE : 4096
DE * 4096
<1000

las distintas posibilidades. <1000


n Tiro DE PIC ELEGIDO
n tiro DE flC ELEGIDO
-> 16C73
-> 16C728
o t o r ia
n c n iR iA
d e * 4096
DE = 2048
<1000
<0600 Ju sto en frente de cada
a tiro DE flC ELEGIDO -> 16C7Z HEnORIA DE = 2048 <0000
n Tiro DE PIC ELEGIDO -> 16C71I n c n o R in de = 1024 <0400 microcontrolador puede
n . Tiro DE flC ELEGIDO -> 16C710 n m iR iA de = 512 <0200
visualizar el tamaño de su
a
a t ip o DE flC ELEGIDO
Tiro DE PIC ELEGIDO
a Tiro OE PIC ELEGIDO
-> 16C71
-> I6C67
nEHO RiA
HEnORIA
de * 1024
DE * 0192
<0400
<2000

EL Tiro DE PIC ELEGIDO


-> 16C66 n E W R IA DE - 8192 <2000
<1000
memoria de programa.
En esta línea tiene el tipo de II uro DE PIC ELEGIDO
-> 16C6SB n in o R iA DE = 4096
<1000
-> 16C6SA HOTO* 1A DE * 4096
a T iro DE PIC U EC ID O
-> 16C6S HDWR1A DE * 4096 <1000
PIC seleccionado en el n . t ip o DE PIC ELEGIDO -> 16T64A h c t o r ia d e * 2048 <0000
a t it o DE flC ELEGIDO -> 16C64 K D W R IA DE < 2 0 4 8 <0000
momento. Haciendo clic en la a uro DE PIC ELEGIDO -> 1GC638 n rn o R iA d e * 4096 <1000
a Tiro DE PIC ELEGIDO
a Tiro DE PIC ELEGIDO -> 160.3 n o m R iA d e « 4 0 9 6 <1000
tecla e n te rlo seleccionamos _ a tir o DE PIC
ELEGIDO
-> I6C622A
-»• 16C622
H O IO RIA DE 2048 <0800
<0000
>•a Tiro DE PIC H D W R IA DE ■ 2048
ELEGIDO -> 160.210 K D W R IA DE 1024 <0400
definitivamente para trabajarlo
con la tarjeta.

F igura 9 .7 La selección del tipo de PIC que se va a program ar se hace a través de las flechas d e l teclado, moviéndose hacia arriba o
hacia abajo hasta llega r a l PIC seleccionado; en ese momento, se debe presionar la tecla ENTER

Seleccionar el tipo de PIC Leer PIC


Este p ro g ram ad o r p ued e trab ajar con toda la Si se teclea la letra R, la tarjeta leerá el contenido de la
fam ilia de microcontroladores PIC 16XXX. C on memoria del microcontrolador objetivo que se en­
esta se opción selecciona el P IC específico con cuentre conectado a la tarjeta. Este proceso se demo­
el cual se va a trabajar, fig u ra 9 .7 . Al presionar ra unos cuantos segundos, al cabo de los cuales apa­
la tecla T , sale u n a lista de todos los P IC dispo­ rece un nuevo menú, donde se ven nuevas opciones,
nibles. Para esa selección, debe buscar el d isp o ­ figura 9.8. La lectura del programa del circuito inte­
sitivo correcto con las teclas de flecha h acia arri­ grado ha quedado almacenada en un espacio de me­
ba y flecha h ac ia abajo o las teclas R e p á g . y moria llamado imagen de entrada. Entre las nuevas
A vpág. En esta p an talla aparece a la izquierda opciones que aparecen se encuentran la de abrir un
el tipo de P IC y a la derecha el ta m a ñ o de la archivo de disco, la de escribir en el PIC y establecer
m em o ria de p ro g ram a de cada uno de ellos. Los la palabra de configuración. Cuando llevemos a cabo
tipos de m icrocontroladores P IC que p ued e tra­ este procedimiento, en la pantalla se mostrará una
b ajar con esta tarjeta se m u estran en la tab la barra indicadora (con base en puntos) que irá au­
9 .1 ; sin em b argo , en versiones posteriores de mentando proporcionalmente con la lectura de la
este p ro d ucto se abarcarán otros modelos. memoria del microcontrolador.

Tecleando la letra D Tecleando la letra R puede leer la


[D I B u f f e r dunp
puede visualizar en [R ] LEER P IC — memoria del microcontrolador.
la pantalla todo lo ÍU1 E S C R IB IR P IC Este proceso es un poco lento en
[F1 E S C R IB IR SOLO F U S IB L E S
que se leyó desde comparación con los programado-
IL Í CARGAR ARCHIUO IN8HEX
la memoria del [S I SGUARDAR ARCHIUO IM8HEX res paralelos. Una vez iniciado este
microcontrolador [U1 UERIFIC AR P IC proceso puede ver en la parte
ÍT1 SELECCIONAR TIPO DE P IC
inferior de la pantalla una barra
í H1 PANEL DE PRUEBAS D EL HARDWARE
(KI DESHABILITAR PROTECCION DE CODIGO indicadora.
Barra indicadora
SELECCIONE UN CONANDO O IE S C 3 PARA S A L IR :
del porcentaje
LEYENDO E L PIC
leído del PIC. Ella POR FAUOR ESPERE UN MOMENTO O I E S C I PARA ABORTAR
va aumentando a Al terminar la lectura de la
medida que lee la memoria del microcontrolador se
1024 PALABRAS LEID A S
memoria del Presio n e una t e c l a p a ra s a l i r despliega un mensaje indicando
microcontrolador. la cantidad de palabras leidas.

F ig u ra 9 .8 El sistem a puede leer e l contenido de la m em oria de los PIC. Este proceso se dem ora un poco más, com parado con los
program adores paralelos.

Curso práctico sobre Microcontroladores


Proyectos

T ip o s d e P IC s o p o rta d o s p o r la ta rje ta Programación del


12C508 12C509 16C554 16C556 16C558 16C61 16C62 16C62A 16C62B microcontrolador
16C620 16C620A 16C621 16C621A 16C622 16C622A 16C63 16C63A 16C64
El p rim e r paso para program ar
16C64A 16C65 16C65A 16C65B 16C66 16C67 16C71 16C710 16C711
16C72 16C72A 16C73 16C73A 16C73B 16C74 16C74A 16C74B 16C76 un m icro co n tro lad o r es cargar
16C77 16C84 16F83 16F84 16C923 16C924 16CE623 16CE624 el archivo h e x ad e c im a l resul­
Tabla 9.1 Tipos de PIC soportados p o r la tarjeta tan te d e e n sa m b la r el có digo
fuente. Este archivo h ex ad eci­
El sistema permite que los Mostrar Buffer m al d eb e estar en u n a de las
datos leídos de la memoria del m i­ Esta opción se habilita al teclear u n id a d e s de la c o m p u ta d o ra ;
crocontrolador sean almacenados la letra D. El buffer o m em oria si p u lsa la tecla L, el p ro g ra­
en disco, para que puedan ser uti­ auxiliar se utiliza para alm ace­ m a le p e r m itirá cargar el a r ­
lizados en otra oportunidad con nar tem po ralm ente un progra­ chivo h ex ad ecim al q u e desea
el fin de programar otros micro­ m a en hexadecim al, el cual pue­ p ro gram ar, para lo cu al pide
controladores. Para guardar el ar­ de provenir de la lectura del PIC la u b icació n y el n o m b re del
chivo hay que oprimir la tecla S, o de un archivo grabado en dis­ archivo, fig u r a 9 .1 1 . C u a n d o
allí el programa desplegará una lí­ co. Este buffer se puede visuali­ el a rc h iv o ha sid o le íd o , q u e ­
nea de comandos donde debe es­ zar con esta opción, con la cual da a lm a c e n a d o en el buffer del
pecificar el nombre del archivo se m uestran todas las direccio­ p ro g ra m a , p or lo ta n to p u e ­
con el que desea guardar los da­ nes de m em o ria jv su contení- de ser v is u a liz a d o p or m ed io
tos en el disco, figura 9.9. do, figu ra 9 .1 0 . de la le tra D.

E s te sistem a permite que una vez leído el


Pulsando la tecla L puede cargar contenido de la m em oria de un microcontrolador
un archivo alm acenad o en el P IC , usted p u ed a grabar e sa información dentro
disco duro, p ara program ar de un archivo del disco duro. P a ra esto s e debe
cualquier microcontrolador pulsar la letra S

pRiK-RANADOR CEKIT HS DOS CURSO PRACTICO SOBRE ni<


IC1 Acerca Ar . I
Puerto s e r i a l . . COfll ,%OO.B. I ,N
p ie a c t u a l..: lb flM
Palabra Ae conf x x l l l i l i 1111 1001
Contenido del Buffer INAGEN DE LA HEH0RIA DEL PIC
111 nODO DEL OSCILADOR : XT
121 UATCM DOG T1NER : DESOABILITADO
(3) PROTECCION DEL CODIGO.: DESUABILITADO
(51 Power u p t l ne r . : DESHABILITADA
(D I B u ff e r dunp
IR1 LEER PIC
IUI ESCRIBIR PIC
IF1 ESCRIBIR SOLO niSIBLES
111 CARGAR ARCO1V0 IN8MEX
IS1 SGilARDAR ARCHIOO INOHEX t -------------------------------------
IV ) VERIFIC A R PIC
ITI SELECCIONAR TIPO DE PIC
¡ “ 1 PANEL DE PRUEBAS DEL HARDUARE
MSHABIL1TAR PROTECCION DE CODIGO#----------------------
IO»L \tH CUNANDO O IESC ) PARA SAI IR

E l sistem a permite borrar los


contenidos de la m em oria de
un microcontrolador P IC . P a ra
ejecutar e s a tarea se debe
pulsar la letra K.

F igura 9 .9 Guardando en disco e l archivo binario leído desde e l m icrocontrolador

Curso p rá c tic o so b re M ic ro co n tro la d o re s X .á.


gram ador “ In Circuit” de m icrocontroladores PIC

. una t n :la p ara s a l i r , . .


I
¿T e n a r - u sa d o s w to r: j W í AMORES
CC1 A c e rca d e . . . . 1

pie a c t / a l..: 16F84


nutn ¿e eonf. **11 lili 1111 1101
Contei i lo del B u ffB r 1HAGDI DEL ARCHIUO In te r.h e x

111 TODO DEL O SCIlADO R.: XT


121
131
IA1Q1 V A T IH E R .: HABILITADO
IW E C C IO I DEL CODIGO.: DESHrtBILITADO
Contenido
P o sicio n e s de 151 lo je r up ll n e r . . : DESHABILITADA
de cad a
m em oria ID1 lu ff e r d-.np
mi
IU1
IE E ? PIC
I J ^ I B I B PIC
posición
jr i IS C R IB IR SOLO FU SIB LES
' t * * * ARCHIVO 1K8MEX
f, * * * " « 1M8HEX
« j 'ím riC A R P ie

¡ T,roD
Ef,c
«« ^ . « tS .S T S dico
* C a w iM ) o i E S C ) PftRA S A L IR :

F igura 9 .1 0 Visualización d e l archivo leído

D espués de q u e se ha c a r­ ([1 ]- [2 ], [3] y [4 ]), o p r im ie n ­ en la m e m o ria E E P R O M . En


g a d o el archivo h ex ad e cim a l, do c a d a n ú m e ro se m o d if ic a ­ este m o m en to p u ed e ap reciar
se d eb en estab lecer los d e n o ­ rá c a d a u n o d e los fu sibles. en la p a n ta lla co m o van a p a ­
m in a d o s fu s ib le s de p r o g r a ­ Por e je m p lo , si el o s c ila d o r se recien d o poco a poco las d is­
m a c ió n ; ellos co rresp o n d en a e n c u e n t r a en R C y o p r im im e tintas posicio nes de m e m o ria
las co n d icio n es bajo las cuales la te cla 1 este fu sib le c a m b ia ­ lle n á n d o s e con los d is tin to s
va a fu n c io n a r el sistem a, fi­ rá a XT, si lo o p r im e de n u e ­ datos del archivo hexadecim al,
g u r a 9 .1 2 . Esos parám etro s de vo c a m b ia r á a I N T R C *v así fig u ra s 9 . 13a y 9 . 13b. El p ro ­
c o n fig u ra c ió n son: el tipo de s u c e s iv a m e n te p a ra c ad a u n a g ra m a hace u n p ro c e d im ie n ­
o scilad o r q u e se va a instalar, d e las o p cio n e s. to de v e rificació n p ara c o m ­
el e s t a d o d e l t e m p o r iz a d o r probar q u e en c ad a posició n
w atchdog, la h a b ilita c ió n del U na vez ha seleccionado el se ha a lm a c e n a d o el d ato co ­
có d ig o p ro teg id o y el P W R T m icro co n tro la d o r, carg ad o el rrecto , p a ra ello c o m p a ra el
(ver lecció n 3 de la secció n de archivo h e x ad e c im a l y c o n fi­ dato actual p ro gram ad o con el
teo ría). En el m e n ú aparecen g u ra d o a d e c u a d a m e n te los fu ­ d ato leído del buffer. Al final
esta s o p c io n e s p a r a q u e las sibles, p u ed e p ro ced er a p ro ­ de la p ro g ra m a c ió n b r in d a un
m o d if iq u e d e a c u e rd o a sus gram ar. Para llevar a cabo este p eq u eñ o reporte d o n d e esp e­
n e c e s id a d e s; co m o se p u e d e proceso h ay q u e o p r im ir la te­ cifica si h an o c u rrid o errores
observar, a la izquierda de cada cla W , con la c u a l se in ic ia el o si la p ro g ra m a c ió n se d esa­
f u s ib le a p a r e c e u n n ú m e r o alm a c e n am ie n to del p ro gram a rrolló co rre ctam en te.

f u s ib l e s
IN8HEX
UO IN8HEX
C uando seleccio n a la
PO DE P IC
opción de cargar un AS DEL HARDUARE
archivo d e sd e el ROTECCIOM DE CODIGO S i d e s e a ca n ce la r la
disco, el program a operación de cargar
pone a su disposición I do o [ e s c i p a r a s a l i r :
¡E X . D I G IT E EL NOMBRE DEL ARCHIUO : c : \ un archivo, puede
una lín ea de co m a n ­ pulsar la tecla E S C
I s a lid a s
dos en donde debe ín te r .h e x
teclear el nom bre y la
ubicación del archivo
d esead o
F igura 9.11 Cargando e l archivo hexadecim al desde e l disco

Curso práctico sobre Microcontroladores


Proyectos

Pulsando en el
(III P A N E L DE P R U E B A S D E L H A R D U A R E teclado el número
(K 1 D E S H A B lL IT r tR P R O T E C C IO N DE C O D IG O
— 1 cam b ia el tipo
S E L E C C IO N E U N C R O AN D O O ( E S C 1 PARA S A L IR
de oscilador (XT.
PROGRANABOR C E K I T - USADOS CURSO P R A C T I C O SOBRE W CRO C ANTRO L A DORES R C , IN T R C ...)
IC I A c e rc a d e . . . I

P u e r to s e r i a l . . : CON1. 9 6 0 0 . 0 . I,N
Antes de progra­ p ie a c t u a l . . : 16F04
P a la b ra de e o n f . « < l l 1 1 11 1111 1001
m ar el microcontro­ C o n t e n i d o d e l B u f f e r . . : IflA G E N DE L A N E N O R IA D E L P IC Pulsando el
lador, debe estab le­ t il NODO D E L O S C IL A D O R . : XT
núm ero 2 habilita
ce r los fusibles de- 121 I M K H DOG T I N E R . : D E S H A B I L I T A D O • ----------------------------------------- - o deshabilita el
*31 P R O T E C C IO N D E L C O D I G O . : D E S I I A B ( L I T A D O
program ación con IS 1 P o w e r u p t i n e r . . : D E S IIA B H I T A D A perro guardián
que su aplicación ID 1 B u ffe r dunp
IR 1 LEER P IC
v a a trabajar tU I E S C R IB IR P IC
*ri E S C R I B I R S O LO F U S IB L E S Pu lsan d o el
t il CARG AR A l t a i 1 0 0 IN 8 N E X
IS 1 SG UARD AR A R C H 1 U 0 IN O H E X núm ero 3 habilita
tU I O E R IFIC A R P IC
Pu lsan d o el número o deshabilita la
«TI S E L E C C IO N A R T I P O D E P I C
UI.L •irini/m inL
liiL
’D .\ b ri K
*. r .. - --. „ , v— ^ J
5 habilita o deshabilita H 4. I INILDMj M NfllM HKE opción de

-
>1 D E S H A B IL 1 T A R P R O T E C C IO N DE C O D IG O
el P W R T (V er lección program ar con el
S ECCIONE i m CUNANDO O 1ES C I PARA S A L IR
7 de teoria) código protegido

Figura 9.12 Configuración de los fusibles de program ación

Si ha ocurrido un error en Finalm ente es posible rea­ una prueba que siem pre se en­
la program ación de algunas de lizar u n a verificación total del contrará en c u alq u ier progra­
las posiciones de m em oria, apa­ program a grabado en el m icro­ m a d o r y q u e le s e rv irá para
recerá un asterisco (*) ensegui­ controlador, co m p arán d o este com probar que el PIC ha que­
da de la posición donde se ha últim o con el buffer de m em o ­ dado programado correctamen­
presentado la falla. ria m antenido en la PC . Esta es te, figu ra 9 .1 4 .

(2 1 U A T C H DOG T I N E R . : H A B IL IT A D !]
131 P R O T E C C IO N D E L C O D I G O : D E S H A B I L 1 T A D O
151 Power up t in e r •' D E S H A B I L I T A D A

Pulsando la letra W inicia (D I B u ffe r dunp


(R l LE E R P IC
el proceso de grabado o__ (U ) E S C R IB IR P IC
escritura sobre el IF J E S C R IB IR SO LO F U S IB L E S

microcontrolador ( t i C A R G A R A B C H IU O I N 8 H E X
(S I S G U A R D A R A B C H IU O IN 8 H E X
!U 1 V E R IF IC A R P IC
IT 1 S E L E C C IO N A R T IP O DE P IC
Antes de iniciar la (H 1 PANEL DE PRUEBAS D E L HARDUARE

grabación, el programa le m DESHAB H I T A R P R O T E C C IO H DE C O D IG O

pide que pulse la tecla Y S E L E C C IO N E U N C O N A N D O O (E S C 1 PARA S A L IR : A partir del momento


para confirmar que — F P .E S IO N E * Y ' P A R A I N I C A B L A P R O G R A M A C IO N O O T R A TECLA PARA ABORTh F en que pulsa la tecla
E S C R IB IE N D O EN E L A R E A D E N E N O R I A
desea iniciar la progra­ POR FA U O R E S P E R E O P R E S I O N E (E S C 1 P A R A ABORTAR
Y. en la pantalla van
mación apareciendo
0000 2 8 1 3 003E
0008. 0000 0000
•••• • • •• 306E OOÜD 306E secuencialmente
0010: 0 B 8 D 2806 0000 0000 0000 0000 088E 2808
3400 3001 00A6 1683 3000 0085 cada una de las
0018: 3 0 4 F
0020: 1 2 0 5 01 03 88 66 1283 0197 O lA O 01QF 0105 0186 posiciones de
0028 0197 O lA l 1606 1386 1205 1986
2822 2004 “ memoria de
0030 1797 1986 2822 1185 1806 1417
1886 programa del
0038
1197 1906 1517 1206 2004 1206 1320
1205 1986 000F
0040 11BF
282D oior 1717 1320 0806 microcontrolador.
0040 0O A2
1B06 1SAF 120F 128F 130F 138F OGOF
00A3 120*-» t tflfi con el respectivo
valor con que se
están programando

Figura 9 .13a Visualización del llenado de la m em oria EEPROM

Curso práctico sobre Microcontroladores m . A .


X gram ador “ In Circuit” de m icrocontroladores PIC

L a pantalla se continúa llenando


0160 0824 0021 0085 1786 1F20 2967 1605 2001 hasta completar todas las posiciones
w ■ i

0160 2001 2001 2001 2001 2001 2001 Of(61


V l l l l |
292D a

de m em oria y todos los datos que


0170 1780 0P83 292S 1617 0822 0063 1597 2619
0170 1286 1C97 297C 297F 3001 0061 2981 se program an en ellas
303C 1
0180 0081 1206 3006 0223 1803 2906 0823 0061
0188 1320 29BS 1720 3006 0223 1D03 2992 3010
• • i

01*30 0081 29B1 300B 0223 1D03 2999 3011 0061


0198 29B4 300C 0223 1D03 2960 3012 0061 29B1
0180 300D 0223 1D03 2967 3013 0061 29B1 300E
0180 0223 1D03 296E 3014 0064 29B4 3006 0223
01B0 1D03 29B1 3015 0061 0021 0821 0085 1786
01B8 1F20 29BB 1605 2001 2001 2001 2004 2001
01C0 2001 2004 0B01 2981 0B63 2979 1580 0022
01C8 0083 1686 1C97 29CD 29D0 D espués de programar cada
^ ^ ^ 3001 0061 29D2 ¡
OIDO 303C 0081 1606 3006 una de las posiciones, él
0223 1003 29DB 0823
01D8 0084 1320 2606 1720 3006
r , i A A 0223 1D03 29E3 verifica que se hayan progra­
01E0 3010 0084 2605 300B 0223 1D03 29E6 3011
01E0 0081 2805 300C mado los datos adecuados. Si
0223 1D03 29F1 3012 0061
o í1rO
C \ P A

280S 300D 0223 1D03 29F0 3013 0061 2605 detecta algún error pondrá un
o irn 300E 0223 1D03 29FF 3014 0061 2605 3006 asterisco (*) a la izquierda de la
0200 0223 1D03 2605 3015 0061 0021 0824 0085
0208 €

1786
" I d /

1F20 posición que se ha programa­


V AA 260C 1605 2004 2001 2001 2001
9? 10 aa j
¿001 2001 2001 0B61 29D2 0B63 2966 0822 do incorrectamente. Al final se
0218 f.A*
0083 1917 20DD 2 6 1C 1206 1286 2013 brinda un reporte del número
¿sen •B 1ENDO
P8L8BR8 DE CQNFIGUR6C lílN de errores que se presentaron
: r -TQ PAPA? • dentro del proceso
DE P R n r . * ™ ^ ^ .
Pl5« !0 h E UN* TECLfi P8R8 SAL IR

F igura 9 .13b Visualización del llenado de la m em oria EEPROM

Panel de pruebas del nuevo m enú en el cual le perm i­ las cuales modifican los voltajes
hardware te variar los voltajes del conec­ en cada uno de los pines del co­
C on esta opción se practican una tor que va hasta el PIC objetivo, nector; leyendo con un multíme-
serie de pruebas para comprobar figuras 9 .1 5a, 9 .1 5b y 9 .1 5c. En tro los voltajes en cada uno de
que la tarjeta está funcionando esta presentación se muestran ellos, puede detectar alguna falla
correctamente. A quí entra a un cinco tipos de pruebas distintas en la tarjeta.

fRtfRMMDOR CEKIT US/DOS CURSO P R A C T IC O SOBRE rt/CROCO NTRouD oRES


Al iniciar el proceso
I C ) A c e r e n «fe . . I
de verificación se
P u e rto s e r i a l COfll . % 0 0 . 8 . 1 .K
p ie « i c t u a l . . : Ib FfH
despliega una barra
P n la b ra de c o n f . ..1 1 l i l i l i l i 1111 indicadora con base
C o n te n id o d e l f c . f f e r IHAGEN DEL ARCHIVO c \fc308 l.e«
en puntos, del
111 TODO DEL OSCILADOR RC o EntRC
121 UATCH DOG T IÍ1 E R .: HABILITADO porcentaje de
131 PROTECCION DEL CODIGO.: DESMABILITnDO
IS 1 Pou er u p t l n e r . . : DESHABILITADA memoria que se ha
Pulsando la letra V comparado
ID ) B u f fe r dunp
puede com probar IR ) LEER P IC
IU I E S C R IB IR PIC
que lo que s e ha Ifl E S C R IB IR SOLO F U S IB L E S
IL1 CARGAR ARCHIüQ IN8HEX
program ado final­ is i SGUARDAR ARCHIVO M6MEX
S i el proceso se ha
COI V ERIFIC A R P IC
mente en el m icro­ IT I SELECCIQHAR TIPO DE P IC
llevado a cab o con
CH1 PANEL DE PRUEBAS DEL HARDWARE
controlador corres­ CKI DESMA8ILITAR PRflTECCIOfl DE CODIGO éxito y el program a
ponde realm ente al S * ? ™ * « • m w « o IE S C I P flü n S A I.IR | grabado correspon­
F ie VERIFICADO
archivo cargado en FAUOR ESPERE I f l TOflENTO O (E S C ) PARA ABORTAR de al que s e deseó
la m em oria del jERiriCACÍ0NOK: ......... ..................................... \— desde el principio,
lo n*r una t e c l a p are , a | | r
programa a p a re ce rá un
m ensaje de
aprobación

Figura 9.14 Verificación de un correcto proceso de programación

s.j. Curso práctico sobre Microcontroladores


Proyectos

E s ta e s la presentación del panel de


pruebas de la tarjeta. H aciendo clic en la
PANEL PPtCBAS tecla 0 varían los voltajes en el conector
de salida, com o lo indican los voltajes en
esta línea
C E K IT
ÍÍLlCCIl OCOUCE
E s ta s son las cinco pruebas que puede
c o m e c io r
h ace r sobre el conector de la tarjeta.
10J NODO DE RESET MCLR-0 . DATrt=LO. CLOCK-IO
151 MODO MW - MCLH: » 5 u , D A T A 'H I. CLOCK MI Pulsando c a d a uno de los caracteres de
ly | "UPO DE PROGRAMAR - HCLR-'UPP. DATA LO. C U X K LÜ-
N I CAMBIAR E L ESTADO DE LA L IN E A DEL RELO J
la izquierda logra cinco pruebas distintas
31 CAMBIAR E L ESTADO DE LA L IM E A DE DATOS en los voltajes de salida de la tarjeta.
HILTAJE ACTUAL EN LO S CONECTORE3 DEL PROGRAHAODOR 1

I CLK I DATAl M C L H I

E s te es el voltaje de salida
presente entre los pines
G N D y M CLR cuando
oprime la tecla 0
En este caso observará el
voltaje de salida entre GND
y M CLR cuando se ejecutan
las distintas pruebas

E s ta es una representación gráfica del conector


de la tarjeta donde se m uestran c a d a uno de los F igura 9 .15a Presentación del panel de pruebas del
pines y su correspondiente voltaje de salida hardware a l pulsar la tecla 0

PANEL DE P R U E B A S m I

l —
i
<
»

I 1 1


i

Pu lsan d o el núm ero 5 ejecuta el segun­


do tipo d e prueba denom inado modo
C E K IT S .ft
— RUN. E n el cual las lín eas DATA.
C L O C K y M CLR se encuentran en
estado lógico alto.
TODO DE R E S E T - rtC LR = Q . D ATA= LO . CL0CK=L0
T O D O RUM - HCLR: * 5 v, D A T A ^ H I. CLO CK =HU
TODO D E PROGRAMAR - M CLR= UPP, D ATA-L O , CL0CK=L0
CA M B IA R EL ESTADO DE LA L IM E A DEL RELOJ H
C A M B IA R EL ESTADO DE LA LIN E A DE DATOS

uO L T A JE ACTUAL EN L O S C O N EC T O R ES D EL PROGRAMADPOR E s ta e s la lectura real


m edida con multímetro y
tom ada entre los pines
G N D y MLCR. Al tomar
esta m edida verifique que
coincide con lo indicado en
la gráfica del conector.
presente en la pantalla de
la com putadora.
P u e d e o bservar cóm o los voltajes ubicados
en la parte superior de c a d a uno d e los
pines del conector cam bian de acuerdo al
tipo de prueba que ejecutó. É s ta es una
indicación visual que facilita al usuario
corroborar que los voltajes de su tarjeta se F igura 9 .15b Presentación d e l panel de pruebas del hardware
com portan correctam ente a l pulsar la tecla 5

Curso práctico sobre Microcontroladores


t- m
ram ador “In Circuit” de m icrocontroladores PIC

Pu lsan d o la tecla V ejecuta la tercera


prueba, que se h a denom inado M O D O
D E P R O G R A M A R . E n ella el pin
M CLR s e tom a el voltaje de program a­
ción y las líneas de C L O C K y D A T A se
van a nivel lógico bajo.

o NODO DE RESET- NCLR=0 . DATADLO. C LO C O LO


S NODO RUfl - n C L R = .S u , DATA=HI. CLOCK-HI
NODO DEPROGRANAR - nC LR= U PP. DATA-LO. CLOCK LO
C CANBIAR E L ESTADO DE LA L IN E A DEL R E L O J _
CANBIAR E L ESTADO DE LA L IN E A DE DATOS

LT-v j e ACTUAL EN LOS CONECTORES D EL PROGRAfTAODOR I

Ov Ou E s te es el voltaje de progra­
Ov .I2 u
• - m ación de un microcontrola­
CND I GND I CLX I DATAI NCLRf
- - - • ------- dor. E s ta lectura, con el
«E tin
O í CSC SALIR multímetro, es tom ada de
nuevo entre los pines G N D y
M CLR, y coincide con lo

T
Al pulsar la letra V cam bian de nuevo
indicado por el program a de
la com putadora.

los voltajes del conector de salida de la


tarjeta y de nuevo cam bian los voltajes
indicadores ubicados en la parte
superior del diagram a del conector. Figura 9 .15c Presentación d e l panel de pruebas del hardware
al pulsar la tecla V

En esta pan talla se puede pines de G N D y M C L R , al m o­ do las conexiones necesarias en­


apreciar un m en ú y una ilus­ mento de presionar cada una de tre los pines de la tarjeta pro-
tración del co necto r de salida las o p c io n e s p re sen tes en el gram ad o ra y los pines del cir­
de la tarjeta. En el m en ú a p a ­ m enú, la lectura en el m u ltím e ­ cuito integrado.
recen unos caracteres a la iz­ tro cam biará inm ediatam ente.
q u ie rd a ([0 ], [5 ], [V ], [C ], D espués de esto, conecte
[D ]), cada uno de los cuales Sin lugar a dudas, usted pen­ el ju m p e r en m o d o R U N ; de
h ace c a m b ia r los vo ltajes de sará que se van a desperdiciar m u­ esta m a n e ra los pines q u ed a n
salida del conector. C a d a que chos pines del microcontrolador libres para que se conecten con
o p rim e alg u n a de estas teclas, que pueden ser vitales dentro de los d isp o sitiv o s extern o s d e ­
los pines cam b ian de estado de la aplicación. Para evitar este con­ seados. A lg u n o s m icro co n tro -
acuerdo a las in dicacio n es d a ­ tratiempo la solu­
das por el texto q u e le sigu e a ción es m u y senci­
cada uno de esos caracteres y lla: basta colocar en
en el d ia g ra m a del co necto r se el prototipo final
reflejan estos cambios. Si los una serie de jumpers
voltajes no co in cid en co n los con los cuales se se­
leíd os en el co n ecto r, p uede lecciona el modo de
existir algún problem a en el cir­ trabajo de la tarjeta;
cuito de potencia (transistores es decir, cuando va
Q 1 , Q 2 y Q 3) de la tarjeta. a programarlo hay
que colocar el ju m -
En las figuras 9 .1 3 a , b y c p er en modo pro­
se ha tom ado la lectura entre los gramación, hacien­ Figura 9.16 Créditos

C A Curso práctico sobre Microcontroladores


Proyectos

F ig u ra 9 .1 7 En la s com putadoras
tipo PC es com ún encontrar en la
parte po ste rio r d e l aparato un
conector para los puertos seriales en
donde existe un conector D B-9 y un
conector D B-25

ladores co n el l 6 F 8 7 x poseen c o n el n o m b r e m e n c io n a d o Conector DB-9

la opción de p ro gram ació n «/'« (C:\CEKITP). (Vista frontal)

circuit », ella se caracteriza p or­ 1 2 3 4 5

q u e el m ic ro c o n tro la d o r sólo Es p o sib le q u e su c o m p u ­ \• 6



7

8

9

necesita de dos pines C L O C K ta d o ra no c u e n te con un
y D ATA p a ra ser p ro g r a m a ­ p u e r to se ria l d e l tip o D B -9
Conector DB-25
dos. C u a n d o lleve a cabo p ro ­ d is p o n ib le p a ra tr a b a ja r co n
(Vista frontal)
g r a m a c ió n d e n tro del c ir c u i­ la ta r je ta , pero q u e sí c u e n te
D
11 12

to, d e b e te n er m u c h a p re c a u ­ co n u n p u e r to se ria l en c o ­ 14 15 16 17 18 19 20 21 22 23 24 25

ción si va a c a m b ia r las fu n ­ n e c to r D B - 2 5 ( C O M 2 ) , es
ciones de los puertos, para evi­ d ecir, q u e p o sea un m ó d u lo F igura 9 .1 8 D istribución y nom enclatura
ta r q u e se p u e d a p re sen tar a l­ de c o n e x ió n c o m o el q u e se de los pines en los conectores DB-9
g ú n co rto circu ito q u e d eterio ­ m u e s t r a en la f i g u r a 9 . 1 7 . (arriba) y D B -25 (abajo)
ra ría la e s tru c tu ra del m ic ro ­ Este tip o de p re s e n ta c ió n es
co n tro lad o r. m u y c o m ú n en c o m p u t a d o ­ de la computadora para que sólo
ras tip o P C , en d o n d e p o r lo trabaje en ambiente D O S, o bien,
En esta prim era versión del g e n e ra l el c o n e c to r D B -9 c o ­ inicializar W indows normalmen­
program ador in circuit para m i­ rre sp o n d e al p u e r to C O M 1 y te (pero sin conectar el ratón) y
crocontroladores PIC, el pro­ el D B - 2 5 c o r r e s p o n d e a l ejecutar el programa desde una
g ra m a de la co m p utad o ra se ha p u e r to C O M 2 . ventana del DOS. La segunda op­
desarrollado en Turbo C para ción es construir usted mismo el
D O S . Para instalar ad ecu ad a­ Si ese es el caso, tiene dos op­ cable de conexión hacia el puer­
m ente el program a en su co m ­ ciones: desconectar el ratón de la to serial con un conector DB-25;
putadora, debe crear en su dis­ computadora, conectar allí la tar­ dentro de este kit se han anexado
co d u r o u n a c a r p e ta c o n el jeta y configurar la inicialización un conector DB-25 y un conec­
nom bre C E K IT P y dentro de tor DB-9 adicionales para que us­
ella copiar los dos archivos que ted mismo construya su interfaz
CO M PUTAD O RA
vienen en el disquete. Dios corres­ de comunicación. Sólo debe ha­
DB-9 DB-25
ponden al nombre de progra.exe cer un cableado entre los pines de
y egavga.b gi. Si estos archivos 3 2 los dos conectores siguiendo la co­
2 3
no se han co p iad o dentro de rrespondencia indicada en la ta­
7 4
u n a carpeta con el nom bre de 8 5 bla 2. La configuración de los pi­
6 6 nes de estos dos tipos de conec­
CEKITP, el program a no fun­
5 7
cionará, y a que él está co m p i­ 1 8 tores la puede apreciar en la figu­
lado para buscar los archivos en 4 20 ra 9.18, con ella puede guiarse fá­
u n a carpeta ubicada en la u n i­ cilmente para construir su pro­
dad C , dentro de una carpeta Tabla 2. Conversión serial D B -25 a DB-9 pio cable de conexión.

Curso práctico sobre Microcontroladores (Ó M K IT


gram ador “ In Circuit” de m icrocontroladores PIC

Ensamblaje
L IS T A D E M A T E R I A L E S
C a n t. R eí. D e s c r ip c ió n C a n t. R e f. D e s c r ip c ió n
1 IC1 M ic ro c o n tro la d o r P IC 16F84
R 1 .R 2 y R4 R e s is te n c ia s d e 2 . 2 k - 1 / 4 W
1 IC 2 D riv e r d e c o m u n ic a c ió n M A X 2 3 2
R3 R e s is te n c ia d e 2 2 0 -1 /4 W
1 REG1 R e g u la d o r p o s itiv o d e + 1 2 v o ltio s . 7 8 1 2
R5 R e s is te n c ia d e 3 .3 k -1 /4 W
1 REG2 R e g u la d o r p o s itiv o d e + 5 v o ltio s , 7 8 0 5
R6yR7 R e s is te n c ia s d e 4 7 0 -1 /4 W
2 01 y 03 T ra n s is to r NPN 2 N 3 9 0 4
J1 C o n e c to r CA/CC
1 Q2 T ra n s is to r P N P 2 N 3 9 0 6
J2 C o n e c to r D B 9 h e m b ra p a ra c ir c u ito im p re so
1 BR1 P u e n te re c tific a d o r d e 1 A , W 0 6 M
J3 C o n e c to r e n lin e a d e 6 pin e s
1 01 D io d o re c tific a d o r 1 N 4 148
K -2 2 4 C irc u ito im p re s o CEKIT
1 02 D io d o LE D ro jo d e 5 m m
B a se p a ra c ir c u ito in te g ra d o d e 1 8 pin e s
1 03 D io d o LED v e rd e d e 5 m m
B a se p a ra c ir c u ito in te g ra d o d e 1 6 pin e s
1 C1 C o n d e n s a d o r e le c tro lític o d e 1 0 0 0 u F /5 0 V
B a se tip o Z IF a n c h a d e 4 0 p in e s
4 C 2 .C 4 .C 9 y C 1 2 C o n d e n s a d o re s c e rá m ic o s d e 0 .1 u F /5 0 V
B a se tip o Z IF a n c h a d e 2 8 p in e s
1 C3 C o n d e n s a d o r e le c tro lític o d e 4 7 u F /2 5 V
Conector D B -9 m a ch o co n te rm in a le s p a ra soldar
4 C5aC8 C o n d e n s a d o re s e le c tro lític o s d e 1 0 u F /25V
Conector D B -9 h e m b ra co n te rm in a le s p a ra soldar
2 C I O y C11 C o n d e n s a d o re s c e rá m ic o s d e 2 2 p F /5 0 V
Conector D B -2 5 h e m b ra co n te rm in a le s p a ra soldar
1 XT1 C n s ta l d e c u a rz o d e 4 M h z
M e tro s d e c a b le rib b o n d e 9 h ilo s

Este proyecto debe tom arse com o una herram ienta de laboratorio con la cual puede llevar a cabo un sinnúm ero de actividades y
proyectos. Por su naturaleza de herram ienta de trabajo, nos hem os enfocado en explicar su m anejo sin profundizar en la
elaboración d e l firm w are y del program a de la computadora. Esperamos que é l sea de m ucha utilidad en su desempeño p o r el
m undo de los m icrocontroladores.

Para e l ensam blaje de todos los com ponentes en el circuito im preso del program ador use la guía de m ontaje que se ha dibujado
sobre la cara de los com ponentes del mismo, ta l com o se m uestra en la figura 9.19, y tenga cuidado con la ubicación de todos los
com ponentes polarizados.

Conector CA/CC para el Este es el conector desde


adaptador que suministra el cual salen los hilos
la alimentación al circuito hasta el PIC que se va a
programar in Circuit

Conector DB-9 para la


En esta tabla encuentra
comunicación vía RS-232
señalizados cada uno de
con la computadora
pines del conector J3 .
En él existen dos pines
de tierra y una salida
auxiliar de 12V

Firm ware de la tarjeta que


permite manejar la
comunicación con la PC y la
Diodos LED indicadores
etapa de potencia que va
del funcionamiento de la
hacia el PIC objetivo. Nunca
tarjeta
retire este circuito integrado
de su sitio

Base ZIF para instalar


Base ZIF para instalar microcontroladores de 8 y
microcontroladores de 28 y 18 pines
40 pines

F igura 9 .1 9 Aspecto fin al del program ador "In C ircuit” de m icrocontroladores PIC

Áj. Curso práctico sobre Microcontroladores


• "á.''A i «*/ A^WiOWJDQWif

PUNTA LÓGICA
Simplifique la prueba y la reparación de sistemas
digitales construyendo esta práctica punta lógica.
Detecta niveles alto, bajo y de alta impedancia; su
elemento principal para el proceso es un micro­
controlador PIC16F84.

Características
• Punta lógica de tres estados
• Detecta estados de alto (1), bajo (0), alta impe­
dancia (Hi-Z) y entrada de pulsos (P)
• Señalización a través de un diodo LED y un
display de siete segmentos
• Genera una señal PW M para uno de los tipos de
señalización
• Tamaño reducido
• Señal audible de cada uno de los estados

Curso práctico sobre Microcontroladores €EK U T.


Punta lógica

U na p un ta lógica es uno de Las puntas lógicas para uso cero (0) lógico o nivel bajo ( low )
los ele m e n to s m ás u tiliz a d o s profesional son in stru m en to s en la entrada. Si en la entrada
dentro de un laboratorio de elec­ relativam ente costosos y, por la existe un estado de alta im p e­
trónica digital, microprocesado­ m ism a razón, no están siem pre dancia, se mostrará en un dis­
res o microcontroladores. Ella fa­ accesibles a todos los presupues­ play de siete segmentos la letra
cilita el proceso de construcción, tos. Esta p u n ta lógica es un ins­ H (Hi Z) y se generará una se­
p ru eb a, rep aració n , m a n te n i­ trum en to portátil de buena ca­ ñal de P W M sobre el d io do
miento e instalación de toda cla­ lidad y bajo costo. LED p ara q u e se ilu m in e al
se de sistemas digitales. 5 0 % de su capacidad; esto gra­
Funcionamiento general cias a una interrupción por el
U tilizan d o u n a p u n ta ló­ El c ir c u it o u t iliz a u n d io d o tem porizador interno ( timerO).
gica se p ued e d e te rm in a r fácil­ LED y un d isp lay de 7 segm en­
m e n te el estado de una e n tra ­ tos para inform ar el estado ló­ U n a in t e r r u p c ió n es un
da o salid a d ig ita l y co n firm ar gico de la en trada digital. Si el evento extern o q u e o b lig a al
la presencia en ese p u n to de un LED está encendido quiere d e ­ m ic ro c o n tro la d o r a in v o car o
nivel lógico alto o bajo, un esta­ cir q u e en la en trad a existe un lla m a r u n a ru tin a d e n o m in a ­
do de alta im p ed an cia (H i-Z ) o u n o (1 ) ló g ic o o n iv e l a lto d a r u tin a o serv icio de in te ­
u n a e n tra d a d e pulsos a una (.high ), y si el LED está apaga­ rru p c ió n , para lo cu a l, en este
alta frecuencia. d o , sign ifica q u e tenem os un caso, se h a h a b ilita d o al tem -

DISP1
M CLR Vdd
Punta de prueba
nbb 1RB1
1w I

RB2
RB3

RA3
RB7
RA2 -BÍAA/V-2-
RA1
5
U .
T— ( O
RBO - B i A / V w 2-
0SC2 3300
o
51
RB5
BZ1
0SC1 QMB-12

Q1
RB4
2N3904
Vss

Alimentación | ESTADO D ISPLA Y LED

1 1 On
+5V
in
<?
D1
1N4004
C1
1OOpF
r r C2
0.1 pF
0

HZ
0

H
Off

PW M (5 0 % )
LO 25V 50V
fj
x a Q_GND
Pulsos P Oscila

Figura 10.1 Diagrama esquemático de la punta lógica

m /Km . Curso práctico sobre Microcontroladores


( Proyectos

p o rizad o r in te rn o d el m ic ro ­ a recib ir los cables de a lim e n ­ tación del circuito bajo prueba,
co n tro la d o r ( timerO ) para que tació n, el d io do rectificador de y para ello se usa un cable de
cu en te los pulsos in tern o s de p ro tecció n D I , y los c o n d e n ­ alim entación con dos caimanes
reloj d e la m á q u in a y gen ere sadores C l y C 2 q u e se c o m ­ m in iatu ra en uno de sus extre­
u n a in te rru p c ió n c ad a vez que p o r t a n c o m o filtro s y c u y a mos, que se conecta a los bor­
este registro se llene y provo­ fu n c ió n es e sta b iliz ar la te n ­ nes de entrada del circuito im ­
q u e un sobreflujo. sión d e a lim e n ta c ió n a p lic a d a preso. Para evitar que se induz­
al c irc u ito y lim ita r la e n tra d a can señales eléctricas ruidosas y
C u an d o se ha detectado un de señales de a lta frecu en cia que la m agn itu d de la tensión
estado lógico alto o bajo, se en ­ hasta el m icro co n tro lad o r. de alim entació n sea atenuada,
viará por el pin R B 4 (pin 10) éste cable debe m antenerse con
una señal en u n a frecuencia de­ Para garantizar la ejecución una longitud inferior a lm .
term inada (el nivel lógico bajo co n tin u a del program a por par­
tendrá una frecuencia más baja) re d el m ic ro c o n tro la d o r y el Por las características de la
para que el usuario tenga una buen fu ncionam iento de todos tecn o lo g ía de fabricación del
señal audib le del nivel que está sus circuitos internos de apoyo PIC y debido a la caída de ten­
detectando. A d icio n alm en te se (temporizadores, buffers , regis­ sión ocasionada por el diodo de
ha dispuesto un display de siete tros, contadores y circuitos de protección D I en polaridad d i­
segm entos en el cual se puede reset , entre otros), es necesario recta, el voltaje de alim entación
observar una letra o un n ú m e­ que la alim entación que se le su­ de la p u n ta lógica d eb e estar
ro por cada estado que se pre­ m inistre, esté dentro de los li­ entre 3.5 y 6.5V, es decir, que
sente. C u a n d o h ay un nivel ló­ mites perm itidos por su tecno­ puede utilizarse para probar el
gico bajo se visualizará un cero logía de fabricación en cuanto estado lógico de circuitos d ig i­
(0), cuando es nivel alto se v i­ a su m agn itu d C C y C A (riza­ tales T T L y C M O S con bajo ni­
sualizará un uno (1), cuando se do), los cuales establecen que vel de alim entación.
encuentre en estado de alta im- los m ic r o c o n t r o la d o r e s P IC
pedancia se visualizará una H, pueden ser alimentados por vol­ El d io d o re c tific a d o r de
y cuando entre una señal de p ul­ tajes que van entre 3 y 6 V C C y propósito general D I que abre
sos se presentará u n a P. con un factor de rizado inferior o cierra el paso de la corriente
o igual al 10% de su valor C C . hacia el circuito, d ep en d ien d o
Diagrama esquemático de la p o larid ad entre sus ter­
El d ia g r a m a e s q u e m á tic o de Para sum inistrar la energía minales (ánodo y cátodo), se ha
este p ro y e c to lo p u e d e a p r e ­ al circuito de la p un ta lógica, se in c lu id o en la e n tra d a com o
c ia r en la f ig u r a 1 0 .1 . C o n s ­ usa la propia fuente de alim e n ­ u n a protección para el circuito
ta d e u n a e n tr a d a de a l im e n ­
ta c ió n , u n d io d o LED i n d i ­
1 Detección de entrada
— ► Visualización
c a d o r de estad o , u n tr a n s d u c ­ de pulsos

to r p ie z o e lé c tric o m in ia t u r a
( buzzer ), u n display de siete ________ : '
se g m en to s y un m ic r o c o n tr o ­ 0 1 Detección de una
— ►
Visualización +
1 impedancia PW M
la d o r P IC 1 6 F 8 4 .

La e n tr a d a d e a lim e n t a ­
c ió n e stá c o n fo r m a d a por
e 1
|
Detección de
nivel lógico
Visualización +
PW M

un o s bornes de co n ex ió n (co ­
n ecto r de e n tra d a ) d estin ad o s F igura 10.2 Diagrama de bloques del program a

Curso práctico sobre Microcontroladores


Punta lógica

MAIN: dos eventos anteriores se pasa al


BSF ESTADO, 5 CONMUTA A LA PAGINA 1
MOVLW B’01000000 SE CONFUGRA EL FUNCIONAMIENTO DE LOS PIN ES tercer paso, en el cual se detecta
A MOVWF
MOVLW
T R IS B
B’00000000
DE ACUERDO A LO DISPUESTO EN EL DIAGRAMA
ESQUEMATICO. SOLO HAY UNA ENTRADA, EL
qué nivel lógico existe en la punta
MOVWF TRISA P IN NUMERO S E IS DEL PUERTO B. de prueba y envía una señal en fre­
BCF OPCION, 5 CONFIGURO EL TIM ER COMO TEMPORIZADOR
BCF INTCON, 2 BORRO BANDERA DE IN T . DEL TMR0 cuencia para activar el zumbador
BSF INTCON, 7 HABILITADOR GLOBAL DE IN T.
BCF ESTADO, 5 VUELVO A LA PAGINA 0
y tener así una indicación audible
CLRF BANDERA de la medición.
lo o p NOP EL PRIM ER PASO E S DETERMINAR S I E X IST E
PULSO BTFSS PORTB,6 EN LA ENTRADA UNA FRECUENCIA DE PULSOS
GOTO PULSO.BAJO EL METODO ES MUY SEN C ILLO , SOLO SE LEE
El p rim er paso es verificar
PULSO.ALTO LA ENTRADA RB6, Y SE V E R IF IC A QUE ESE si en la entrada existe una señal
CALL RETARDO N IV EL PERMANEZCA DURANTE CIERTO PERIODO
BTFSC PO RTB,6 DE TIEM PO , EL CUAL E S DETERMINADO POR de pulsos, el código de esta fun­
GOTO lo o p l LA RUTINA RETARDO. CAMBIANDO E L VALOR DE
GOTO EST.PULSO ESA RUTINA, CAMBIAMOS LA FRECUENCIA DE
ción se observa en la figura 10.3
DETECCION. y su d iagram a de flujo en la fi­
PULSO .BAJO EN ESTA LINEA ESTAMOS LEYENDO DE NUEVO RB6
CALL RETARDO DESPUES DE UN RETARDO PARA CONSTATAR QUE SIGUE g u r a 1 0 .4 . Para resolver este
BTFSS PO RTB,6 EXISTIEN D O UN N IV EL LÓGICO BAJO.
GOTO lo o p l S I AUN E X IS T E S IG N IF IC A QUE NO HAY
problem a se pensó en u n a solu­
ENTRADA DE PULSOS ción m u y sencilla: se lee la en ­
EST.PU LSO Y PODEMOS CONTINUAR EL PROGRAMA.
BSF PORTB,1 S I SE HA DETECTADO UNA ENTRADA DE PULSOS, trada, se espera un tiem po de­
BSF PORTA,1 ACTIVAMOS LOS P IN E S DE LOS PUERTOS
BSF PORTA,2 CORRESPOCIENTTS PARA (JJE SE VISUALICE LA LETRA P
term inado y de nuevo se vuelve
BSF PORTB,0 PARA INDICAR QUE ESTA ENTRANDO A LA a leer para verificar si el nivel
PUNTA LOGICA
B BSF PO RTB,2 UNA S E R IE DE PULSOS A UNA FRECUENCIA
DETERMINADA.
leído in ic ia lm e n te p erm anece
BCF PORTB,3
allí o ha cam biado. Si el nivel
BCF PORTA,3 CUANDO SE V IS U A L IZ A LA P , REGRESAMOS A ha cam biado se puede concluir
LA ETIQUETA
BCF PO RTB,5 lo o p PARA OBSERVAR EN QUE MOMENTO NOS que es una señal que se mueve
SALIMOS DE
BCF PORTB,4 ESTE ESTADO.
a una frecuencia considerable,
GOTO lo op pero si el nivel leído permanece
F igura 10.3 Código que detecta la existencia de entrada de pulsos se puede decir que se está leyen­
do u n nivel que no cam b ia tan
de la p u n ta lógica; su propósi­ Descripción del
to es evitar los daños p e rm a ­ programa lo o p 1
\
nentes que se pueden ocasio­ En la figura 10.2 puede o Pulso_Bajo O
nar en el PIC com o consecuen­ observar el diagrama de Retardo
Port B, 6 = 1?
cia de u n a inversión p ro lo n ga­ bloques general con las
d a en la p o larid ad del voltaje funciones que hace el dis­
de alim en tació n . positivo. In icialm en te o
detecta si existe una fre­
0
Pulso Alto
Is
Retardo Port B, 6 = 0?
Para lim it a r y p ro te g e r el cuencia de pulsos alta en
d io d o d el paso de co rrien tes la entrada y visualiza una
excesivas a través de él y a d e ­ P si se da ese caso (nume­ No
m ás e v ita r q u e los p u erto s del ral 1). El segundo paso es O
m ic r o c o n t r o la d o r se d a ñ e n , detectar la existencia de Port B, 6 = 1? lo o p 1

se h an in s ta la d o en serie con un estado de alta impe-


c a d a se g m e n to d el display y el dancia en la entrada, vi­
LED u n a se rie d e resisten cias sualiza una H y envía una
( R 2 - R 9 ) q u e l i m i t a n la c o ­ señal de P W M al LED de Est Pulso Visualizar P
r r ie n te a m e n o s de 1 OmA por salida (numeral 2). Si no
Figura 10.4 Diagrama de flujo de
c a d a uno. ha ocurrido alguno de los la detección de pulsos

Curso práctico sobre Microcontroladores


Proyectos

lo o p l BCF PORTB, PHZ ; RB7 AHORA ESTA EN B A JO .. . se activa el bit habilitador global
BTFSC PORTB, PPRUEB ; PRUEBO S I RB6 ES IGUAL A RB7 de interrupciones (GIE).
GOTO nohz
BSF PORTB, PHZ ; . . Y LUEGO PONGO EN ALTO
BTFSS PORTB, PPRUEB ; PRUEBO S I RB6 ES IGUAL A RB7
GOTO nohz Ahora el sistema debe deter­
hz BSF BANDERA,1 S I LA ENTRADA ES H I Z minar si en la punta de prueba
BSF PO RTB,0 SE ACTIVA EL B IT 1 DEL REGISTRO
P BCF PO R T B,1 BANDERA PARA PODER RECONOCER existe una condición de alta im-
l» BSF PORTB,2 ESTE ESTADO DENTRO DE LA INTERRUPCION
BSF PO RTB,3 Y MANDAR LA FRECUENCIA ADECUADA. pedancia. Para determinar la exis­
BSF PORTA,1 AL MISMO TIEMPO SE ACTIVA LA LETRA H tencia de este estado siga un pro­
BSF PORTA,2 EN EL D ISPLA Y DE S IE T E SEGMENTOS.
BCF PORTA,3 FINALMENTE ACTIVO LA INTERRUPCION: cedimiento m u y sencillo: remíta­
BCF ESTADO, 5 VOY A LA PAGINA 1
BSF INTCON, 5 H A BILIT O IN T . POR TMR0
se al código de la figura 10.5 y al
BCF ESTADO, 5 VUELVO A LA PAGINA 0 diagrama de flujo de la figura 10.6.
GOTO lo op
El pin 7 del puerto B está conec­
nohz BCF BANDERA,1 S I LA ENTRADA NO ESTA EN ESTADO DE ALTA Z
BCF PORTB, PHZ PONGO EL P IN RB7 EN BA JO , PARA PRUEBAS
tado a través de una resistencia de
D BTFSS PORTB, 6
POSTERIORES
Y LEO FINALMENTE EL PIN 6 DEL PUERTO B
100K a la en trad a de prueba
GOTO BAJO Y VOY A LA RUTINA CORRESPONDIENTE (ALTO 0 BAJO) (RB6); si en el pin R B 7 se coloca
ALTO BSF PORTB, PLED S I LA ENTRADA ESTA EN ALTO, LED
un cero (bloque 10 del diagrama
ENCENDIDO FULL de flujo, parte C del programa) e
BSF BANDERA,0 ACTIVO EL B IT 0 DEL REGISTRO BANDERA
BSF PORTB,2 PARA RECONOCER ESTE ESTADO DENTRO DE LA inmediatamente se lee el pin RB6
BSF PORTB,3 INTERRUPCION.
BCF PO RTB,1 LUEGO H A BILIT O LOS P IN E S ADECUADOS QUE
(bloque 11) y allí se detecta cero,
E BCF PORTB,0
PERMITIRAN
V ISU A LIZ A R EL NUMERO 1 EN EL DISPLAY
es posible que hayan ocurrido dos
BCF PORTA,1 DE S IE T E SEGMENTOS. cosas: la primera es que la punta
BCF PORTA,2 FINALMENTE H A B ILIT O EL FUNCIONAMIENTO
BCF PORTA,3 DE LA INTERRUPCION POR EL TMR0
de prueba en ese momento esté
BCF ESTADO, 5 VOY A LA PAGINA 1 leyendo un cero lógico el cual no
BSF INTCON, 5 H A BILIT O IN T . POR TMR0
BCF ESTADO, 5 VUELVO A LA PAGINA 0 se afecta con el cero proveniente
GOTO lo o p

BAJO BCF PORTB, PLED S I LA ENTRADA ESTA EN BAJO, SE DEBE APAGAR © PortB, 7—► 0
BCF BANDERA,0 EL LED DE SA LID A , PONER EN CERO EL B IT 0
BSF PORTB,1 DEL REGISTRO BANDERA PARA SER DETECTADO
r BSF PORTB,2 ESTE ESTADO DENTRO DE LA INTERRUPCION,
F BSF
BSF
PORTB,3
PORTA,1
Y ACTIVAR LOS P IN E S CORRESPONDIENTES DE
LOS PUERTOS PARA V IS U A L IZ A R EL NUEMRO
BSF PORTA,2 0 EN EL D ISPLA Y DE S IE T E SEGMENTOS.
<D No
BSF PORTA,3 FINALMENTE SE ACTIVA LA INTERRUPCION nohz
PortB,6 - 0 ?
BCF PORTB,0 POR TIMERO.
BCF ESTADO, 5 VOY A LA PAGINA 1
BSF INTCON, 5 H A BILIT O IN T . POR TMR0
BCF ESTADO, 5 VUELVO A LA PAGINA 0
GOTO lo op

F igura 10.5 Detección y operación ante un estado de alta im pedancia © PortB, 7- + 1

ráp id am en te. En los blo­ En la porción A del código


©
ques 4, 6 y 9 del d iagram a de se configura el timerOc orno tem-
flujo y parte B del program a, se porizador (para que se incremente Port B, 6 = 1?

hace esta operación . O bserve con los pulsos internos de la m á­


q u e el tiem p o de espera está quina) y no como contador, po­ SI
dado por una ru tin a de tiem po niendo en cero el bit 5 del regis­
den om in ada R E T A R D O y que tro O PC IO N . También se borra
si ha en co n trad o este estado, la bandera que indica una inte­
debe visualizar en el display de rrupción debido al timerO (lo cual F ig u ra 10.6 Diagram a de flujo de la
siete segmentos la letra P. es obligación del programador) y detección de alta impedancia

Curso práctico sobre Microcontroladores m / K lllr A.


Punta lógica

hz ORG 0x000 v e c t o r de r e s e t
GOTO MAIN
© Bandera, 1-*-1
ORG 0x004 v e c t o r de in t e r r u p c ió n
BTFSS BANDERA,1 CHEQUEO BANDERA DE QUE SE HA
GOTO UN0CER0 PRESENTADO UN ESTADO DE ALTA
IMPEDANCIA.
BTFSS PORTB, 5 S I ESE E S EL CASO, CADA QUE
Visualizar H
© BSF PORTB, 5 OCURRA UNA INTERRUPCION, SE ORIGINA
BTFSS PORTB, 4 POR LOS P IN E S 4 Y 5 DEL PUERTO B,
BSF PORTB, 4 UNA SEÑAL DE PWM, GENERADA CAMBIANDO
BTFSC PORTB, 5 ALTERNADAMENTE EL ESTADO DE ESTAS
Habilitar INTE. BCF PORTB, 5 DOS L IN E A S , LAS CUALES CORRESPONDEN
BTFSC PORTB, 4 AL DIODO LED INDICADOR Y AL ZUMBADOR.
XTMRO
BCF PORTB, 4
BSF ESTADO, 5 VOY A LA PAGINA 1
F ig u ra 10.7 Operación cuando se detecta BCF INTCON, 2 BORRO LA BANDERA DE IN T E R . DEL TMR0
alta im pedancia BCF ESTADO, 5 VUELVO A LA PAGINA 0
MOVLW 0x99 CONFIGURO EL PORCENTAJE DE CICLO UTIL
del RBO; la segunda, es que está M0VWF TMR0 EN EL TEMP0RIZAD0R TMR0.
R E T F IE
en estado de alta impedancia y en
F igura 10.9 Código de la interrupción para e l estado de alta impedancia
realidad el cero que se lee en el
puerto R B 6 sea exactamente el tra en alto (bloque 13).
mismo que envió por RB7; es de­ Si las dos pruebas son Rutina de interrupción
cir, que la señal externa no afectó positivas, entonces se
para nada la lectura del PIC. O b­ Si UN0CER0
puede concluir que tie­
PortB, 1 = 1 ?
serve que si en este preciso mo­ ne un estado de alta im­
mento la punta lee una señal lógi­ pedancia, figura 10.7.
ca alta, no habrá ningún proble­ No ©
m a de cortocircuito gracias a R 1 . En ese m om ento © Bandera, 0 = 0 ?'
PW M en PortB, 4
se pone un uno en el bit y PortB, 5
Para estar seguro de que en 1 del registro BANDE­
realidad sí es un estado de alta RA (bloque 14), se po­
©
impedancia, se procede a poner un nen en los puertos los Borrar bandera de
estado alto en RB7 (bloque 12) e bits necesarios para vi­ interrupción X
TIM ER 0
inmediatamente se lee RB6 para sualizar la letra H y se
determinar si también se encuen- habilita al timerO para
nohz que genere su interrup­ Borrar bandera de
Retorno interrupción X
I Bandera, 1 - ^ 0
ción (bloque 16), esto TIM ER 0
©
se hace en el programa

|
\ f
P o rtB ,'
al activar el bit 2 del re­
gistro IN T C O N . Retorno
©

Si alguna de las dos


condiciones no se cum ­
© Si ple, puede esperar un
Port B, 6 = Alto
estado lógico normal,
figura 10.8, se pone en Borrar bandera de
interrupción X
cero el bit 1 del registro TIM ER 0
No
B A N D E R A (b lo q ue
Bajo 17) y se coloca de nue­
vo R B 7 en cero para
i
Retorno

que el sistema funcio­


F ig u ra 10.8 Operación cuando no se Figura 10.10 Diagrama de flujo de la
detecta estado de alta im pedancia ne normalmente. rutina de interrupción

.
S .A . Curso práctico sobre Microcontroladores
Proyectos

Ahora puede evaluar el esta­


BTFSC BANDERA,0 S I NO HAY ESTADO DE ALTA IMPEDANCIA,
do de la punta de prueba (bloque GOTO UNO SE V E R IF IC A EL B IT 0 DEL REGISTRO
BANDERA
18) preguntando por el estado del BTFSS PORTB, 4 PARA DETERMINAR S I SE HA LEIDO UN CERO
pin RB6, esto se hace en la sec­ BSF PORTB, 4 0 UN UNO. S I SE HA LEIDO UN CERO CBIT
BTFSC PORTB, 4 CERO -> 0 ) , SE MANDA UNA SEÑAL DE PWM
ción D del programa; según el es­ HACIA
BCF PORTB, 4 EL ZUMBADOR A UNA FRECUENCIA MENOR
tado de ese pin, el programa lo QUE LA DE HZ.
conduce a la rutina ALTO (si la BSF ESTADO, 5 VOY A LA PAGINA 1
BCF INTCON, 2 BORRO LA BANDERA DE IN T ER . DEL TMR0
entrada está en alto) o a la rutina BCF ESTADO, 5 VUELVO A LA PAGINA 0
MOVLW 0x71 CONFIGURO UN PORCENTAJE DE CICLO UTIL
BAJO si lo que detectó fue un cero MOVWF TMR0 EN EL TEMPORIZADOR TMR0
lógico, bloque 19. En cada una de R E T F IE

esas rutinas se activa o desactiva el


LED indicador y se genera una se­ F igura 1 0 .1 1 1nterrupción para e l estado lógico bajo

ñal en frecuencia P W M que ac­


ciona el zumbador. Finalmente re­ ti va el timerO para que cuente da P W M . Si el b it 1 d el regis­
gresa a la rutina loop para que se los pulsos de reloj internos de tro B A N D E R A no e s tá en
repita el proceso completo. la m áquina; después de un tiem ­ uno, el p ro g ra m a lo lleva a la
po determ inado, el timerO se lle­ e tiq u e ta U N O C E R O en d o n ­
Rutina de interrupción na y se desborda, originan do el de se d etecta si la in terru p c ió n
La rutina de interrupción se en­ llam ado a esta ru tin a y la acti­ se provocó para un estado ló­
carga de generar la frecuencia de vación de la bandera T O IF (bit gico alto o para un estado ló­
salida para el zumbador y el LED 2 del registro I N T C O N ). gico bajo. Esto se hace p regu n ­
indicador. Ella se puede dividir tando p or el bit c e ro del regis­
en tres partes: una para el estado C ad a que ocurre este llena­ tro B A N D E R A , el c u a l fue
lógico alto, otra para el estado do el programa invoca esta ruti­ co n fig u rad o p rev iam en te para
bajo y otra para el estado de alta na en la cual se cam bia el estado c ad a estado antes de activ ar la
impedancia. C ad a una de estas de la salida en los pines 4 y 5 del in te rru p c ió n (b lo q u e 2 3 ).
partes debe generar una frecuen­ puerto B, y se limpia la bandera
cia distinta. La porción para el T O IF (bloque 22) para que la Para c ad a u n o de los dos
estado de alta impedancia la pue­ rutina de interrupción pueda ser casos d eb e e n v ia r un P W M a
de apreciar en el código de la fi­ invocada de nuevo. Debido a que d istin tas frecuencias, b o rrar la
gu ra 10.9 y en el diagram a de la interrupción se da tan rápida­ b an d e ra T O IF y lu e g o reto r­
flujo de la figura 10.10 se en­ mente esta rutina se invoca a una nar al p ro g ram a, b lo q u e s 2 3 -
cuentra el esquem a general de rata m u y alta, de esta manera se 2 6 del d ia g ra m a d e flujo y fi­
esta rutina. La primera opera­ origina una señal cuadrada llama­ g u ra s 11 y 12.
ción que debe hacer es pregun­ UNO BSF PORTB, PLED
tar por el estado del bit 1 del re­ BTFSS PORTB, 5 S I SE HA DETERMINADO UN ESTADO LOGICO ALTO,
BSF PORTB, 5 SE MANDA UNA NUEVA SEÑAL DE PWM HACIA EL
gistro B A N D E R A (bloque 20) BTFSS PORTB, 4 ZUMBADOR, A UNA NUEVA FRECUENCIA MAYOR A
BSF PORTB, 4 LA ENVIADA PARA EL ESTADO DE ALTA
para determ inar si se ha entrado IMPEDANCIA.
a esta rutina después de haber BTFSC PORTB, 5 NOTE QUE ESTA RUTINA DE INTERRUPCION SE
BCF PORTB, 5 HA DIVIDIDO EN TRES SUBRtflTNAS, CADA UNA DE LAS
ocurrido un estado de alta im ­ BTFSC PORTB, 4 CUALES SE ENCARGA DE ENVIAR UNA FRECUENCIA
DISTINTA
pedancia (recuerde que cuando BCF PORTB, 4 PARTIENDO DE UN SOLO TEMPORIZADOR.
se detectó el estado de alta im ­ BSF ESTADO, 5 VOY A LA PAGINA 1
BCF INTCON, 2 BORRO LA BANDERA DE IN T ER . DEL TMR0
pedancia este bit se puso en uno). BCF ESTADO, 5 VUELVO A LA PAGINA 0
MOVLW 0xF0 CONFIGURO EL PORCENTAJE DE CICLO U T IL
MOVWF TMR0 EN EL TEMPORIZADOR TMR0
('lia n d o se ha detectado un R E T F IE

estado de alta im pedancia se ac- F igura 10.12 Interrupción para e l estado lógico alto

Curso práctico sobre Microcontroladores m K / T ,:


Punta lógica

Ensamblaje del proyecto C a n t. R e f.


L IS T A D E M A T E R I A L E S

D e s c r ip c ió n
1 IC1 M ic ro c o n tro la d o r P IC 16F84
Figura 10.13 Conjunto 1 01 T ra n s is to r d e p ro p ó s ito g e n e ra l NPN. 2 N 3 9 0 4
1 DISP1 D is p la y d e s ie te s e g m e n to s c á to d o c o m ú n
de componentes 1 BZ1 B u z z e r p ie z o e lé c tric o m in ia tu ra , Q M B -1 2
electrónicos y los 1 01 D iodo re c tific a d o r d e p ro p ó s ito g e n e ra l 1 N 4 0 0 4
1 02 D io d o LED ro jo d e 5 m m
accesorios que se 1 C1 C o n d e n s a d o r e le c tro lític o d e 1 0 0 u F * 25V
requieren para 1 C2 C o n d e n s a d o r c e rá m ic o d e 0.1 uF - 5 0 V
2 C3 y C4 C o n d e n s a d o re s c e rá m ic o s d e 2 2 p F - 50V
ensam blar la punta 1 XT1 C ris ta l d e q u a rz o d e 4M H z
1 R1 R e s is te n c ia d e 1 0 k - 1 / 4 W
lógica de este proyecto.
\ / 8
1
R 2 a R9
R 10
R e sis te n c ia s d e 3 3 0 - 1/4W
R e s is te n c ia d e i k - 1 /4 W
1 R11 R e s is te n c ia d e 1 0 - 1 / 4 W
1 K -3 2 7 C irc u ito im p re s o CEKIT
1 C o n e c ta r d e to m illo d e 2 pin e s
Este proyecto constituye una valiosa herramienta para la reparación
1 B a se p a ra c ir c u ito in te g ra d o d e 1 8 p in e s
y desarrollo de proyectos electrónicos que debe tenerse en el 1 P u n ta d e p ru e b a m e tá lic a
1 C a im á n m in ia tu ra , rojo
laboratorio de electrónica de cualquier persona. Para e l ensamblaje 1 C a im á n m in ia tu ra , n e gro
de la tarjeta tenga en cuenta los siguientes pasos: 1m C able d ú p le x N o 2 4 . ro jo y n e gro

Paso 1 Paso 5
Con un alambre delgado, instale y suelde los puentes marcados en Instale y suelde e l condensador electrolítico (C2) y e l crista l de
e l circuito impreso, instale y suelde también las resistencias, la base cuarzo de 4 MHz (XT1).
y e l diodo rectificador Figura 10.18
Figura 10.14

Paso 6
Instale y suelde e l borne de conexión para la entrada del cable de
Paso 2 alim entación.
Luego instale y suelde e l transistor NPN de propósito general 0 1 . Figura 10.19
Figura 10.15

Paso 3
Instale y suelde e l diodo LED (D2), el display de siete segm entos Paso 7
cátodo com ún (DISP1) y e l transductor piezoeléctrico (BZ1). Por últim o se debe soldar la punta de prueba m etálica p o r el
Figura 10.16 extrem o con form a de punta del circuito im preso y p o r su lado de
cobre, para ello, use pinzas y abundante soldadura.
Figura 10.20

Paso 4
Paso 8
Instale y suelde los tres condensadores cerám icos C2, C3 y C4.
Apariencia final de la punta lógica com pletam ente ensamblada.
Figura 10.17
Figura 10.21

Paso 9. Pruebas finales


Para alimentar el circuito debe usarse una fuente CC entre 3.5 y 6.5 V, una vez alimentado debe visualizarse la letra H en el display indicando el
estado de alta impedancia, y el LED iluminará modulado al 50% de su brillo total. Cuando la punta sea llevada a un nivel lógico bajo, e l LED se
apagará y el display visualizará un 0, por e l contrario cuando el nivel de su punta sea alto (más de 2 .5 Z), el LED se iluminará plenamente y el
display mostrará un 1. Adicionalm ente e l circuito cuenta con un Buzzer que indica con dos tonos los estados alto y bajo.

e m ir .:. Curso práctico sobre Microcontroladores


PROGRAMADOR DE MEMORIAS
SERIALES V!A‘ - f l l

Las memorias EEPROM de tipo serial han tenido gran


acogida en el mercado electrónico gracias a su reducido
tamaño físico y a su bajo consumo de potencia, convir­
tiéndose en dispositivos ideales para proyectos que re­
quieran almacenamiento de algún tipo de información.
En este proyecto usted podrá construir su propio pro­
gramador de memorias seriales con el cual podrá gra­
bar datos mediante una computadora.

Características
• Tamaño reducido
• Programa de usuario interactivo y fácil de manejar
• Soporta memorias 24XX
• Conexión al puerto paralelo de la computadora

Curso práctico sobre Microcontroladores


Program ador de m em orias seriales i
Las m em orias de tipo EE- cio nam ien to de dispositivo (3
P R O M tienen como su princi­ pines) que no existe en las de A0 |Vcc
pal cualidad perm itir el alm ace­ interfaz paralela y, por últim o,
A1 |NC
nam iento y la sobreescritura de los pines de alim en tació n del
datos por medio de los voltajes circuito (2 pines). Los datos y A2 ISC L

de operación normal de los cir­ la dirección de las posiciones de Vss ISDA


cuitos electrónicos y sostener la m em o ria usan ún icam en te uno
inform ación por m uchos años o dos pines d e p en d ie n d o del
F igura 11.1 Distribución de pines de la
sin energía de alimentación. Se tipo de co m unicación utilizada m em oria serial 24LC04
pueden encontrar circuitos inte­ (dos o tres hilos). La velocidad
grados de m em orias EE PRO M de transferencia de datos puede que co rresp o n d e a los d isp o ­
paralelas, compatibles pin a pin variar desde 100 KHz hasta 10 sitivos de c o m u n ic a c ió n serial
con circuitos de m em oria R A M M H z , dependiendo del tipo de de dos hilos (pin S D A y S C L ).
o de m em o ria E P R O M . Este m em o ria y del sistema de co­
tipo de m emorias, precisamente m u n icació n utilizados. Este tip o de m e m o ria s
por ser de interfaz paralela, tie­ u tiliz a un p rotocolo de c o m u ­
ne m uchos pines externos por El p r o g r a m a d o r q u e se n ic a c ió n se ria l q u e d e p e n d e
m edio de los cuales recibe y en­ d e sc rib e a c o n t in u a c ió n hace de la a cció n q u e se v a a e je ­
trega los datos y permite el di- uso del p u e r to p ara le lo d e la cu tar, es d ecir, si se va a leer
reccionamiento de las distintas c o m p u t a d o r a p a r a e n v ia r y u n d a to , a escrib ir, o si se va
posiciones de almacenam iento. re c ib ir la in fo rm a c ió n h a c ia y a e n v i a r u n a d i r e c c i ó n . El
Debido a esto, los circuitos in­ d esd e el c ir c u ito in te g r a d o de p ro g ra m a q u e e je c u ta la c o m ­
tegrados son de gran tam año fí­ m e m o r ia E E P R O M d e tipo p u ta d o r a d e b e r á s e g u ir paso
sico, im pidiendo ser utilizados serial q u e se e n c u e n tr e in s e r ­ a paso la se c u e n c ia del p ro to ­
en aplicaciones que requieran ta­ ta d o en el c ir c u it o e x te rn o . colo, d e p e n d ie n d o del tip o de
m año reducido. Todo el c o n ju n to , c ir c u ito y m e m o r ia q u e se desea p ro g ra­
p r o g r a m a , p u e d e a d q u ir ir s e m a r o leer.
C o n la s m e m o r i a s E E ­ b a jo la r e fe r e n c ia K - 3 2 8 de
P R O M de interfaz serial, el con­ C E K IT. Si la m e m o ria tie n e más
trol se ha reducido solam ente a de 2 5 6 posiciones, el direccio-
unos cuantos pines que son u ti­ Descripción de la memorias n a m ie n to se h ace p o r m edio
lizados para en trada o salida de seriales EEPROM de p á g in a s sien d o las p r im e ­
datos en forma serial (1 ó 2 pi­ En la figura 11.1 puede apreciar ras 2 5 6 la p á g in a 0 (cero), las
nes), habilitación (1 pin ), reloj el diagram a de pines de la me­ posicio nes 2 5 6 a 511 la p á g i­
de sincronización (1 pin), direc- m o ria con referencia 2 4 L C 0 4 na 1 y así su cesivam en te.

Escrit Recon
Stop
Dato EE
1 (1 M )
(8 bit. (1 bit,
0
1
Recon
Start 0 Posic
Control
(1bit, (8/7/7) p
(1 bit\
á
9
0 Start Lee
■ ip
Lect
(1 bit) Dato •* j ib
m H

Figura 11.2Secuencia d e l proceso de lectura y escritura en m em orias tipo 24XX

C E K IT , A Curso práctico sobre Microcontroladores


Proyectos

Dentro de la inform ación do la secuencia que debe seguir integrados que se van a progra­
que se debe enviar a las m em o­ para escribir o para leer en me­ mar. En la figura 11.3 se mues­
rias seriales se incluyen uno o va­ moria de tipo 24LCXX. Obser­ tra el diagram a esquemático y en
rios bits correspondientes a los nú­ ve que para cada operación debe la figura 11.4 el circuito im pre­
meros de página de la memoria. recibir un reconocimiento de la so con la respectiva ubicación de
memoria que consiste en un pul­ los componentes sobre el mismo.
Secuencia de operación so bajo durante un ciclo del reloj.
de las memorias A través del puerto parale­
En la figura 11 .2 puede apreciar Durante este reconocimien­ lo de la co m p u tad o ra, el m is­
el diagrama de bloques indican- to la computadora debe tener una mo q u e u tiliz a la im p reso ra,
salida alta en el pin de datos, con p uede leer los datos que co n ­
el fin de permitir a la memoria es­ tiene la m em o ria y mostrarlos
cribir el pulso bajo y poder saber en la p a n ta lla con su respecti­
por medio de éste si realmente está va d irección. Así m ism o , p u e­
entendiendo la información que de en viar un d ato a d e te rm i­
le está enviando. n ad a direcció n de los circuitos
de m em o ria para que éstas lo
Descripción del circuito alm acen en en form a definitiva
Para la co m unicación entre la hasta q u e se sobreescriba o bo­
computadora y la memoria, debe rre tal posición.
elab o rar un p equ eñ o circuito
electrónico que tiene como fin C o n el fin de poder inser­
servir de interfaz entre dichos tar o retirar los chips de m e m o ­
dispositivos y alojar los circuitos ria del circuito electrónico sin
n ecesidad d e ap ag ar m a n u a l­
O m ente la fuente de a lim e n ta ­
cc
o .
LU
O X ción, se ha diseñado un p eq u e­
X
LU o ño sistem a de tal form a que las
'o CO r^l <o LO
O — I < « CNJ

>
o X
X
O
CO
o
CO
2 c m e m o r ia s e sté n e n e rg iz a d a s
CO
o
o
— 1 ■5 8 (+Vcc) so lam en te d u ra n te su
E
CM ro
u. p ro gram ació n . A través de una
C
o
J)
de las co m p uertas de I C 2 , se
envía la señal para que los tran ­
sistores T R 1 y T R 2 su m in is ­
tren la a lim e n ta c ió n positiva
(Vcc/EEPRO M ) a los circuitos
d e m e m o r ia . Por m e d io d el
LE D 2 puede visualizar el ins­
tan te en que las m em orias es­
tán con alim en tació n positiva

Figura 11.3
Oo o o o o o o o in rvi Diagrama
oo o o oo o o o o CO esquem ático del
program ador de
m em orias
seriales

Curso práctico sobre Microcontroladores S .A .


Programador de memorias seriales

00000000 C o n e c to r D B -2 5 p a ra el
A lim e n ta c ió n 00000000 o p u e rto p a ra le lo

SDCkCl M A C IO N

LED in d ic a d o r d e la C o n e c to r ( socket) donde


a lim e n ta c ió n se in s ta la la m e m o ria
q u e se va a p ro g ra m a r

LED in d ic a d o r d e la
p ro g ra m a c ió n

Figura 11.4 Circuito im preso con la ubicación de los componentes

y con el LED1 el estado de los n a m e n te u n a resistencia p u lí Rutinas para la


5 voltios de alim e n tac ió n ge­ up y a q u e, com o son de colec­ programación y lectura
neral del circuito. tor abierto, el estado lógico alto desde la computadora
de salida debe ser puesto exter­ (en lenguaje C)
C o n la m e m o ria que tiene nam ente por m edio de resisten­ La sig u ien tes rutin as están ela­
interfaz a dos hilos (24L C X X ) cias a +Vcc (R 2, R5 ,R 6 y R7). b o r a d a s e n f o r m a in d e p e n ­
se d eb e tener especial cuidado d ie n te (fu n cio n es) p ara cada
y a q u e u tiliza un m ism o pin El puente de diodos BR1 tie­ u n a de las d istin ta s o p era cio ­
para en trad a y salida de datos. ne como objeto rectificar el vol­ nes q u e va a e je c u ta r co n las
En este caso se deben utilizar taje de entrada de alimentación m e m o r ia s s e r ia le s , es d e c ir :
co m p u ertas de colector ab ier­ al circuito, el cual puede ser de leer d ato s, esc rib ir d ato s y d i­
to de tal m odo que, si h ay c o n ­ corriente alterna o de corriente r e c c io n e s , in ic ia liz a r , parar,
flicto entre los datos que en ­ continua, entre 10 y 20 voltios. etc. P uede u tilizarlas p ara ela­
tran y salen, no ocurra u n cor­ El integrado regulador IC1 su­ b o rar u n p ro g ra m a c o m p le to
tocircuito y posible daño de los m inistra +5 voltios co n tin u o s y a g re g a rle u tilid a d e s , d e p e n ­
co m p o n en tes electrónicos. Se constantes al circuito. d ie n d o d e la h a b i li d a d q u e
h a utilizado el circuito in tegra­ te n g a p a ra la e s tr u c tu r a c ió n
do IC 2 con 6 co m p u ertas de En las figuras 11.5 (a, b, c, d el m ism o ; todo este código
colector abierto, de las cuales d y e) se ilustra la presentación se e n c u e n t r a d i s p o n i b l e en
hacemos uso de tres para la m e­ del program a de la com putado­ n u estra p á g in a en la in tern et.
m o ria y u n a para el circuito de ra con indicación de cada una
control de alim e n tac ió n (Vcc/ de sus partes. C o n ellas puede Start y stop de la
E E P R O M ) m en cio n ad o an te­ guiarse para m anejar adecuada­ memoria 24LCXX
riorm ente. A este tipo de co m ­ m ente la interfaz de usuario de­ En la f ig u r a 1 1 .6 se o bservan
puertas les debe agregar exter- sarrollada en D O S. los d ia g r a m a s de tie m p o s co-

100 fé lM M H T s * Curso prácticí


¡w
Proyectos

rre sp o n d ie n te s al ciclo de ini- Reconocimiento en las o p e ra c ió n en uso h a t e r m in a ­


c ia liz a c ió n y de fin a liz a c ió n memorias 24XX do en fo rm a c o r r e c ta . Si la
q u e se d e b e n e fe c tu a r sobre la Las m e m o r ia s de tip o 2 4 X X m e m o r i a e s t a b a r e c ib ie n d o
m e m o ria tip o 2 4 L C X X , antes e n v ía n un r e c o n o c im ie n to a in f o r m a c ió n , d e b e e n v ia r un*
y d esp u és d e c u a lq u ie r o p e ­ la c o m p u ta d o r a a través del n iv el a través d e la lín e a de
ra c ió n sobre ella. p in d e d ato s in d ic a n d o q u e la d a to s p a ra p e r m itir le a la m e-

PROGRAflADOB DE f1EH0 RlAS SERIALES


T ec lean d o la le tra D e s ta b le c e
u n a d ire c c ió n e s p e c ific a d e n tro — |
d e la m e m o ria (Gtrabar un byte en d irecció n actual
(L)eer un byte
íD)irecc ion
(P)ágina
T e c le a n d o la le tra A la ta rje ta (T)ipo
e je c u ta u n p ro c e d im ie n to de (A )Ie e rla toda
le c tu ra s o b re to d a la m e m o ria (S )a lir

En e s te m o m e n to e l p ro g ra m a Oprina la te c la de selección
e s p e ra un a o rd en d el u s u a rio

F igura 11.5a M enú princip al del program a

Al te c le a r la le tra A a p a re c e una
v is u a liz a c ió n c o m o la q u e se
m u e s tra . En la p a rte izq u ie rd a
e s tá n las p o s ic io n e s d e m e m o ria
y a la d e re c h a s u s c o n te n id o s

C o n te n id o s de la m e m o ria

P o sicio n es de la m e m o ria

F ig u ra 11.5b Visualización del contenido de la memoria

Curso práctico sobre Microcontroladores


Programador de memorias seriales

Cuando ha e sta b lecid o una


d irecció n e s p e cific a por
m edio de la letra D, puede (G)rabar un byte en d ire c c ió n actual |
le e r el contenido de dicha ------- (L )e e r un bute 1
posición sin te n e r que (D )ire ccio n 1
o b se rva r toda la m em oria.
(P)ágina i
Para ello te clee la letra L
(T)ipo
( A) leer la toda 1
( S ) a I i11r
\ \ I / XX i

Oprina la t e c la de selección

Entre tip o de nennria


(1) 24LCXX
Tecleando la letra S s a le
del program a

F igura 11.5c Lectura de un byte

El procedimiento para el manejo de este programa es establecer


primero una dirección inicial donde va a programar un dato. A
partir de allí el programa le pedirá que llene las direcciones
consecutivas de la memoria. También es posible seleccionar,
además de la dirección, la página de memoria.

I
PROGRAMADOR DE MEMORIAS SERIALES

(G)rabar un byte en dirección actual


(L)eer un byte
Teclendo la letra P puede
(D)ireccion
a c c e d e r a algu na página
e s p e cífic a de la m em oria
(P)ágina
( T) i p o
(A ) leer la toda
(S )a I i r
En e ste m om ento se
origina en la p an talla una Oprina la t e c la de selección
lin ea de co m an d o s en la
» Entre # de página (1 ó 2 ): 1.
cu a l usted debe
s e le cc io n a r la página
____________________________________________________________________________________________________________________

Figura 11.5d Selección de página

sm n eiT , A. Curso práctico sobre Microcontroladores


Proyectos

PROGRAHADOR DE H E Ñ IR IA S S E R IA L E S I
T e c le a n d o la le tra G p u e d e
a lm a c e n a r un n ú m e ro
(G)rabar un b y t e e n d i r e c c i ó n a c t u a l
h e x a d e c im a l en la posición
(Lüeer un byte
d e te rm in a d a co n la le tra D
(D)irecc ion
(P)ágina
(T)ipo
(A) leer I a toda
(S )a lir

Oprina la te c la de selección
En la p a n ta lla s e m u e s tra
la d ire c c ió n a c tu a l d o n d e , dirección: H00
va a p ro g ra m a r
Entre el byte a e s c r i b i r ( (S ) para terninar )
En e s ta lín e a d e b e te c le a r
e l d a to q u e d e s e a
------------- . H?e
p ro g ra m a r en d ic h a
po sició n d e m e m o ria

Figura 11.5e Programación de la memoria

m o r ia e s c rib ir un nivel bajo ca, p e rm ite el en v ío de u n bit Lectura de datos en


in d ic a n d o q u e la o p e r a c ió n con sus respectivos pulsos de memoria 24XX
fue sa tis fa c to ria . reloj h ac ia los p in es de datos Para la secuencia de lectura de
y reloj de las m em o rias. este tipo de m em o ria debe es­
Lectura y escritura de los cribir u n a rutina en la cual debe
datos en forma serial A sí m ism o , se h a e la b o ra ­ hacer uso de la ru tin a anterior
S e d eb en e n v ia r los d ato s en do la r u tin a e n v ia () q u e reci­ de lectura de un byte así como
fo rm a to serial a c o m p a ñ a d o s be el d a to co n ta m a ñ o de un de las rutinas de start, stop , etc.
d e ciclo s de reloj para su s in ­ byte y lo o rgan iz a para e n v ia r­ 9

c ro n iz a c ió n . L a r u t in a básica lo b it a bit p or m e d io de la r u ­ Todas las rutinas de lectu­


fu e d e n o m i n a d a e n v i a b i t Q tin a anterior. ra, reconocim iento y escritura
q u e, co m o su n o m b re lo in d i- sobre estas memorias se encuen­
A l ig u a l q u e co n la escri­ tran disponibles en nuestra pá­
tu r a d e los d ato s d o n d e debe gin a de la internet para que us­
Stert(24LCXX)
procesar un byte p ara en viar ted las aproveche y construya su
bit a bit hacia la m em o ria, para propio programador.
SDA la le c tu ra es n ecesario se g u ir
el proceso c o n tra rio , es decir,
Stop (24LCXX)
re c ib ir b it a bit y en la c o m ­
p u ta d o ra co n fo rm a r el byte.

SDA El d ia g r a m a d e tiem p o s
p a r a la le c t u r a es el m is m o
Figura 11.6 Ciclos de inicio y finalización p a ra la e s c r itu r a y a p a re c e en Figura 11.7 Lectura y escritura serial de
de operación de una m em oria 24XX la f ig u r a 1 1 .7 . b its y bytes

É,
Curso práctico sobre Microcontroladores
:
Programador de memorias seriales

Ensamblaje del proyecto Cant. Reí.


L IS T A DE M A T E R IA LE S
D escripción
1 IC1 Regulador positivo fijo de +5V-1A. 7805
1 IC2 Circuito integrado 7407
Figura 11.13 Conjunto 1 KC3 Memoria serial EEPRO M 24LC04

de componentes 1 01 Transistor de propósito general NPN. 2N3904


1 Q2 Transistor de propósito general PNP, 2N3906
electrónicos y los 1 BR1 Puente rectificador circular de 1A, W06M
1 D1 Diodo LED rojo de 5mm
accesorios que se 1 02 Diodo LED verde de 5mm
requieren para 1 C1 Condensador electrolítico de 1000uF - 25V
3 C2.C3 y C5 Condensadores cerám icos de 0.1 uF - 50V
ensam blar el 1 C4 Condensador electrolítico de 100uF - 25V
2 R iy R4 Resistencias de 470 • 1/4W
program ador de 2 R2 y R3 Resistencias de lk - l/ 4 W

m em orias seriales 3 R5 a R7 Resistencias de I0 k-1 /4 W


1 J1 Conector de alimentación AG/DC
EEPROM. 1 J2 Conector DB25 macho para circuito impresos
1 K-328 Circuito impreso CEKIT
1 Base para circuito integrado de 14 pines

Este proyecto es una herram ienta ú til para program ar las Chasis metálico K-328
Patas de caucho pequeñas
m em orias seriales de la fam ilia 24LCXX. Para el ensamblaje de la Socket en línea de 8 pines
Tomillos de 1/2"Xl/4" con sus tuercas
tarjeta tenga en cuenta los siguientes pasos: Separadores plásticos

lié
Paso 7 i.'- Paso 4
• •
Con un alambre delgado, Instale y suelde el
instale y suelde los puentes regulador de voltaje
marcados en el circuito integrado IC1 (7805) y el
impreso, e instale y suelde conector de alim entación
también las resistencias. CA/CC.
Figura 11.14 Figura 11.17

CEKIT K-328 -

Paso 2 Paso 5
Luego instale y suelde la Instale y suelde el
base para e l circuito conector para e l puerto
integrado IC2, los paralelo D B -25 m acho, en
conectores (sockets) en la posición indicada para
línea para la memoria, y J2, y los tres
los dos diodos LED. condensadores cerám icos
Figura 11.15 de 0.1 /jF .
Figura 11.18

Paso 3
Instale y suelde e l puente Paso 6
re ctificad o r circular BR1 y Por últim o suelde los
los transistores 01 y Q2. condensadores
Figura 11.16 electrolíticos C1 y C4.
Figura 11.19

Paso 7. Pruebas finales


Para alimentar e l circuito debe usar una fuente CA/CC entre 10 y 20 V, una vez alimentado debe activarse el LED indicador
de Vcc (ROJO). En el momento en que da la orden de programación desde la computadora , la alimentación a la memoria
se activará, y se encenderá momentáneamente el LED indicador de programación (VERDE).

Curso práctico sobre Microcontroladores


GENERADOR DE MELODÍAS
En este proyecto construirem os un dispositivo
generador de efectos musicales, que puede ser
m u y agradable para incorporarlo en nuestro
hogar, sitio de trabajo, o sim plem ente como un
obsequio.

Características
• M icrocontrolador M otorola
• Tam año reducido
• E m ulación de notas musicales
• Salida por m edio de parlante

Curso práctico sobre Microcontroladores é g m r :


Generador de melodías i

Funcionamiento
La ciencia de los m icrocontro­
ladores p uede ser ap licad a en
infin idad de cam pos del cono­
cim ien to y la m úsica n o podía
ser la excepción. M an ip u lan d o
u n a señal de salida por un pin
del m icrocontrolador y ajustan-
do u n a escala de notas m usica­
les adecuada, podem os generar
u n a agradable m elodía musical.

M u c h o s d isp o sitivo s m o ­
dernos en v ían señales au d ib les
a sus usuario s para in d ic a rle s
a lg u n a c o n d ic ió n p r e d e te r m i­
n a d a o estado d el sistem a que
se está c o n tro la n d o . Para ser
a g r a d a b le s al o íd o h u m a n o ,
estos so n id o s d eb en ajustarse
a la esc a la m u s ic a l. M u c h o s
circu ito s integrad o s en el m e r­
cad o p ro p o rc io n an estas cap a­
c id a d e s de so n id o , p o r e je m ­
plo, u n g e n e ra d o r p ro g ram a-
ble de so n id o o u n m en sajero
de voz co m o el I S D 1 0 1 6 .

El circuito que se muestra


en la figu ra 12.1 no utiliza un
generador de sonido dedicado,
sólo genera sonidos m ed ian te
rutinas de programación. C om o
se puede apreciar su topología es
m u y sencilla, un microcontrola­
dor con oscilador basado en cris­
tal y un pin de salida de la señal
en frecuencia que produce el so­
nido, aplicada sobre un parlante.

El circuito utiliza un micro­


controlador M C 6 8 H C 9 0 8 J K 3
de M otorola elim inando la ne­
cesidad de un circuito integrado
de sonido. Tal vez muchos no
estemos m u y relacionados con el Figura 12.1 Diagram a esquem ático del circuito

Curso práctico sobre Microcontroladores


Proyectos

o
d
D
C'
B
o
v—
d
D G

D E F G A B C D E F G
Nota I C
DO RE MI FA SOL LA SI D01 RE1 mu FA1 S0L1
f, Hz 264 297 330 352 396 440 495 528 594 660 704 792
T, mSEC 3.78 3.36 3.04 2.84 2.51 2.3 2.0 1.9 1.68 1.5 1.4 1.26
1 /2T, mSEC 1.89 1.68 1.52 1.42 1.26 1.14 1.01 0.94 0.84 0.76 0.71 0.63

Figura 12.2 Tonos m usicales con sus respectivas frecuencias y ubicación dentro d e l pentagram a

m u n d o artístico, en especial el c u e n ta , se trata d e la d u ra c ió n Descripción del


musical; para este caso tengamos q u e va a te n e r c a d a to n o d e n ­ programa
en cuenta algunos conceptos. tro de la m e lo d ía , p a ra e llo se El primer paso en la programa­
h a n e s ta b le c id o un o s s ím b o ­ ción, de un sistema de salida de
L as m e l o d í a s o p a s a je s los q u e se c o lo c a n d e n tro del sonido, es la elección del tipo de
m u sicales se co n fo rm a n a g r u ­ p e n t a g r a m a y le d ic e n e x a c ­ señal de sonido: sonidos indivi­
p a n d o u n id a d e s d e n o m in a d a s ta m e n te la d u r a c ió n q u e c ad a duales o una sección de una me­
notas o tonos m u sic a le s (D O , u n o d e ello s d e b e m a n te n e r. lodía. En este caso se han agru­
RE, M I , FA, S O L , LA, SI) los En la f ig u r a 1 2 .3 se m u e stra n pado una serie de tonos y dura­
cuales p odem os crear g e n e ra n ­ d ic h o s sím b o lo s q u e le i n d i ­ ciones en tablas ubicadas en me­
d o fre c u e n c ias d e te r m in a d a s c a n la d u r a c i ó n d e l t o n o . moria, las cuales se van enviando
desde el m icro co n tro lad o r. En Ellos se d e n o m in a n : red o n d a, de forma secuencial por un pin
la f ig u r a 1 2 .2 p o d em o s a p re ­ b la n c a , n e g ra , co rch ea, s e m i­ del microcontrolador hacia el dis­
c ia r los to n o s m u sic a le s co n c o rch e a (s e g u ra m e n te h ab rá n positivo de salida (parlante).
su resp ec tiv a u b ic a c ió n d e n ­ m á s, p o r eso les p e d im o s d is ­
tro d e l p e n t a g r a m a ( d e p e n ­ c u lp a s a lo s e x p e r t o s en la La prim era parte del pro­
d ie n d o de la u b ic a c ió n e x a c ­ m a te r ia ). gram a, figu ra 12.4, adem ás de
ta d e n t r o de esta s c in c o l í ­
n eas, sa b e m o s el to n o co rre s­
p o n d ie n te ) y las fre c u e n c ias Nota O
n ecesarias q u e se d eb en g e n e ­
ra r p a r a o r ig in a r sa tisfa c to ria ­
D uración Redonda Blanca Negra Corchea Sem icorchea
m e n te el to n o m u sic a l. 1/2 1/4 1/8 ! 1/16

DR 16 8 1
E x iste o tro p a r á m e tr o
im p o r ta n te q u e d eb e te n e r en Figura 12.3 Duración de las distintas notas m usicales

Curso práctico sobre Microcontroladores m m r .


Generador de melodías i

definir el m ap a de m em o ria en D * F G A B c D E F G
Nota I c

que usted va a alm acenar el pro­ DO RE MI FA SOL LA SI D01 RE1 mu FA1 S0L1

gram a dentro del m icrocontro­ NR 189 168 152 142 126 114 101 94 84 76 71 63

lador, establece las constantes


Tabla12.1Valores correspondientes a l registro NR para la creación de los distintos
asociadas con cada u n a de las tonos musicales
notas, de acuerdo a la figura
12.2. La creación de la m elodía en posiciones determ inadas eti­ sirva como pines de salida. El pin
im p lica ubicar tablas dentro de quetadas com o M E L y D U R . 7 del puerto D es el elegido para
la m em o ria de program a, una C om o puede observar, las direc­ ser la salida de la señal en fre­
para las notas que conform an la ciones de estas tablas ocupan el cuencia que brindará el sonido.
m elo d ía y otra para la duración final de la E P R O M disponible. Luego observe la etiqueta PRIN ­
que debe tener cada una de ellas. CIPAL y unas cuantas líneas de
Estas direcciones se establecen El segundo bloque del pro­ código; este pequeño conjunto
g ra m a es el que está en la figura conforma el bloque principal del
; CURSO P R A C T IC O S O B R E 12.5, en este código se destaca p ro gram a, en el cual, sim p le­
; M ICRO CO N TRO LAD O RES la definición de las variables N R mente, se invocan dos rutinas,
; C E K IT S .A . y DR. N R corresponde al regis­ una de retardo y u n a de genera­
; GENERADOR DE M E L O D ÍA S tro d o n d e está el valor necesa­ ción de la melodía, las cuales se
rio para crear cada uno de los repiten continuam ente, como se
S ln c lu d e ‘ jl3 r e g s .in c ’ tonos musicales de acuerdo a la muestra en la figura 12.7.
R A M S ta rt EQU $0080 tabla 1 2 .1 , y D R es el registro
donde se alm acena la escala de *****************************
R o m S ta rt EQU $EC 0 0

R o m F in EQU SF000 tiem po necesaria para el buen ; - D ESD E ESTE PUNTO S E

RESET_V EC EQU $FFFE funcionam iento de cada sím bo­ ;IN IC A LA E JE C U C IO N D EL

;Reset V e c to r lo m usical, de acuerdo a lo dis­ ; CODIGO D E S P U E S DE UN R E S E T .

; C O N STA N TES A S IG N A D A S A CADA puesto en la figura 12.3. *

* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
TONO M U S IC A L

DO EQU 189T El tercer bloque del progra­ IN IC IO :

RE EQU 168T m a es el lazo principal de todo RSP ; IN C IO LA P I L A

MI EQU 1 52T el proyecto, figura 12.6. Inicial­ C LRA

FA EQU 1 42T m ente se configura el funciona­ C LR X

SOL EQU 126T miento del puerto D para que le MOV # $ F F ,D D R D ; C O N F I­

N EQU 2 6 T ; NÚMERO GURO E L PU ER T O D COMO

; DE NOTAS DE LA M E LO D ÍA ; S A L ID A S
o rg R a m S ta rt
ND EQU 1 0 0 T ; NÚMERO C L R PORTD ; LO BORRO
NR RMB 1 ; R E G IS T R O D EL
; de R E P E T IC IO N E S DE LA M ELO D ÍA
;T 0 N 0 DE UNA NOTA
SND EQU 7 P R IN C IP A L
DR RMB 1 ; R E G IS T R O DE
DUR EQU R o m F in - N JS R RETARDO
; DURACIÓN D EL TONO
; T A BLA DE DURACIÓN DE LOS TONOS JS R M E LO D IA ; E M P IE Z A
NDR RMB 1 ; R E G IS T R O DE
M EL EQU R o m F in - N - N ; ; LA M Ú S IC A .
; DURACIÓN DE LA NOTA
; T A B L A DE LO S TONOS DE LA S JS R R ET A R D O ; ESTE ES
MEMX RMB 1
; N O T A S. AMBAS T A B L A S S E JS R R ET A R D O ; EL LAZO
MEM1 RMB 1
; U B IC A N A L F IN A L DE LA BR A P R I N C I P A L ; P R IN C IP .
o rg R o m S ta rt
; M EM O RIA DE PROGRAMA.

Figura 12.4 Definición de las constantes Figura 12.5 Definición de las variables Figura 12.6 Cuerpo principal del
de cada tono m usical dentro de la RAM program a

m K im . Curso práctico sobre Microcontroladores


Proyectos

D efinir va lo r de r e c o r r id o to d a s la s p o s ic io ­ m e lo d ía (en este caso se h a n


los tonos
nes d e la t a b la e s t a b le c id a s to m a d o 2 6 n o ta s ).
p a r a a lb e r g a r las n o ta s d e la
El c ó d ig o d el p r o g r a m a
C onfigurar el
puerto de salida **************************** q u e g e n e r a las n o tas se a p re ­
* S U BR U TIN A DE GENERACIÓN D E * cia en la fig u ra 1 2 .1 0 y su res­
* LA M E LO D ÍA * p ectivo d ia g r a m a d e flu jo en
la f ig u r a 1 2 .1 1 . E n e l l a se
M E L O D ÍA : hace u n a c o n m u ta c ió n del
p in d e s a lid a q u e se r e p it e
CLRX ; 0 -> X
MI LDA M E L .x ; CARGO M elodía
;E L TONO DE LA NOTA
STA NR ; EN EL Cargo tono— ►NR
¡R E G IS TR O NR
LDA D U R ,x ; CARGO
;L A DURACIÓN DEL TONO
i
Cargo duración— ►DR
Figura 12.7 Diagram a de flu jo d e l lazo STA DR ; DE LA
p rin cip a l d e l program a
¡NOTA EN EL REGISTRO DR
LDA #ND ; CARGO i
L a s u b r u t in a M E L O D I A ¡E L NÚMERO DE R E P E T IC IO N E S Genero nota
es la q u e se e n c a rg a d en tro del STA NDR ; DE LA
p ro g r a m a d e g e n e r a r el p a s a ­
je m u s ic a l q u e b u sc a , su c ó ­
; NOTA EN EL REGISTRO NDR
STX MEMX ;
i
Decremento
d ig o es el q u e se m u e s tr a en ; GUARDO X EN MEMORIA duración

la fig u ra 1 2 .8 y su d ia g r a m a M2 JS R NOTA ;
d e flu jo el d e la fig u ra 12.9. ; GENERO LA NOTA
Este s e g m e n to in ic ia liz a un DEC DR

a p u n t a d o r (x) h a c ia c a d a p o ­ BNE M2 Duración = 0?


s ic ió n d e la ta b la , d e sd e d o n ­ BCLR SND,PO RTD ; No

d e se t o m a n los v a lo r e s d e ; HAGO UNA PAUSA DE 1 0 ms

to n o y d u r a c ió n y se a lm a c e ­
n an en los registros N R y D R ;
LDX #100T
; DE CADA NOTA
; ANTES
i Si

Decremento
se in v o c a u n a r u t in a p ara g e ­ JS R RETAR número de notas

n e rar la n o ta y se e je c u ta h as­ LDX MEMX ;

ta q u e se h a y a c u m p li d o el ; RECARGO X DESDE LA MEMORIA

tie m p o e sta b le c id o . CPX # N -1 ; HAY


; MÁS NOTAS? n -1
# de notas = 0?
F in a lm e n t e el a p u n t a d o r BLO M3

se in c r e m e n t a p a r a a c c e d e r a RTS ; F IN DE LA
Incremento
la s ig u i e n t e p o s ic ió n d e m e ­
m o r ia , d esd e d o n d e se to m a n M3
¡S U B R U T IN A DE M ELO D ÍA
IN C X ; VOY A LA
apuntador
i
Retorno
¡S IG U IE N T E NOTA
los s e g u n d o s v a lo re s p a ra re­
BRA MI
p e t i r la g e n e r a c i ó n d e la
n o t a . El p r o c e s o se r e p it e
Figura 12.8 Subrutina que genera la Figura 12.9 Diagrama de flujo de la subrutina
h a s ta q u e el a p u n t a d o r h a y a melodía MELODIA

Curso práctico sobre Microcontroladores S .A ,


»

Generador de melodías

m ie n tr a s el registro q u e i n d i ­ En la figu ra 1 2 .1 3 observe


ca la d u r a c ió n se d e c re m e n ta
y lle g a a cero.
Nota
\ el últim o bloque del program a,
Salida en él se especifican las tablas
localizadas en m em oria en las
En la fig u ra 1 2 .1 2 se ob- cuales se u b ican los distintos
serva una sencilla rutina de re­ tonos y duraciones que com po­
Retardo
tardo por software establecida nen la m elodía q u e se pretende
p ara ser lla m a d a desde otras desplegar.
partes del program a.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Salida — 0

* U B IC A C IÓ N DE T A B L A S EN
E lla se co n stru ye de m a ­
* M EM O RIA *
n era s im ila r a las q u e hem os
* AQUÍ SE U B IC A L A C 0 M P 0 S I- *
d is c u tid o en p ro yectos a n te ­ Decremento
duración * C IÓ N M U S IC A L
riores: u n a serie de ciclos q u e * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

se e j e c u t a n c o n t i n u a m e n t e
ORG MEL
m ien tras el c o n ten id o de unos
FCB M I , M I , M I , M I , M I , M I , M I ,
registros se van d e c re m e n ta n -
No F C B S O L ,D O , RE, M I,
do h asta lle g a r a cero. Duración = 0 ?
FCB F A , F A , F A , F A , F A , M I , M I ,
*****************************
FCB M I , M I , M I , R E ,
♦ G EN ERA C IÓ N DE LA F R E C U E N C IA FCB R E ,M I,R E ,S O L
Si
* 0 TONOS M U S IC A L E S ORG DUR
*****************************
Retorno FC B 2 ,2 ,4 ,2 ,2 ,4 ,2 ,2 ,2 ,2 ,8 ,
NOTA BSET S N D ,P O R T D ; FCB 2 ,2 ,2 ,2 ,2 ,2 ,2 ,1 ,1 ,2 ,2 ,
Figura 12.11 Diagram a de flujo de la
; E M P IE Z O UNA NOTA FCB 2 ,2 ,4 ,4
subrutina generadora de las notas
LDX NR O rg R E S E T _ V E C
*****************************
JS R RETAR • FD B IN IC IO ; a l o rd e n a rs e r e s e t
B C LR SN D ,PO R T D * RETARD O - S U B R U T IN A DE
; s a lt a a S ta rt
LDX NR RETARD O PO R SO FTW ARE * END
* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
JS R R ET A R
Figura 12.13 Estructura de notas que
LDA NDR RETARD O :
conform an e l pasaje m usical
BEQ NO LDA #10T

DEC NDR STA MEM1 Para crear sus propias m e­


BRA NOTA ET1 JS R R E T IT O lodías debe m odificar la varia­
NO RTS ; F IN A L D.E LA DEC MEM1 ble N d e la f ig u r a 1 2 .4 , de
; NOTA BNE ET1 acuerdo al núm ero de notas que
RTS vaya a colocar. Luego, en esta
R ET A R LDA #2 ; RETARDO R E T IT O : parte del program a debe espe­
; DE 0 . 0 1 ms LDA #128T cificar cuales notas (tonos) com ­
R EPO DECA ; S IN U T IL I- ; RETARDO DE 0 ponen su canción en la tabla
BN E R EPO ; S A C IÓ N D EL ET2 C LR X M E L y los tipos de notas (d u ­
; T E M PO R IZ A D O R T IM . ET3 DECX ración) correspondientes a cada
DECX ; SÓ LO C IC L O S BNE ET3 uno de esos tonos, los cuales se
BN E R E T A R ; DE SO F T - DECA e s c r ib e n d e n t r o d e la ta b la
RTS ; WARE BNE ET2 D U R . El núm ero de elementos
Figura 12.10 Subrutina que genera las RTS de cada tabla debe coincidir con
notas m usicales Figura 12.12 Retardo p o r softw are el valor de la variable N.

A .
Curso práctico sobre Microcontroladores
Proyectos

P A R A S A B E R MAS... GO m año de la ventana. Su sin ­


Inicia la ejecución del código a taxis es:
C o m a n d o s del s i m u l a d o r partir de la actual dirección indi­ MD < d ire c c ió n >
I C S 0 8 J L p a ra cada en el contador de progra­
m ic ro c o n tro la d o re s Motorola ma. Opcionalmente se pueden STACK
El programa IC S08JL junto con el establecer las direcciones de ini­ Al teclear este comando se des­
editor WINIDE (desarrollado por cio y fin que se desean ejecutar. pliega una nueva ventana donde
P&E Microcoputers) conforman un Su sintaxis es: se puede visualizar la pila del
entorno que simplifica enorme­ GO [ < d i r e c c i ó n _ i n i c i o > HC08. En esta ventana se mues­
mente el proceso de escritura y de­ [<dirección_final>]] tra el valor del puntero a la pila
puración del código fuente. Con (SP: stack pointer) y el dato al­
este paquete los diseñadores es­ PC macenado en la pila. Sintaxis:
tán en capacidad de crear códigos El comando PC asigna un valor STACK
fuente, ensamblar el código, depu­ específico al contador de progra­
rarlo y programar los microcontro­ ma. Como el PC indica la direc­ STEP
ladores 68HC908JL3/JK3/JK1. ción de la siguiente instrucción Este com ando perm ite correr
que se va a ejecutar, al asignar paso a paso las instrucciones de
Dentro del entorno del simulador un nuevo valor de PC se modifi­ un programa cargado en la me­
se destaca una línea de coman­ ca el flujo de la ejecución del moria del IC S0 8 JL, iniciando en
dos donde el usuario puede entrar código. Sintaxis: la dirección especificada en ese
mediante el teclado toda una serie PC < d ire c c ió n > momento por el PC. Todas las
de órdenes sobre el sistema y so­ ventanas se actualizan cada vez
bre el programa, fig u ra 1 2.14. MD que este comando se ejecuta.
Observemos algunos de ellos. Este com ando se utiliza para Este comando puede teclearse
visualizar en la ventana de m e­ solo o junto con un parámetro
LOAD m oria del entorno los conteni­ (n) que indica el número de ins­
El comando LOAD carga un archivo dos de ciertas posiciones de trucciones que debe ejecutar.
S19 dentro del entorno del progra­ m em oria. El núm ero de bytes Sintaxis:
ma para operar sobre él. Recuerde visualizados depende del ta ­ STEP [< n > ]
que un archivo S19 es el resultante
de ensamblar un código fuente. Si r.TóTxl
E fe E -c u . bdp

se teclea la palabra LOAD se des­


plegará una ventana con todos los
m (3 uu ',H no (10 uu no mi
archivos S19 del directorio actual. uu
uu
oouu
uuuu
uu
uu
eo
uu
lili
uu
uu
uu
uu
lili
IIU
uo
no uuno no no ?o no oo rr
La sintaxis normal es: ii
lili
noxx
u u lili
xx
IIU
no
lili
xx
Ull
xx
IIU
mi
lili
mi
IIU
uu uuuu un uu un n xx no
LOAD [nom bre_del_archivo].

RESET C .x fc t

IN ICIO :
I J N * h .- r .. * * J

Este comando simula un estado C l Rft


cinx
BSLI COPO,COM I I C I ; D* S H O K l i l i

de reset en el microcontrolador NQU


CLR
1$FF,DDRB
PORIB
; CONFIGURO I I

P R IN C IP A !
y pone en el contador de progra­ JS H
JS R
R l I ARDO
MELODIA ; rn p ii- /.i l a n < .ÍM
JS R R l I ARDO
ma los contenidos del vector de JS R
BRA
R l I ARDO
PRIN C IPA L

reset. Este comando no iniciali- • S U B R U IIN A DL Gf N t R A C IO N 01 IA 1*1 0 0 1 A

za de nuevo la ejecución del pro­


grama; si ese es su deseo debe
teclear la instrucción RESETGO. F igura 12.14 Entorno deJ sim ulador ICS08JL

Curso práctico sobre Microcontroladores m iK iT .


Generador de melodías

Ensamblaje del proyecto L IS T A DE M A T E R IA LE S

Cant. Reí. Descripción


IC1 Microcontrolador 68HC908JK3
Figura 12.15 Conjunto IC2 Regulador positivo fijo de +5V-1A, 7805
de componentes 01 Transistor de propósito general NPN, 2N3904
BR1 Puente rectificador circular de 1A. W06M
electrónicos y los C1 Condensador electrolítico de 1000uF - 25V
accesorios que se C2 y C4 Condensadores cerámicos de 0.1uF - 50V
requieren para C3 Condensador electrolítico de 47uF - 25V
C5 y C6 Condensadores cerámicos de 22pF - 50V
ensam blar e l generador XTl Cristal de quarzo de 5MHz
de melodías. R1 Resistencia de 10M-1/4W
R2 Resistencia de 1k-1/4W
R3 Resistencia de 100k - 1/4W
R4 Resistencia de 33-1/2W
SP1 Parlante pequeño de 80hm-0.25W
K-329 Circuito impreso CEKIT
Con este proyecto usted podrá divertirse escuchando y Conector de alimentación AC/DC
program ando sus propias melodías , a través del lenguaje de Base para circuito integrado de 20 pines
program ación de los m icrocontroladores Motorola. Para el
ensamblaje de la tarjeta tenga en cuenta los siguientes pasos:

D f s « I S ________________________________________
Paso 1 ------ --------------------- Paso 4
Instale y suelde los puentes de alam bre y las resistencia R l. R2. Instale y suelde los condensadores cerám icos C2. C4, C5 y C6, y
R 3yR 4. e l c ris ta l de cuarzo XTl.
Figura 12.16 Figura 12.19

Paso 5
Paso 2
Asegure p o r la parte posterior del circuito im preso e l parlante (SP1)
Luego instale y suelde la base para e l circuito integrado IC1, el
usando pegante, y luego suelde e l cable de conexión dúplex entre
transistor Q1 y e l regulador de voltaje integrado IC2.
e l parlante y e l circuito impreso, teniendo en cuenta la polaridad.
Figura 12.17
Figura 12.20

Paso 3
Instale y suelde e l puente re ctificad o r circu la r BR1 y e l conector Aspecto fin a l d e l proyecto ensamblado, luego de in sta la r y soldar
de alim entación CA/CC (J1). los condensadores electrolíticos C1 y C3.
Figura 12.18 Figura 12.21

Paso 7. Pruebas finales


Para alim entar e l circuito debe usarse un adaptador que brinde voltaje continuo entre 8 y 12 voltios. Cuando se alimenta la tarjeta por medio del
conector CA/CC a partir de unos cuantos segundos se debe empezar a escuchar la melodía de una corta canción navideña compuesta de 26
notas musicales. Si no es asi, revise que e l microcontrolador tenga los voltajes apropiados de alimentación y que se encuentre programado
adecuadamente.

Curso práctico sobre Microcontroladores


RELOJ DIGITAL CON PIC
é ■

En esta ocasión usted construirá un reloj digital que


puede adaptarse para gran cantidad de tareas de control
e instrumentación. También puede ser m uy útil para
instalarlo en su automóvil, hogar o sitio de trabajo.

C aracterísticas
• Reloj de tiem po horario real
• V isualización de horas, m inutos y segundos
• Error aproxim ado de 1.2 segundos al año
• Visualización en cuatros displays de siete segmentos
• Pulsadores para el ajuste de la hora actual
• Batería de respaldo para cortes de energía
• Bajo costo

Curso práctico sobre Microcontroladores


Reloj digital con PIC r

Esta aplicación p articu lar que ilustra las operaciones su ­ El uso de instrucciones N O P
de los m icrocontroladores PIC cesivas en un puerto I/O. La en tre las subsecuentes in stru c­
es u n a b uen a solución para to­ escritura actu al en un puerto ciones de paso de lectura a es­
dos los desarrolladores de pro­ I/O ocurre al final de un ciclo critu ra del puerto es u n a solu­
yectos, al encontrar el proble­ de in s tru c c ió n , m ie n tra s que ción m ás económ ica.
m a de diseñar sistemas que fun­ p ara la lectura, los datos deben
cionen dentro de u n marco de ser válidos desde el inicio del El d ise ñ o in c lu y e cu atro
tiem po horario real. ciclo de in stru c c ió n . U n a b u e­ displays d e siete se g m en to s y
na m a n e ra de e n te n d e r el m o ­ tres p u ls a d o r e s d e e n t r a d a .
En el diseño de este pro­ delo de los puertos I/O es im a ­ T am b ién cu en ta con un p ulsa­
yecto se han utilizado al m á x i­ g in a n d o un c o n d e n s a d o r en dor de reset el cu al en realidad
mo algun as características del un p in , co m o se m u e stra en la p uede ser desconectado del sis­
P IC 1 6 F 8 4 . Por ejem plo, podrá fig u ra 13.2. tem a, si así lo desea. El d ia g ra ­
o b servar q u e to dos los pines m a esq u em ático lo p uede apre­
c u m p le n la funció n de salida y D eb id o a q u e el c o n d e n ­ ciar en la figura 13.3.
algu n o s de ellos p o d rán ta m ­ sad o r necesita u n tiem p o para
b ié n serv ir co m o e n tra d a s al cargarse, el p in ta m b ién n ece­ Descripción del circuito
poder leer las teclas de co n fi­ sita el m is m o tie m p o . Para C o m o podrá notar, este proyec­
g u ra c ió n d e los m in u to s , las s u p e r a r e s te i n c o n v e n i e n t e to u tiliza m u y pocos c o m p o ­
horas y la visualizació n de se­ p u ed e p ensar en a d ic io n a r una nentes. Los segm entos de cada
gundo s. Este tipo de operación resistencia en serie al pin I/O. u n o d e los displays se conectan
se d e n o m in a operaciones suce­ Esta resistencia p e rm itirá a ese entre sí (A-A, B-B, etc.). El pin
sivas en un puerto I/O. D ebe te­ pin llegar al nivel deseado a n ­ RBO o r i g i n a u n a p u ls a c ió n
n er en cu en ta q u e para tener tes de la sig u ie n te instrucción. c a d a s e g u n d o , éste se p u ed e
éxito en este p ro c e d im ie n ­
to de ejecu tar u n a opera­
ción de escritura, seguid a 01 Q2 | Q3 Q4 Q1 02 03 | 04

de u n a in stru cció n de lec­ PC y - PC k 1 PC+1 ¡X


i 1
tu ra en el m ism o puerto, la • ¡ 1
secuencia de las instruccio­ R B7 = RBO t k
r
'
1
1
i 1
Estructura o
nes d eb e ser tal q u e p e rm i­ i
configuración del
1
i i í 1
ta estabilizar el voltaje de i puerto i Lectura del pin 1
i 1 1
los pines (d ep en d ien d o de
la carga), antes de que la F ig u r a 1 3 .1 O p e ra c io n e s s u c e s iv a s e n u n p u e rto l/O
siguiente instrucción inicie
la sigu ien te lectura h acia la
C P U . D icho de otra m a n e ­
ra, p ued e o currir que la co n ­
figuración previa del puerto Puerto X
£ l/O
sea la que la C P U en tien d a
en lu gar de la n ueva co n fi­
o
o. X PIN Y

gu ració n. Si se presenta a l­
g u n a d u d a , es m ejor asegu­
1
rarse c o n u n a in s tru c c ió n
NOP. L a figura 13.1 m u e s­ como bajo

tra el d ia g ra m a de tiem pos F ig u r a 1 3 .2 C o m p o rta m ie n to d e l p u e rto

S .A . Curso práctico sobre Microcontroladores


Proyectos

rvj
r - 0 3 Q

*8d9l3ld
101

c o n e c ta r a d o s d io d o s LED
para co n figu rar los dos puntos
q u e separan las horas de los m i­
nutos, en este caso sólo se co­ •o o -^ W V -| | i
nectó al p u n to d ec im al d el dis­ _ ch
co o
•— C\J
00 £ “=03
p la y 3 . L os d isp la ys so n de
^ w v -O ' o -^ v/N A H I'
ánodo co m ú n y son e n c e n d i­ — o o

dos m e d ian te transistores PN P S£


los cuales están conectados a las — VW ° -v v v H i1
cu atro líneas I/O del puerto A. SG 00
CM O
CNJ
co 2
co o ce co
Las c o n e x io n e s son así: p in X
-o o ---------------
RAO con el d íg ito 4 , pin RAI
con el d íg ito 3, pin R A 2 co n el S C8C
C O O í

d íg ito 2 , RA3 con el d íg ito 1.


Los pines del puerto B activan F ig u r a 1 3 .3 D ia g ra m a e s q u e m á tic o d e l c irc u ito

Curso práctico sobre Microcontroladores


Reloj digital con PIC v

los segm en to s de los displays , y trada alta deb ido a V. La gu ía tiempo, de lo contrario todos los
s u s c o n e x io n e s so n R B l - a , de m o n taje del circuito la p u e­ displays m o stra ría n el m ism o
R B 2-b , R B 3 -c ...R B 7 -g . de apreciar en la fig u ra 13.4. dato. Los displays son encendidos
de derecha a izquierda, haciendo
Los pulsadores se conectan Funcionamiento el barrido o m ultiplexaje en el
ta m b ié n a los pines 1/0 del Al iniciar la operación o al opri­ instante en que tenga listo el res­
p u e r to B. A los p in es R B 1 , m ir el botón de reset , el circuito pectivo valor que irá asignando a
R B 2 y R B 3 se les co nectan re­ in ic ia rá la c u e n ta del tiem p o cada display. Ese barrido se hace
sistencias de 10 K íl. Este va­ partiendo de las 12:00. Si opri­ de una m anera tan rápida que sus
lor es lo su ficien tem en te alto me el S 1 podrá visualizar los se­ ojos no lo notarán y pensará que
para im p e d ir el paso d e la co­ gundos que están corriendo. La no existe tal fenómeno. Los pul­
r r i e n t e d e lo s d io d o s L E D h ora p u ed e c o n fig u ra rla m e ­ sadores de configuración se lee­
cu an d o ellos se en cu en tren ac­ diante los pulsadores relerencia- rán una vez terminado cada ciclo
tivados. Las entradas son detec­ dos com o S2 y S 3 . Al pulsar S2 de los displays.
tadas al poner los pines en bajo se origina un avance en los m i­
m e d ia n te el respectivo p u lsa ­ nutos y al pulsar S3 se causa un Sistema de batería de
dor y una resistencia de 820¡L> avance en las horas. respaldo
a tierra. Este valor es lo sufi­ El pro yecto tien e la p o s ib ili­
c ie n te m e n te bajo para poner Debido a que todos y cada dad de a d ic io n a rle u n a b a te ­
cada pin en alto ráp id am en te uno de los segmentos han sido ría de resp aldo, p or ejem p lo ,
cu an d o las salidas se h an des­ unidos en todos los displays, sólo u n a b a te ría de 9 V u tiliz an d o
activado, y crear un 9 0 % de en ­ uno de ellos debe encenderse al un siste m a b astan te sencillo,

D isp la ys de los
D isp la ys de las horas m inutos y segundos
rispe

Pu lsa d o r p ara visu a liz a r

P u ls a d o r para los segundos


rein icializar
Pu lsa d o r p ara aju star
lo s m inutos

0 J DIGITAL P u ls a d o r p ara a ju sta r


la s horas

A lim en tació n norm al

M icro co n tro lad o r


A lim en tació n au x iliar R Jc L . PIC16F84
1C1
Picare*

Figura 13.4 Cuía de m ontaje del re lo j digital

*
~SA C urso p rá c tic o so b re M ic ro co n tro la d o re s
Proyectos

pasar to d a la co rrien te que re­


qu ieren los displays-, de lo c o n ­
9Ó12V
trario (cu an d o esta sólo la b a ­
tería de 9 V ) el circu ito detec­
tor p o lariza con OV la base de
Q 5 , o c a sio n a n d o la a p e rtu ra
del transisto r to talizad o r evi­
tan d o q u e los displays se e n ­
cien d an m ientras que el m icro­
co n tro lad o r y el resto d el c ir­
c u ito d el reloj, co nservan su
en ergía y siguen fu n cio n an d o .
Hacia un pin del
microcontrolador
Descripción del
F ig u ra 13.5 Sistem a de batería de respaldo programa
El P IC 1 6 F 8 4 posee un m ó d u ­
el cu al p u ed e ser m u y útil en Para evitar que la batería de lo llam ad o temporizadorO (Ti-
el caso de q u e p or eje m p lo se respaldo de 9 V se descargue rá­ merO), el cual es un contador/
in te r r u m p a el flu id o eléctrico pidam ente, los displays que con­ tem porizador de 8 bits, suscep­
o a p a g u e el a u to m ó v il. su m en la m ayo r parte de la co­ tible de leerse y escribirse por
rriente p ed id a por el circuito, software. Para este program a se
A l o c u r r ir u n o d e estos deben ser desconectados en el ha aprovechado dicho m ódulo
eventos, la betría en tra a fun­ m o m en to en el cual ésta entra para generar la u n id ad básica de
cionar gracias a la configuración en funcionam iento. tiem po (un segundo).
con el diodo ( D 1) que se m u es­
tra en la figu ra 13.5. U sando u n transistor to ta­ P a r a a j u s t a r u n tie m p o
lizador P N P (Q 6 ) co m o in te­ exacto se puede variar el tipo de
En este circuito puede ob­ rruptor, se p uede co n tro lar el cristal externo y la división de
servar que m ientras la entrada su m in istro de co rrien te hacia frecuencia hecha con el presca-
p rin c ip a l de a lim e n ta c ió n de los cu a tro transisto res (Q 1 a lador, tom ando com o entrada
12V se encuentra presente, el Q 4 ) q u e m a n e jan los displays-, los ciclos internos de reloj en lo
diodo no conducirá. p ara ello se ha realizado un cir­ que se den om in a m odo de tem-
cuito detector del voltaje de ali­ porización, el cual se selecciona
En el m o m en to en q u e la m e n tació n con base en un de­ colocando en cero el bit 5 del
batería o la fuente de 12V se tector q u e usa u n d io do Z en er registro O P C IO N .
caiga p or d eb ajo de 9 V C C o d e 9 V (D 2 ) y le p erm ite de­
sea d esco nectada, la b atería de te rm in a r cu an d o la a lim e n ta ­ El prescalador del PIC 16F84
9 V polarizará d irectam e n te al ción está p or e n c im a o por de­ ha sido asignado a TM RO para
d io d o , y éste c o n d u c ir á aco ­ bajo de 9V. Bajo condiciones que desarrolle una división 1:16.
p lan d o los 9 V d ism in u id o s en n o rm ales (con la alim e n tac ió n El programa ha sido escrito para
0 .7 V de polarización del d io ­ de 12V ) el d io d o Z en er d eja trabajar con un cristal de 1.8432
do a la en trad a del regulador pasar 3 V h ac ia la base del tra n ­ M H z, generando una frecuencia
de voltaje de +5V, evitando que sisto r N P N ( Q 5 ) , los cu ales interna de 4 6 0 ,8 KHz; recorde­
el m icro co n tro lad o r pierda su son suficientes p ara saturarlo y mos que la frecuencia del reloj se
a lim e n ta c ió n y p or lo tan to la ocasion ar el cierre del transis­ divide internamente por cuatro,
h ora exacta se vea alterada. tor to talizad o r P N P q u e deja generando cuatro ciclos en cua-
*
Curso práctico sobre Microcontroladores O M M & ÍT s l
Reloj digital con PIC

. * * * * * * • * * * * * * * * * * * * , * * * * * * * * * * * * T M R O necesarios para tener En este program a el TMRO


•CURSO PRACTICO SOBRE exactam ente u n segundo. se ha in ic ia d o en cero v* con
MICROCONTROLADORES -CEKIT
; PROYECTO: RELO J D IG IT A L CON PIC los p u lso s in te rn o s se in c re ­
; AUTOR: JUAN ANDRES CASTAÑO
; P E R E IR A - COLOMBIA -2001
A dem ás, ella puede m a n i­ m e n ta h a s ta q u e se d esb o rd a;
. * * * * * * * * * * * * * * * * * « * * * * * * * * * * * * * *
pularse para asegurar u n a co­ cad a d esb o rd e in c re m e n ta
L IS T P = 16F84
rrecta sincronización del tiem ­ u n a v a r ia b le q u e es la q u e se
L IS T F = INHX8M
po real, sin im p o rtar el tipo de m a n i p u l a p a r a o r i g i n a r la
ZEROT equ H ’ 81' cristal que se use. C o n los ajus­ base d e tie m p o .
UNO equ H’ F3'
DOS equ H’4 9 ' tes que se hicieron en este pro­
TRES equ H’ 611
CUATRO equ H ’ 33'
gram a se llega a un error aproxi­ O tra opción es iniciar el re­
CINCO equ H ’ 25' m ado de 1.2 segundos al año, gistro TM RO con un valor espe­
S E IS equ H’05'
; TABLA DE SEGMENTOS siem pre y cuando el cristal sea cífico e incrementarlo desde ese
S IE T E equ H’ F1 '
OCHO equ H’0 1 '
el indicado y de b uen a calidad. punto hasta el desborde. Al fi­
NUEVE equ H’ 31' nal, el objetivo tínico debe lo­
BLANC equ H’ F F ’ Iniciar TMRO
;MAPA DE VARIABLES Contar grarse sin importar el valor del
MAXFRAC equ D ’ 31'
;T im e r : 256-31=225,
cristal o del prescalador.
;A S I OBTENEMOS 1 s
MAXSECS equ D *196'
; SEGUNDOS:256-196=60 Si hace uso de la segunda
MAXMINS equ D ’ 196'
; M INUTOS:256-196=60
opción ten ga en cu en ta q u e al
MAXHRS equ D ’ 244' escribir en el T M R O se pueden
; HORAS:256-244=12
perder hasta dos ciclos de re­
Estado, 2 = 1 ?
F ig u r a 1 3 .6 V a lo re s d e in ic io d e (Desborde) loj m ien tras los flancos de e n ­
lo s re g is tro s d e a ju s te d e la b a s e trada se alistan de nuevo.
d e tie m p o

dratura. Internamente el conta­


i Si

Incrementar
En la f ig u r a 1 3 .7 se en ­
cuentra el diagram a de flujo glo ­
sec nth
dor de programa (PC) es incre­ bal del proyecto, en el se puede
mentado con cada cuarto pulso,
llevando cada instrucción a la me­ Verificar
Ajustar
pulsadores
moria de programa. La rotación No tiempo
S e oprimió Incrementar
del TimerO (256 pasos) y su con­ alguna tecla ? segundos

figuración establece una frecuen­


cia final de 225 Hz.
Incrementar
minutos
En la figura 13.6 se obser­ Configurar puerto B
van los valores establecidos den­ para leer pulsadores

tro del programa para ajustar los


----------------- 1
Incrementar
segundos, los m inutos y las ho­ * noras i
ras, al igual que los valores que | Leer puerto B

van a salir por el puerto B hacia


los displays para cada uno de los Visualizar en los
Activar banderas
valores posibles. displays

U n a v a r i a b l e e s p e c íf ic a
Incrementar
(sec_nth) se utiliza para contar segundos, minutos, F ig u r a 1 3 .7 D ia g ra m a d e flu jo
los 2 2 5 d esb o rd am ie n to s del u horas g e n e ra l d e l p ro y e c to

Curso práctico sobre Microcontroladores


i
Proyectos

observar que cada desborde del vez, modifica los registros fina­ En el código de la figura
TM RO se detecta al chequear el les donde se alm acenan los se­ 13.8 se muestra el incremento a
bit 2 del registro de estado; para gundos, los m inutos y las horas. la variable sec_nth, al igual que
que ese bit se vea afectado pri­ la rutina de verificación de los
mero se debe mover el co n ten i­ El reloj d eb e estar en c a ­ pulsadores.
do del TM RO a W. p ac id a d de leer los pulsadores
q u e c o n fig u ra ra n su v alo r a c ­ Si no se detectó n in g u n a
C a d a q u e tien e lu g a r ese tu a l; p or ello se d eb e in c o rp o ­ señal de los pulsadores, se entra
desborde se incrementa el regis­ rar u n a r u t in a q u e se ejecu te a un m odo normal de trabajo,
tro sec_nth donde se almacenan p e rm a n e n te m e n te , en la cual en el cual el valor de la variable
las fracciones de segundo y a su se p re g u n ta p or el estado de se c_ n th in c re m e n ta n o r m a l­
estos p u ls a d o r e s y se in c r e ­ m ente los segundos, los m in u ­
CONTEO m en ten los valores actu ales de tos y las horas, para luego pasar
MOVF RTCC ,0
; RTCC -> w
c ad a u n o de los registros. a mostrarlos en los displays de
BTFSS ST A T U S,Z _B IT siete segmentos, figu ra 13.9.
EL TMRO NO AFECTA LA CUENTA
GOTO CONTEO
IN C FSZ s e c _ n th ,l ; A JU ST.TIEM PO
; INCREMENTO DE LAS FRA­ BSF BANDERAS,SEC
El programa tiene porciones
C C IO N E S DE SEGUNDO ; V E R I F . S I SE DEBEN ACTUA­ de código que actúan como ma-
GOTO TEMPS.OK L I Z A R LOS SEGUNDOS
c lr w d t BSF BANDERAS,CHG nejadores de los displays. Existe una
MOVLW MAXFRAC IN C FSZ SEGUNDOS,1 ;
MOVWF s e c .n t h ; INCREMENTO DE LOS SEGUDOS EN 1
variable para cada uno de los cua­
RECARGA DE LAS FRACCIONES GOTO TEMPS.OK tro displays. Un valor en hexadeci-
DE SEGUNDO PARA LA MOVLW MAXSECS
SIG U IEN T E OCASION ;DESB0RDE-> R E IN IC IA R SEG. mal de 0 a 9 puede escribirse en
V E R IF .S W MOVWF SEGUNDOS
BT FSS BANDERAS,SW_0N BSF BANDERAS,MIN ; LOS estas variables y ellas se convierten
; SE HA PRESIONADO UN PULSADOR? ; MINUTOS DEBEN ACTUALIZARSE? para dar la salida correcta hacia los
GOTO MOSTRAR_LA_HORA BSF BANDERAS,CHG ;
; NO -> MOSTRAR LA HORA ; DEPENDE DEL CAMBIO EN LA displays. Sólo un display actúa en
BTFSC BANDERAS, SW1 ** ; BANDERA
; ES SW1 (SEGUNDOS)? MOVLW ADJMIN cada instante de tiempo, por lo que
GOTO MOSTRAR_LA_HORA subw f s e c _ n t h , l el programa proporciona el códi­
; SI-> SE CAMBIA LA HORA ; A JU STE PARA LA PREC ISIO N
MOVLW MAXSECS IN C FSZ M INUTOS,1 ; go correcto para cada turno.
; R E IN IC IA R SEGUNDOS EN ; INCREMENTO DE LOS MINUTOS
;CERO, CUANDO SE A JU STE EL GOTO TEMPS.OK
; RELOJ MOVLW MAXMINS O tr a secció n d el có d ig o
MOVWF SEGUNDOS ; R E IN IC IA L IZ A C IO N DE LOS
MOVLW H ’ 7F> ; MINUTOS tom a los valores de los segu n ­
; ACELERAR EL TIM ER 1/2 S MOVWF MINUTOS
MOVWF s e c .n t h BSF BANDERAS,HRS ; SE
dos, m in u to s y horas, y los se­
BTFSS BANDERAS,SW2 ; DEBEN ACTUALIZAR LAS para en los d ígito s necesarios
; ES SW2 (PULSADOR DE LOS ; HORAS?
; M IN UTO S)? . BSF BANDERAS,CHG para cada display. En otras pa­
GOTO AJU.HORA ; MOVLW ADJHR
;NO, NO CAMBIAR MINUTOS Y ADDWF s e c . n t h , 1
labras, por ejem p lo , 48 segu n ­
; V E R IF IC A R LAS HORAS ; A JU STE PARA LA PREC ISIO N dos se separarán en u n «4 » y
MOVLW H’ AF* ; DE LAS HORAS
; S I , ACELERAR EL TIMER IN C FSZ HORAS,1 ; u n «8» y se escribirán en la v a ­
;PARA INCREMENTAR LOS MIN. ; INCREMENTO DE LAS HORAS
MOVWF s e c .n t h GOTO TEMPS.OK
riable ap ro p iad a de display.
IN CFSZ M INUTOS,1 MOVLW MAXHRS ;
; INCREMENTAR LOS MINUTOS ; R E IN IC IA L IZ A C IO N DE LAS
GOTO AJU.HORA ; HORAS La velo cidad de ejecución
; S I SE DESBORDAN LOS MINUTOS, MOVWF HORAS
MOVLW MAXMINS MOVLW ADJDAY
de los P IC 1 6 F 8 4 (y del resto
; REINICIALIZACION DE LOS SUBWF s e c _ n t h , l d e la f a m i l ia P I C m ic r o ™ )
; MINUTOS ; A JU ST E PARA CADA MEDIODIA
MOVWF MINUTOS (1 2 h 0 0 ) p erm ite elaborar u n a gran can ­
tid a d de fu n cio n es co n m u y
F ig u r a 1 3 .8 In c re m e n to d e b id o a F ig u r a 1 3 .9 R u tin a d e a ju s te de pocos pines, al m u ltip le x a r es­
lo s d e s b o rd e s d e l TMRO y le ctu ra tie m p o e n lo s re g is tro s d e s e g u n ­
tos ú ltim o s por program a.
d e p u ls a d o re s d o s, m in u to s y h o ra s.

Curso práctico sobre Microcontroladores 5 . A .


Reloj digital con PIC

Ensamblaje del proyecto L IS T A DE M A T E R IA LE S


C a n t. Reí. D e s c rip c ió n
i IC1 M ic r o c o n tr o la d o r P IC 1 6 F 8 4 p r o g r a m a d o

■.X: Figura 13.10 Conjunto


de componentes
1

1
IC 2
0 1 , 0 2 , 0 3 . 0 4 y Q6
05
R e g u la d o r f ijo d e + 5 V - 1 A , 7 8 0 5
T r a n s is to r e s d e p r o p ó s ito g e n e r a l PNP. 2 N 3 9 0 6

* T r a n s is to r d e p r o p ó s ito g e n e r a l N P N , 2 N 3 9 0 4
electrónicos y 1 D1 D io d o d e p r o p ó s ito g e n e r a l 1 N 4 0 0 4
§ ' it accesorios que se 1 D2 D io d o z e n e r d e 9 V - 1 W
4 D IS P 1 a D IS P 4 D is p la y s d e s ie te s e g m e n to s d e á n o d o c o m ú n
requieren para 1 C1 C o n d e n s a d o r e le c tr o lític o d e 4 7 0 u F - 2 5 V
*y ensam blar e l reloj 1 C2 C o n d e n s a d o r c e r á m ic o d e 0.1 u F - 5 0 V
2 C 3 y C4 C o n d e n s a d o re s c e r á m ic o s d e 22 p F - 5 0 V
d ig ita l con PIC. 1 XTAL C ris ta l d e c u a r z o d e 1 .8 4 3 2 0 M H z
6 R 1 y R 4 a R8 R e s is te n c ia s d e i k - 1 /4 W
6 R 2 .R 3 .R 1 7 , R 1 9 .R 2 1 y R 2 3 R e s is te n c ia s d e 10k - 1 /4 W
8 R9 a R16 R e s is te n c ia s d e 100 - 1 / 4 W
En esta ocasión se podrá construir un re loj d ig ita l con base 3 R 1 8 .R 2 0 y R 2 2 R e s is te n c ia s d e 8 2 0 - 1 /4 W
en e l m icrocontrolador PIC de alta precisión, que puede ser 4 S1 aS4 P u ls a d o r e s p e q u e ñ o s d e 4 p in e s , p a ra c ir c u ito im p r e s o
alim entado con baterías o fuentes CC entre 9 y 12 V. Por su 1 K -3 3 0 C ir c u ito im p r e s o C EK IT
1 B a s e p a ra c ir c u ito in te g r a d o d e 1 8 p in e s
diseño com pacto puede instalarse en varios lugares tales 4 E s p a d in e s
com o los vehículos, habitaciones o escritorios. Para su
m ontaje se requieren los siguientes pasos

Paso 4
Paso 1
Instale y suelde los
Instale y suelde los
condensadores
puentes de alam bre
cerám icos C2, C3 y
y las resistencias R 1 C4.
aR22.
Figura 13.14
Figura 13.11

Paso 5
Paso 2 Fije y suelde en
Luego instale y suelde posición axial
la base para el (horizontal) y en e l
circuito integrado IC1, lu g a r indicado el
los transistores 0 1 a crista l de cuarzo XT1
Q6 y los diodos y suelde tam bién el
re ctificad o r y Zener condensador
D1 y 0 2 . electrolítico C1.
Figura 13.12 Figura 13.15

Paso 6
Paso 3 Aspecto fin a l d e l relo j
Instale y suelde el d ig ita l ensamblado,
circuito integrado luego de in sta la r y
regulador de voltaje soldar los displays y
IC2 y los pulsadores los espadines para
pequeños S 1 - S 4 . la s entradas de
Figura 13.13 alim entación principal
(12 V) y de respaldo
(9 Vi-
Figura 13.16

Paso 7. Calibración d e l reloj


Cada vez que se alimente e l circuito o se oprima ei pulsador de reset. en los displays se debe visualizar e l número 12.00, que es el dato con
que siempre inicia su operación. Ahora debe ajustar e l reloj con respecto a la hora actual; oprimiendo e l botón de horas y minutos usted logra
un incremento progresivo de los datos actuales, hasta llegar a los números deseados. Si oprime el boton de segundos en los displays
desaparece la hora y solo se activan dos displays indicando los segundos que corren actualmente.

Curso práctico sobre Microcontroladores


MICROTEMPORIZADOR
Construya este sencillo temporizador e incorpórelo
en diversos proyectos que requieran control sobre
cortos intervalos de tiempo.

Características
• Gran exactitud en el tiempo
• Tamaño reducido, con adecuado despliegue
de información y manejo
• Inmunidad al ruido, muy importante en am­
bientes industriales
• Capacidad para manejo de potencia
• Bajo costo
• Consumo: 0.6W
• Escalas de Tiempo: 0.5, 1.0, ..., 9.5 s
• Despliegue del tiempo seleccionado
• Pulsador para fijar el tiempo
B r

Curso práctico sobre Microcontroladores m m w „


Microtemporizador

Los te m p o r iz a d o r e s son Descripción del circuito tivación de la entrada (PTD 4)


u n o de los c ir c u ito s m ás u t i­ Observe, en la figu ra 1 4 .1 , el p uede p ro ven ir d e diferentes
l i z a d o s e n la e l e c t r ó n i c a . diagrama esquemático del tem ­ fuentes, tales com o microinte-
E xisten m ú ltip le s a lte rn a tiv a s p o r iz a d o r , c o n s t it u id o en rruptores, pedales, pulsadores,
p a ra c o n s tr u ir lo s , d esd e u n a gran parte por un microcontro­ etc.; cualquiera de ellos se loca­
s im p le red R C (r e s is te n c ia + lador M otorola 6 8 H C 9 0 8 JK 3 . liza en el dispositivo sobre el cual
c o n d e n s a d o r ), h asta la u t i l i ­ La electrónica adicional que po­ se requiere la temporización.
z a c ió n d e la m ás so fistic ad a see es para garantizarle al micro­
m ic r o e le c tr ó n ic a . S u d iv e r s i­ controlador u n a operación co­ Base de tiempo
d a d o b e d e c e a lá u t iliz a c ió n rrecta y se compone de las etapas La m ayo ría de las aplicaciones
q u e se h ace d e ello s en p ro ­ que se describen a continuación. d ig ita le s co m p lejas requieren
d u cto s, m á q u in a s in d u stria les una señal digital de reloj para
y p ro ceso s d e m a n u f a c tu r a . Etapa de salida de su norm al funcionam iento. En
potencia este caso el oscilador es inter­
A provechando u n o de los H acen parte de esta sección: el no, y utiliza para ello el cristal
co m p o n en tes electrónicos más relé K 1, el transistor 2 N 3 9 0 4 y X T l y los co n d en sad o res de
versátiles y prácticos de nues­ la resistencia RIO, conectados acople C 4 y C 5 .
tro tiem p o , el m icro co n tro la­ a la salida P T D 6 . A través de
d o r ( M C U ) , se p u ed en a g ru ­ ésta, el m icrocontrolador acti­ Despliegue de
par u n a serie de características va y desactiva la m áq u in a o el información
técnicas de bajo costo p ara lo­ dispositivo controlado, d u ra n ­ Está a cargo del display de siete
grar un p ro d ucto d e propósito te el tiem po de tem porización segmentos con punto indicador
general. previam ente seleccionado. de fracción, el cual m uestra el
últim o tiem po que se ha selec­
El te m p o r iz a d o r d e sc rito Si su proyecto requiere de cionado a través del pulsador
en este p ro y e c to es, en e se n ­ una m ayor potencia, puede u ti­ S2. A d icionalm ente, se requie­
c ia , u n d is p o s itiv o q u e se a c ­ lizar la salida del relé K l para re de una resistencia p or cada
tiv a al d e te c ta r el c a m b io de m an ejar u n relé de más corrien­ barra indicadora del display con
e s ta d o d e u n sen so r y “e s p e ­ te o un contactor. el fin de asegurar u n a lu m in o ­
ra” u n d e t e r m in a d o tie m p o , sidad un ifo rm e. Éstas corres­
a l ca b o d e l c u a l e fe c tú a a lg ú n También se pueden sustituir pon den dentro del circuito a
tip o de a c c ió n . El p u e d e ser el relé y el transistor por una pa­ R2, R 3, R 4, R 5, R 6, R 7, R8 y
u t i l i z a d o en p r o c e s o s ta le s reja de optoacoplador yTriac, este R 9, para los segm entos a, b, c,
co m o : último seleccionado con la poten­ d , e, f, g y pd, respectivamente.
cia suficiente para manejar la car­
• Sellado de bolsas plásticas y ga y m ontado sobre un disipador Funcionamiento
m ateriales de em paque. de calor de tam año adecuado. Para establecer el tiem po presio­
• Sold ad ura de punto. Para cargas C C , podría utilizarse ne el pulsador S2 hasta que se
• E xp o sició n d e p e líc u la s y un M O S F E T de potencia. obtenga el valor deseado en el
p la n c h a s en p r o c e s o s de display, el punto decim al indica
screen y estam pado. Etapa de entradas 0.5 s más que el dígito a la iz­
• A ctivación de alarmas. El pulsador S 2 , conectado a la quierda. La figura 14.2 mues­
• En general, en m áquinas que entrada P T D 5 , es el elemento tra como se interpreta el tiempo
requieran temporización con que perm ite seleccionar el tiem ­ en el display. Este ajuste sólo
tiem pos cortos y de buena po durante el cual la acción se debe efectuarse una vez, a no ser
precisión. va a ejecutar, mientras que la ac­ que desee cam biar el tiempo.
4
(ú M Ifá II7 fs ¿ . Curso práctico sobre Microcontroladores
. Proyectos

9 (? 9
i
1

— A /W

—w v
* • +V (8 - 1 1 VCC)

£Xr8063H890IAI
131

C O C \ J C O r - -

1—
i —
R4
R2

'R5

c o C D

c r C C c c
V

“W v -

F ig u ra 14.1 Diagrama esquem ático d e l proyecto

C urso p rá c tic o so b re M ic ro co n tro la d o re s S . A .


Microtemporizador

cio nam ien to y en el diagram a ;T 0 D PARA LEER DATOS

oj u esquemático del proyecto, figu­ CLR PORTD.

o a o
ra 14.3. Recuerde q u e en los
m icro co n tro lad o res M o to ro la
; POR PD 4 Y PD5

F igura 14.3 Configuración de los pines 1/0


0.5 1.5 4 dicha configuración se hace m e­
segundos segundos segundos
d ia n te los registros D D R B y En primera instancia, el pro­
F igura 14.2 Interpretación del display D D R D ; con un “ 1 ” en una po­ gram a debe preguntar por el es­
U n a vez conectado el tem- sición de estos registros se espe­ tado de los pulsadores de entra­
p o rizad o r accio n e el “m an d o cifica que el pin correspondien­ da, primero por el conectado al
externo”, que por lo general es te funcionará como salida, y con pin PD 5 (S2) y luego por el co­
un m ecanism o o dispositivo de un “0 ” se especifica que funcio­ nectado al pin PD 4 (S3). Este
la m á q u in a que desea controlar nará com o entrada. Tenga m u y orden de prioridad se debe a que
(m ic r o in te r r u p to r , p u lsa d o r, presente este hecho porque pue­ la prim era función que debe eje­
contacto de relé, pedal, etc). de equivocarse fácilmente, espe­ cutar la tarjeta es la de progra­
cialm ente si está m u y fam iliari­ m ar el tiem po con que va a tra­
En este instante el tempori- zado con los PIC, en donde la bajar, y mientras S3 no se haya
zador activa su relé interno, per­ configuración funciona de m a­ oprim ido, el program a entra en
m itiendo que el proceso en la nera inversa. un ciclo donde retorna a pregun­
m áq u in a se produzca hasta que tar de nuevo por el estado de S2.
finalice el período de tempori- IN ICIO :

zación. Para que el temporizador RSP Para m a y o r clarid ad p u e ­


actúe de nuevo hay que liberar CLRA de rem itirse al d ia g ra m a de la
el “m ando externo" y volverlo a CLRX fig u ra 14.4. A llí p uede apreciar
accionar, si éste quedase activa­ BSET que la ún ica m an era de salir del
do. La anterior condición es con­ C O PD .C O N F IG l ; ciclo e ir a la ru tin a d e inicio
ven ien te en la m ayo ría de las ; D E S H A B I L I T O EL de la tem p o rizació n es cuando
aplicaciones industriales. ; COP (WATCHDOG) en el pin 4 del p u erto D apare­
MOV # $ F F ,D D R B ; ce u n cero ; m ie n tr a s eso no
Descripción del ; CONFIGURO EL P U E R - o curra, se retorna de nuevo a
programa ; T 0 B COMO S A L I D A S leer S 2 para seguir in crem en ­
El prim er paso, que se sigue en C L R PORTB tando al registro TEM P.
este program a, es asignar un re­ MOV # $ C 0 ,D D R D ;

gistro específico para alm acenar ¡CONFIGURO EL PUER- C u a n d o se sale d e la r u ti­


el dato actual de la temporiza- n a an terio r, el registro T E M P
ción, este registro se ha llam a­
do T E M P y sobre él vam os a
efectuar una serie de operacio­
nes de increm ento, decrem en ­
to v llam ado a tablas.

C om o siempre, en la prim e­
ra sección del program a se hace
una configuración de los pines
de entrada y salida del microcon­
trolador, de acuerdo a lo estable­
cido en los parámetros de fun- Figura 14.4 Ciclo de in icio de chequeo de los pulsadores

S .A . Curso práctico sobre Microcontroladores


Proyectos

ha q u e d a d o c a r g a d o co n un D S E I S D ,D S I E T E D ,D O C H O D , R o m F in EQU SFBFF
v alo r de te m p o riz a c ió n . D e­ DNUEVED RESET_VEC EQU $FFFE
p en d ien d o de su valor, se debe ¡R eset V e cto r
o r ig in a r la sa lid a h a c ia el dis- Figura 14.5 Tablas con los datos para org R am Start
cada uno de los puertos
p la y de s ie te s e g m e n to s . Si CERO EQU $ 7 E ; 0
o b s e r v a c u i d a d o s a m e n t e el La idea es direccionar m e ­ CEROD EQU $ 0 0
d ia g r a m a e s q u e m á tic o n o tará diante el registro T E M P la m is­ UNO EQU $7E
q u e el p u n to d e c im a l (q u e es m a dirección en am bas tablas; UNOD EQU $ 01
p arte fu n d a m e n ta l en el fu n ­ el dato de la prim era se envía al DOS EQU $0C ; 1
c io n a m ie n to de este proyecto) puerto B y el dato rescatado de DOSD EQU $ 00
está c o n e c ta d o a u n p in del la segunda se envía al puerto D, TRES EQU $0C
p u erto D , m ie n tra s todos los fig u ra 14.6. TRESD EQU $ 01
d em ás segm en to s están co n ec­ CUATRO EQU $ B 6 ; 2
tados al p u erto B. Registro CUATROD EQU $ 00
TEM P
CINCO EQU $B6
Para reso lv er e sta s i t u a ­ CINCOD EQU $ 01
c ió n e x isten v a ria s o p cio n e s, SEIS EQU $9E ¡3
en este caso se d e c id ió c o n s ­ SEISD EQU $ 00
Tabla 1 Tabla 2
t r u ir dos ta b la s d is t in ta s pero SIETE EQU $9E
d e la m is m a d im e n s ió n , c ad a SIETED EQU $ 01
u n a co n el d a to q u e se va a OCHO EQU $CC ¡4
e n v ia r p o r u n o de los p u e r ­ OCHOD EQU $ 0 0
al H Dato al
tos, f i g u r a 1 4 .5 . NUEVE EQU $CC
>B H Puerto t
NUEVED EQU $ 01
************************* D IEZ EQU $DA ¡ 5
Figura 14.6 M anejo de las tablas para
* U B I C A C I Ó N DE T A B L A S EN * form ar los segm entos D IE Z D EQU $ 0 0
* MEMORIA * ONCE EQU $DA
Los valores que poseen cada
* MEL y M E L 1 * uno de los elementos de esta tabla ONCED EQU $ 0 1
* * * * * * * * * * * * * * * * * * * * * * * * *
ya se han definido como constan­ DOCE EQU $ F A ¡6

ORG MEL DOCED EQU $ 0 0


tes en el inicio del programa, figu­
FCB UNO , DOS , ra 14.7. Tenga en cuenta que el TRECE EQU $ F A
TRES , CUATRO , C IN C O , TRECED EQU $ 0 1
punto decimal configura un valor
SEIS , SIETE , OCHO , CATORCE EQU $ 0 E ¡7
diferente para cada uno de los de­
NUEVE, D IEZ cimales del displny, llegando hasta CATORCED EQU $ 0 0
FCB ONCE , DOCE 19 valores distintos. Q UINCE EQU $0E
, TRECE, CATORCE, Q U IN C E , QUINCDED EQU $ 01
D S E I S , D SIETE , DOCHO , ; CURSO P R A C T IC O SOBRE D SEIS EQU $ F E ¡8
DNUEVE DSEISD EQU $ 00
MICROCONTROLADORES
ORG MEL1 DSIETE EQU $FE
; FA S C ÍC U LO 16
FCB UNOD, DOSD, D S IE T E D EQU $ 01
; MICROTEMPORIZADOR
TRESD, CUATROD, C IN C O D , DOCHO EQU $CE ¡9
SEISD , SIETED , OCHOD, S I n c lu d e ‘ jlB r e g s g .in c ’ DOCHOD EQU $ 00
NUEVED, D IE Z D DNUEVE EQU $CE
R A M S tart EQU $0080
FCB ONCED , R o m S ta rt EQU $EC00
DNUEVED EQU $ 0 1
DOCED , T R E C E D , CATORCED
Figura 14.7 Definición de las constantes
, Q U IN CED , ¡V e cto re s EQU SFFDE para cada uno de los segm entos

Curso práctico sobre Microcontroladores e m m w ..


M ic rote mpo riza do r

Cuando salimos del primer crocontrolador, éste debe perma­ ne co m o in d icar, p or ejem p lo ,
ciclo de lectura de los pulsadores necer allí durante un tiempo de­ el n ú m e ro 2 1 . Para ello se ha
entramos a una rutina de inicio term inado y para ello se invoca im p la n ta d o un registro de se­
de temporización, la cual se apre­ u n a ru tin a de retardo, fig u ra g u r id a d q u e sirv e d e testigo
cia en la figura 14.8. En ella pue­ 14.9. En esta rutina se acude al sobre los fen ó m en o s q u e su ­
de ver claramente como a través y a conocido método de ejecutar ce d an en el siste m a y q u e sir­
del registro acumulador (A) se di- ciclos anidados hasta llegar a un ve p ara e v ita r q u e o c u rran si­
reccionan y rescatan los distintos tiem po determinado. tu acio n es indeseables. Este re­
valores de acuerdo al valor actual gistro se ha lla m a d o B A N D E ­
deT E M P. Se tom a el primer va­ C u a n d o el retardo ha cu l­ RA, f ig u r a 1 4 .1 0 .
lor de la tabla 1 y se envía al puer­ m in ad o su ejecución, se decre-
to B; acto seguido, se direcciona m en ta en una u n id ad el regis­ C u a n d o u sted p u ls a por
y se toma el valor de la tabla 14.2 tro T E M P ; así vamos d ism in u ­ p rim e ra vez a S 2 , in m e d ia ta ­
y se envía al puerto D. yen d o los valores del tem pori- m e n te se activ a el bit 1 del re­
zador cada cierto tiem po y con gistro B A N D E R A , in d ic a n d o
Entre estos dos valores con­ ese nuevo valor de T E M P se re­ que ya h ay un valor v iab le para
figuran la visualización deseada en to rna para sacar un nuevo dato la te m p o riz a c ió n ; d e m an era
el display de siete segmentos. de las tablas. El ciclo se repite q u e c ad a vez q u e de la orden
hasta que T E M P llegue a cero, de in icio p or m e d io d e S 3 , lo
C uando el dato definitivo se cuando esto ocurra, el progra­ p rim e ro d eb e h acer el p ro g ra­
encuentra en los puertos del m i­ m a debe retornar al inicio, d an ­ m a es p re g u n ta r p or el estado
do final a la tem porización.
*************************
E xisten a lg u n o s factores * RETARDO- S U B R U T IN A DE *
de riesgo sobre los q u e se debe * RETARDO POR SOFTWARE *
p restar m u c h a a ten ció n para *

q u e el s is te m a f u n c io n e c o ­ * * * * * * * * * * * * * * * * * * * * * * * * *

rre c ta m e n te . Si observa la fi­


g u r a 1 4 .4 p u ed e ver q u e si el RETARDO:
p u lsa d o r S 2 no se ha a c c io n a ­ LDA # 1 1 0T
d o en n in g u n a o casió n , y si se STA MEM1
p u lsa S 3 el sistem a te n d e rá a ETl JSR R E T IT O
te m p o riz a r cero se g u n d o s. De DEC MEM1
la m ism a m a n e ra h a y q u e te­ BNE ETl
n er en c u e n ta q u e no se p u e ­ RTS
d e p e r m itir q u e T E M P tom e RETITO:
un valor su p erio r a 19, p orque LDA # 2 2 8T
reb asaría la c a p a c id a d del dis­ ET2 C LR X
play. Es decir, el display no tie ­ ET3 DECX
I RETARDO

1
r
Decrementar
TEM P
1______ >
No

T E M P = 0?
Si
RETORNO
BNE
DECA
BNE
RTS
ET3

ET2

F igura 14.8 Diagrama de flujo del cuerpo F ig u ra 14.9 Rutina básica de retardo por
p rin cip a l del program a softw are

^ Curso práctico sobre Microcontroladores


Proyectos

En “ 1” indica que S i está en “ 1" nillos que fijen el circuito impre­


so y el transformador a la base o
soporte y se deja u n a pequeña
ventana para visualizar el display.

PR IN CIPAL
CLR TEMP
; IN IC IA LIZÓ LA V A R I A B L E
DEL T IE M P O
CLR BANDERA
; I N I C I A L I Z Ó R E G IS T R O DE
BANDERAS
Figura 14.10 Registro BANDERA

de ese b it p ara co rro b o rar q u e Para el ensam blaje, se m o n ­ ET1 JSR RETARDO
e fe c tiv a m e n te se e n c u e n tre en tan primero los puentes de alam ­ ; LEER BANDERA 2 Y S I
alto ; de lo c o n tra rio el p ro g ra­ bre, las resistencias y la base para ; ESTA B RINC A R A ET2
m a r e to r n a r á a su p u n to de el microcontrolador. Se continúa BRCLR PD5,PORTD,INCREM
in ic io , fig u ra 1 4 .1 1 . con los condensadores, el tran­ ; CHEQUEO PULSADOR DE
sistor, el cristal y el relé. ; INCREMENTO DE TIEMPO

De la m ism a manera, cada ET2 BRCLR PD4,PORTD,INICIO

vez que pulse S2, se incrementa Si va a utilizar el proyecto en ; CHEQUEO PULSADOR

T E M P pero al m ism o tiempo se forma independiente, es reco­ ; DE I N I C I O


com para con el núm ero 19. Si m endable construir un chasis o ; DE LA T E M P O R IZ A C IÓ N
detecta que T E M P ha sobrepa­ caja para protegerlo de las condi­ BRA ET1

sado ese valor, debe activar el bit ciones ambientales. Los materia­ INCREM :

2 del registro BANDERA. les para ésta pueden ser aluminio, BSET B A N D E R A ,1

hierro, plástico o aerifico; la for­ INC TEMP

Por esa razón, antes de in­ m a de la caja, así com o su ta­ ; DECREMENTAR 1 0 Y

crem entar T E M P debido a una m añ o , los dejam os a su gusto e ; A L L L E G A R PONER

lectura positiva de S2, debe co­ im aginación. ; BANDERA 2

rroborar que dicho bit se encuen­ BRA ET1

tra desactivado; de lo contrario, En ciertos casos, como por


T E M P no incrementará más. ejem plo en paneles o tableros de Figura 14.11 A ctivación d e l b it 1 del
control, el temporizador se pue­ registro BANDERA cuando se ha
En el diagram a de la figura de m ontar directamente con tor­ detectado la activación deS2
14.12 se muestra el esquema ge­
neral para la conexión del micro-
temporizador en una aplicación
real. Por medio del pulsador S2
se ajusta el tiempo de la tarjeta y
por medio del pulsador S3 o un Figura 14.12 Esquema
global de la conexión de
m an d o externo (puede ser un
la tarjeta
pedal o cualquier otras entrada del
usuario) disparar el fu ncio na­
miento del temporizador y la sa­ M an d o
Indicador de
lida por medio de un relé. externo
fracció n

Curso práctico sobre Microcontroladores m iK H ir ,,


Microtemporizador

Ensamblaje del proyecto L IS T A DE M A T E R IA LE S

Cant. Reí. Descripción


1 IC1 Microcontrolador motorola MC68HC908JK3
Figura 14.13 1 IC2 Regulador fijo de +5V -100mA. 78L05
1 Q1 Transistor de propósito general NPN, 2N3904
Conjunto de 1 BR1 puente rectificador circular de 1A. W06M
componentes 1 D1 Diodo de propósito general 1N4004
electrónicos y los 1 DISPLAY1 Display de siete segmentos de ánodo común
1 K1 Relé de 12V
accesorios que se 1 C1 Condensador electrolítico de 470uF - 25V
requieren para 1 C2 Condensador electrolítico de 1 0 u F - 25V
ensam blar el 1 C3 Condensador cerámico de 0.1uF - 50V
2 C4 y C5 Condensadores cerámicos de 22pF - 50V
* microtem porizador. 1 XT1 Cristal de cuarzo de 4MHz
1 R1 Resistencia de 10M-1/4W
8 R2 a R9 Resistencias de 470 - 1/4W
1 R10 Resistencia de 5.6k - 1/4W
Por m edio de este proyecto usted podrá program ar un intervalo 3 R11 a R13 Resistencias de 10k-1/4W
corto de tiem po y accionar o energizar cargas o dispositivos de 3 S1 a S3 Pulsadores pequeños de 4 pines, para circuito impreso
hasta 10A p o r m edio de los contactos de salida que ofrece su 1 J1 Conector en línea de 2 pines
1 K-331 Circuito impreso CEKIT
relé. Para el ensamblaje de la tarjeta tenga en cuenta los siguientes 1 Conector de alimentación CA/CC
pasos: 1 Conector de tomillo de 3 pines
1 Base para circuito integrado de 20 pines

Instale y suelde los puentes de alam bre y las trece resistencias


R1 a R13. Instale y suelde los condensadores cerám icos C3, C4, y C5, y el
Figura 14.14 c ris ta l de cuarzo XT1.
Figura 14.17

Paso 2 Paso 5
Luego instale y suelde la base para e l circuito integrado IC1, y el Fije y suelde e l puente rectificador BR1 y e l display de 7
diodo rectificador D 1. segm entos de ánodo común.
Figura 14.15 Figura 14.18

Paso 3 Paso 6
Instale y suelde e l transistor Q1,e l regulador de voltaje integrado Aspecto fin a l d e l proyecto ensamblado, luego de in sta la r y soldar
IC2 y los pulsadores para control S1 a S3. ¡os condensadores electrolíticos C1 y C2, e l relé de salida y los
Figura 14.16 conectores de entrada y salida para la alim entación, e l disparo
externo y los contactos del relé.
Figura 14.19
Paso 7. Pruebas finales
Para alimentar el circuito debe usar un adaptador que brinde voltaje continuo entre 8 y 12 voltios. Cuando se alimenta la tarjeta por medio del
conector CA/CC e l circuito se pone a la espera del dato que se va a program ar para la temporización. En e l estado inicial el display debe
m ostrar e l número 0 y se va incrementando con cada pulso en S2.

Curso práctico sobre Microcontroladores


CONTROL DE APARATOS VÍA
TELEFÓNICA
C on este proyecto usted va a construir un equi­
po que le perm itirá activar y desactivar una car­
ga rem ota, utilizando como m edio de transm i­
sión la línea telefónica.

Características
• Activa cargas a distancia utilizando la línea
telefónica
Tamaño reducido
Capacidad para manejo de potencia
Bajo costo
Salida por medio de relé
Señalización por medio de diodos LED

C urso p rá c tic o so b re M ic ro co n tro la d o re s tfS M , s.a


Control de aparatos vía telefónica

El co n tro l a d is ta n c ia es zando el teclado del teléfono, de resortes, lo devuelve a su po­


u n a m o d a lid a d q u e presenta por lo que se restringe el fun­ sición o rig in a l. Los pulsos se
m uch as opciones y beneficios cionam iento del equipo a líneas generan d u ran te el regreso del
p ara los usuarios. D en tro de cuyo sistema de señalización o disco y los producen u n par de
sus p rin cip ales ventajas se en ­ de m arcado sea de tonos. Bajo contactos que se abren y cie­
cu en tran : la co m o d id a d que le n in g u n a c irc u n s ta n c ia p u ed e rran a razón de a p ro x im a d a ­
ofrece al no tener q u e despla­ trabajar con teléfonos de m ar­ m en te 10 pulsos p or segundo
zarse hasta a lg ú n sitio para h a ­ cado por impulsos (como los de (20 en Europa). Los m arcad o ­
cer alg u n a tarea, la segurid ad disco giratorio, por ejem plo). res d ig itales o electrónicos si­
o b te n id a ya q u e p ued e hacer m u la n la acción m ecán ica de
labores peligrosas sin acercarse El sistema de los m arcad o res d e disco m e ­
al área de trabajo y la rapidez señalización DTMF d ian te un teclado que em ite los
con q u e p ued e to m ar acciones Existen a c tu a lm e n te dos for­ pulsos, a m e d id a q u e se in g re­
respecto a alg u n a condición es­ mas de en viar a la central de sa cada dígito. El sistem a de te­
pecífica, entre otras. c o n m u ta c ió n la in fo rm a c ió n clado p erm ite m arcar el n ú m e ­
de los d ígito s m arcados en un ro deseado con m a y o r rapidez.
Este proyecto consiste en teléfono: por pulsos y por to­
crear u n equipo que, a través de nos. En el p rim er caso, el m a r­ El m éto d o de señalización
la lín ea telefónica, reciba órde­ cado r gen era u n a serie de p u l­ D T M F u t iliz a 16 c o m b in a ­
nes o instrucciones referentes a sos a través de la línea. En el ciones d istin tas de frecuencias
la tarea que debe efectuar. La segu n d o , el m arcad o r produce de a u d io , todas c o m p re n d id a s
idea es que usted pueda, desde tonos de dos frecu en cias. El d e n tro d e la lla m a d a b a n d a de
la co m o d id ad de su casa u ofi­ n úm ero m arcad o se id en tifica voz (3 0 0 H z a 3 k H z ). C a d a
cina, utilizar el teléfono para eje­ en el centro de c o n m u ta ció n c o m b in a ció n consta de dos se­
cutar alg u n a acción. Por ejem ­ co ntan do los pulsos o decodi- ñ ales s e n o id a le s : u n a d e un
plo, antes de salir de su oficina ficando los tonos, respectiva­ g r u p o b a jo d e f r e c u e n c i a s
puede llam ar a su casa, donde m ente. El m étodo de tonos se ( 6 9 7 H z , 7 7 0 H z , 8 5 2 Hz,
tiene el aparato controlador ins­ conoce técn icam en te co m o se­ 941 H z) y otra de un grup o
talado, y ordenar que se encien­ ñ alizació n D T M F ( dual-tone a lt o ( 1 2 0 9 H z , 1 3 3 6 H z,
da el c a le n ta d o r de a g u a del m ultifrequency. m u ltifre cu e n - 1 4 7 7 H z, 1 6 3 3 H z). En la fi­
baño para que cu an d o llegue cia de d o b le tono). gura 1 se m u estra la m atriz de
ésta se encuentre en una tem ­
Frecuencias del grupo alto
p e r a tu r a id e a l. La form a ori­
ginal del m arcador X 1209Hz 1336Hz 1477Hz 1633H^
Este dispositivo está pensa­ de pulsos es la de /
u n d isc o e le c tr o ­ 679Hz
do para trabajar ún ica y exclu­
sivamente con líneas telefónicas m e c á n ic o g i r a t o ­ 2
estándar, en n in g ú n caso con rio, d o tad o de un & 770Hz = Q

líneas integradas a co n m u tad o ­ sistem a de levas y O)


o5
*o
res privados del tipo PBX, ya engranajes que gira 852Hz
• —

q u e estas pueden presentar pro­ a m e d id a q u e el o


cz
03

blemas de incom patibilidad de­ d is c o lo h a c e . =3


O
P
bido a que trabajan con niveles C u a n d o se libera el
de voltaje y corriente diferentes. disco, un m ecanis­ Teclas
A dicionalm ente, las órdenes de m o r e g u la d o r de opcionales
control se proporcionan u tili­ v e lo c id a d , a base Figura 15.1 Frecuencias del sistem a DTMF

<SMKIT,1 Curso práctico sobre Microcontroladores


Proyectos

frecuencias de u n teclado m a r­
ca d o r de tonos. Las teclas A,
B, C y D se u tiliz a n p ara ta­
reas especiales y, n o r m a lm e n ­
te, no fo rm an p a rte de los te ­
clados co m u n es.

Al pulsar el d ígito «5» por


ejem plo, se envían sim u ltán ea­
m en te a través de la línea tele­ F igura 15.2 Diagram a en bloques del sistem a de control
fónica un tono bajo de 7 7 0 Hz
y un tono alto de 1 .3 3 6 Hz. Descripción del circuito El decodificador de tonos
Estos tonos son decodificados El circu ito debe estar p erm a­ MT88L70
en la c e n tra l te le fó n ic a para nentem ente conectado a la lí­ Dado que la parte del circuito en­
identificar el dígito marcado. Al nea para que p u ed a detectar el cargada de hacer la decodificación
pulsar dos o más teclas de una m o m en to en que recibe su lla­ de los tonos es quizás la más com­
m ism a fila o co lum n a, se gene­ m ada. Por lo tanto, debe tener pleja, se ha preferido utilizar un cir­
ra un solo tono (el correspon­ un sistema que le p erm ita d e ­ cuito integrado especial para dicha
d ien te a esa fila o co lum n a). La tectar la señal de tim bre y por tarea. En este caso específico, utili­
pulsación de teclas diagonales consiguiente, tam bién debe te­ ce el decodificador M T 88L 70 de
no genera tonos. ner un sistema que le perm ita la empresa MiteL el cual presenta
sim u lar que se ha descolgado el las características necesarias para la
La s e ñ a liz a c ió n D T M F teléfono para que la central deje tarea y además, se puede conseguir
tien e varias ven tajas sobre la de enviar dicha señal. C o m o las en el mercado fácilmente. En la fi­
d e p u ls o s , i n c l u y e n d o u n a órdenes de control se envían gura 15.3 se muestra su diagrama
m a y o r rap id ez de m arcad o y m ed ian te tonos D T M F , ta m ­ de pines correspondiente. Dentro
la p o s ib ilid a d d e e n v ia r señ a­ bién se debe in clu ir un sistema de sus principales características se
les de co n tro l a través de la lí­ de decodificación de tonos que encuentran:
n ea telefón ica. La m arcació n le p erm ita al sistem a de control • O pera con fuente de alim en­
d e to n o s se d is t in g u e f á c il­ tom ar la decisión de si activa o tación entre 2 ,7 y 3 ,6 voltios
m e n te p or los so n id o s c a ra c ­ no la carga de salida. En la fi­ • Recepción de todos los to­
terísticos q u e g en era al pulsar g u r a 1 5 .2 se m uestra el d iagra­ nos D T M F
c a d a en trad a. m a en bloques del sistema. • Bajo consum o de potencia

Descripción de pines
1 IN+ Non inverting input. Entrada de señal no invertida
2 IN- Inverting input. Entrada de señal invertida
3 GS Gain select. Ajuste de ganancia
4 Vref Reference Voltage. Es una salida con un voltaje igual a la mitad de la fuente
5 INH Inhibit. Un lógico alto en este pin prohibe la detección de los tonos correspondientes
a las teclas A. B, C y D.
6 PWDN Power Down. Un lógico alto en este pin pone el dispositivo en modo de bajo
consumo.
7 OSC1 Clock. Conexión del cristal de 3.579545 MHz
8 OSC2 Clock
9 Vss GND
10 TOE Three State Output Enable. Un lógico bajo en este pin pone las salidas en alta
impedancia. Un lógico alto las habilita.
11-14 Q1-Q4 Data output. Salida de datos. Mantiene memorizado el último código recibido.
15 StD Delayed Steering. Genera un pulso alto cuando recibe un tono válido y la salida
actualiza el código recibido
16 ESt Early Steering. Presenta un lógico alto cuando detecta un tono válido
17 St/GT Steering Input/Guard Time. Ajusta el nivel de sensibilidad.
18 Vdd Power Supply. Fuente positiva entre 2,7 y 3,6 voltios.

F igura 15.3 Circuito decodificador DTMF M T88L70

á *
Curso práctico sobre Microcontroladores (§ M IIK IIT T s .t.
Control de aparatos vía telefónica

• Requiere de m u y pocos ele­ de sus semiciclos. Por lo tanto, de tonos y de acuerdo a los dígi­
mentos externos el transistor del m ism o se acti­ tos recibidos, decidir si activa o
• Posee latch en las líneas de va haciendo que entre en con­ no la carga de salida. También es
salida d u c c ió n Q l . A sí, el nivel de el encargado de verificar si llegó
voltaje sobre R4 pasa de un ni­ una señal de timbre en su pin
El M T 8 8 L 7 0 recibe los to­ vel lógico bajo a un nivel alto, R B 7 para activar el circuito que
nos D T M F de la línea telefóni­ haciendo de paso que el LED sim ula que se ha descolgado la
ca y entrega en sus salidas Q l a D 1 se encienda y sirva como in­ bocina del teléfono.
Q 4 el código binario correspon­ d icad o r del correcto fu ncio na­
diente a la tecla q u e lo p ro d u ­ m iento de esta parte del siste­ C u a n d o el P IC 1 6 F 8 4 d e ­
ce. A dem ás, posee un pin que ma. tecta que se recibió una señal de
genera un pulso positivo cada tim bre válida, in icia una tem ­
vez que recibe un tono válido C u a n d o la lín e a telefónica p o r iz a c ió n d e 10 s e g u n d o s
( S tD ). En la f i g u r a 1 5 .4 se se en cu en tra en estado norm al aproxim adam ente, tiem po d u ­
m uestra la tabla de códigos co­ (c o lg ad o ), el v o ltaje presente rante el cual perm anece activa­
rrespondiente que entrega este sobre la lín ea es de 4 8 V C C y do el circuito que sim u la que el
circuito integrado según el tono cu an d o se levanta el au ricu lar teléfono h a sido descolgado.
recibido y según la configura­ (d esco lgado ), dich o nivel cae
ción de sus pines de control. p o r d e b a jo d e 1 0 V C C . Por Este tiem p o es em pleado
ello, el circuito de detección del por el usuario que h a hecho la
Funcionamiento tim b re debe utilizar el co n d en ­ lla m a d a para en viar los tonos
C a d a u n o de los bloques m e n ­ sador C l para q u e la c o m p o ­ D T M F q u e harán que la carga
cio nados en la descripción del nente C C de la lín ea sea filtra­ sea activad a o desactivada. El
eq u ip o posee un circu ito e q u i­ da y no se produzca u n a sobre­ hecho de tener un m icro co n ­
valen te q u e se en carga de ha­ carga de la m ism a. trolador en el circuito hace que
cer la tarea respectiva. En la fi­ las p o s ib ilid a d e s de c o n tro l
g u r a 1 5 .5 se m uestra el d ia g ra ­ D e c o d if ic a d o r d e to n o s . Este sean m u y grandes; p or e je m ­
m a esq u em ático del eq u ip o y c ir c u ito , co m o y a se m e n c io ­ plo, usted p uede tener u n a cla­
vam o s a h o ra a e x p lic a r c ad a nó, está c o n s tr u id o a lre d e d o r ve de acceso p ara q u e sea a d ­
u n a de sus partes. de un c ir c u ito in te g ra d o m itid a u n a orden de encender
M T 8 8 L 7 0 ( I C 3 ) , el c u a l u t i­ o ap ag ar la carga.
D etector de la señal de tim b re liza un o s pocos c o m p o n e n te s
La señal de tim bre que envía la ex te rn o s p a ra h a c e r su tr a b a ­ S i m u l a c i ó n d e te lé fo n o d e s­
central telefónica, cuando se re­ jo. S u c o n e x ió n a la lín e a te ­ c o lg a d o . Este s is te m a p e r m i­
cibe una llam ada, tiene aproxi­ le fó n ic a se h ace a través del te esta b le c e r la c o m u n ic a c ió n
m ad am en te 9 0 V C A y u n a fre­ c o n d e n s a d o r C 2 lo q u e ev ita co n el u s u a r io y a q u e es u s­
cuencia de 2 0 Hz. Para detec­ p ro b le m a s co n el v o lta je C C ted q u ie n le d ic e a la c e n tra l
tarla se utiliza el circuito co n ­ d e la lín e a y a d e m á s , d e ja p a ­ te le fó n ic a q u e la lla m a d a se
fo rm ad o p or el c o n d e n sad o r sar las fre c u e n c ia s d e los to ­ h a c o n te stad o .
C l , la resisten cia R l , el op- nos D T M F .
toacoplador I C l , el transistor Su funcionam iento es bas­
Q l y la resistencia R4. C ircuito de control. Está cons­ tante sim ple y consiste en poner
truido alrededor de un microcon­ una resistencia (R3) en paralelo
La idea es q u e la señal a l­ trolador PIC16F84. Su principal con la línea telefónica, de tal for­
terna polariza correctam ente el función es recibir el código bina­ m a que la central vea una impe-
diodo del optoacoplador en uno rio que entrega el decodificador dancia equivalente sim ilar a la

€ g /K S T ,, Curso práctico sobre Microcontroladores


Proyectos

100KQ
R7
100KQ .

Q1
2N3904

3.579545 □

1N4004

Q2
2N3904

05 SALIDA
1N4004

2N 3904

♦3.6V (REO.)

Transformador

F igura 15.5 Diagram a esquem ático del circuito

que presenta el teléfono cuando Conexión de la carga. Cuando confirmar el estado del relé, se ha
es descolgado. Dicha conexión el circuito de control recibe una conectado el LED D 3 en el mis­
se hace a través de los contactos orden válida para encender o apa­ mo pin que lo controla.
del relé K 1, el cual, a su vez, es gar la carga de salida, solamente
m anejado por el del transistor debe activar o desactivar el relé Fuente de alimentación. El sis­
Q 2 que recibe la orden desde el K2 que es el encargado de hacer tema se puede alimentar de la red
pin R B 6 del microcontrolador. la conmutación de la misma. La de 110 ó 2 2 0 V C A mediante un
Además, en este pin se ha conec­ utilización del relé permite que el transformador que entregue en su
tado el LED D 2 lo que le per­ circuito maneje una carga de cual- salida 9 VCA. U na vez rectifica­
m ite establecer si el equipo ha quier tipo, independientemente da dicha señal, se obtiene un vol­
contestado la llamada. de cual sea su naturaleza. Para taje cercano a los 12 V C C que sir-

Curso práctico sobre Microcontroladores fU SIKIT.


Control de aparatos vía telefónica

ve para alim entar los relés y al si se tr a ta r a d e u n a lla m a d a La id ea es q u e la señal a l­


m ism o tiem po, com o entrada cu alq u iera y c u a n d o el equipo te rn a p o la rice co rre c ta m e n te
para el regulador 78 05 que actúa contesta, d ich a señal te rm in a y el d io d o del o p to a c o p lad o r en
como Riente para el microcontro­ p uede entonces o p rim ir las te­ u n o de sus sem iciclo s. Por lo
lador y el optoacoplador. Además, clas q u e le in d ic a n al equipo tan to el tra n sisto r del m ism o
para alimentar el M T 8 8 L 7 0 se ha q u e d eb e activar o desactivar la se activ a h a c ie n d o q u e entre
dispuesto un diodo Zener a la carga. En nuestro caso p articu ­ en c o n d u c c ió n Q l . A sí, el n i­
salida del regulador de 5 voltios, lar, u tilic e la tecla n ú m ero 5 vel de v o ltaje sobre R4 pasa de
el cual permite obtener la señal para activar la carga y la tecla un nivel ló gico b ajo a u n n i­
de 3 ,6 V C C necesaria. n ú m e ro 6 p a ra d e s a c tiv a rla . vel alto , h ac ie n d o de paso que
U n a r e c o m e n d a c ió n es q u e el LED D i se e n c ie n d a y sir­
Operación deje la tecla o p rim id a al m enos va co m o in d ic a d o r del correc­
Para operar este equipo debe co­ p or un segundo, lo que g a ra n ­ to fu n cio n am ien to de esta par­
nectarse a la línea telefónica y a la tiza q u e el receptor reciba la te del sistem a. El co n d en sad o r
red eléctrica pública. La primera señal correctam ente. C l ev ita q u e las co m p o n en tes
actúa como medio de transmisión C C de la señal en tren al c ir­
para que usted envíe al aparato En el circuito impreso se en­ cuito. A dem ás, éste debe ser de
todas las órdenes necesarias para cuentran dos puntos marcados al m en o s 2 0 0 voltios.
cum plir la tarea que se requiere. con las letras LINEATEL., en los
La segunda, como es obvio, per­ cuales se debe conectar dicha se­ El decodificador de tonos
mite que el equipo funcione ya ñal. Para este propósito, se pue­ está construido alrededor de un
que, dado su consumo relativa­ de utilizar un cable de los que se circuito integrado M T 8 8 L 7 0
mente alto, no se puede alimen­ consiguen en el mercado, con sus (IC 3), el cual utiliza unos po­
tar de la línea telefónica. conectores RJ-45 debidam ente cos com ponentes externos para
instalados. Uno de los extremos hacer su trabajo. S u conexión a
Para lograr esto últim o, se se conecta al tom a donde se en­ la línea telefónica se hace a tra­
ha dispuesto un transform ador cuentra disponible la línea tele­ vés del condensador C 2 , lo que
que se conecta a la línea de 110 fónica. En el otro extrem o se evita problem as con el voltaje
ó 2 2 0 V C A y entrega en su sali­ debe co rtar el co necto r para así C C de la línea y adem ás tam ­
da una tensión de 9V C A . soldar en el circuito impreso los bién deja pasar las frecuencias
dos cables correspondientes a de los tonos D TM F.
El control de aparatos por vía la línea, es decir, los cables rojo
telefónica posee un relé como ele­ y verde. El circu ito de control está
mento de salida, el cual le permi­ construido alrededor de un m i­
te activar y desactivar cualquier A través de dichos termina­ cro con trolador P IC 1 6 F 8 4 . Su
tipo de carga conectada a través les llegan al circuito la señal de p rin cip al funció n es recibir el
de sus contactos. La idea es que timbre y los tonos DTMF. código b in ario que en trega el
usted pueda, desde algún sitio le­ d e c o d ific a d o r d e tonos y de
jano, marcar el número de telé­ Para d e te c ta r la señal de acuerdo al d íg ito recibido, de­
fono en que está conectado el tim b re, q u e tien e ap ro x im a d a ­ cid ir si activa o no la carga de
equipo y cuando él conteste, po­ m en te 90 V C A y u n a frecuen­ salida. T am b ién es el en carga­
der dar las órdenes de encender o cia de 20 Hz, se utiliza el c ir­ do de verificar si llegó u n a se­
apagar la carga. cuito co nfo rm ad o por el c o n ­ ñ al de tim b re en su p in RA3
densador C l , la resistencia R l , para activar el circu ito que si­
C u a n d o usted hace la lla ­ el o pto aco p lado r I C l , el tra n ­ m u la que se ha descolgado el
m ad a, escucha el tim b re como sistor Q1 y la resistencia R4. au ricu lar d el teléfono.
/ \ \ ¿ 4
134 e /E K im : Curso práctico sobre Microcontroladores
Proyectos

Dicha operación tam bién conectar el equipo para obtener m a n e ja d e s d e el p in R A 2 y


in ic ia u n a te m p o r iz a c ió n de un correcto funcionamiento. mantenerlo así durante aproxi­
aproximadamente 10 segundos, m a d a m e n t e 10 s e g u n d o s ,
tiempo durante el cual el usuario Para la prueba del equipo tiem p o d u r a n te el cu al se debe
debe oprimir la tecla que indica se requieren dos líneas telefóni­ revisar el p in R B 4 q u e es d o n ­
la operación que desea llevar a cas, u n a para conectar el e q u i­ de se d e b e re g istra r un pulso
cabo. El uso de un microcontro­ po de control y otra para que el d e n iv e l a lto p ro v e n ie n te del
lador también abre un mundo de usuario haga la llam ad a y veri­ in t e g r a d o M T 8 8 L 7 0 , y q u e
posibilidades bastante am plio; fique que el sistem a funciona in d ic a q u e se re cib ió un c ó d i­
por ejemplo, se puede escribir un correctamente. O bviam ente, su go D T M F v á lid o .
programa que obligue al usuario teléfono debe ser de m arcado
a entrar una clave de seguridad por tonos y la línea donde se co­ Luego de lo anterior, el m i­
antes de poder cambiar el estado necta el equipo de control debe crocontrolador sólo debe leer el
de la carga que está siendo mane­ ser una línea convencional. En dato que está presente en sus
jada por el equipo. n in gún caso se puede conectar pines R B 3 a RBO, el cual corres­
a una línea derivada de un PBX. ponde al dígito que se ha reci­
C u a n d o el eq u ip o recibe bido. Esta tarea es bastante sen­
una llam ada, el microcontrola­ Descripción del cilla ya q u e el M T 8 8 L 7 0 posee
dor activa el relé, el cual se en ­ programa cerrojos ( latches ) en sus salidas.
carga de conectar la resistencia D ad o q u e el fu n cio n am ien to Por últim o, el microcontrolador
R3 en paralelo con la línea tele­ del equipo es bastante simple, debe revisar si el código corres­
fónica, lo que le indica a la cen­ el program a tam bién lo es. Bá­ ponde al núm ero 3, para acti­
tral que se ha contestado. Esto sicam ente, el m icrocontrolador var el relé de salida, ó al n ú m e­
es posible gracias a que dicha re­ d eb e estar p e n d ie n te de que ro 6, que indica que se debe des­
sistencia sim ula una impedancia aparezca una señal de nivel alto activar. U n a característica espe­
sim ilar a la que presenta u n telé­ en el pin RA3 lo que ind ica que cial es que utilizam os la m em o ­
fono convencional cuando se le­ se recibe u n a llam ada. r ia E E P R O M d e d a t o s d e l
vanta el auricular. P I C 1 6 F 8 4 para a lm a c e n a r el
P o s te rio rm e n te , el a p a r a ­ estado que debe tener la carga
Para la conexión y desco­ to d e b e a c tiv a r el relé q u e se en un m o m en to determ inado.
nexión de la carga se utiliza sim ­ Interruptor

plemente un relé de 12 voltios, 110 ó


220VCA
el cual es accionado desde el m i­
crocontrolador mediante el tran­
sistor Q 3 . Esto permite que us­
ted pueda manejar cualquier tipo C E K IT K -1 9 6

de carga. Por otra parte, el siste­


m a se debe alimentar con 9VGA,
los cuales se obtienen del secun­ Línea ICI K A N G -U P

telefónica
dario del transformador. 3n i®
= □ (^ í
Otra opción, consiste en uti­ Opimo MT88L7°
lizar una fuente de 12V C C que 110 ó
220VCA
se tenga disponible en el sitio de
trabajo. En la fig u r a 1 5 .6 se
muestra la forma en que se debe F igura 15.6 Conexión del equipo

Curso práctico sobre Microcontroladores m m r ..


Control de aparatos vía telefónica ,

Ensamblaje del proyecto U S T A DE M A T E R IA LE S

Ref. Descripción Cant.


IC1 O ptoacoplaO or 4 N 25
IC2 M icrocon to la d or P IC 1 6 F 8 4
IC3 C ircu ito in teg rad o M T 8 8 L7 0
IC4 R e g u la d o r fijo d e *5V. 7805
01 aQ 3 T ra n sisto re s N P N . 2N3904
BR1 P u e n te rectificad o r d e 1A. W 0 6 M
0 1 a D3 D io d o s L E D rojos de 5mm
D4 y D5 D io d o s rectificad o res 1N4004
06 D io d o z e n e r d e 3 ,6 V a 1/2W
C1 C o n d e n s a d o r ce rá m ico de 0 .47p F/250V
C 2 ,C 3 y C 7 C o n d e n s a d o re s c e rá m ic o s de 0 .1 p F/50 V
C4yC5 C o n d e n s a d o re s c e rá m ic o s de 2 0 p F /5 0 V
C6 C o n d e n s a d o r e le ctro lítico d e 1000pF/25V
C8 C o n d e n s a d o r e le ctro lítico d e 100pF/25V
R1 R e s is te n c ia de 3.3k-1/4W
R 2 .R 6 y R 7 R e s is te n c ia s d e 100k-1/4W
R3 R e s is te n c ia de 560-1/4W
Figura 15.7 R4 R e s is te n c ia de 1k-1/4W
R 5 .R 9 y R 1 2 R e s is te n c ia s de 470-1/4W
Conjunto de com ponentes electrónicos y R8 R e s is te n c ia d e 300k-1/4W
los accesorios que se requieren para R 1 0 .R 1 1 .R 1 3 y R 14 R e s is te n c ia d e 2.7k-1/4W
R 15 R e s is te n c ia d e 100-1/4W
ensam blar e l sistem a de control de XT 1 C n sta l d e c u a rzo d e 4 M H z
aparatos p o r vía telefónica. XT2 C n sta l d e c u a rz o de 3 .5 7 9 5 4 5 M H z
K 1 y K2 R e lé s de 12V
K -19 6 C ircu ito im p re so C E KIT
Interruptor d e c o d illo de 2 p o sicio n e s
C o n e c to r d e tom illo d e 3 pines
B a s e para integrado d e 8 pines
Por m edio de este circuito se podrá controlar el
B a s e p a ra integrado d e 18 p in es
encendido de dispositivos a distancia, tan solo con T ran sfo rm ad o r c o n Prim ario: 110 ó 220 V C A Secundario: 9 V C A
C a b le d e p oten cia c o n enchufe
una llam ada telefónica. Para el ensamblaje de la T erm in al p ara circu ito im p re so (espadines)
tarjeta tenga en cuenta los siguientes pasos:

Paso 1
Paso 4
Instale y suelde los
Instale y suelde los
puentes de alambre,
transistores 01, 0 2 y
las quince resistencias
03.
R1 a R 1 5, y los diodos
Figura 15.11
zener y rectificadores
D4 a D6.
Figura 15.8

Paso 5
Paso 2 Fije y suelde los
Luego instale y suelde diodos LED, los
las bases para los condensadores C1 a
circuitos integrados C 5yC 7, los cristales
IC1, IC2 e IC3. de cuarzo X T l y XT2 y
Figura 15.9 los condensadores
electrolíticos C6 y C8.
Figura 15.12

Paso 6
Paso 3
Aspecto d e l proyecto
Instale y suelde e l
luego de in sta la r y
puente rectificador
soldar los relés, el
BR1.
regulador IC4, el
Figura 15.10
conector de salida y
los espadines.
Figura 15.13

Paso 7. Pruebas finales


La principal señalización de la tarjeta está dada por los tres diodos LED: D 1,D 2 y D3. Ellos indican e l momento en que
entra una llamada, en que se descuelga el teléfono y la activación de las cargas.

€M fCiT¿ Curso práctico sobre Microcontroladores


ANALIZADOR LÓGICO CON PC
Ensamble esta herram ienta de gran utilidad para
su laboratorio. Por m edio de este analizador ló­
gico, que se conecta al puerto paralelo de su com ­
putadora, puede evaluar el funcionam iento de
los circuitos digitales, conocer su frecuencia, su
ciclo útil, o sim plem ente com pararlo con otras
señales dentro del m ism o circuito de prueba.

Características
• Útil aparato para su laboratorio de electrónica
digital y microcontroladores
• Graficación de las lecturasen una computadora
• Lectura visual de los retardos entre señales
• Lectura de frecuencia
• Alta velocidad
M *
Curso práctico sobre Microcontroladores e É K i r ,
Analizador lógico con PC

U n a analizador lógico es un
instrum ento de m edid a que sir­
«w iznm mico con re 1
ve para la visualización de varias
»•
señales digitales en una pantalla,
11
de tal m odo que se puedan con­ U L -J 1__ í U U 1__/ 1— 1 I
frontar unas con otras y anali­ 13
zarlas con respecto al tiempo. 14
■ *

Esta herramienta tiene cierta si­


*1 LJ l 1 i i II m m i r
m ilitud con un osciloscopio, sólo ol ____ I
q u e las señales u tilizad as son * r
únicam ente de carácter digital, &3
es decir, unos o ceros. Para quie­ •1
nes han utilizado las puntas ló­ T iem p o to tal utilizad o 0.77 seg.
T otal de m uestras tom adas: 600
gicas, las cuales indican el esta­ Total m uestras p o r segundo 779
Tiem po aprox p o r d¡\ isió n : 38 mseg
do lógico del punto m edido, el
analizador mostrará lo mismo
pero en varios puntos del mis­ F ig u ra 16.1 Gráfico m ostrado p o r e l analizador lógico
m o circuito, puntos estos que
son seleccionados por el usuario fácilm ente la frecuencia de las se n te n estas señ ales es f u n d a ­
y cuyos estados lógicos aparece­ señales digitales que se conec­ m e n ta l p a ra el b u e n f u n c io ­
rán dibujados en la pantalla de ten a este instrum ento. n a m ie n to d e las d is tin ta s p a r ­
la computadora. tes d e l sistem a.
Por m edio del analizador
El analizador lógico de este lógico se puede probar por ejem­ Funcionamiento
p ro y e c to p u e d e ser u tiliz a d o plo, la velocidad de los circuitos El fu n cio n am ien to del analiza­
com o h erram ien ta de laborato­ integrados, los cuales presentan dor lógico con P C es m u y sen­
rio para probar circuitos d ig i­ un retardo al cam bio de señal cillo. O bserve en la fig u ra 16.3
tales. Lo que p o d ía leerse con dependiendo de la calidad de los el d ia g r a m a de b lo q u e s q u e
u n a p u n ta lógica, ah o ra puede mismos. En la figu ra 16.2 se describe la operación d el cir­
hacerse co n esta h erram ien ta ilustra la diferencia de respues­ cuito. Es suficiente conectar las
con la salvedad de que no se ta entre dos circuitos integrados en trad as del a n a liz a d o r a los
o b tie n e el estado de un solo diferentes.
p u n to del circuito sino de c in ­
co a la vez,; adem ás, podem os En los c ir c u it o s
analizar dichos estados lógicos co n m ic ro c o n tro la ­
Señal
con respecto al tiem p o su m i­ dores este in s tr u m e n ­ original

nistrado por la co m p u tad o ra, to se p u e d e u t iliz a r


fig u ra 16.1. p a r a v i s u a l i z a r lo s
tie m p o s , frecu en cias Integrado 1

O tra de las propiedades del y desfases exactos, de


analizador lógico consiste en la las d is t in t a s se ñ a le s
posibilidad de cálculo de las fre­ d i g i t a l e s q u e in t e r - integrado 2
cuencias de los datos leídos, tal v ie n e n d e n tr o d e un
com o un frecuencímetro. C on s is t e m a . En u n c ir ­
los tiem pos sum inistrados por c u ito d ig it a l la ex ac­
F igura 16.2 Medida del retardo de operación de circuitos
el program a, p uede calcularse t it u d co n q u e se pre- integrados
*
CEKIT.. Curso práctico sobre Microcontroladores
Proyectos

--------------- *
Entrada de
iia II oío Ha Puerto
voltaje oe
paralelo
10-20V


Selector TTL
Generador
o CMOS
de pulsos
r ~ — ________

Buffers Buffers
Comparadores
TTL o CMOS

Selector de
frecuencia

Luces
indicadoras

T
------------ f
D ipswitch Entradas 0-4

F igura 16.3 Diagram a de bloques del circuito del analizador lógico

p u n to s del circuito q u e desea­ de 0 a 2 0 , lo gran d o con esto co amplificadores operacionales


m o s probar y hacer la lectu ra u n a b u e n a c o m b in a c ió n de en total, cuya principal carac­
p or m edio del p ro g ram a car­ un o s y ceros q u e sirven para terística es su alta velocidad de
gado en la co m p u tad o ra. Así probar c u a lq u ie r circuito d ig i­ operación, perm itiendo leer fre­
entonces, con el gráfico m o s­ tal q u e p e rm ita la en trad a de cuencias altas en las entradas del
trado, p odem os analizar las se­ estados lógicos. analizador. Son utilizados como
ñales con respecto al tiem p o , a com paradores para poder selec­
la frecuencia, o sen cillam en te Descripción del circuito cionar entre la tecnología T T L
co m pararlas con las dem ás. En la f ig u r a 1 6 .4 ap arece el y la C M O S , cuyos niveles de
d iagram a esquem ático del cir­ voltaje para diferenciar los n i­
C o n los datos s u m in is tra ­ cuito del analizador lógico con veles lógicos, es decir los unos y
dos p or el analizador, es posi­ PC . C o m o se puede apreciar, el ceros, son diferentes.
ble hacer un d iagnó stico y de­ proyecto está com puesto bási­
tectar en q u é p u n to s está fa­ cam ente p or cinco circuitos in­ Para seleccionar una tecno­
lla n d o el c ir c u ito , o s im p le ­ tegrados entre los que se desta­ logía o la otra, se cam bian las
m ente, cuáles señales no están can I C l e IC 2 que son co m ­ referencias de voltaje de cada
de acuerdo a lo deseado. puertas YES com o buffer, cuya uno de los comparadores; esto
función es la de dar potencia a se hace p or m edio del transis­
A d icio n a lm e n te , el a n a li­ las señales digitales de entrada tor T R 7 a través de u n pulso
zador lógico de este proyecto y salida así com o la de su m in is­ que es enviado desde la m ism a
cu en ta co n u n a serie de salidas trar la corriente suficiente para c o m p u ta d o ra con u n a de las
q u e p u ed en ser utilizadas para encender los LED indicadores. opciones del program a. C u a n ­
excitar el circuito d ig ital que se do este transistor entra en ope­
va a probar. Estas salidas en tre­ D e o tra p arte, se c u e n ta ració n , c o n e cta la resistencia
gan estados lógicos correspon­ co n dos circu ito s integrado s, R 4 4 del voltaje de referencia ha­
dientes a un co n tad o r binario I C 4 e IC 5 , q u e contienen cin­ ciendo q u e este nivel se dism i-

Curso práctico sobre Microcontroladores C E K IT


Analizador lógico con PC

dipswrrcH

CLK (Fre cu e n cia de


ENTRADAS < -N PUISOS )

SALIDAS

i □i
12V CA/CC

I l 1 9 1 I 20 4 a
2o | C6mm 1
[4 C5

~ J Tes|'ñ |=C 7 IC 3 ITcio|n = IC5

mf tf° ° 1 -L ,
i
GND
Figura 16.4 Diagrama esquem ático del analizador lógico

Tsl Curso práctico sobre Microcontroladores


(
Proyectos

P in e s P in e s La selección de frecuencia to de la com putadora se elabo­


Ent. /
DB25 D B25 B it se hace por m edio de un ju n í­
Sal. ra a p artir de dos conectores
m acho m acho
p e r o puente que agrega un con­ m achos de 25 p in es (D B 2 5 )
2 2 Sal. 0
densador en paralelo al integra­ machos. La forma de hacer las
3 3 Sal. 1
4 4 Sal. 2 do 1C3 para d ism in u ir la fre­ conexiones es uno a uno; ob­
5 5 Sal. 3 cuencia del reloj. C u an d o se tie­ serve en la Figura 16.5 la rela­
6 6 Sal. 4
7 7 ' Sal. 5
ne el ju m p e r e n la posición alta, ción de pines que deben alam ­
10 10 Ent. 6 la c a p a c it a n c ia es d e 4 7 uF brarse entre dichos conectores.
11 11 Ent. 7 ( C 11) y cuando está en la otra
12 12 Ent. 5
4
posición, será de 0.1 uF (C 4 ). P ru eb as in iciales. A n tes de co­
13 13 Ent.
15 15 Ent. 3 n ectar el a n a liz a d o r ló gico al
I 18 j__ 18 J GND Construcción p u erto p aralelo d e la c o m p u ­
Siguien do las m ism as instruc­ tad o ra, h ag a u n a revisión p re­
F igura 16.5 Elaboración del cable de
ciones y recomendaciones de los v ia del estado del c irc u ito , ya
com unicación
otros proyectos publicados, ins­ q u e c u a lq u ie r erro r p o d ría ser
n u ya hasta el equivalente a los tale y suelde con m u ch o cu id a ­ fatal tan to p ara los circu ito s
utilizados p or los circuitos in­ do los diferentes com ponentes d el p u e rto co m o p ara el m is­
tegrados T T L . que forman el circuito, tal como m o a n a liz a d o r lógico. In ic ia l­
m uestra la g u ía de m o n taje de m e n te se p u e d e n p ro b a r las
El circuito también posee un la p ágin a 142, respetando las en trad as h ac ie n d o uso d el ge­
generador de onda cuadrada de polaridades, tanto de los co n ­ n erad o r de p ulsos del m ism o
dos frecuencias distintas, con el densadores como de los diodos c ircu ito . Al co n ectarse a cada
único objeto de ser utilizado como y los LED indicadores, al igual u n a de las en trad as p o r m ed io
prueba de funcionam iento del que las posiciones indicadas. de los in te rru p to re s m in ia t u ­
analizador lógico. Para probarlo se ra, las luces indicadoras corres­
cuenta con cuatro interruptores C a b le de co m u n icació n . El ca­ p o n d ie n te s a las en trad as d e ­
miniatura (dipswitch) donde cada ble utilizado para llevar y traer b erán p a r p a d e a r a la m ism a
uno de ellos conecta el generador las señales hacia y desde el puer­ frecuencia de dicho generador.
a una de las primeras cuatro en­
tradas del analizador, y así, poder Medición
de tiempo Menú de entrada
visualizar dicha onda en la panta­
lla de la computadora.

C on la frecuencia baja, la se­ Lecturas Lecturas


ñal emitida por el generador se
k—
rápidas
i i normales

puede ver fácilmente en la pan­


talla haciendo lecturas con retar­ TTL-CMOS

do de tiempo (esto fue probado


en un Pentium de 166 M H z y Graficar Graficar

difiere en otras computadoras),


además pueden verse los deste­
llos a simple vista. C on la frecuen­
cia alta deberán efectuarse lectu­ Cambiar a
Retardo
otra pantalla
ras de alta velocidad en la com­
putadora; esto se logra con una
de las opciones del programa. F igura 16.6 Diagram a de bloques del program a

a
Curso práctico sobre Microcontroladores S . A .
Analizador lógico con PC

Programa Pruebas finales de en nuestra p ág in a de la inter­


El program a debe elaborarse en la tarjeta net, entre ellas se encuentran la
am b ien te D O S y a que éste no U n a vez se ha probado el circui­ de cálculo de tiem pos, las de
c o m p a r te tie m p o s co n otros to electrónico del analizador, tal lecturas norm al y rápida y el lis­
p r o g r a m a s c o m o s u c e d e en como se mencionó anteriormen­ tado del encabezado general del
W in d o w s. Si se hace bajo a m ­ te, puede conectarse al puerto program a. Veamos a co n tin u a­
biente W in d o w s, se tendría el paralelo de la com putadora (es­ ción u n a breve descripción de
p ro blem a de que los tiem pos ta n d o am b o s a p a g a d o s), por las funciones y algunos listados
leídos no son reales p orque este m edio del cable de com unica­ de las mismas.
sistem a operativo hace una se­ ción. Posteriormente, conecte la
cuencia de trabajo con cada uno alim entación al analizador y en ­ D eclaración de librerías, fu n ­
de los program as que están fun­ cienda la computadora ejecutan­ cio n es y v a ria b le s. Este es el
cionando en ese m om ento, in ­ do el programa. C on esto, ya está encabezado del program a y de­
clusive con la m ism a pantalla de listo el instrumento para em pe­ fine los recursos, funciones y
e n tr a d a a W in d o w s . En este zar a probar y a analizar circui­ variables q u e serán utilizados
caso, el program a fue escrito en tos digitales. durante la com pilación del mis­
lenguaje C para D O S. mo, figura 16.8.
En la figura 16.7 puede obser­
En la fig u ra 1 6.6 p u ed e var la gu ía de m o n taje que p u e­ Rutina de cálculo de tiempo. De­
verse un d ia g ra m a de bloques de utilizar para conectar los dis­ bido a que el analizador lógico
q u e describe la relación entre tintos elementos que componen p uede instalarse en diferentes
las secciones d el p ro g ram a h e­ el circuito y la ubicación de los computadoras y que lo más se­
cho. O b se rv e q u e p r in c ip a l­ conectores externos. guro es que éstas difieran también
m en te se tienen dos secuencias: de la velocidad de proceso, el pro­
la de lectura rá p id a y la d e lec­ Las rutinas que com ponen g ra m a ejecu ta u n a p ru eb a de
tu ra co n retardo. este proyecto están disponibles tiempo, en la cual se hacen una

12 V
C A /C C
C o n e c ta r a l p u e rto p a ra le lo
(D B -2 5 )

A lim e n ta c ió n

74LS841
74LS241

3 Ó Ó 65Ó ^ - o o o o o
E N T R A D A S -*
S a lid a s d ig ita le s

E n tra d a s d ig ita le s
Figura 16.7 Guía de montaje

€ 1 4 # c e k ít : Curso práctico sobre Microcontroladores


Proyectos

//Definición de librerías de leer la com putadora que se


#include <dos.h>
#include <stdio.h> esté utilizando. U na ventaja es
#include <conio.h>
#include <graphics.h>
poder graficar instantáneam en­
#include <stdlib.h> te de acuerdo al valor leído en el
analizador, cosa que no sucede
//Declaración de funciones
void tiempo(void); //Realiza cuentas de tiempo
con la opción de lectura rápida.
void cuadricula(void); //Dibuja cuadrícula en la pantalla
int modograf(void); // Inicializa modo gráfico
void leerescribirO; // Lee y escribe valores en el puerto C u a n d o finalizan las 6 0 0
void lecturarapidaO; //hace lectura superrápida
lecturas correspondientes a una
//Declaración de variables p an talla, el p ro gram a m uestra
int h ,i ,j ,k ;
int retardo=l, TTL=32; el tiem p o total utilizado y la
int valor[25000];
float tiempototal.tiempodelect;
eq u iv alen cia en m ilisegu n d o s
double lecturas; de cada u n a de las 2 0 divisio ­
char texto[20];
struct time tl,t2; nes del gráfico.
int gdriver = DETECT, gmode, error;
int ent,sal;
int in[5],out[5],y[10]; R u tin a de lectu ra rápida. Por
const Pl=0x378,P2=0x379; //Dirección de puertos LPT1 m ed io d e esta fu n c ió n se h a ­
cen lectu ras ráp id as del a n a li­
F ig u ra 16.8 Encabezado d e l program a
zador ló gico , p e r m itie n d o así,
serie de lecturas para detectar el lectura de las m ism as, una c u a ­ e x a m i n a r c ir c u it o s c o n fre ­
tiempo utilizado por la com pu­ d ríc u la d o n d e las filas corres­ c u e n c i a s d i g i t a l e s a lt a s . La
tadora que se esté usando. pon den a cada u n a de las en ­ p rin c ip a l característica de esta
tradas y las c o lu m n a s a las d i ­ funció n es q u e no u tiliza tie m ­
Por e je m p lo , si la c o m p u ­ visio n es de tie m p o . D u ra n te po ex tra p ara g ra fic a r las lec­
ta d o ra está b asad a en u n m i ­ los cálculos de tiem p o , se in ­ tu ras. El p ro ceso se h ace en
croprocesador 3 8 6 , se g u ra ­ vo lucran la c a n tid a d de lectu­ dos etapas: lecturas c o n se c u ­
m e n te ta rd a rá m ás tiem p o en ras y de p untos en los q u e se tivas y graficació n .
h a c e r la m is m a c a n t id a d de d iv id e la pantalla.
le c tu r a s q u e o tr a b a s a d a en P rim ero se hacen 2 4 .0 0 0
m icro p ro cesad o r P e n tiu m . F un ció n de le c tu ra n o rm al. lecturas del estado lógico de los
Esta fu n c ió n p e rm ite q u e la p u n to s q u e se van a m e d ir en
Modo gráfico. Esta rutina es in­ co m p utad o ra haga lecturas con el circu ito de p ru eb a y son lle­
dispensable para poder utilizar in te r v a lo s de tie m p o q u e el vadas a posiciones de m e m o ­
la pan talla de la com putadora usuario puede cam b iar por m e­ ria, proceso que es m u ch o más
en modo gráfico. Los cálculos dio de los caracteres V y rápido q u e el de graficar los re­
de coordenadas están basados sultados a la vez que son le í­
en una pantalla que permite una Esta rutina hace u n a lectu­ dos. La otra etapa m uestra los
resolución de 6 4 0 x 4 8 0 pixels, ra y la m uestra directam ente en resultados actualm ente alm ace­
resolución ésta m u y co m ú n en la gráfica de la p an talla de la nados en la m em o ria p or m e ­
m onitores V G A y SVGA. com putadora antes de proceder dio de 4 0 p antallas, d o n d e la
a la siguiente lectura. p rim era corresponde a las p ri­
Divisiones de tiem po. C o n el meras 6 0 0 lecturas del analiza­
fin de poder m e d ir el tiem p o y De cualquier m anera, esta dor, la se g u n d a p a n ta lla a las
h acer las c o m p a ra c io n e s res­ opción es útil cuando la frecuen­ lecturas 601 a 1 .2 0 0 y así su ­
p ectivas so b re las señ ales, el cia de las señales de entrada es cesivam en te hasta m ostrar las
p ro g ram a d ib u ja antes de la baja com parada con la que pue­ 2 4 .0 0 0 lecturas tom adas.

Curso práctico sobre Microcontroladores €BK!T.:


Analizador lógico con PC

j L IS T A DE M A T E R IA LE S
Ref. Descripción Cant.
IC 1 e IC 2 C i r c u it o s in t e g r a d o s 7 4 L S 2 4 1 2
IC 3 C i r c u it o in t e g r a d o 5 5 5 1
IC 4 C i r c u it o in t e g r a d o T L 0 8 4 1
IC 5 C i r c u it o in t e g r a d o T L 0 7 1 1
REG1 R e g u la d o r f ijo d e + 5 V . 7 8 0 5 1
TR1 a TR 7 T r a n s is t o r e s 2 N 3 9 0 4 7
D1 a D4 D io d o s r e c t if ic a d o r e s 1 N 4 0 0 4 4
00 a 0 4 D io d o s L E D d e 3 m m , r o jo s 5
10 a 15 y L E D 3 D io d o s L E D d e 3 m m . v e r d e s 6
LED 1 D i o d o L E D d e 5 m m r o jo 1
Figura 16.9 Conjunto de com ponentes electrónicos y los LED2 D io d o L E D d e 5 m m v e rd e 1
accesorios que se requieren para ensam blar e l analizador C1 C o n d e n s a d o r e le c t r o lí t ic o d e 2 2 0 0 u F / 2 5 V 1
lógico con PC.
C2 a C9 C o n d e n s a d o r e s c e r á m ic o s d e 0 ,1 u F /5 0 V 8
C11 C o n d e n s a d o r e le c t r o lí t ic o d e 4 7 u F / 2 5 V 1
C 12 y C13 C o n d e n s a d o r e s e l e c t r o lí t ic o s d e 1 0 u F / 2 5 V 2
R1 a R 6, R21 a R 27 R e s is t e n c ia s d e 3 3 0 - 1 / 4 W 13
El reconocim iento y la lectura de varias señales de voltaje con R 7 a R 2 0 . R 3 8 a R 4 2 .R 4 4 R e s is t e n c ia s d e 1 k - 1 / 4 W 20
niveles lógicos es de gran utilidad en e l diseño y desarrollo de
R 28 a R 32 y R43 R e s is t e n c ia s d e 2 k - 1 / 4 W 6
R 3 3 a R37 R e s is t e n c ia s d e 4 7 k - 1 / 4 W 5
dispositivos con base en m icrocontroladores, y puede hacerse R45 R e s is t e n c ia d e 3 . 3 k - 1 / 4 W 1
independientem ente o de m anera sim ultánea para varias D IP I n t e r r u p t o r t i p o D I P d e 4 p o s ic io n e s 1
señales, utilizando e l analizador lógico de este proyecto. Para el
K -1 5 7 C i r c u it o im p r e s o C E K I T 1
K -1 5 7 C h a s is m e t á lic o C E K I T 1
ensamblaje de la tarjeta tenga en cuenta los siguientes pasos: P R O G R A M A K -1 5 7 D is q u e te g r a b a d o c o n p r o g r a m a K -1 5 7 1
C o n e c t o r D B 2 5 h e m b r a p a r a im p r e s o 1
C o n e c to r C A /C C 1
C o n e c t o r e s d e t o m i l l o d e 3 p in e s 4
C o n e c t o r t ip o c e r c a d e 3 p in e s 1
Paso 1 B a s e s p a r a in t e g r a d o d e 2 0 p in e s 2
Instale y suelde los B a s e s d e 8 p in e s 2
puentes de alam bre y n ¿ í» m %-• B a s e d e 1 4 p in e s 1
C a b le c o m p u t a d o r a a d a t a s w i t c h 1
las resistencias R1 a A d a p ta d o r d e v o lta je C A /C C 1
ÍF T o m i llo s d e 3 x 1 5 m m c o n s u s t u e r c a s
R45. ________ 4
i S e p a r a d o r e s p lá s t ic o s 4
Figura 16.10 Jum per 1
s 66666
fe I nU ----- -
ccccc
Paso 4 C E K IT
K -1 5 7
Instale y suelde los
condensadores
íR .7*^
M4 wm •
WO v

Paso 2 cerám icos C2 a C9, I? I


Luego instale y suelde los condensadores
los diodos electrolíticos C 11 a n□ .......
rectificadores D1 C13 y e l regulador de
las bases para los
circuitos integrados, y
voltaje REGI.
Figura 16.13 WM
los transistores NPN
TR1 a TR7. Paso 5
Figura 16.11 Aspecto final del
circuito luego de a-' II Tr COOT
CEKIT
instalar y soldar el I t K-157

K-157 condensador
Paso 3 □ electrolítico C1, los t «T-~
R **rí- -t- - - : : , y ' . ,
9
. r t .

5 3 * i ,

*A . .

Instale y suelde los ¿VWi' a f e . conectores de


diodos LED de 3 y 5
I n f r -iv 1 . entradas y salidas, el
;
— ^
m m y e l inte rru ptor de iO C ^ conector de *r. « ----- 32-y 'vv.*
— -i" : .
4 posiciones tipo DIP. B - -• .fc O : alim entación CA/CC,
o V A rr * «0 -•* .«ifi v
, .¿ " V V \ ‘ 1 1 ‘O
Figura 16.12 e l conector para el
íftN itfS 1w , puerto de la IS S S S ftíl
com putadora (DB-25),
y e l selector de
frecuencia.
Figura 16.14
Paso 6. Pruebas finales
Para alimentar el circuito debe usar un adaptador que brinde un voltaje continuo entre 8 y 12 voltios. Cuando se alimenta la tarjeta por medio
del conector CA/CC puede ejecutar e l programa de la computadora y visualizar e l comportamiento de las señales que se presentan por los
pines de entrada. En este gráfico puede medir parámetros como el periodo y la frecuencia.

f3§K IT . Curso práctico sobre Microcontroladores


CONTROL DIGITAL DE TEMPERATURA
En este proyecto usted va a construir un sistema
que sirve como term óm etro con indicación del
valor m edido en displays digitales. Al m ism o tiem ­
po, cum ple una función de control, para la cual
el usuario puede fácilm ente graduar el punto de
ajuste [setp oin t) o valor de la tem peratura en la
cual se quiere hacer el control.

Características
• Visualización de la temperatura en dos displays
de siete segmentos
• G raduación del punto de ajuste por medio
de pulsadores para generar una señal de control
• Salida de control por m edio de relé
• Rango de m edidas desde 0o hasta 80° C
L *
Curso práctico sobre Microcontroladores II Til
Control digital de temperatura

En general, u n control de ga en su salida u n a señal que con el fin de detectar cam bios
tem peratura es un aparato que varía lOmV por cada grado Kel- de 5 m V en la señal de entrada,
sirve para m an ten er estable, en vin. Esto quiere decir que cuan­ para ello se utiliza el potenció­
un punto determ inado, la te m ­ do la tem peratura sea 0 o C , en ­ m etro R 6. Así el term óm etro
peratura de alg u n a sustancia o tregará una señal de 2 ,7 3 vol­ puede tener una resolución de
de algún sistema. Existen m u ­ tios. Su apariencia es la de un m ed io grad o cen tígrad o . Los
chas aplicaciones para esta cla­ transistor con encapsulado T O - p in es del c o n v e rtid o r q u e se
se de ap arato s; en tre ellas se 92 y p uede m an ejar perfecta­ deben m an ejar desde la unidad
cuentan el control de tem pera­ m ente el rango de tem peratu­ de control son: C S (chip select),
tura de líquidos en laboratorios ras requerido en este proyecto. C L K (reloj) y D O (salida de
y procesos industriales; además Para utilizarlo, sólo se usan dos datos). Éstos se han conectado
del control de tem peratura en de sus p in es, la salid a q u e se a los pines RAO a RA2 del m i­
cuartos o habitaciones especia­ conecta a la fuente de +5V con crocontrolador P IC 16F 84.
les que deben m an ten er co n d i­ una resistencia ( R l ) y la tierra.
ciones am bientales estables. U n id ad de control. Está confor­
C o n v ertid o r A/D. En este pro­ m ada por un microcontrolador
En la figura 17.1 se m ues­ yecto, se utiliza un convertidor P IC 16F 84 y su respectivo osci­
tra el d iagram a en bloques del A/D de 8 bits con salida serial, lador con cristal de 4 M H z. La
circuito, cada uno está form a­ referen cia A D C 0 8 3 1 . C o m o razón para escoger este tipo de
do por un grupo específico de posee en trad a diferencial, en la micro es que posee m em oria de
componentes y cum p le con una en trad a positiva (Vin+) se co­ datos EE PRO M interna lo que
función determ inada. A co n ti­ necta el sensor y en la entrada le permitirá almacenar el valor
n u a c ió n , los d escrib irem o s y negativa (V in-) se conecta un de la tem peratura de control {set
h arem o s u n a a n a lo g ía con el potencióm etro (R3) con el que point), en una m em oria no vo­
correspondiente circuito utiliza­ se ajusta un voltaje de 2 ,7 3 vol­ látil. Además, se encarga de leer
d o , el cu al se m u e s tra en el tios. C o n esto se consigue que el dato del convertidor A/D, leer
diagram a esquem ático que apa­ la salida de valor 00 del conver­ los parámetros de configuración,
rece en la figura 17.2. tidor coincida con la tem pera­ mostrar los datos correspondien­
tura de 0 o C. tes en el display digital y decidir
S e n so r de te m p e r a tu r a . Está si debe o no, accionar el relé de
conform ado por un circuito in­ El voltaje de referencia se salida que actúa como elemento
tegrado L M 3 3 5 , el cual entre­ ha escogido como 1,27 voltios de control.

Selección de
dato que se va El program a que se graba
a mostrar en él le perm ite hacer todas las
funciones. C o m o ejemplo, en la
figura 17.3 se m uestra la parte
Visualización del programa que lee el dato que
Sensor de Convertidor
temperatura
entrega serialm ente el conver­
A/D
Elemento de
control (relé)
tidor A/D. En este caso, el m i­
cro g e n e ra las señales de C S
{chip select) y de C L K (reloj) y
lee el dato correspondiente a la
Selección de
parámetros
conversión an álo go a d ig ita l,
que es entregado por el conver­
tidor en su pin de salida DO.
F igura 17.1 Diagrama de bloques del sistem a de control

€E K iT ¿ Curso práctico sobre Microcontroladores


Proyectos

FUENTE DE AUMENTACIÓN
Fusible Transformador

W 06M
110 ó
220VC A BR1
+5V

F igura 17.2 Diagram a esquem ático del control d ig ita l de tem peratura
¿ *
Curso práctico sobre Microcontroladores
Control digital de temperatura V

es equ 0 Selección de p arám etros. Esta


CLK equ 1
IN 2
parte la conform an dos co n ju n ­
equ
status equ 03 tos de interruptores in d ep en ­
c equ 0
ptoa equ 05 d ien tes. El p rim e ro de ellos,
trisa equ 85h
corresponde a los botones que
loops equ 0ch
conta equ 0eh p e rm ite n ajustar el p u n to de
recep equ 0fh
control (set point), d e n o m in a ­
reloj bsf ptoa,CLK ;sube linea de reloj
movlw lfh
dos S U B E y BAJA, y que se ins­
movwf loops ;retardo ta la n en el p a n e l fro n tal del
reloj2 decfsz loops
goto reloj2 equipo. O bviam ente, para cam ­
bef ptoa,CLK ;baja linea de reloj
movlw lfh
biar el dato del set point, debe
movwf loops ;retardo primero seleccionar que el dato
reloj3 decfsz loops
goto reloj3 en los displays co rresp o n d a a
return
dicho parámetro.
recibir clrf recep ¡limpiar registro de Rx
movlw 08h ¡inicia contador de bits
movwf conta El segundo grupo de inte­
bef ptoa,CS ;baja chip select
nop
rruptores ( J 1 y J2 ), permite ajus­
cali reloj tar la histéresis del controlador.
btfsc ptoa,IN ¡verifica dato en 0 lógico
return C o m o en este caso se tienen dos
otrobit cali reloj ¡ciclo de reloj inicia Rx
bsf status,c
selectores, se dispone de 4 valo­
btfss ptoa,IN ¡lee dato del convertidor res diferentes de histéresis corres­
bef status,c
rlf recep,1 ¡guarda el dato en recep p o n d ie n te s ló g ic a m e n te a las
decfsz conta,1 ¡cuando termine regresa
otrobit
cuatro combinaciones de ellos.
goto
bsf ptoa,CS Recuerde que la histéresis es una
bef ptoa,CLK
return ¡retorna al programa principal característica que permite que un
circuito cambie de un estado a
F ig u ra 17.3 Rutina d e l PIC16F84 para leer e l convertidor ADC0831 otro m ediante una señal, y que
regrese de éste al primero con
L a s u b r u tin a lla m a d a re­ d e u tiliz a r el dato recib ido que una señal diferente.
loj se en carg a de g e n e ra r un q u e d a a lm a c e n a d o en el regis­
p u lso c o m p le to p a ra q u e el tro o posició n de m e m o ria lla ­ L a histéresis d el circ u ito
c o n v e rtid o r A D C 0 8 3 1 e n tre ­ m a d o recep p ara h ac e r el p ro ­ trabaja en la siguiente forma:
g u e c ad a b it del resu ltado. La ceso co rresp o n d ien te. si escoge un set p o in t de 3 5 ° C
s u b r u tin a lla m a d a r e c ib ir se y u n a histéresis de ±2°, el relé
e n c a rg a de in ic ia r la co n v er­ Selecció n d el d ato q u e se d eb e de salid a se activará cu an d o la
s ió n en el A D C 0 8 3 1 y de m o strar. C o m o el circu ito p o ­ te m p e ra tu ra b a je a 3 3 ° C .
c o m p ro b a r q u e éste en tregu e see un display d ig ital de dos d í­ C u a n d o ésta em p iece a subir y
el bit de a rra n q u e o start bit. gitos, en él se p u e d e n m o strar llegue a 3 7 ° C , el relé se apaga­
Luego de ello, e m p ie z a a reci­ la tem p eratu ra m e d id a en cada rá y p erm an ecerá así hasta que
b ir los bits co rresp o n d ien tes a m o m e n to y el p u n to d e c o n ­ la te m p e ratu ra vuelva a caer a
la co n versió n , em p ez an d o por trol {set p oin t). Para ello u s­ 3 3 ° C , in ician d o así u n nuevo
el de m a y o r peso, y los va a l­ ted d is p o n e d e u n in t e r r u p ­ ciclo. Si el circuito no tuviera
m a c e n a n d o en el registro lla ­ to r q u e se in s ta la r á en el p a ­ histéresis, el relé estaría co n m u­
m a d o recep. C o m o esta p arte nel fro n ta l d el in s tr u m e n t o y tando su estado p e rm a n e n te ­
del p ro g ra m a es u n a s u b r u t i­ q u e le p e r m i t i r á e s c o g e r el m ente, d ism in u yen d o conside­
na, el p ro g ram a p rin cip al pue- d a to q u e d esea ver. rab lem en te su vida útil.
*
Curso práctico sobre Microcontroladores
Proyectos

V isualización. C o m o ya se dijo, Tam bién el aparato tiene la activar o no el relé de salida que
el sistema posee un display d i­ posibilidad de actuar com o ter­ se encarga de m an ejar la carga,
gital de dos dígitos, conform a­ m ó m etro , en cuyo caso el valor o el actu ador que hace au m en ­
do p or un decodificador 7 4 4 7 m edido se muestra en los mis­ tar o d ism in u ir la tem peratura
y dos displays de 7 segmentos. mos displays. O tra característica, del objeto bajo control.
Esto im p lica que los datos de­ no menos importante, es que el
ben ser m o stra d o s en form a valor de control {setpoint) se a l­ U n a característica im p o r­
m ultiplexada, es decir, se envía m a c e n a en u n a m e m o r ia no tante es que puede seleccionar el
al decodificador el dato de un volátil lo que le perm ite conser­ valor de la histéresis del contro­
display y se h ab ilita el transistor var la program ación del equipo lador; para ello se han dispuesto
que le corresponde. Todo este au n q u e haya retirado la alim e n ­ en el circuito impreso dos p uen ­
proceso se h ace rá p id a m e n te tación del sistema. tes {jumpers), denom inados J 2 y
para que parezca que ambos ele­ J 1, m e d ian te los cuales usted
mentos están encendidos al mis­ Funcionamiento puede escoger el valor más ade­
m o tiempo. El control de temperatura posee cuado para su situación particu­
una pantalla con dos dígitos en lar. Dichos valores están com ­
E lem ento de control. En este los cuales se m uestran, de a uno prendidos entre ±1° y ±4° cen­
caso, se utiliza un relé com o ele­ a la vez, el valor de control y la tígrados. El valor específico está
mento de salida y a que éste per­ temperatura medida. El rango de dado por la tab la 17.1 en la cual
m ite conectar cargas de gran ca­ tem peratura en que trabaja el un 0 equivale a un puente en su
pacidad como calentadores, ven­ equipo está entre 0 o y 80° C . En sitio, y un 1 indica que el mis­
tiladores y en general, algún ele­ el panel frontal existe un inte­ m o no está presente:
mento que permita cam biar las rruptor de dos posiciones que le
J2 J1 Histéresis
condiciones ambientales del si­ permite establecer si el valor que -----------
tio al que se le controla la tem ­ desea ver en los displays es el va­ 0 0 ±1°

peratura. C o m o dispone de los lor de temperatura medido o el 0 l ±2°


contactos normalmente abiertos de control. En caso de seleccio­
1 0 ±3°
y norm alm ente cerrados, usted nar que se muestre el valor me­
1 l ±4°
puede escoger la configuración dido, los botones pulsadores no
de la carga que más le convenga. hacen ninguna operación.
Tabla 17.1 Selección de la histéresis

Fuente de alim en tac ió n . El sis­ C u a n d o se s e le c c io n a el El circuito se ha diseñado


tem a se a lim e n ta de la red p ú ­ m o do p ara ver el valor de la en dos tarjetas de circuito im ­
b lica de 110 ó 2 2 0 V C A , p o ­ tem peratura de control {set p o ­ preso. U n a de ellas incluye la
see un transform ador q u e re­ int ), los pulsadores sirven para parte de visualización y los p ul­
duce dicha tensión a 9V C A , un a u m e n t a r o d is m in u ir d ich o sadores de control y está m ar­
p u en te rectificador que p e rm i­ valor, cam bio que se nota inm e­ cada con la referencia K -191B.
te obtener un voltaje aproxim a­ d ia ta m e n te en los displays. Si La otra tarjeta corresponde al
do de 11 V C C p ara alim en tar a lg ú n pulsador se d eja presio­ circuito de control e incluye el
la b o b in a del relé, y un re g u la ­ nado, el núm ero del display se m icrocontrolador, la fuente de
d o r de +5V (7 8 0 5 ). Este ú lti­ increm entará autom áticam ente alim entación, el relé y los d e ­
m o, le p erm ite a lim e n ta r toda hasta que usted decida liberar­ más elementos; este circuito tie­
la parte d ig ital del sistem a, i n ­ lo. D urante todo el tiem po en ne la referencia K-191A.
clu yen d o el m icrocontrolador, q u e está encendido el equipo,
el convertidor A/D, los displays se están efectuando constantes Circuito de control. En la figura
y d em ás elem entos. m edidas y verificando si se debe 17.4 se muestra el circuito im-

*
Curso práctico sobre Microcontroladores ¡T T s ! Á 149
Control digital de tem peratura

V re í
1cTV

SELEC7Q X T AL
C4
fíS R 9
í5 SUBC

= h +’
P13 □
FUEN TE
C O N ECTAR ■ • í v r n I IG N B
AL D IS P L A Y L- ' L - ’

F ig u ra 17.4 Aspecto de la tarjeta de control

preso de la tarjeta de control del T a m b ié n es im p o r ta n te el gleta de tres terminales a través de


equipo; en ella se han montado tip o d e co nexió n del sensor de la cual están disponibles los con­
el microcontrolador, la parte de te m p e ra tu r a y a q u e en el c ir­ tactos del relé para que usted efec­
acondicionamiento y tratamien­ cu ito im p reso se h a colocado túe fácilmente la conexión que
to de la señal análoga del sensor un co n e c to r en lín e a de dos más le convenga.
de temperatura, el relé que m a­ p in es, el c u a l sirve para llevar
neja la carga de salida y la fuente las se ñ a le s c o r re s p o n d ie n te s Las señales de control que
de alimentación del sistema. hasta el co n e c to r (plug) m o- van hacia la tarjeta de visualiza-
n o fó n ic o q u e se u b ic a en el ción se llevan a través de un ca­
El microcontrolador por su chasis (p arte p o sterio r), para ble plano (rihbon), el cual utili­
parte, trabaja con un cristal de 4 q u e el sensor de te m p e ra tu ra za un conector en línea de 6 pi­
M H z que le permite una buena se p u e d a c o n e c ta r y d esco n ec­ nes para que el sistema pueda ser
estabilidad para efectos del cálcu­ tar fácilm en te desde el exterior fácilmente armado y desarmado.
lo de los tiempos. Además, como d e l e q u ip o co n un co n e c to r
se dijo anteriormente, este sistema (jack ) m o n o fó n ico . La conexión de los boto­
puede almacenar en memoria el nes pulsadores, del interru p to r
valor de la temperatura de control; Debe tener en cuenta que el de selección del valor m ostra­
para ello se utiliza la m em oria sensor se conecta en forma de son­ do y de la fuente de a lim e n ta ­
EEPROM de datos que posee el da, utilizando cable blindado para ción del display , se h acen m e ­
PIC16F84, la cual permite alma­ sus dos señales y un poco de espa­ d ia n te cables que van co n ecta­
cenar hasta 64 bytes si se requiere. gueti termoencogible para aislar dos en tre los dos circuitos im ­
Esta característica hace que se pue­ sus pines y proteger su encapsula- presos, en los p untos m arcados
da retirar la fuente de alimentación do. Por su parte, el relé que mane­ con el nom bre de la señal co­
del sistema sin que se pierda dicha ja la carga tiene un conector de rresp o n d ien te (S U B E , BAJA,
información. El programa con que tornillo en el circuito impreso, en SE LE C T, +5V y G N D ).
se graba el microcontrolador per­ el cual se conectan los cables de
mite además cumplir con todas las salida. En el chasis del equipo, en El convertidor análogo a di­
demás funciones que se describen. la parte posterior, se coloca una re­ gital A D C 0 8 3 1 tiene dos voltajes

L, *
Curso práctico sobre Microcontroladores
( Proyectos

asociados que deben ser calibrados displays y los intermptores se debe Los pulsadores que permiten
por usted para obtener un correc­ ubicar en el panel frontal del equi­ ajustar el tiempo en los displays
to funcionamiento del equipo. El po, de tal forma que usted pueda son del tipo normalmente abier­
primero corresponde al voltaje tener fácil acceso a los controles y to; éstos se conectan hasta el cir­
negativo de entrada del converti­ pueda observar los valores m edi­ cuito de control mediante cables
dor (Vin-), mediante el cual se dos o de control, de forma inm e­ individuales como se dijo ante­
hace la compensación para ajaste diata. C om o se dijo en la prime­ riormente. Igual sucede con el in­
de 0o C del sensor L M 335. Este ra parte de este proyecto, se utili­ terruptor de selección de dato que
paso es necesario ya que, como es zó un sistema de display multi- se va a mostrar. El cable plano que
sabido, el sensor L M 335 entrega plexado para el despliegue de la tiene las señales o datos que se
un valor de 2,73 voltios cuando la información. Este procedimien­ muestran en los displays se conecta
temperatura es de 0o centígrados. to permite ahorrar en materiales en su respectivo sitio con puntos
Para ajustar este valor utilice el y espacio ya que sólo se utiliza un de soldadura, ya que en el otro
potenciómetro (trimmer ) marca­ decodificador 7 4 4 7 , además que extremo del cable se instaló un co­
do R3 y la medida correspondien­ se disminuye el consumo de ener­ nector en línea lo que permite se­
te se puede hacer en el punto de gía debido a que en realidad sólo parar las dos tarjetas fácilm en­
prueba marcado: 0 Grados/2,73V. se activa un display en cada mo­ te. En la figu ra 1 7 .5 se m uestra
mento. En la práctica se ha en­ el circuito impreso de la tarjeta
El otro voltaje que debe ser contrado que activar cada display de visualización y en la figura
ajustado corresponde al voltaje durante tres milisegundos produ­ 1 7 .6 el aspecto final del circui­
de referencia del convertidor, el ce un buen resultado. to ensamblado.
cual se ha establecido en 1,27
R25 R 26 FUENTE
voltios, lo que permite detectar A B C D unte ♦ 5 V Q Q GND
cambios de 5 m V en la señal de
entrada, ya que el A D C 0 8 3 1 tie­
Éf
1C5
r v 5o®
*^C=Z}- SELECT

ne una resolución de 8 bits. El
ajuste se hace mediante el poten­
\J R1J
R I9 j

•A
ciómetro (trimmer ) marcado R6; Ni R80,
la m e d id a co rresp on d iente se
DECENAS UNIDADES
puede hacer en el punto de prue­
SUBE BAJA
ba marcado: Vref/ 1,27V. CEKIT
K-191B □ □
La fuente de alimentación
del sistema es m u y simple, con F ig u ra 17.5 Guía de m ontaje del circuito de visualización
ella se obtiene un voltaje cercano
a los 11V C C con el cual se ali­
m enta la bobina del relé y a su
vez genera los +5V para alim en­
tar toda la parte digital del siste­
ma. En la entrada del circuito se
debe conectar un transformador
que permita obtener 9V C A a par­
tir de la línea de 110 ó 220 VCA.

Circuito de visualización. El cir­


cuito impreso que contiene los F igura 17.6 Tarjeta de visualización totalm ente ensamblada

Curso práctico sobre Microcontroladores C S K IT l


Control digital de temperatura

Fusible
1A
Interruptor
con piloto

110 ó
220VCA

11 0 ó
220VCA

Sensor
LM 335
Transform ador

Vref
l eTV

SUBE

FUENTE
CEKI T
k -191A AL D ÍS P L A V

DECENAS UNIDADES

CEKIT Figura 17.7 Diagram a de


K-191B conexiones del control d ig ita l de
tem peratura

Ensamblaje ha sido adecuada para tal fin. En el frente de la


En la figura 17.7 se muestra el d iagram a de co­ m ism a se han dispuesto todas las perforaciones y
nexiones para arm ar el proyecto. El prim er paso los ajustes necesarios para fijar la tarjeta que inclu­
consiste en ensamblar las dos tarjetas de circuito ye los elementos de visual ización y los interrupto­
impreso con todos sus componentes, para ello se res. Debe tener en cuenta que para obtener una
puede guiar por el diagram a esquemático y por la mejor visibilidad es conveniente em plear una lá­
lista de materiales correspondiente. El aparato va m in a de acrílico ahum ado enfrente de los displays;
m ontado dentro de una caja m etálica (chasis) que para fijarla se puede utilizar pegante instantáneo.

e w K ir : Curso práctico sobre Microcontroladores


Proyectos

En esto s dos d isp la y s de siete

Control digital de temperatura segm entos se visu aliza la


tem peratura

1
A ctivan do este pulsad or se program a
e n o ir la tem p eratu ra que va a s e rv ir como

K-191 punto de trabajo

i Esto s dos p u lsad o res sirve n para


co n fig u rar el v a lo r de la tem peratu ra
que s e quiere controlar

S a lid a s de control C o n ectar el sen so r en


del siste m a este punto

Interruptor de encendido S a lid a


d e co n tro l
*


Fusible de protección
&

i
Cable de alim en tació n N O C O M NC

Figura 17.8 Paneles frontal y trasero del control de tem peratura

En la p arte trasera del cha­ fijar la tarjeta de control dentro La apariencia física de este
sis se fija un co n ecto r o reg le­ del chasis, que va sobre el piso proyecto (forma de panel) se ha
ta con bornes p ara co n e ctar la del m ism o, debe utilizar to rn i­ som etido a un proceso de dise­
c arg a que va a ser m a n e ja d a llos con tu erca y separadores ño cuyo objetivo es presentar un
p or el relé. En la f ig u r a 1 7 .8 plásticos de al menos 8 m m , esto producto de características co­
se m u e stra el d iseñ o de los p a ­ con el fin de evitar que la parte merciales que p u ed a competir
neles frontal y trasero del c o n ­ inferior de la tarjeta toque la lá­ en cuanto a calidad y precio con
trol de tem p eratu ra. m in a m etálica, lo q u e p o dría m odelos sim ilares disponibles
causar cortocircuitos. en el m ercado. En las figuras
D u r a n t e el e n s a m b la je , puede observar la facilidad de
debe tener cu id ad o en soldar La tarjeta de visualización acceso y la disposición estraté­
m u y bien y evitar cortocircui­ se d e b e fijar al p a n e l fro n tal gica dentro del chasis que po­
tos entre los puntos que se en­ m ediante las tuercas que poseen seen los distintos elem entos de
cu en tren m u y cercanos. Para los interru ptores del sistema. interacción con el usuario.

Curso práctico sobre Microcontroladores S .A .


wm

Control digital de tem peratura

LISTA DE M ATERIALES

Referencia Descripción Cantidad

IC1 R e g u la d o r fijo d e +5V, LM 7805 1


IC2 S e n s o r d e tem p eratu ra LM 3 3 5 1
IC3 Circuito integrado A D C 0 8 3 1 1
IC4 M icrocontrolador P IC 1 6 F 8 4 g rab ad o 1

IC5 Circuito integrado 7447 1


Q1 T ransistor N P N 2N3904 1
Q 2 y Q3 T ran sisto r P N P 2N3906 2
D IS P 1 y D IS P 2 D isp la y s d e siete se g m e n to s á n o d o com ún 2
BR1 P u e n te rectificador circu lar d e 1A 1
D1 Diodo rectificador d e propósito general 1N4004 1

C1 C o n d e n s a d o r electrolítico de 1000uF/25V 1
F igura 17.9 Ejemplo de aplicación del proyecto
C 2 y C3 C o n d e n s a d o re s electrolíticos d e 10,uF/25V 2
C 4 y C5 C o n d e n s a d o re s ce rá m ic o s d e 20pF/25V 2
R1 R e s is te n c ia d e 3,3k - 1/4W 1
En la figura 17.9 podemos apreciar un esquem a
R 2 , R 4 , R 5 y R 7 R e s is te n c ia s d e 1,8k - 1/4W 4
donde se m uestran las conexiones de u n a aplica­ R8, R 1 2 a R 1 5 R e s is te n c ia s d e 1k - 1/4W 5
ción sencilla de este proyecto para controlar la R 9 aR 1 1 . R 2 5 y R26 R e s is te n c ia s d e 2,7k - 1/4W 5
R16 y R17 R e s is te n c ia s d e 10k - 1/4W 2
tem peratura en el interior de un tanque de agua.
R18 a R24 R e s is te n c ia s d e 330 - 1/4W 7
De la mism a m anera, este aparato puede ser adap­ R3 y R6 T rim m er d e 5k 2
tado para gran variedad de soluciones industria­ K-191Ay K-191B C ircu itos im p resos C E K IT 2
K-191 C h a s is m etálico
les, como en gases, hornos, invernaderos, etc.
XTAL C ristal d e cu a rz o d e 4 M H z
K1 R e lé d e 12V

Inicialm ente se debe configurar el valor de con­ J1 y J 2 C o n e c to re s tipo c e rc a d e 2 pines


Transform ad o r Prim ario: 110 ó 220 V C A
trol ( set-point ) de la tem peratura por m edio de
S e c u n d a rio : 9 V C A M-504
los pulsadores instalados en la parte frontal del C o n e c to r d e tornillo d e 2 pines

panel. Para que la m anip ulación de estos pulsa­ C o n e c to r d e tornillo d e 3 pines


C o n e c to r e n lín e a d e 2 pines
dores tenga electo, primero se debe o p rim ir el
C o n e c to r e n lín e a d e 6 pines
pulsador ubicado a la derecha de los displays de Regleta de conexión negra d e 3 pines, pequeña

siete segmentos. J a c k m onofónico p ara ch asis

P lu g m onofónico
P u ls a d o re s p ara c h a s is
C u a n d o este pulsador se activa se habilitan los Interruptor b alan cín c o n piloto

pulsadores de calibración y ese valor ajustado Interruptor d e codillo d e 2 p o sicion es


B a s e p a ra integrado d e 8 pines
queda alm acenado en la m em oria. El sensor de
B a s e p a ra integrado d e 16 pines
tem peratura deb idam ente protegido con la cinta B a s e p ara integrado d e 18 pines

term oencogible se instala en el interior de tan ­ J u m p e rs

T erm in ales p ara circuito im preso (e sp a d in e s)


que para tom ar la lectura.
D isip ad or TO-220

C a b le blindado m onofónico (50 cm )

Cuando la temperatura leída alcanza el valor progra­ C a b le ribbon d e 6 hilos (40 cm )


C a b le ve h ícu lo calib re 20 A W G rojo (1 m)
mado, origina una salida hacia un circuito de poten­
C a b le ve h ícu lo calib re 20 A W G negro (1 m)
cia que se encarga de llevar a cabo la acción de con­ S e p a ra d o re s p lástico s d e 8 mm

trol, que en este caso se trata de un calentador ubica­ Po rtafu sib le corto p ara c h a s is

F u s ib le corto d e 1A
do en la parte inferior del tanque. Este tipo de con­
P a s a c a b le d e c a u ch o
trol se suele denominar ON-OFF, ya que se limita a L á m in a d e a crílico a h u m a d o d e 3 x 3,5 cm

activar o desactivar el elemento final de control. Cuan­ Tornillo m ilim étrico 3x15 c o n tuerca
Tornillo m ilim étrico 3x7 con tuerca
do el dispositivo cierra los contactos del relé, se cierra
Tornillo p ara lám in a 3x7
un circuito de 120 o 2 2 0 voltios CA, en donde se T erm oencog ib le (2 cm )

encuentra el calentador conectado en serie. C a b le d e p oten cia con en ch ufe


S o ld a d u ra (1 m)

G M IK IIT s l Curso práctico sobre Microcontroladores


Proyectos

Figura 17.10 C onjunto de


com ponentes electrónicos
y lo s accesorios que se
requieren para ensam blar
e l Control d ig ita l de
tem peratura CEKIT K-191.

La m edición y e l control de la tem peratura son de gran im portancia debido a sus frecuentes aplicaciones en
procesos industriales y residenciales. El control d ig ita l de tem peratura de CEKIT K -191 puede usarse en e l control de
tem peraturas entre 0 y 180 grados centígrados. Para e l ensamblaje de las tarjetas tenga en cuenta los siguientes pasos:

F U D lT f

instale y suelde en la £ ## J 3 P Í5 m lnst,lle V Suelde Por


tarjeta de * . „— _ c* 3 - ELECT
últim o, e l interruptor
visualnación K - W W : l l B •ü‘i 11- . ¡y selector y los oos
os cuentes ue 'X j j ’ T *ü•üVí- * pasadores para sube
alam bre y las | : ’ m B P " ' ;• ’ ! ' -• ' y bajar e l valor de la
-njlir"
resistencias R i 8 a C E K IT H . ^
C E K IT
82 6 B B K -j1 9¡ 19B ' B S K -1 9 1 B " T S m E f 51 Figura 17.14
Figura 17.11

Paso 2 Paso 5
Luego instale y suelde Instale y suelde en la
la base para e l tarjeta de control K-191 A
circuito integrado IC5 los puentes de alambre,
y los transistores PNP las resistencias R 1 .R2 ,
0 2 y 03. R4. R 5 y R 7 a R 1 7 , y e l
Figura 17.12 diodo rectificador D I.
Figura 17.15

Paso 3 Paso 6
Instale y suelde los Luego instale y suelde las
displays de ánodo bases para los circuitos
com ún para las integrados IC3 e IC4 y
unidades y las las resistencias variables
decenas y los R3 y R6.
term inales para Figura 17.16
circuito im preso
(espadines)
Figura 17.13

*
Curso práctico sobre Microcontroladores IIW s.t. 155
Control digital de tem peratura

Paso 7 Paso 10
Instale y suelde el Instale y suelde los
puente rectificador BR1, terminales para e l circuito
doble los term inales del impreso (espadines), los
regulador de voltaje IC1 conectores de tomillo
y asegúrelo en e l lugar para las entradas y
indicado p o r la guía de los conectores en
ensamble.
Figura 17.17
asegure e l disipador de
IC1 con un tornillo
m ilim étrico de 3X7 con
tuerca.
Figura 17.20

Paso 8 Paso 11
Instale y suelde los Para construir la sonda de m edida de
condensadores tem peratura, se usa e l sensor de
cerám icos C4 y C5, el tem peratura LM 335 y se conectan
transistor 01 y e l cristal solam ente dos de sus term inales + V
de cuarzo de 4 MHz. y GND. Suelde los cables a los
Figura 17.18 term inales d e l sensor y cúbralos con
espagueti term oencogible, ta l como
se aprecia en la figura.
Figura 17.21

Paso 9 Paso 12
Instale y suelde el Aspecto final de las tarjetas
relé de 12 J K 1 y los electrónicas de los circuitos
condensadores de visualización y control
electrolíticos C1, C 2y totalmente ensambladas,
C3. con la sonda de
Figura 17.19 temperatura y con las
conexiones respectivas
entre ellas, tal como se
ilustra en la figura 17.7
rucmc (diagrama de conexiones).
Figura 17.22

Paso 13
Ubicación y conexión de las tarjetas
electrónicas y los otros elementos
(transformador, interruptor, portafusible,
regleta de conexión y entradas de
potencia y el sensor) dentro del c h a s is .
Figura 17.23

Paso 14. Pruebas finales


Este proyecto cuenta con su propia fuente de CC, por lo tanto solo es necesario conectarlo a un toma normal de 110 o 220 VCA.
Cuando se alimenta el módulo puede visualizar la lectura de la temperatura leída con el sensor, s i éste se ha instalado correctamente.
A l oprim ir el pulsador de programación, el número en los displays debe modificarse. Inicialmente programe la temperatura embiente
para verificar que se dispara el relé de salida.

á 4

156 ^ M H ^ H W s.a Curso práctico sobre Microcontroladores


FRECUENCÍMETRO DIGITAL
Este proyecto es una herramienta de laboratorio m uy
importante para probar diferentes circuitos. Con este
dispositivo usted puede medir la frecuencia de señales
digitales y visualizarla en displays de siete segmentos.

C aracterísticas
• Frecuencímetro auto-rango
• V isu alizació n en cuatro displays de siete
segm entos
• Rango de frecuencias de 0 Hz a 50 M H z
• Instrum ento portátil
• Tam año reducido
• Bajo costo
J l *
Curso práctico sobre Microcontroladores G M K IT 1
Frecuencím etro digital

U n a de las características más im portantes d o fin a l. D e e sta m a n e r a los tres p rim e ro s


de las señales digitales es su frecuencia. Dentro d íg ito s m o s tra r á n un d a to q u e d e b e ser elev a­
de un sistema digital se generan m uchas señales do a la p o te n c ia de 10 in d ic a d a en el cu a rto
en donde el m anejo de este parám etro requiere display, es d ecir: A .B C * 10 AD. D e b id o a esta
de gran precisión y exactitud. d is t r ib u c ió n , el display d e l e x p o n e n te se ha
u b ic a d o a la d e re c h a y se p a ra d o de los tres
De no ser así se puede caer en fallas de sin ­ p r im e r o s d e n t r o d e l c ir c u it o im p re s o . Por
cronización, errores en la generación de tiempos, e je m p lo , u n a le c tu r a típ ic a se ría 1 ,2 0 x 1 0 ' lo
etc., que pueden afectar el buen funcionam iento q u e e q u iv a le a 1 .2 0 0 H z.
de una tarjeta o equipo. Por estas razones, en el
cam po del desarrollo electrónico es m u y im p o r­ Descripción del circuito
tante el seguim iento de esta variable en las dis­ En la figu ra 18.1 se m uestra el diagram a esque­
tintas etapas de los circuitos para detectar posi­ mático. Puede observar que en este caso no se ha
bles fallas o imprecisiones. utilizado un decodificador de B C D a siete seg­
m entos, cada uno de los segmentos de los cuatro
Teniendo en cuenta lo anterior, es fundam en­ displays conectados en paralelo se activan direc­
tal contar con una herram ienta como un frecuen­ tam en te por un pin del microcontrolador.
cím etro dentro de su laboratorio de electrónica
digital y microcontroladores; ese es el objeto de Los cu atro s displays se m a n e ja n con solo
incorporar la construcción del presente proyecto o nce pines de salid a y cu a tro transistores; los
dentro de este curso. p in es R B 1 , R B 2 , R B 3 , R B 4 , R B 5 , R B 6 y R B 7
se u tiliz a n p ara a lim e n t a r c ad a u n o de los seg­
Funcionamiento m en to s. C a d a display m u e stra el d ato corres­
Este proyecto se ha construido sobre una tarjeta p o n d ie n te m e d ia n te u n p ro c e d im ie n to de b a ­
diseñada para ser m a n ip u la d a p or un usuario de rrid o , co m o y a se h a e x p lic a d o en proyectos
m anera sim ilar a com o lo h aría con u n a p un ta an terio res, de m a n e ra q u e se so m eten a un c i­
lógica. Esta característica, sum ada al alto rango clo de actu alizació n p erm a n en te en d o n d e cada
de lecturas que ofrece, hacen de este in strum en ­ u n o p e rm a n e c e activ ad o d u r a n te 6 2 us.
to un producto que supera a m uchos sistemas
similares que se encuentran en el m ercado a un C a d a display posee su propio transistor que
costo más alto. p e rm ite su a ctiv ació n , sie n d o estos m an ejad o s
p or los pines RAO, R A I , R A 2 y R A 3.
Este equipo perm ite leer frecuencias com ­
prendidas en el rango de 0 H z hasta 5 0 M H z , y El m icrocontrolador funciona con un cristal
sim p lem en te utiliza un m icrocontrolador PIC de 4 M H z y la entrada de frecuencia que se va a
trabajando con un cristal de 4 M H z . El circuito m ed ir corresponde al pin RA4, que com o hemos
impreso se ha diseñado en form a de “lapicero” estudiado en distintas lecciones, corresponde a
para facilitar su m anip ulación por parte del usua­ la en trada para el TMRO.
rio y en él se destacan los cuatro displays de siete
segm entos que utilizará para visualizar el resulta­ En la fig u ra 1 8 .2 puede apreciar la g u ía de
do de sus mediciones. m ontaje donde se señala la ubicación de todos
los com ponentes y que p ued e utilizar para en­
Lectura de los displays sam blar la tarjeta.
C o m o sólo se c u e n t a co n c u a tro displays p ara
v is u a liz a r la le c tu r a , se ha a d o p ta d o u n a n o ­ C o m o puede apreciar la entrada de frecuen­
ta c ió n d e in g e n ie r ía p a ra m o stra r el r e s u lta ­ cia tiene tam bién conexión con el pin R B 0, el

Curso práctico sobre Microcontroladores


Proyectos

GND

Figura 18.1 Diagrama esquemático del circuito


* *
Curso práctico sobre Microcontroladores fIá IT T s a.
Frecuencímetro digital

En e s to s tre s displays se v is u a liz a n los


d a to s de las le c tu ra s . El p u n to d e c im a l en el
display d e la iz q u ie rd a p e rm a n e c e a c tiv a d o
C o n e c to r CA/CC para
la a lim e n ta c ió n .P u e d e
Ésta es la p u n ta de u tiliz a r c u a lq u ie r
m e d ic ió n . G ra cia s al a d a p ta d o r que
d is e ñ o de e s te c irc u ito , e n c u e n tre e n el
u s te d p u e d e m a n ip u la r m e rc a d o
fá c ilm e n te este
fre c u e n c ím e tro

El d a to d e fin itiv o se o b tie n e


m u ltip lic a n d o el d a to d e los tre s
M ic ro c o n tro la d o r que
displays que e s tá n a la izq u ie rd a
m a n e ja el s is te m a
p o r 10, e le v a d o a l n ú m e ro que
in d ic a e s te display

Figura 18.2 Guía de montaje

cual se utiliza para m in im izar el error en la lectu­ consecutivamente) para indicar que puede haber
ra y ejecuta un proceso de habilitación de la en ­ un error que sobrepase la resolución del sistema.
trada durante ciertos intervalos de tiem po (gati-
llado ó GATE) generados m ediante rutinas de Para m in im iz a r el co n su m o d e e n e rg ía de
retardo. Esa habilitación se m antiene d urante 1 la tarjeta, se ha estab lecido q u e si la frecuencia
ms si la frecuencia está por en cim a de los 256 p e rm a n e c e estable d u r a n te un p erio d o de 10
KHz. Esta m ism a característica la poseen los fre­ segun d os en a d e la n te , la tarjeta e n tra a tra b a ­
cuencím etros comerciales, figu ra 18.3. ja r en m o d o de bajo co n su m o o SLEEP ( este
co n cep to se estu d ia en la lección 16 de la sec­
Si la frecuencia está por debajo de los 128 Hz ció n d e teoría). De este estado reto rn a de n u e ­
los digitos parpadean (se encienden y se apagan vo c u a n d o llega u n a n ueva lectura.

Éste e s el d a to leído. T a m b ié n se
v is u a liz a en displays de siete

Ésta e s la in d ic a c ió n de Éstos so n los in d ic a d o re s


g a tilla d o e n u n m e d id o r de d e la e sca la . En e s te caso
fre c u e n c ia c o m e rc ia l los re e m p la z a m o s p o r un
display de s ie te s e g m e n to s

Figura 18.3 Indicación del gatillado, en un frecuencím etro com ercial

~ A Curso práctico sobre Microcontroladores


Proyectos

Como se estudió en la lección n uestra p á g in a en la in tern et m anera que se establezca que se


16 de la sección de teoría, cuando w w w .cek it.com .co p ara q u e lo van a leer los pulsos de entrada
el microcontrolador entra al modo u tilice librem ente. por el pin T O C K y que esos
sleep muchas de sus funciones se pulsos van a ser la fuente de se­
desactivan permitiendo reducir al En la figu ra 1 8 .4 podemos ñal para el incremento del Ti-
máximo su consumo de energía. ap rec iar la p rim e ra p a rte del merO (TMRO); de esta manera
En este caso dicha característica program a, que corresponde a la se cuentan los pulsos de entra­
puede ser aprovechada para insta­ definición del m ap a de m em o ­ da. Los pulsos que entran al sis­
lar en la tarjeta un sistema de ali­ ria R A M y los registros de este tema los tiene disponibles den­
mentación por batería y que el ins­ proyecto; a q u í se han definido tro de este registro y ejecutando
trumento p u ed a ser portátil. direcciones para cada una de las operaciones sobre el contenido
variables del proyecto, para cada q u e éste v aya to m an d o en el
Descripción del uno de los displays, los distintos tiempo, puede calcular un dato
programa contadores, etc. equivalente a la frecuencia.
Por razones de espacio se hace
im p o sib le p u b lic a r el có digo El cuerpo principal del pro­ Los registros de configura­
com pleto del program a del fre­ gram a debe seguir la rutina mos­ ción se m uestran en la figu ra
cu en cím etro d igital; en este es­ trada en el diagram a de flujo de 1 8 .6 y la parte del program a
pacio explicarem os las p rin c i­ la figura 18.5, en ella se indica que ejecuta esta operación se
pales rutin as y su desarrollo. que se debe hacer una configu­ m uestra en la figu ra 18.7. Para
El c ó d ig o c o m p le to d e este ración in icial de los registros com probar el correcto funcio­
proyecto lo p ued e descargar de O P C I O N e I N T C O N de tal nam iento de los displays, el pro-

9 4
Configurar
;CURSO PRÁCTICO SOBRE MICROCONTROLADORES OPCION
; PEREIRA 2001 - AUTOR: JACW
; FASCICULOS 20 Y 21 4
Configurar
; LIST P=16F84 INTCON

PC EQU 02 ;CONTADOR DE PROGRAMA


PORTA EQU 05
PORTB EQU 06
ESTADO EQU 03
TMR EQU 01
TRISA EQU 0X5
TRISB EQU 0X6
INTCON EQU 0X0B REGISTRO DE CONTROL DE INTERRUPCIONES
UNIDAD EQU 0X0C DISPLAY UNIDADES
DECIMAL EQU 0X1D DISPLAY DECENAS
CENTS EQU 0X1E DISPLAY CENTENAS
EXP EQU 0X1F DISPLAY EXPONENTE
BYTE.AL EQU 0X10 BYTE ALTO DEL NUMERO LEÍDO (N)
BYTE_BA EQU 0X11 BYTE ALTO DEL NUMERO LEÍDO(N)
CONTA.R EQU 0X12 ACTUALIZAR CONTADOR
CIFRA EQU 0X13 PARÁMETRO
U EQU 0X14 UNIDADES
D EQU 0X15 DECENAS
H EQU 0X16 CENTENAS
M EQU 0X17 MILES Leer el dato
DM EQU 0X18 DECENAS DE MILES (Rutina: Preescalador)
CM EQU 0X19 CENTENAS DE MILES
CONTAI EQU
C0NTA2 EQU
0X1A
0X1B
PRIMER REGISTRO DE CUENTA
SEGUNDO REGISTRO DE CUENTA
4
Iniciar
N EQU 0X1C TMRO
CERO EQU 0X20 NUMERO DE CICLOS SIN SE-AL
Figura 18.5 Diagrama de flujo del cuerpo
Figura 18.4 Definición de las direcciones en la RAM principal del programa

Curso práctico sobre Microcontroladores m K IT .:.


Frecuencímetro digital

.********** PRINCIPAL
Pull-up habilitadas * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Flanco de bajada ORG 0


para la interrupción START
MOVLW 0X27
0PTI0N ;CARGAR 00100111 EN
5 4 3___ 2 1 0 ;OPCIÓN
REGISTRO MOVLW 0X10
OPCION 1 o 1 1 MOVWF INTCON ;HABILITAR
;INTERRUPCIONES
Preescalador = 256 MOVLW .20
MOVWF CERO
Preescalador asignado
CLRF PORTA
al TMRO
CLRF PORTB
BSF ESTADO,5
Flanco elegido para el
MOVLW 0X10
incremento (no utilizado
MOVWF TRISA BITS 0 A 3 DEL
en este caso)
PUERTO A COMO SALIDAS
P0RTA<4>=ENTRADA
CLRF TRISB PUERTO B ->SALIDAS
Habilitador global BCF ESTADO,5
desactivado MOVLW 0X08 ENCENDER TODOS LOS
SEGMENTOS PARA
Interrupción de la MOVWF UNIDAD PROBAR LOS DISPLAYS
EPROM de datos, MOVWF DECIMAL PARA ELLO SE CARGAN CON
deshabilitada
EL NÚMERO

REGISTRO
O O O I
r Interrupción por
TMRO deshabilitada

0 0
O
0
MOVWF

MOVWF
MOVLW

MOVWF
CENTS

EXP
.20

CONTA.R
OCHO, PARA ENCENDER
TODOS LOS DISPLAYS

¡ACTUALIZACION DE
;PRUEBA C0,5SEG)
INTCON
i . i L00P1 CALL ACTUALIZAR :¡ACTUALIZAR DISPLAYS
DECFSZ CONTA.R

I
Banderas de las distintas
L00P5
GOTO
CLRF
L00P1
TMR INICIALIZAR EL
TMRO DESDE 0000
interrupciones BSF ESTADO,5 CONFIGURAR RBO COMO
ENTRADA
Interrupción X cam bio en el
MOVLW 0X01 PARA PODER EJECUTAR
puerto B, deshabilitada
LA INT EXTERNA
MOVWF TRISB
Habilitación de la
BCF ESTADO,5 RETARDO DE 1 ms
interrupción externa
MOVLW .99
MOVWF CONTAI
Figura 18.6 Configuración de los registros OPCION e INTCON
Figura 18.7 Código del cuerpo principal

gram a hace u n a pequeña prueba consistente en un flanco por el pin RBO para originar una inte­
encender por un corto espacio de tiem po todos rrupción por el pin INT. Si observa el diagrama es­
los segmentos de todos los displays. quemático de la figura 18.1, puede notar que estos
dos pines se encuentran conectados. Para ejecutar
A h o ra d eb e p o n er en fu n c io n a m ie n to el de manera continua la lectura de la frecuencia debe
TMRO, pero solamente por un determinado espa­ repetir el mismo proceso: borrar el TM RO y habili­
cio de tiempo para así tener una m edida de los tar su incremento sólo durante un espacio de tiem­
pulsos que entran en un lapso de tiempo. Para lo­ po, para poder tomar ese dato y someterlo a un pro­
grar esto basta configurar el pin RBO, que es por cedimiento donde se aproxime la frecuencia leída.
donde entran los pulsos al registro TMRO, como
entrada e invocar un retardo por programa, figura La lectura del TMRO se hace dentro de la subru­
18.8 y una vez terminado éste, configurar el pin tina PRESCALADOR, figura 18.9. En ella se envía
RBO como salida para inhibir la entrada de más el flanco para el pin IN T y se establece el valor leído
pulsos. Cuando ha terminado el retardo se envía dentro de dos registros denominados BYTE_AL y

Curso práctico sobre Microcontroladores


Proyectos

UN_MS NOP
Los valores de la frecuencia
NOP deben en trar a u n a su b ru tin a
NOP
NOP donde se distribuyan entre los
NOP cuatro displays para su visualiza­
NOP
NOP ción, para ello se han creado va­
DECFSZ CO NTAI riables para las unidades, dece­
GOTO UN.MS
NOP nas, c e n te n a s y la p o te n c ia .
NOP C u an d o estos datos se han dis­
NOP
NOP crim in ad o ad ecu ad am en te, se
NOP
BSF E S T A D O ,5
someten al proceso mostrado en
CLRF T R IS B la figura 18 .11, el cual se ejecu­
BCF ESTA D O ,5
CALL PRESCALADOR ¡U B IC A R EL NÚMERO CONTADO EN LOS ta m ediante el código mostrado
; BYTES ALTO Y BAJO en la figura 18.12.
MOVF B Y T E .A L
BTFSS ESTA D O ,2 T E S T : BYTE A LTO =0
GOTO C A L l.M S NO Para llevar a cabo esta ope­
BTFSC B Y T E _ B A ,7 S I , - > PRUEBE S I BYTE B A J 0 < = 1 2 8
GOTO C A L l.M S NO ración se hace uso de u n a varia­
CLRF TMR SI
ble d en o m in ad a C IFR A , en la
BSF E S T A D O ,5 CONFIGURAR RB0 COMO ENTRADA
MOVLW 0X01 cu al se cargan de m an era se-
MOVWF T R IS B
BCF E S T A D O ,5
cuencial los valores que se van
MOVLW .2 0 a visualizar en cada uno de los
MOVWF CONTA.R
displays. Se invoca una tabla, fi­
gu ra 18 .13, con los valores con­
Figura 18.8 Retardo por programa e invocación de la rutina para leer el dato adquirido
figurados para visualizar correc­
tam ente los núm eros y se acti­
; * * * SUBRUTINA PARA EXTRAER EL VALOR CONTENIDO EN EL PRESCALADOR
PRESCALADOR
va cada uno de los transistores
MOVF T M R ,0 q u e h a b ilita r á n el f u n c io n a ­
MOVWF B Y T E .A L ; HACER UNA C O P IA DEL CONTADOR EN EL
;B Y T E ALTO m iento de cada u n o de los dis­
CLRF N plays, haciendo una especie de
C IC L O BCF P O R TB ,0
BSF P O R TB ,0 barrido. Este concepto lo ha es­
BCF P O R TB ,0 ; DANDO UN FLANCO PARA LA ENTRADA DEL tudiado en proyectos anteriores.
; CONTROLADOR
IN C F N
MOVF BYTE_AL,0 ; HACER UNA C O P IA DE BYTE ALTO EN W
; CONTROL S I HA CAMBIADO EL TMR
Pruebas de la tarjeta
XORWF T M R ,0
; (TM R =BYTE A L T O ) Uno de los elementos más im ­
BTFSC ESTA D O ,2
portantes que se debe tener en
GOTO C IC LO
MOVLW 0X FF cuenta en el m om ento de desa­
MOVWF BYTE_BA
MOVF N ,0
rrollar un proyecto que consti­
SUBWF B Y T E .B A ; BYTE B A J 0 = 2 5 6 -N tuya una herramienta de traba­
IN C F BYTE_BA •
9
RETURN jo, es garantizar la calidad final
del aparato; es fundam ental que
Figura 18.9 Lectura del TMRO
éste h aya sido som etido a un
tros entregados y según el valor conjunto de pruebas que corro­
BYTE_BAJ. Cuando se tienen lis­
leído se hace un ajuste, sumándo­ boren su correcto funcionamien­
tos estos valores se invoca una su­
le un valor que permita obtener el to y que le garantice estar desa­
brutina en la cual se hace el cálcu­
rrollando sus trabajos con un ele­
lo exacto de la frecuencia leída, fi­ valor real, calibrado con respecto
mento confiable que le indique
gura 18.10, para ello se hace una a un dispositivo comercial para la
las lecturas con total veracidad.
lectura del valor en los dos regis­ medida de frecuencia.

Curso práctico sobre Microcontroladores m ia r ,: .


Frecuencímetro digital

* . SUBRUTINA DE CÁLCULO DE LA FRECUENCIA MOVLW 0X02


CALCULO MOVLW .20 ADDWF D
MOVWF CERO MOVLW 0X08
RLF BYTE_AL ADDWF U ¡SI BIT7=1 -> SUMAR 128
BTFSS ESTADO,0 ¡CHEQUEAR BIT7 DEL BYTE ALTO C.10 RLF BYTE.BA
GOTO C_2 BTFSS ESTADO,0 ¡CHEQUEAR BIT6 DEL BYTE BAJO
MOVLW 0X03 GOTO C.ll
ADDWF DM MOVLW 0X06
MOVLW 0X02 ADDWF D
ADDWF M MOVLW 0X04
MOVLW 0X07 ADDWF U ¡SI BIT6=1 -> SUMAR 64
w

ADDWF H C.ll RLF BYTE.BA


MOVLW 0X06 BTFSS ESTADO,0 ¡CHEQUEAR BIT5 DEL BYTE BAJO
ADDWF D GOTO C.12
MOVLW 0X08 MOVLW 0X03
ADDWF U ;SI BIT7=1 -> SUMAR 32768 ADDWF D
C_2 RLF BYTE.AL MOVLW 0X02
BTFSS ESTADO,0 ;CHEQUEAR BIT6 DEL BYTE ALTO ADDWF U ¡SI BIT5=1 -> SUMAR 32
GOTO C_3 C.12 RLF BYTE.BA
MOVLW 0X01 BTFSS ESTADO,0 ¡CHEQUEAR BIT4 DEL BYTE BAJO
ADDWF DM GOTO C.13
MOVLW 0X06 MOVLW 0X01
ADDWF M ADDWF D
MOVLW 0X03 MOVLW 0X06
ADDWF H ADDWF U ¡SI BIT4=1 -> SUMAR 16
MOVLW 0X08 C.13 RLF BYTE.BA
ADDWF D BTFSS ESTADO,0 ¡CHEQUEAR BIT3 DEL BYTE BAJO
MOVLW 0X04 GOTO C.14
ADDWF U ;SI BIT6=1 -> SUMAR 16384 MOVLW 0X08
C_3 RLF BYTE.AL ADDWF U ¡SI BIT3=1 -> SUMAR 8
BTFSS ESTADO,0 ¡CHEQUEAR BITS DEL BYTE ALTO C.14 RLF BYTE.BA
GOTO C_4 BTFSS ESTADO,0 ¡CHEQUEAR BIT2 DEL BYTE BAJO
MOVLW 0X08 GOTO C_15
ADDWF M MOVLW 0X04
MOVLW 0X01 ADDWF U ¡SI BIT2=1 -> SUMAR 4
ADDWF H C.15 RLF BYTE.BA
MOVLW 0X09 BTFSS ESTADO,0 ¡CHEQUEAR BIT1 DEL BYTE BAJO
ADDWF D GOTO C.16
MOVLW 0X02 MOVLW 0X02
ADDWF U ;SI BIT5=1 -> SUMAR 8192 ADDWF U ¡SI BIT1=1 -> SUMAR 2
C_4 RLF BYTE_AL C.16 RLF BYTE.BA
BTFSS ESTADO,0 ¡CHEQUEAR BIT4 DEL BYTE ALTO BTFSS ESTADO,0 ¡CHEQUEAR BIT0 DEL BYTE BAJO
GOTO C_5 GOTO C.17
MOVLW 0X04 MOVLW 0X01
ADDWF M ADDWF U ¡SI BIT0=1 -> SUMAR 1
MOVLW 0X09 C.17 CALL REPORTE
ADDWF D MOVF CM,0 ¡EL PRIMER DÍGITO (MSD) SE
MOVLW 0X06 BUSCA
ADDWF U ¡SI BIT4=1 -> SUMAR 4096 BTFSS ESTADO,2 ¡Y SE HACE UNA APROXIMACIÓN
C_5 RLF BYTE.AL ¡AL CUARTO DIGITO
BTFSS ESTADO,0 ¡CHEQUEAR BIT3 DEL BYTE ALTO GOTO APPCMNZ
GOTO C_6 MOVF DM,0
MOVLW 0X02 BTFSS ESTADO,2
ADDWF M GOTO APPDMNZ
MOVLW 0X04 MOVF M,0
ADDWF D BTFSC ESTADO,2
MOVLW 0X08 GOTO CUARTO
ADDWF U ¡SI BIT3=1 -> SUMAR 2048 MOVF U,0
C_6 RLF BYTE.AL MOVWF N
BTFSS ESTADO,0 ¡CHEQUEAR BIT2 DEL BYTE ALTO MOVLW 0X05
GOTO C.7 SUBWF N
MOVLW 0X01 BTFSS ESTADO,0
ADDWF M GOTO CUARTO
MOVLW 0X02 INCF D
ADDWF D GOTO CUARTO
MOVLW 0X04 APPDMNZ MOVF D,0 ; DM ES EL MSD
ADDWF U ¡SI BIT2=l-> SUMAR 1024 MOVWF N
C_7 RLF BYTE.AL MOVLW 0X05
BTFSS ESTADO,0 ¡CHEQUEAR BIT1 DEL BYTE ALTO SUBWF N
GOTO C.8 BTFSS ESTADO,0
MOVLW 0X05 GOTO CUARTO
ADDWF H INCF H
MOVLW 0X01 GOTO CUARTO
ADDWF D APPCMNZ MOVF H,0 ¡CM ES EL MSD
MOVLW 0X02 MOVWF N
ADDWF U ¡SI BIT1=1 -> SUMAR 512 MOVLW 0X05
C_8 RLF BYTE.AL SUBWF N
BTFSS ESTADO,0 ¡CHEQUEAR BIT0 DEL BYTE ALTO BTFSS ESTADO,0
GOTO C_9 GOTO CUARTO
MOVLW 0X02 INCF M
ADDWF H CUARTO CALL REPORTE
MOVLW 0X05 MOVF CM,0 ¡COLOCAR EL 4 DÍGITO EN EL REGISTRO
ADDWF D BTFSS ESTADO,2 ¡DEL CUARTO DISPLAY
MOVLW 0X06 GOTO CMNZ ¡Y EN EXP EL VALOR ADECUADO
ADDWF U ¡SI BIT0=1 - > SUMAR 256
C_9 RLF BYTE.BA
BTFSS ESTADO,0 ¡CHEQUER BIT7 DE BAJO BYTE
GOTO C.10
MOVLW 0X01
ADDWF H

Figura 18.10 Cálculo de la frecuencia


a *
164 C M K t n Curso práctico sobre Microcontroladores
Proyectos

A ctualización
i ; **** S U B R O U T I N A DE A C T U A L I Z A CI Ó N : 2 5 0 MSEC
Valor de las ACTUALIZAR
unidades-►Cifra MOVF UNIDAD,0 C A R G A R E N EL R E G I S T R O CIFRA
MOVWF CIFRA A L V A L O R A C T U A L I Z A D O DE L A VARIABLE
CALL SEGMENTOS DE LAS U N I D A D E S E I N V O C A R LA SUBRUTINA
Rutina de segmentos MOVWF PORTB QUE C O N F I G U R A EL D A T O QUE SE V A A ENVIAR
BSF P O R T A ,0 POR EL P U E R T O B, A C T I V A R D I S P L A Y D E LAS
UNIDADES
Enviar dato al puerto B CALL RETARDO Y SE ESPERA U N C O R T O T I E M P O P A R A SU

Activar bit ♦
0 del puerto A
BCF
MOVF
MOVWF
P O R T A ,0
DECIMAL,0
CIFRA
VISUALIZACION
F I N A L M E N T E SE D E S A C T I V A EL DISPLAY
C A R G A R EN EL R E G I S T R O CIFRA
A L V A L O R A C T U A L I Z A D O DE LA VARIABLE
* CALL SEGMENTOS DE LAS D E C E N A S E I N V O C A R LA SUBRUTINA
Retardo MOVWF PORTB QUE C O N F I G U R A EL D A T O QUE SE V A A ENVIAR

Desactivar bit 0 del puerto A


BSF
CALL

BCF
P O R T A ,1
RETARDO

P O R T A ,1
A C T I V A R D I S P A Y DE LAS DECENAS
Y SE E S P E R A U N C O R T O T I E M P O P A R A SU
VISUALIZACIÓN
FINALMENTE SE D E S A C T I V A EL DISPLAY
MOVF CENTS,0 C A R G A R EN EL R E G I S T R O CIFRA
Valor decenas-► Cifra
MOVWF CIFRA A L V A L O R A C T U A L I Z A D O DE LA VARIABLE
CALL SEGMENTOS DE LAS C E N T E N A S E I N V O C A R L A SUBRUTINA
MOVWF PORTB QUE C O N F I G U R A EL D A T O QUE SE V A A ENVIAR
Rutina de segmentos
BSF P O R T A ,2 A C T I V A R D I S P L A Y DE LAS C E N T E N A S
CALL RETARDO Y SE E S P E R A U N C O R T O T I E M P O P A R A SU
VISUALIZACIÓN
Enviar dato al puerto B
BCF P O R T A ,2 F I N A L M E N T E SE D E S A C T I V A EL DISPLAY
MOVF EXP.0 C A R G A R E N EL R E G I S T R O CIFRA
MOVWF CIFRA AL V A L O R A C T U A L I Z A D O DE L A V A R I A B L E
Activar ó/M del puerto A
CALL SEGMENTOS DE LA P O T E N C I A E I N V O C A R LA S U B R U T I N A
MOVWF PORTB Q U E C O N F I G U R A EL D A T O QUE SE V A A ENVIAR
BSF P O R T A ,3 A C T I V A R D I S P L A Y DE LA P O T E N C I A
Retardo
CALL RETARDO Y SE E S P E R A U N C O R T O T I E M P O P A R A SU

Desactivar bit1 del puerto A


BCF
RETURN
P O R T A ,3
VISUALIZACIÓN
F I N A L M E N T E SE D E S A C T I V A EL DISPLA Y

Figura 18.12 Código de la visualización en los displays


Valor centenas —►C
. i****************************
> S U B R U T I N A DE R E T A R D O
Rutina de segmentos R E T A R D O MOVLW .8 ; 6 2 . 5 ms
MOVWF CONTAI
NOP
Enviar dato al puerto B BETA MOVLW .0

bit
MOVWF CONTA2
ALFA DECFSZ CONTA2
Activar 2 del puerto A GOTO ALFA
NOP
DECFSZ CONTAI
Retardo GOTO BETA

Desactivar bit2 del puerto A


GAMMA
MOVLW
MOVWF
DECFSZ
GOTO
.14
CONTA2
CONTA2
GAMMA
NOP
Valor potencia —►Cifra
NOP
RETURN
Rutina de segmentos ; ****** S E L E C C I O N A R LOS SEGMENTOS A D E C U A D O S * * * * * * * * * * * * *
SEGMENTOS
NOP
Enviar dato al puerto B MOVF CIFRA,0
ADDWF PC

bit
;RETORNMAR E N W EL C O N J U N T O A D E C U A D O DE
RETLW 0X7E ;SEGMENTOS QUE SE ACTIVAN PARA CADA SECWENTO
Activar 3 del puerto A RETLW 0X0C
RETLW 0XB6
RETLW 0X9E
Retardo RETLW 0XCC

Desactivar bit
f
3 del puerto A
RETLW
RETLW
RETLW
RETLW
0XDA
0XFA
0X0E
0XFE
Figura 18.11 Diagrama de la RET1W -0XD£_ ........
visualización en los displays Figura 18.13 Tabla de los segmentos para visualizar los números

Curso práctico sobre Microcontroladores m iK d iT s i


Frecuencímetro digital

Ahora mostramos algunas pruebas de mediciones que se hicieron con el frecuencímetro construi­
do en esta ocasión, comprobadas mediante la comparación con un osciloscopio y con un medi­
dor digital de frecuencia comercial, figuras 18.14 a 18.20.

Figura 18.14. Este es e l procedim iento de calibración d el dispositivo, pa rte fundam ental en e l ajuste
de los parámetros y cálculos d el programa. Para esta calibración se utilizaron elementos como e l oscilosco­
pio, un generador d e señales y un m edidor d e frecu en cia comercial.

CHANC iiw tt» him cu

* 0 0 2 8
Figura 18.15 . A partir
de este momento vamos a com ­
parar distintos valores de jr e-
cuencia generados con e l gen e­
rador de señales. En este caso
se m ide 28 Hz.

< % £ > HUNG CHANG swt cr

Figura 18.16. M edición


de 100 Hz. Compare los re­
sultados en los visualizadores
y acostúmbrese a leerlos d e esta
manera.

GEKIT, Curso práctico sobre Microcontroladores


Proyectos

1 *
• • •*
* • !* • • *

a p i ^
^
-
•a
esa a Figura 18.17. Esta es la lectu­
ra d e 1MHz d e frecuencia. La lec­
>* •
_. _ . *.k & ,

tura es 9,99 x 1 0 5.

* HU# 6 CHANG sw ..* . , mc i

Figura 18.18. Lafrecuencia ge­


r ^ 4 ' a g i r ig nerada es de 2,34 KHz. La lectura
en nuestro dispositivo es 2,34 * 10 \
. ■*• •”* <
í, T?

■ | ^ k.* - | ^| f i / v

Figura 18.19. En e l m e­
didor se puede leer 2.215 KHz,
es decir 2,2 MHz, en nuestro
dispositivo se lee 2,21 * 1 0 6.

Figura 18.20. Debido a la


fa cilid a d en su manipulación, el
frecuecím etro desarrollado puede
ser de gran utilidad para probar
toda clase d e diseños digitales
como relojes, medidores e incluso
para hacer pruebas en ciertos cir­
cuitos d e comunicaciones seriales.

Curso práctico sobre Microcontroladores


Frecuencímetro digital

Ensamblaje del proyecto L IS T A DE M A T E R IA L E S

ant. Ref. Descripción


IC1 M icrocontrolador P IC 1 6 F 8 4 , program ado
REG 1 R e g u la d o r fijo d e +5V-1A, 7805
Q1 a Q 4 T ra n sisto re s d e propósito g en e ra l N P N ,
2N3904
BR1 P u e n te rectificador circu lar d e 1A, W 0 6 M
D ISP1 a D IS P 4 D isp la ys de siete segmentos cátodo común
C1 C ondensador electrolítico de 1000pF - 25V
C2 C o n d e n s a d o r electrolítico d e 4 7 p F - 2 5 V
C3 C o n d e n s a d o r c e rá m ic o d e 0,1 p F - 50V
C 4 y C5 C ondensadores cerám icos d e 22pF - 50V
Figura 18.21. Conjunto de componentes electrónicos y los XT1 C ristal d e cu arzo d e 4 M H z
accesorios que se requieren para ensam blar el frecuencímetro R1 a R 7 y R 1 3 R e s is te n c ia s d e 220Í2 - 1/4W
R 8 a R11 R e s is te n c ia s d e 1k - 1/4W
digital CEKIT K-332.
R12 R e s is te n c ia d e A 7 0 Q - 1/4W
K-332 Circuito im p reso C E K IT
Una herramienta útil en todo laboratorio de electrónica es el C o n e c to r d e alim en tació n C A / C C
frecuencímetro de señales digitales, tal como el de este proyecto. B a s e p a ra circuito in tegrad o d e 18 pines
P u n ta d e p ru e b a m etálica
Con él se puede m edir con precisión el valor de la frecuencia de
L á m in a d e acrílico
señales entre 0 y 50MHz. Para el ensamblaje de la tarjeta tenga en
cuenta los siguientes pasos:

Paso 4
Instale y suelde los cuatro displays de cátodo común DISP1 a
DISP4 y el conector de alimentación CA/CC J1.
Paso 1
Figura 18.25
Instale y suelde los puentes de alambre y las resistencias R l a R13.
Figura 18.22

Paso 5
Instale y suelde los condensadores cerámicos C3, C4 y C5, el
Paso 2 cristal de cuarzo de 4MHz XT 1 y los condensadores electrolíticos
Luego instale y suelde los transistores NPN Q1 a 04 y la base para C l y C2.
Figura 18.26
el microcontrolador
Figura 18.23

Paso 6
Paso 3 Aspecto final del frecuencímetro luego de adherir con suficiente
Instale y suelde el puente rectificador BR1 y el regulador de soldadura la punta de prueba metálica al circuito impreso y en el
voltaje integrado de +5Z REG1. lugar destinado para dicho componente, marcado en la guía de
Figura 18.24 ensamblaje como PUNTA. Antes de usar el frecuencímetro es
recomendable usar una lámina de acrílico para evitar medidas
erróneas, pegada por el lado de soldadura del circuito impreso.
Figura 18.27
Paso 6. Pruebas finales
Para alimentar el circuito debe usar un adaptador que brinde un voltaje continuo entre 8 y 12 voltios. Es recomendable instalar una lámina de
acrílico sobre la parte inferior de la tarjeta para proteger la capa de soldadura del circuito impreso. Para conectar la tierra de la señal que va a
medir utilice la carcasa del regulador 7805.

i r : Curso práctico sobre Microcontroladores


PROYECT019

TECLADO 4X4 CON SALIDA SERIAL


Con este proyecto usted construirá un teclado que
puede entregar el valor de la tecla oprim ida em ­
pleando un solo cable, perm itiendo así ahorrarle
pines al dispositivo al cual se le entrega el dato.

Características
• Lectura y transm isión serial de los datos
• Visualización de los datos en la pantalla de la
com putadora
• Velocidad de transm isión de 1.200 bps
• Diodo LED indicador de la transmisión

Curso práctico sobre Microcontroladores mi/cir,.


Teclado 4X4 con salida serial

C o m o y a lo hem os visto, las c o m u n ic a c io ­ cer las otras tareas que se deben ejecutar. Por tal
nes seriales son una gran altern ativa c u a n d o se razón, en este proyecto usted va a construir un
trabaja en el diseño y el desarrollo de productos teclado de 16 posiciones, organizado en forma
electrónicos. A parte de las ventajas de tra n sm i­ m atricial, cuya ún ica función es enviar por su
sión de info rm ación a grandes distancias, ellas salida, en formato RS-232, cl dato correspondien­
posibilitan el control de diferentes variables u ti­ te a la tecla que se oprime.
lizan d o tan sólo u n a en trada o salida de un sis­
te m a controlador. Este tipo de co m u n icació n Aplicaciones
está presente en las co m p utad o ras personales, Este dispositivo se puede conectar al puerto se­
en los m icrocontroladores m ás especializados, rial de u n a com putadora para m uchas tareas, por
y es m u y fácil de im p la n ta r con los m icro co n ­ ejem plo en la industria, d o n d e un operario debe
troladores m ás sencillos. reportar los datos correspondientes a algún pro­
ceso y las condiciones am bientales no permiten
En algunos proyectos electrónicos se requie­ dejar toda la com putadora en dicho sitio. Otro
re la utilización de un teclado para q u e el usuario ejem plo consiste en ubicar el teclado a la entrada
pueda d igitar algún parám etro, un valor de cali­ de un área de acceso restringido, en este caso se
bración o u n a clave de seguridad, entre otros. El usaría para que las personas que deseen entrar
problem a en estos casos es que la conexión de digiten la clave de seguridad y la com putadora o
dicho dispositivo ocupa casi todos los pines del un sistema con m icrocontrolador pueda deter­
m icrocontrolador, dejando unos pocos para ha­ m in ar si perm ite o no la entrada.

R7
330

Tx TEST

Q1 2N3904

C6
22pF

Conector
DB-9 hembra
en el impreso

C3
10pFX

Figura 19.1 Diagram a esquem ático d e l teclado serial

k it .: Curso práctico sobre Microcontroladores


(
Proyectos

En sistem as m icro co n tro - cu ito impreso. En este conec­ de la p resen cia de d ato s en la
lados la co nexió n de un te cla ­ tor el pin utilizad o para sacar salid a d el c irc u ito ; de esta for­
do e m p le a u n a gran c a n tid a d los datos es el n úm ero 2, el cual m a se p u e d e n d escartar posi­
de p in es, c o m p lic a n d o el d i ­ co in cid e con el pin de recep­ bles fallas y a q u e la variació n
seño de cierta form a ya que los ción del puerto serial C O M I d e la in te n s id a d d el LED en
r e c u r s o s d is p o n ib le s se ven de las co m p u tad o ras persona­ el m o m e n to ju sto de la tran s­
algo lim itad o s. En estos casos, les. El pin 5 de d ich o conector m isió n p erm ite establecer un
el uso de este te clad o serial se conecta a tierra y tam bién co rrecto f u n c io n a m ie n to del
p erm ite q u e q u ed en libres el co in cide con el respectivo pin s is te m a . A d ic io n a lm e n t e , se
m a y o r n ú m ero p o sib le de p i­ de la com putadora, esto se hace d eb e an o tar q u e el teclado sólo
nes del m ic r o c o n tr o la d o r ya c o n 'e l fin de que el cable de requiere u n a fuente de a lim e n ­
q u e, para recibir los d ato s es­ conexión q u e se utilice, entre tació n de +5 voltios.
critos, sólo se requiere de u n a el circuito del teclado y la com-
en trad a. p u tad o ra, sea un cable donde En la fig u r a 1 9 .3 se m ues­
los hilos van uno a uno, es d e ­ tra la g u ía de m o n taje y el cir­
Funcionamiento cir q u e no se form an cruces, lo cuito impreso del teclado serial;
En la figura 19.1 se muestra el que facilita su co nstrucción y a u n q u e son pocos elem entos y
diagrama esquemático del circui­ d is m in u y e la p o s ib ilid a d de de fácil reco n o cim ien to , se re­
to y como se puede ver, el con­ errores. En la f ig u r a 1 9 .2 se co m ien d a tener especial cu id a ­
trol lo ejerce un microcontrola­ m u estran las co n exio n es que do sobre todo con la p olaridad
dor P IC l 6F84. Este elemento se d eb e tener el cable q u e c o m u ­ de los condensadores polariza­
encarga de hacer el barrido de nica el teclado con u n a c o m ­ dos q u e u t iliz a el in te g r a d o
todas las teclas para detectar si p u tad o ra o con a lg ú n otro d is­ M A X 2 3 2 , y a q u e el sím bolo
alguna de ellas ha sido o prim i­ positivo al q u e sea conectado. que iden tifica el p in positivo
da; en caso afirm ativo, lo que suele ser m u y p equ eñ o. A d e­
hace es pasar el dato en forma El tran sisto r Q1 q u e reci­ m ás, el valor de cada co m p o ­
serial, por el pin R B 4, hacia el be en su base la señal d e salida nente se en cu en tra en la lista
integrado M A X 232. Este último d el M A X 2 3 2 , se u tiliz a para de m ateriales con su respectiva
tiene como función convertir los a c tiv a r el LED D I . Este ele­ referencia p ara el m o n taje so­
niveles lógicos q u e m an eja el m e n to sirve co m o in d ic a d o r bre la tarjeta.
P IC 16F84 y adaptarlos a los ni­
veles de voltaje de la interfaz RS- Conexión uno a uno (sin cruces)
2 3 2, es decir, un voltaje negati­
vo entre -3 y -13 voltios para re­ -o 1
presentar un uno lógico, y un •
-9 2
voltaje positivo entre +3 y +13
voltios para un cero lógico. Para ■4 3
obtener estos niveles de tensión -8— »
4 4
a partir de una fuente simple de - 0— 9
5 voltios, el M A X 232 se vale de 5
los condensadores C l a C 5 que
tiene conectados. C o n ecto r DB-9 m acho al Conector DB-9 hem bra al
circu ito puerto de la com putadora

La salida del M A X 2 3 2 se
lleva d irectam en te h acia el co­
nector D B -9 h em b ra para cir­ Figura 19.2 Cable serial para comunicar el teclado con una computadora

Curso práctico sobre Microcontroladores S .A .


Teclado 4X4 con salida serial

Figura 19.3 Guía de montaje del teclado serial

Programa del microcontrolador se h ace a u n a v e lo c id a d d e 1 .2 0 0 bps, con


El p ro g ra m a del P I C 1 6 F 8 4 d eb e co n te n e r to­ d a to s de 8 bits, sin p a r id a d y co n u n b it de
das las in stru ccio n es para g a ran tiz a r un correc­ p a ra d a (stop bit).
to fu n c io n a m ie n to del sistem a, éste in c lu y e la
p arte d e b arrid o d el teclado y la c o m u n ic a c ió n E n el p ro g r a m a p r in c ip a l el m ic r o c o n tr o ­
serial. En la fig u ra 19.4 se m u e stra el listado la d o r q u e d a e n c la v a d o en u n c ic lo q u e hace
c o m p le to de d ich o p ro g ram a, in c lu y e n d o un el b a r r id o d el te c la d o ; este p r o c e d im ie n to se
b u e n n ú m e ro de c o m e n ta rio s para fa c ilita r su h a c e r o ta n d o u n cero p or c a d a u n a d e las fi­
co m p ren sió n . las y le y e n d o las c o lu m n a s p a ra ver si d ic h o
cero se ve reflejad o en a lg u n a de ellas (esto
D eb e te n e r en c u e n t a q u e to dos los c á l­ o c u rre si se o p r im e u n a te c la ). En el m o m e n ­
cu lo s de tie m p o s y retard o s están h ec h o s con to de d e te c ta r la p re se n c ia de u n nivel lógico
base en un o s c ila d o r a c rista l d e 4 M H z , por b a jo , se h a c e un t r a ta m ie n to del v a lo r leído
lo ta n to , si d esea c o n s tr u ir este c ir c u ito con p a ra o b te n e r el v a lo r d e la te cla q u e fue o p r i­
o tro tip o de o s c ila d o r d e b e a ju s ta r las c o n s­ m id a . D esp u és d e esto , d ic h o v a lo r d e b e ser
ta n te s de tie m p o . La tr a n s m is ió n d e los datos e n v ia d o s e r ia lm e n te h a c ia el exterior.

É l *
17 2 > C V U T ,. Curso práctico sobre Microcontroladores
(
Proyectos

; ESTE PROGRAMA 1_EE 1JN TECLADO M A T R IC IA L DE 4 X 4 Y


; E N V IA EL DATO O BTENIDO H A C IA UNA COMPUTADORA V I A R S - 2 3 2

; D E F IN IC IÓ N DE REGISTROS
PC EQU 02H CONTADOR DE PROGRAMA
STATUS EQU 03H REGISTRO DE ESTADOS
PTOA EQU 05H EL PUERTO A ESTÁ EN LA D IR E C C IÓ N 0 5 DE LA RAM
PTOB EQU 06H EL PUERTO B ESTA EN LA D IR E C C IO N 0 6 DE LA RAM
TECLA EQU 0CH CONTIENEN EL VALOR DE LA TEC LA O P R IM ID A
LOOPS EQU 0DH U T IL IZ A D O EN RETARDOS (M IL IS E G U N D O S )
LOOPS2 EQU 0EH U T IL IZ A D O EN RETARDOS
ROTA EQU 0FH REGISTRO QUE SE ROTA PARA E N V IA R CEROS A LAS F IL A S
F IL A S EQU 10H CO NTIENE EL NÚMERO DE LA F I L A QUE SE VA A PROBAR
R ll EQU 11H USADO PARA CONTAR B IT S TR A N S M IT ID O S
R12 EQU 12H USADO PARA T IE M P O DE B I T SOBRE LA L ÍN E A
TRANS EQU 13H BYTE QUE SE TRANSM ITE
T R IS A EQU 85H REGISTRO DE CO NFIG URACIÓ N DEL PUERTO A
T R IS B EQU 86H REGISTRO DE CO NFIG URACIÓ N DEL PUERTO B
Z EQU 02H BANDERA DE CERO DEL REG ISTRO DE ESTADOS
C EQU 00H BANDERA DE CARRY DEL REG ISTRO DE ESTADOS
w EQU 00H IN D IC A QUE EL RESULTADO SE GUARDA EN W
TX EQU 04 H P IN DE S A L ID A S E R IA L DEL PUERTO B

RESET ORG 0 EL VECTOR DE RESET ES LA D IR E C C IÓ N 0 0


GOTO IN IC IO SE SALTA AL I N I C I O DEL PROGRAMA

ORG 5 1EL PROGRAMA E M P IE Z A EN LA D IR E C C IÓ N DE MEMORIA 5

RETARDO : SU BR U TIN A DE RETARDO DE 2 0 0 M ILISE G U N D O S


MOVLW D*2 0 0 1 EL REGISTRO LOOPS CONTIENE EL NUMERO
MOVWF LOOPS DE M ILIS EG U N D O S DEL RETARDO
TOP2 MOVLW D’ llO '
MOVWF LOOPS2
TOP NOP
NOP
NOP
NOP
CLRWDT
NOP
DECFSZ LOOPS2 ; PREGUNTA S I TERM INO 1 MS
GOTO TOP
DECFSZ LOOPS -.PREGUNTA S I TE R M IN A EL RETARDO
GOTO TOP2
RETLW 0

TABLA ADDWF PC SUMAR W AL PC


NOP
RETLW 0 ; PRIMERA COLUMNA
RETLW i ;l SEGUNDA COLUMNA
NOP
RETLW 2 ; TERCERA COLUMNA
NOP
NOP
NOP
RETLW 3 ; CUARTA COLUMNA

DELAY1 MOVLW .1 6 6 RETARDO


MOVWF R12 LLEVAR VALOR DE CARGA A L RETARDO
REDO NOP L IM P IA R C IR C U IT O DE V IG IL A N C IA
NOP
DECFSZ R12 DECREMENTAR RETARDO, SALTAR S I CERO
GOTO REDO R E P E T IR HASTA TERMINAR
RETLW 0 RETORNAR

E N V IA R ; R U T IN A PARA E N V IA R DATO
CLRWDT
MOVWF TRANS LLEVAR EL CONTENIDO DE W A T R A N S M IS IÓ N
XMRT MOVLW 8 CARGAR CON NÚMERO DE B IT S
MOVWF R ll EL CONTADOR
BCF P T O B ,T X COLOCAR L ÍN E A DE T R A N S M IS IÓ N EN BAJO
CALL DELAY1 PARA GENERAR B I T DE ARRANQUE
XNEXT BCF P T O B ,T X COLOCAR L ÍN E A DE T R A N S M IS IO N EN BAJO

* /#
Curso práctico sobre Microcontroladores W sl ^
Teclado 4X4 con salida serial )

BCF S TA TU S ,C ; L IM P IA R CARRY
RRF TRANS ; ROTAR REG ISTRO DE TR AN S M IS IÓ N
BTFSC S TA TU S ,C ; PREGUNTAR POR EL CARRY
BSF P T O B ,T X ; S I ES UNO, COLOCAR L ÍN E A EN ALTO
CALL DELAY1 ; LLAMAR RETARDO DE 1 B I T
DECFSZ R ll ;DECREMENTAR CONTADOR, SALTAR S I CERO
GOTO XNEXT ; R E P E T IR HASTA T R A N S M IT IR TODO EL DATO
BSF P T O B ,T X ; COLOCAR L ÍN E A DE T R A N S M IS IÓ N EN ALTO
CALL DELAY1 ; LLAMAR RETARDO 1 B I T - B I T DE PARADA-
RETLW 0 ; RETORNAR

. **** PROGRAMA P R IN C IP A L * * * *
»

IN IC IO BSF STATUS,5 ; SE U B IC A EN EL SEGUNDO BANCO DE RAM


MOVLW 0F 0H ; SE CARGA EL REGISTRO W CON 0F 0H
MOVWF T R IS A ; SE PROGRAMAN LOS P IN E S DEL PUERTO A COMO S A L ID A S
MOVLW 0EFH ; SE CARGA EL REG ISTRO W CON 0EFH
MOVWF T R IS B ; SE PROGRAMA EL PUERTO B COMO ENTRADAS Y S A L ID A S
BCF S T A T U S ,5 ; SE U B IC A EN EL PRIMER BANCO DE MEMORIA RAM

BSF P T O B ,T X ; I N I C I A L ÍN E A DE S A L ID A EN ALTO
MOVLW 00H ; PARA EMPEZAR SE I N I C I A CON UN 0
MOVWF TEC LA •
9

ESCAN CLRF F IL A S
MOVLW B’ 1110' ; SE PREPARA PARA E N V IA R CEROS A LAS F IL A S
MOVWF ROTA
PROBAR MOVF RO TA, W ; E N V ÍA EL DATO A LAS F IL A S
MOVWF PTOA
NOP ;T IE M P O PARA E S T A B IL ID A D DE LAS L ÍN E A S
LEER MOVF P TO B , W ; LEER LAS COLUMNAS CONECTADAS A L PUERTO B
ANDLW 0FH ; E L IM IN A LA PARTE A LT A DEL BYTE L E ÍD O
XORLW 0FH ; IN V IE R T E EL DATO PARA VER S I HAY ALGÚN CERO
BTFSS STATUS, Z ; PREGUNTA S I EL RESULTADO ES CERO CALGUNA T E C L A )
GOTO S A L IR ; S I HAY TEC LA VA A T R A N S M IT IR L A SERIALMENTE
CLRWDT
BTFSS RO TA,3 ; CONSULTA S I YA VAN 4 ROTACIONES
GOTO ESCAN ; S I TE R M IN Ó , VUELVE A EMPEZAR EL ESCANER DE TECLADO
BSF S TA TU S ,C ; COLOCA B I T DE CARRY EN 1
RLF ROTA ;PA R A ROTAR EL 0 QUE VA A I R H A C IA LAS F IL A S
MOVLW 4 ; CARGA W CON 4 PARA SUMARLO AL VALOR DE F IL A S
ADDWF F IL A S ,1
GOTO PROBAR ; VA A HACER LA PRÓXIMA PRUEBA CON EL 0 ROTADO

S A L IR CALL TABLA ; PARA OBTENER VALOR DE LA COLUMNA


ADDWF F IL A S ,W ; SUMAR COLUMNA Y F IL A S PARA OBTENER EL DATO REAL
MOVWF TECLA ; GUARDA EL DATO EN EL REGISTRO TECLA

SUBLW 09 H ; PRUEBA S I ES IG U A L 0 MENOR QUE 9


MOVF TECLA,W
BTFSS S TA TU S ,C ; S I ESTA ENRTE 0 Y 9 SE LE SUMA 4 8
GOTO MAYOR ; S I ES MAYOR A 9 SE LE SUMA 5 4
ADDLW D’ 4 8 ' ; SE LE SUMA ESTE VALOR A TEC LA PARA
GOTO MENOR ¡OBTENER SU EQ UIVALENTE A S C I I
MAYOR ADDLW D’ 55'
MENOR CALL ENVIAR ¡ E N V ÍA SERIALM ENTE EL VALOR A S C I I DE TEC LA
CALL RETARDO ¡RETARDO ESPERANDO QUE LIB E R E N LA TEC LA
GOTO ESCAN ¡VU E LV E A PROBAR S I OPRIMEN ALGUNA TECLA
END

F U S IB L E S DE PROGRAMACIÓN

ose • XT
WATCHDOG ON
CODE PROTECT OFF
POWER- UP--TIMER ON
M ICRO . P IC 1 6 F 8 4

Figura 19.4 Programa del m icrocontrolador PIC d e l teclado serial

Ú M K U T s, Curso práctico sobre Microcontroladores


I Proyectos

La su b ru tin a llam ada en ­ recibe serialm ente y que se su­ / * LA COMPUTADORA R E C IB E LOS
DATOS S E R IA L E S ENVIADO S POR
viar recibe un dato en el regis­ pone corresponde a la tecla que EL P IC */
# in c lu d e < c o n io .h >
tro W y se encarga de todo el se ha presionado. # in c lu d e < s td io .h >
p r o c e d im ie n t o d e d e s p la z a ­ # in c lu d e < d o s.h >
# in c lu d e < m a th .h >
m iento de bits y generación de Para recibir los datos en la # in c lu d e < b io s .h >
retardos para llevar a cabo la com putadora se escribió un pe­
i n t p u e rto ,C O M I,C 0 M 2 ;
transmisión. qu eñ o program a en Turbo C , in t k ,j,d a to ;
/ ♦ d e f in ic ió n de v a r ia b le s * /
cuya visualización se muestra en i n t c o n fig ;
Antes de pasar el dato a la la figu ra 19.5 y su código fuen­ i n t C O M I, C 0M 2 ;
char le c tu r a [l];
rutina de transm isión, se verifi­ te se m uestra en la fig u ra 19.6. ch ar d a to l[2 ];
ca si el dato es u n núm ero del Este se e n c a rg a de c o n fig u ra r
char le e r()
teclado entre 0 y 9 ó entre A y el p u erto serial para u n a velo­ {
F, esto con el fin de sum arle el do{
cid ad de 1 .2 0 0 bps, datos de
valor adecuado para convertir el 8 bits , sin p arid a d y con u n bit d a to = b io s c o m ( 2 , 0 x 8 3 , p u e r t o ) ;
/ ♦ le e r d a to r e c ib id o * /
número en su equivalente ASCII. de p ara d a {stop bit). }
La razón es que de esta forma vhile(C C ctrtD <47) I (d to > 7 2 ))8 < ! k fc h itQ )) J
re tu rn (d a to );
el dato llega a su destino, por Después de esto se queda }
e je m p lo la c o m p u t a d o r a , y en un ciclo donde verifica la lle­ v o id m a in ( v o id )
puede ser pasado d irecta m e n ­ gada de un dato, y si este apare­ {
C O M 1=0;
te a la pantalla. ce, lo m uestra en la pantalla y C0M 2=1;
después co ntin ua verificando la p u e r to = C 0 M l;
/ * d e f i n i r c u a l p u e r to se
Programa de prueba con línea nuevam ente. u tiliz a * /
una computadora c lr s c r O ; / * lim p ia p a n ta lla * /
La forma más sencilla de co m ­ El program a listado recibe c o n fig = 0 x 8 3 ; / * c o n f ig u r a r
p u e r to : 1200 b a u d io s ,d a to de
probar que el teclado está fun­ los datos a través del puerto 8 b i t s , n o p a r i d a d , 1 b i t de
cionando correctam ente es re­ C O M I ; si desea trabajar con el p a ra d a */

cibiendo los datos en una co m ­ C O M 2 debe utilizar un adapta­ b io s c o m ( 0 , c o n f i g , p u e r t o ) ;


putadora. Para ello, conecte el dor de 9 a 25 pines que se consi­ / ♦ c o n fig u r a c ió n de lo s
p u e rto s */
teclado en uno de los puertos gue fácilmente en el mercado y
g o to x y (2 0 ,4 );
seriales de la m ism a, utilizando además hacer un pequeño cam ­ p r i n t f ( « C U R S 0 PRACTICO
el cable que se describió antes. bio en el programa en la parte SOBRE MICROCONTROLADORES»);
El objetivo es m u y simple, mos­ inicial d o n d e se selecciona el g o to x y (4 ,6 );
trar en la pantalla el dato que se puerto de comunicación. p r i n t f ( « L a PC r e c ib e p o r CCM1»);

g o to x y (2 3 ,1 4 );
H F lE J l p rin tf(< < C b rm u E sap e para S a l i r » ;
I » « u j lili I f f i i a j f f j S A ] g o to x y C 2 3 ,9 );
l
p r i n t f ( « E l d a to d e l te c la d o e s : » ) ;
CURSO P R R C I I C O SUHRI M IC R O C O H IR O IA D O R !S
do{
• rr.b r lo s d - lo s r o o . ..d o s por r l P IC o Iro o fs . I r COMI
ifC lk b h itO )
El d ato d r l trc ld d o rst
d a to l[0 ]= le e r() ;
if( S k b h itO )
{
(O p rin .. I s r o p r par.. S d l i r ) g o to x y (4 0 ,1 2 );
p r in tf( « % ls « ,d a to l) ;
}
} w h ile ( !k b h it( ) ) ;
c lr s c r ( ) ;
}
Figura 19.6 Código fuente de la lectura
Figura 19.5 Visualización del dato leído del puerto serial compilado en Turbo C

Curso práctico sobre Microcontroladores m m r,


Teclado 4X4 con salida serial

L IS T A O E M A T E R IA LE S

Cant. Reí. Descripción


1 IC1 M icro con trolad o r P IC 1 6 F 8 4 , g rab ad o
Figura 19.7. Conjunto
1 IC 2 C ircu ito integrado M A X 2 3 2
de componentes 1 Q1 T ran sisto r N P N d e propósito g en e ra l
electrónicos y los 2N3904
accesorios que se 1 D1 L E D rojo d e 5mm
5 C 1 . C 2 , C3, C 4 y C5 C o n d e n s a d o re s d e electrolíticos de
requieren para
10pF - 35V
ensam blar el teclado C 6 y C7 C o n d e n s a d o re s c e rá m ic o s de
4X4 con salida serial. 22 p F - 50V
R1, R 2 ? R3, R 4 ( R5 y R6 R e s is te n c ia s d e 2 (7k - 1/4W
R7 R e s is te n c ia d e 330 - 1/4W
XTAL C ristal d e cu arzo d e 4 M H z
K-167 Circuito im preso C E K I T
P R O G R A M A K-167 D isq u ete c o n e l p ro gram a d e l teclad o
J1 C o n e c to r D B-9 h em b ra p a ra circuito
Con este sencillo proyecto usted podrá leer desde su im preso
J2 C o n e c to r d e tornillo d e 2 pines
computadora personal, y a través del puerto serial (COMI ó
P u ls a d o re s g ra n d e s p ara circuito
C0M2) la decodificación de cada una de las teclas del teclado im p reso d e 4 pines
hexadecimal con configuración m atricial, incluido en la tarjeta C o n e c to r D B-9 h em b ra c o n c a rc a s a
del proyecto. Para e l ensamblaje de la tarjeta tenga en cuenta C o n e c to r D B-9 m a ch o c o n c a rc a s a
B a s e para circuito integrado d e 18 pines
los siguientes pasos:
B a s e p ara integrado d e 16 pines
m C a b le ribbon d e 9 hilos

Paso 1 Paso 4
Instale y suelde los Instale y suelde el
puentes de alambre, cristal de cuarzo de
las resistencias R 1 a 4MHzXTALylos
R7 y las dos bases cinco condensadores
para los circuitos electrolíticos de 10 pF,
integrados IC1 e IC2. C1 a C5.
Figura 19.8 Figura 19.11

Paso 2 Paso 5
Luego instale y Instale y suelde el
suelde el transistor conector serial DB-9
NPN 01 y las 16 para el puerto de la
teclas que computadora y el
conforman el conector de
teclado alimentación del
hexadecimal. circuito J2.
Figura 19.9 Figura 19.12

Paso 3 Paso 6
Instale y suelde el Aspecto final del
diodo LED indicador teclado 4x4 con
de transmisión y los salida serial.
condensadores Figura 19.13
cerámicos C6 y C7.
Figura 19.10

Paso 6. Pruebas finales


Para alimentar el circuito, en el conector tipo tornillo de dos pines, se debe proporcinar un voltaje de 5 voltios. Cada vez que se
oprima una de las teclas el dato es transmitido, el diodo LED se activa momentáneamente y el resultado se puede apreciar en la
pantalla de la computadora. Si presenta alguna anomalía, revise la construcción del cable serial y que el microcontrolador esté
debidamente programado.

m iK iT ,Á, Curso práctico sobre Microcontroladores


PROYECTO 20

ALARMA PARA EL AUTOMOVIL


Este proyecto le permite construir un sistema de segu­
ridad práctico y económico para ser instalado en un
automotor. El microcontrolador le proporciona dos
salidas de alarma para que las utilice como control so­
bre cualquier mecanismo; el límite es su imaginación.

Características
Entrada para sensores de puertas abiertas
Entrada para sensores de puertas aseguradas
Entrada para sensores de automotor funcionando
Salida por medio de dos relés
Diodo LED indicador
M icrocontrolador M otorola
it *
Curso práctico sobre Microcontroladores / / Vs.A.
Alarma para el automóvil

En estos tie m p o s d e in s e g u r id a d c u a l ­ S e n s o r de s eg u ro s
p u esto s
q u ie r p r e c a u c ió n q u e se to m e no está de m ás.
C o m e r c ia l m e n t e se p u e d e n c o n s e g u ir m u ­
ch o s s is te m a s d e a la r m a p a ra a u to m o to r e s ,
q u e se a c tiv a n m e d ia n t e u n a se ñ a l d e rad io ,
cuentan con sensores infrarrojos, de vibración,
etc., y al m o m e n to d e d is p a r a r s e p u e d e n to ­
m a r a c c io n e s c o m o a p a g a r el m o to r, h ac e r
s o n a r la b o c in a , etc.

El d is p o s itiv o q u e p re s e n ta m o s en esta S e n s o r de S e n s o r de
p u e rta a b ie rta e n c e n d id o
o c a s ió n se c a r a c t e r iz a p r i n c i p a l m e n t e p o r
c o n s t i t u ir un s is te m a de a la r m a c o n f ia b le ,
e c o n ó m ic o y fácil de instalar en cu alq u ier vehí­
culo. A p e sa r d e no c o n t a r c o n u n s is te m a de
ra d io p a ra su a c tiv a c ió n y d e s a c tiv a c ió n , pue­
de utilizarse sin riesgo de q u e se genere involun ­
taria o accidentalm ente la señal de alarm a. E n él
e stá n d is p o n ib le s dos s a lid a s p or m e d io de
re lé q u e p u e d e n a d a p ta r s e p a ra e n c e n d e r las
lu c e s, s ir e n a s , p r o d u c ir c h o q u e s e lé c tr ic o s ,
e t c ., es d e c ir , u s te d p u e d e in s t a la r el d is p o ­
s itiv o d e s e g u r id a d q u e d esee.

Funcionamiento
La ta rje ta c u e n ta con u n co n ecto r en el cu al se
in stalan los sensores q u e deben in fo rm a r so­
bre el estado de los d istin to s p u n to s d el a u t o ­
m o to r y o rig in a r las señales q u e, de acu erd o a
ciertas co n d icio n es, d eb en p ro d u c ir la activ a­
ció n y d esactiv ació n de la a la rm a . En la fig u ra
2 0 .1 puede apreciar la ubicación de los sensores P o sib les u b ic a c io n e s d el c irc u ito

en el autom otor al igual que algun os posibles


Figura 20.1 Ubicación de los sensores dentro del vehículo
lugares para instalar la tarjeta.
Esto q u ie r e d e c ir q u e c u a n d o a p a g a el
C u a n d o se desconecta el motor y se a lim e n ­ m o to r, c ie rra las p u e rta s y les c o lo ca el s e g u ­
ta el c ir c u it o , se in ic ia la a c tiv id a d d e la a la r ­ ro, la a la r m a se p o n e en esta d o d e v ig ila n c ia
m a y el d io d o LE D se e n c ie n d e p ara in d ic a r de las p u e rta s y p u e d e a b a n d o n a r t r a n q u ila ­
este estad o d el sistem a. m en te el vehículo . M ie n tra s p erm an ece en este
estad o d e v ig ila n c ia , el c ir c u ito se m a n tie n e
A partir de ese m om ento se deben cum plir p e n d ie n te de los sensores d e las p uertas y hace
dos requisitos más para activar la alarma, ellos son: p a r p a d e a r el LE D .
que las puertas se cierren y se les coloque el segu­
ro. C u an d o estas dos condiciones están dadas, se Recuerde que el circuito no cuenta con un
configura el arm ado del sistema, es decir la puesta sistema de radio para desactivar la alarma. ¿C óm o
en funcionam iento de la alarma. puede desactivarla entonces?

5.4. Curso práctico sobre Microcontroladores


. Proyectos

C
C/3

*o
ro co
=3 o
en •o
03 iS
13
en
C0C
3
m
+
0NP8O6OH89
(aomnoaiNOOoaoiw) io i

.5Éo
ce o
LU>
!<cvj
C 0 Z 3 -

Figura 20 .2 Diagrama
esquem ático del circuito

Curso práctico sobre Microcontroladores S A.


Alarma para el automóvil

En este estado de vigilancia, si se abre una C o m o los d istin to s sensores se a lim e n ta n


puerta, el m icrocontrolador espera un periodo co n la b a te ría de 12 V, p ara in tro d u c ir sus se­
de aproxim adam ente 10 segundos dentro del cual ñales a la tarjeta se h an in stalad o divisores de
debe aparecer u n a señal de encendido del motor voltaje u tiliz an d o resistencias ( R l , R 2, R 4 , R 5,
para desactivar el proceso de generación de la R 7 y R 8 ) y un d io d o Z en er de 5,1 V.
señal de la alarm a. De esta m anera usted hace
cesar el trabajo del circuito y p uede estar tran­ Para d e fin ir m u y bien los voltajes, se ha
q u ilo pues la alarm a no se disparará. a d ic io n a d o u n a resisten cia de p u ll-u p y u n a
c o m p u e rta 7 4 0 4 , c u y a sa lid a lleg a fin alm en te
Si finalizados los 10 segundos no se presentó a las en trad as P T B 7 , P T B 6 y P T B 5 del m ic ro ­
ninguna novedad en el encendido, se genera la sali­ co n tro la d o r M o to ro la 6 8 H C 9 0 8 j k 3 .
da de alarma mediante dos relés. El primero se acti­
va durante un m inuto y el otro durante dos m inu­ Se h a n d efin id o tres p in es de salid a: p or el
tos, luego el proceso se inicia de nuevo. P T D 4 tien e un d io d o LED q u e sirve p ara in ­
d ic a rle los d istin to s estados en q u e se e n c u e n ­
Descripción del circuito tra la a la rm a , co m o se e x p lica rá m ás adelante.
En la figura 2 0 .2 puede apreciar el diagram a es­ Por los p in es P T D 6 y P T D 7 se e n c u e n tra n co ­
quem ático de la alarm a y en la figura 2 0 .3 su guía nectados los dos relés q u e serán las salid as fi­
de montaje, la cual puede tom ar como punto de n ales p ara a c c io n a r diversos d isp o sitivo s de se­
partida para conectar los diversos elementos a la ñ aliz a c ió n o alarm a .
tarjeta. El circuito posee un conector para la en­
trada de la alim entación de 12 V C C provenientes Descripción del programa
de la batería del autom óvil; ellos son regulados y La a la r m a in ic ia su tra b a jo desde el in stan te
filtrados para obtener un nivel de 5 V. m ism o en q u e se a lim e n ta el c irc u ito , p ara lo

Coneccción con la batería

ALARMA PARA E L AUTOMO V I L ( 0 )


JN 4 0 0 4

Relés
8N3904 — de
>71
5MHz salida

Entrada
de los
sensores CU
2N3904

CEKIT

LED indicador del estado


de la alarma
Figura 20.3 Guía de m ontaje de la tarjeta

„ Curso práctico sobre Microcontroladores


Proyectos
Alarma
activada
Configurar
puertos

Retardo de
Cargar 10 segundos
contador

Subrutina de
retardo de 0.1 s
A pagar LED

Encender LED
¿El motor se
Retardo
enciende?

EncenderLED

Desactivar alarma

¿Se abre
la puerta? Ir a la etiqueta 1

Decrem entar
Retardo
contador

alarm a activada

Figura 2 0.4 Procedimiento de activación ¿Contador=0?


Figura 20.5 Diagrama de flujo de la
o habilitación de la alarma para que inicie
detección de la alarma
su trabajo

c u a l se p u ed e a d ic io n a r u n in ­ das y a se g u rad a s. El d ia g r a m a
te rru p to r en serie con la b a te ­ d e flu jo de este p r im e r p ro ­ Encender la
alarm a y los relés
ría, este sencillo sistem a reem ­ ceso lo p o d e m o s a p r e c ia r en
plaza a los sistem as de radio la f ig u r a 2 0 .4 .
d e las a la rm a s co m erciales y es
u n a de las razo n es q u e más A h o r a la a la r m a está a r ­ Retardo 1 minuto
pesa p ara m in im iz a r los cos­ m a d a y p e n d ie n te p ara d e te c ­
tos de este sistem a. tar c u a lq u ie r v is ita n te in d e -
sead o; este estad o lo p o d em o s
Desactivar
La a la r m a e n tr a en su es­ o b serv ar a s im p le vista d e b i­ relé 1
tad o d e a r m a d o o v ig ila n c ia , do a q u e el d io d o LED i n d i ­
c u a n d o d e d e t e c t a q u e el c a d o r se e n c ie n d e y se a p a g a
m o t o r e s t á a p a g a d o y la s c o n t i n u a m e n t e a in te r v a lo s
Ir a la etiqueta 1
p u e rta s se e n c u e n t r a n cerra- cortos (p a rp a d e a ).

Curso práctico sobre Microcontroladores S .A .


Alarma para el automóvil l

En este m o m e n to la la b o r p rin c ip a l del Retardo de


0,1 segundos Cargar registro 2
c ir c u ito es v ig ila r q u e las p u e rta s d el motor
Registro 2
n o sean a b iertas.

A partir del momento en que el circuito detec­


ta que se abre la puerta y u n a persona entra al inte­
Cargar registro 1
rior del vehículo, el microcontrolador cuenta diez
segundos. En ese espacio de tiempo debe introdu­
cir la llave y dar la señal de encendido. En la figura
2 0 .5 puede apreciar el diagrama de flujo del proce­ Decrementar
registro 1
dimiento que sigue el sistema cuando la alarma se
encuentra armada.

O bserve q u e el p ro g ram a p regu n ta por el


estado de la p uerta; si la en cu en tra ab ierta, car­ No
¿Regí = 0 ?
ga un co n tad o r que establecerá los diez segu n ­
dos, p reg u n tad o c ad a 0 , l s p or la lectura del e n ­
cen d id o del motor.

Las rutinas de retardo que se desarrollan en Dcrem entar


registro 2
este proyecto y a las hem os analizado en anterio­
res proyectos. Consisten básicam ente en ciclos
anidados que se repiten un determ inado n ú m e ­
ro de veces hasta que se logra llegar a los tiem pos
deseados. El diagram a de flujo de un retardo de ¿Reg2=0?
este tipo lo podem os apreciar en la figu ra 2 0 .6 .

Los diagramas de flujo anteriores los puede ver


reflejados en el código fuente de la figura 20.7. Este
Retorno
código fue creado y depurado con el entorno W in l-
DE de la empresa Pemicro, y se puede ejecutar so­
Figura 20.6 Diagrama de flujo de la rutina de retardo
bre un microcontrolador Motorola H C 90 8jk3.
* * * * * * * * * * * * * * * * * * * * * * * *

* Software en assembler para el HC08 JK3,


* PROYECTO: ALARMA PARA EL AUTOMOVIL
* PEREIRA-COLOMBIA-2001
* PTB7: Sencor de puertas abiertas
* PTB6: Sensor de puertas aseguradas
* PTB5: Sensor del encendido del automóvil
* * * * * * * * * * * * * * * * * * * * * * * *

Sinclude *j!3regsg.inc’
RAMStart EQU $0080
RomStart EQU SEC00 ;
Vectores EQU SFFDE
RESET.VEC EQU SFFFE
org RAMStart
CONTADOR RMB 1
REGIS1 RMB 1
REGIS2 RMB 1
org RomStart
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

* - DESDE ESTE PUNTO SE INICA LA EJECUCIÓN DEL CÓDIGO*


* DESPUÉS DE UN RESET.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

S .A .
Curso práctico sobre Microcontroladores
Proyectos

INICIO:
RSP
Bset COPD,CONFIGl ; deshabilita el COP (watchdog)
CLRA
CLRX
MOV #$ff,DDRD ; CONFIGURO EL PUERTO D COMO SALIDAS
MOV #$000,DDRB ; CONFIGURO EL PUERTO A COMO ENTRADAS
INI:
CLR PORTD
BSET 4,PORTD
RSP
ESPERA1:
BRCLR 5,P O R T B ,ESPERA1 ; ESPERA QUE SE APAGUE EL MOTOR
; PARA INICIAR EL PROGRAMA
; AL ACTIVARSE, SE ENCIENDE EL LED
BCLR 4 , PORTD
; AHORA DEBE ESPERAR QUE LAS PUERTAS

ESPERA2:
BRSET 6,P0RTB,ESPERA2
BSET 4 , PORTD
; AHORA HAY QUE ESPERAR QUE LA PUERTA
; Y HAGA PARPADEAR EL LED
ESPERA3:
RSP
BRCLR 7,PORTB,RETIOS
BCLR 4 , PORTD ; APAGA EL LED
JSR RETA01 ; RETARDO DE 0,5 SEGUNDOS
JSR RETA01
JSR RETA01
JSR RETA01
BSET 4,PORTD ; ENCIENDO EL LED
BRCLR 7,PORTB,RETIOS
JSR RETA01
JSR RETA01
JSR RETA01
BRA ESPERA3
RETIOS:
MOV #$64,CONTADOR ; 100 VECES .1 SEG. = 10 SEG
LAZO10 JSR RETA01
BRCLR 5,PORTB,INI ;
DBNZ CONTADOR,LAZO10
BSET 6,PORTD ; ACTIVAR LA ALARMA
BSET 7,PORTD
BCLR 4 , PORTD
JSR RET20S ; RETARDO DE 1 MINUTO
JSR RET20S
JSR RET20S
BCLR 6 , PORTD
JSR RET20S ; RETARDO DE 1 MINUTO
JSR RET20S
JSR RET20S
BCLR 7,PORTD
BSET 4,PORTD
BRA INI
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

* RETARDO- SUBRUTINA DE RETARDO POR SOFTWARE *


*********************************** * * * * * * * * * * * * * * * * * * * * * * * * * * *

RETA01
LDA #128T ; RETARDO DE 0.1 S
ET2 CLRX
ET3 DECX
BNE ET3
DECA
BNE ET2
RTS
RET20S
LDA #20T
STA REGIS1
ETl JSR RETA01
DEC REGIS1
BNE ETl
RTS
Org RESET.VEC
Dw INICIO ;al darse reset salta a Start
END

Figura 2 0 .7 Código fuente del proyecto

Curso práctico sobre Microcontroladores S .A .


Alarma para el automóvil

Ensamblaje del proyecto U S T A D E M A T E R IA LE S

■ Cant. Reí. Descripción


1 IC1 Microcontrolador 68HC908JK3, programado
Figura 2 0 .8 Conjunto 1 IC2 Circuito integrado in verso r 7404
de componentes 1 REG 1 R e g u la d o r fijo d e +5V -1 A , 7805
2 Q1 y Q2 T ra n sisto re s d e propósito g en e ra l N P N .
electrónicos y los
2N3904
accesorios que se 3 D 2 a D4 D iodos Z e n e r de 5 .1 V a 1W
requieren para 3 D1. D 5 y D6 D iodos rectificad o res d e propósito
ensam blar la alarma g en e ra l 1N4004
1 L ED 1 D iodo L E D rojo d e 5mm
para el automóvil.
1 C1 Condensador electrolítico de 10OOuF - 25V
4 C 2 a C5 Condensadores cerámicos de 0.1 u F - 50V
2 C 6 y C7 C ondensadores cerám icos d e 22pF - 50V
1 XT1 C ristal d e quarzo d e 5 M H z
3 R1, R4 y R7 R e s is te n c ia s d e 820 - 1 W
3 R2, R 5 y R8 R e s is te n c ia s de 820 - 1/4W
Instalando este sencillo circuito dentro de su vehículo, usted 5 R3, R 6 , R9, R e s is te n c ia s d e 1k - 1/4W
1 R10 R e s is te n c ia d e 10M - 1/4W
podrá protegerlo contra robo, y vigilar su acceso a través de las
2 R 1 2 y R14 R e s is te n c ia s d e 4 . 7 k - 1 / 4 W
puertas por medio de tres sensores. También podrá bloquear el 1 R15 R e s is te n c ia d e 330 - 1/4W
encendido del m otor con un contacto normalmente abierto o 1 R16 R e s is te n c ia d e 10k - 1/4W
normalmente cerrado, con capacidad de 10A disponible en la 2 K1 y K 2 R e lé s d e 1 2 V C C
1 K-333 Circuito im preso C E K I T
salida de la alarma. Para el ensamblaje de la tarjeta tenga en
2 C o n e c to re s d e tornillo d e 3 pines
cuenta los siguientes pasos: 3 C o n e c to re s d e tornillo d e 2 pines
1 B a s e para circuito integrado d e 20 pines
1 B a s e para circuito integrado d e 14 pines

Paso 1 Paso 4
Instale y suelde los Instale y suelde el
puentes de alambre, regulador de voltaje
las trece resistencias integrado de +5V
de 1/4W, los diodos REG1, y todos los
zener D2, D 3yD 4ybs conectores de
diodos rectificadores entrada y salida de
D1,D5yD6. la alarma.
Figura 2 0.9 Figura 20.12

Paso 2
Luego instale y Paso 5
suelde las bases Instale y suelde los
para los circuitos condensadores
integrados IC1 e cerámicos C2 a C7,
IC 2, y las el cristal de cuarzo
resistencias de 1 W de 5MHz XT1, y los
R1,R 4yR 7. dos relés de salida
Figura 20.10 K1 y K2.
Figura 20.13

Paso 3
Instale y suelde el Paso 6
diodo LED indicador Aspecto final del circuito
de salida y los de la alarma luego de
transistores NPN de soldar el condensador
propósito general electrolítico C1 y colocar
Q1 y 02. los circuitos integrados
Figura 20.11 ') C E K IT en sus bases.
Figura 20.14

Paso 6. Pruebas finales


Para alimentar el circuito utilice el conector tipo tornillo de dos pines que se ve en la parte superior de la tarjeta. Conecte en este
par de puntos los terminales positivo y negativo de la batería, teniendo cuidado en conectar con la polaridad correcta como se
indica en el screen de la tarjeta. Los sensores pueden funcionar con el mismo voltaje de la batería y se asume que, cuando un
sensor se cierra, al circuito le entran 12 V, y cuando el sensor está abierto a la entrada de la tarjeta se tienen 0 V.

i 4
184 É J M Ifá H JTs jí Curso práctico sobre Microcontroladores
PROYECTO 21

CONTROL l/O DE POTENCIA POR EL


PUERTO SERIAL
C o n stru y a este interesante proyecto para ejercer el mo-
nitoreo d e entradas y el control de salidas de p o ten cia, a
través del puerto serial de la co m p u tad o ra.

C a ra c te rís tic a s del sis te m a electró n ico


• C u a tro salidas p o r relevo d e 5 am perios
• C u a tro entradas de 2 4 - 6 0 V C C ó 5 0 - 2 2 0 V C A ,
aisladas p o r o ptoacoplado r
• D iodos LED indicadores del estado de las entradas
y las salidas
• C a ja m etálica para su instalación en la pared
• P erm ite la en trad a y salida de cables p o r tuberías
• C o n tro l del sistem a por co m u n ic acio n es R S -2 3 2
• A lim e n ta c ió n de 110 V C A ó 2 2 0 V C A

Curso práctico sobre Microcontroladores


Control 1/0 de potencia por el puerto serial

Características del programa M e d ia n te el p ro g ra m a de m o n ito reo , es­


• Program ación de secuencias autom áticas crito en el le n g u a je de p ro g ra m a c ió n V isual
• C ontrol y m onitoreo por el puerto serial Basic, es p o sib le ver cu áles en trad as se e n c u e n ­
• Interfaz bajo W in d o w s tran activas, y a la vez, co n o cer el estad o de las
• Control m anual por medio de clics en el ratón salidas q u e la c o m p u ta d o ra h aya o rd e n a d o a c ­
• Lenguaje de programación parecido al de los PLC tivar. C o n este m ism o p ro g ra m a , co n sólo h a ­
• N o esclaviza la P C m ien tras ejerce el control cer clic sobre u n a de las cu atro salid as, usted
de I/O o rd e n a rá a la ta r je ta e le c tr ó n ic a , q u e p ued e
estar in stalad a en un sitio d iferen te al de la PC ,
El sistema consta de: p ara q u e activ e o d esactive c u a lq u ie r a de los
• Tarjeta electrónica de entradas y salidas cu a tro relevos del circu ito .
• Programa de m onitoreo y program ación de
secuencias autom áticas La distancia entre la tarjeta electrónica y la
P C puede alcanzar hasta los 2 0 0 metros, aunque
El m ódulo de control de entradas y salidas este valor cam b ia notablem ente de acuerdo al
de potencia por puerto serial es un sistema elec­ ruido eléctrico y al ruido m agnético existentes
trónico que p ued e conectarse a cu alq u ier co m ­ en el lugar, a la calidad del cable usado para la
p utado ra tipo PC . En la figu ra 2 1 .1 se m uestra co m unicación, al tipo de conducto usado para
la form a como se conecta el dispositivo de con­ dicho cable, y a m uchos más parámetros que es
trol a una PC. difícil mencionarlos.

Por m edio de este sistema es posible contro­ Funcionamiento


lar electroválvulas, relevos de m ayo r potencia, El sistem a electrónico está co m p u esto de varios
contactores para activar motores, luces, paso de bloques, tal co m o lo m uestra la fig u r a 2 1 .2 .
fluidos, hornos, y, en fin, cualquier dispositivo A u n q u e todos los bloques son indispensables,
eléctrico o electrónico que pueda ser m anejado a el corazón del sistem a es el m icro con trolador
través de contactos de relevo de 5 amperios. P IC , y a que es este circu ito integrado quien se
c o m u n ic a con la co m p u tad o ra, q u ien detecta
Adicionalmente, el control de dichos relevos el estado de las entradas y q u ien ordena el en ­
puede condicionarse a determinados eventos que cen d id o de los relevos d e las salidas. Veamos a
pueden ser capturados por sensores que suminis­ co n tin u a c ió n cóm o fu ncio na c ad a una de las
tren señales ON/OFF, tales como reflectores ópti­ secciones del proyecto.
cos, interruptores mecánicos, magnéticos o capaci­
tivos, sensores ultrasónicos, etc. La única condición Puente de poder. Este bloque es el que se encarga de
que deben tener los sensores, para que el módulo I/O suministrar los niveles de voltajes apropiados, tanto
pueda capturarlos en sus entradas, es que entreguen para los circuitos digitales, como para los relevos que
un voltaje de C C desde 20 hasta 50 voltios, o un usan voltajes diferentes. En la figura 2 1 .3 puede ver
voltaje de C A desde 60 hasta 220 voltios. el diagrama esquemático de la fuente de voltaje usa-

Cable de comunicación

Puerto serial Entrada


M ódulo I/0
R S -2 3 2 serial K -1 9 9
(COM 1 ó COM 2) Salida
E

Figura 21.1 Conexión entre el dispositivo de control y una computadora tipo PC

Curso práctico sobre Microcontroladores


1
Proyectos

F u e n te de
poder

4 s a lid a s
p o r relev o
S is te m a
D atos desde de
y h a c ia la PC p ro ceso
i 4 e n tra d a s
o p to a is la d a s

Figura 21.2 Diagrama de bloques del sistema electrónico de control

15-18V +5V
CA/CC

D1 - D4 = 1N4004

Figura 21.3 Diagrama esquemático de la fuente de poder

da para el circuito. Solamente se d o ra, u n o com o receptor y el te: capturar los datos de las cua­
hace uso de 5 voltios para alimen­ otro para la tran sm isió n de d a ­ tro entradas, enviar las señales
tar todos los circuitos, a excepción tos, respectivam ente. de encendido hacia las cuatro
de los relevos que usan 12 voltios salidas por relevo, y la recepción
para activar sus bobinas. Las funciones d el m icro ­ y transmisión de los datos des­
controlador son, específicamen- de y hacia la PC , correspondien­
S is te m a de co n tro l. El sistem a tes a los estados de las cuatro
de control de entradas y sali­ salidas y de las cuatro entradas.
das, y de las co m u n icacio n es
está a cargo del I C 1, u n m icro­
co ntro lado r PIC 16F 84. O b ­
s e r v e en la f i g u r a 2 1 . 4 el
d ia g ra m a esquem ático de esta
secció n del p ro yecto . C o m o
p uede ver, los cuatro prim eros
bits del puerto A han sido u ti­
lizados para las salidas, m ie n ­
tras que las entradas van hacia
el puerto B a sus 4 últim os bits.
De este m ism o puerto, los bits
0 y 1 se han d iseñado de tal
m anera que sirvan para las co­
m u n icacio n es con la co m p u ta- Figura 21.4 Diagrama esquemático del sistema de control con microcontrolador PIC16f84

á 4
Curso práctico sobre Microcontroladores W Í1
Control 1/0 de potencia por el puerto serial

CNJ
en Cable de com unicación
Datos desde el
ub PC K -1 9 9
cc m icrocontrolador
dro o RX 2 ■ 2 TX
Datos hacia el
£ Croi­ m icrocontrolador TX 3 • 3 RX
o |

<D<D GND 5 ■— 9
5 GND
4-
O)
ro 6- 1

8 7 ‘ 1*
8 - 11

C13
1 |iF tant
Figura 21.5 Diagrama esquemático de la
sección de comunicación serial RS-232

S is te m a de co m u n ic a c io n e s. Para p o d er enviar De otra parte, el pin 8 recibe los voltajes co­


y recibir datos h acia y desde la co m p u tad o ra, la rrespondientes a los datos enviados desde la P C
tarjeta electrón ica utiliza un p equ eñ o m ó d u lo hacia el sistema de control, y por el pin 9 entrega
de interfaz, el cual ajusta los niveles de voltaje tales datos en formato digital, aptos para ser leí­
d ig ital a los necesarios en u n a co m u n icació n se­ dos por el microcontrolador. A la entrada de da­
rial R S -2 3 2 . O bserve en la figu ra 2 1 .3 el diagra­ tos provenientes de la com putadora, tam bién se
m a esquem ático del sistema de interfaz R S -2 3 2 . ha instalado el diodo LED Rx para indicar el es­
tado de la línea de recepción de datos.
El circ u ito in teg rad o I C 3 to m a p or el pin
10 los datos d ig ita le s p ro ven ien tes del m ic ro ­ Entradas. El sistema consta de cuatro entradas que
co n tro la d o r y los en vía p o r el p in 7 h a c ia el se activan por medio de los voltajes C A o C C des­
co n ecto r serial. A este m is m o p in se ha co n ec­ critos anteriormente. C a d a una de ellas está aisla­
tad o el d io d o LED T x , q u e sirve p ara verificar da m ediante optoacopladores que protegen el res­
si el sistem a está re a lm e n te e n v ia n d o in ío rm a - to de los circuitos y a la com putadora de sobre
ción h ac ia la c o m p u ta d o ra . impulsos de energía o de equivocaciones en el ni-

+5V •

4N 25

Figura 2 1 .6 Diagrama esquemático de una de las entradas


£ *
188 ¡ E ¡ I j r s t . Curso práctico sobre Microcontroladores
Proyectos

vel de voltaje aplicado a dichas aislar eléctricamente el circuito Este transistor entrega por m e­
entradas. Vea en la figura 2 1 .6 de control y el dispositivo que se dio de su colector el nivel de tie­
el diagram a esquemático de una vaya a controlar. Los contactos rra, con el cual enciende el LED
de las entradas. Las otras tres son de dichos relevos soportan una 0 1, que indica que dicha salida
e x a c ta m e n te iguales. Veamos corriente de aproximadamente 5 se encuentra activada. Este LED
como funciona la entrada I N 1. amperios, suficiente para activar obtiene el nivel positivo a través
o tros sistem as co m o los que de la resistencia R 2 9 . C o n ese
C u a lq u ie r v o lta je q u e se mencionamos anteriormente. m ism o nivel de tierra se energi-
aplique en los bornes de en tra­ za el relevo por uno de los ter­
da se reducirá a 12 voltios, gra­ Para cargas superiores debe­ minales de su bobina. El otro
cias a las resistencias R1 y R 2 y rán usarse relevos de m ayor po­ extremo ya se encuentra conec­
al dio do Zener D Z l . El diodo tencia, activados por los relevos tado a 12 voltios directamente,
D5 se utiliza para que deje pa­ de la tarjeta; o contactores, para de tal forma que el transistor sólo
sar únicam ente la sección posi­ el caso del control de motores o necesita su m in istrarle el nivel
tiva, en caso de que se aplique cargas de gran consum o de co­ bajo del voltaje.
corriente alterna. El condensa­ rriente. Vea en la fig u ra 2 1 .7 el
dor C 7 se encarga de suavizar d iag ram a esquem ático de una A la bobina se conectó el
u n p o co la c u rv a de v o lta je de las salidas. Las otras tres son diodo D 9 en configuración a n ­
cuando se aplica C A . Luego de ex actam en te iguales. O bserve tiparalelo, cuya función es e li­
haber reducido el voltaje a 12 como funciona la salida O L 'T 1. m in ar los picos de sobrevoltaje
voltios, por m edio de la resis­ que dicha bobina genera cuan­
tencia R9 hacemos circular una La señal de control, enviada do se desenergiza. Los bornes de
p equeñ a corriente a través del por el microcontrolador, es lle­ la salida corresponden a los con­
optoacoplador. H asta este p u n ­ vada a la base del transistor T R 5 tactos N O (norm alm ente abier­
to e x isten c o n e x io n es físicas por m edio de la resistencia R25. tos) del relevo.
entre el circuito y las entradas.
Interrupción
cuando se reciben
datos seriales de
Al otro lado del optoaco­ Inicio la PC
p lad o r, la p e q u e ñ a co rrien te
entregada por su transistor es
a m p lif ic a d a p or el tran sisto r
i
Recibir datos del
puerto serial
externo T R l , que a su vez hace Leer el estado
de las entradas
encender el LED indicador del
estado de la entrada correspon­ Enviar datos a las
diente. La señal es llevada lue­ cuatro salidas

go a u n a c o m p u e rta N A N D
schmitt trigger, que, ayudada por ¿Alguna No
i
Leer el estado
entrada ha sido
la resistencia R 1 9 y el co n d en ­ alterada?
de las entradas
sador C 6 , corrige los niveles de
la señal para evitar falsos disp a­ Si I
Enviar datos al
ros y para entregar voltajes d i­ puerto serial
gitales, que luego son llevados
Enviar datos al
hacia el microcontrolador. puerto serial
t

Salidas. Las cuatro salidas son a


través de relevos con el fin de Figura 2 1 .7 Diagrama de flujo del programa del microcontrolador

Curso práctico sobre Microcontroladores S.JÍ.


Control 1/0 de potencia por el puerto serial

Programa del microcontolador escoge el puerto equivocado, es posible que el pro­


El diagram a de flujo del program a del microcon­ gram a muestre un error o simplemente que la tar­
trolador P C 1 6 F 8 4 aparece en la figura 2 1 .7 . En jeta no responda a una orden enviada por la PC.
la secuencia de envío de datos, el microcontrola­ Para verificar si la conexión es correcta, bastará con
dor sim plem ente lee el estado de cada una de las ordenar que una de las salidas cambie de estado.
entradas externas, las almacena en un registro y
las m anda secuencialmente en formato serial. Para M o d o m anual. En este programa, como acaba­
la recepción de datos desde la com putadora, se ha mos de mencionar, se muestra el estado de cada
utilizado la capacidad del PIC de generar u n a in­ una de las entradas y se puede activar por medio
terrupción externa (IN T) por el pin RBO. Dentro de un clic del ratón cada una de las salidas. Sirve
del respectivo servicio de interrupción se arm a el para comprobar el funcionamiento correcto de la
dato leído y se envía a los pines de salida. tarjeta electrónica y de la comunicación de la mis­
m a con el puerto serial de la com putadora. O b­
Programas en la computadora serve en la figura 2 1 .8 la ventana del program a en
La tarjeta de control debe estar perm anentem ente Visual Basic. Se debe tener habilitada la herramien­
conectada a la com putadora. El m anejo de las ta de comunicaciones de Microsoft destinada al
señales de entrada, así com o el de las señales de manejo de los puertos seriales (M S C O M M ).
salida, puede ser en forma m anual o en forma
autom ática. En el prim er caso, solam ente pode­ M odo de edición. Éste es el primer paso para el d e ­
m os estar observando el estado de las entradas y sarrollo de un programa que ejecuta una secuencia
con el ratón podem os activar o desactivar cuales­ automática que dependa del estado de las entradas,
quiera de las cuatro salidas. de un determinado tiempo que haya transcurrido, y
en fin, de una serie de circunstancias que hagan que
En el manejo automático, la computadora uti­ « K 1 99 Control de l/O I R ] E3

liza un programa que ejecuta otro programa deter­


K-199 C o n tro l M an u al d e l/O
minado que haya escrito el usuario, de acuerdo a
las necesidades del proceso que desea controlar. El
desarrollo de la ejecución de una secuencia auto­
mática, a cargo de la computadora, tiene dos pasos:
la escritura o edición del programa y la ejecución
de dicho programa. Cualquiera de las opciones re­
quiere de una previa conexión de la tarjeta electró­ Figura 21.8 Programa para el monitoreo de las entradas y el
control manual de las salidas
nica de control, con el puerto serial de la PC.
K-199 Coníiol de l/O pirac
¿ícfrrvo
Establecimiento de la comunicación K-199 Contrctí A uto m ático d e l/O
P a r á m e tio s C o r ta d o r e s

Las com putadoras poseen generalm ente uno o _______ Semáforo txt , . , V a ta
ST1-NL1
ST5-NL1
dos puertos seriales externos, llam ados C O M 1 y SL1-NIS
ST6-NT1 AND T5
ST2-NT1 AND T5
C O M 2 . Al ejecutar cualquiera de los programas, ST3-NT2 AND T6
ST4-NT2 AND Tb
ST1-NTS AND N T 3 AND NTb
que se describen a co ntin uació n, debe conectar STS-T1
LB1-T3 A N D NT4 T * r r c o d e T e m p c s c a d o ie s
01-TI T sw i R e t a d o | m s|
físicamente la tarjeta con uno de estos puertos 02-T2 O R LBl
03-T3 p ^ I11X1X1
END
que se encuentre disponible. Luego o p rim a el ü E n tra d a s

botón C onectar para enlazar el program a con el 1 2

oooo
3 4

puerto seleccionado. S a fad as

1 2 3 4

A continuación debe indicar por cuál de los


puertos se ha hecho la conexión. Si en este punto Figura 21.9 Programación de secuencias autom áticas

,t¡ Curso práctico sobre Microcontroladores


I Proyectos

las salidas se comporten de una o Programación de las • N O T ( N ) : e q u i v a l e a la


de otra manera. En la figura 21.9 secuencias automáticas m ism a o p eració n N O T de
puede ver la ventana de edición Las variables representan un es­ la lógica booleana, donde el
del programa. Dicha ventana tie­ tado digital durante el desarro­ r e s u l t a d o s e r á el e s ta d o
ne dos botones para ejecutar o de­ llo de cualquier program a de se­ co n trario al de la variable.
tener el programa que se encuen­ cuencia automática. C ad a varia­ E jem plo:
tra en la sección de edición. ble posee un índice que la iden­
tifica, por ejem plo II señala la 0 4 = N 12. La salida cuatro es
M ás adelante veremos como entrada núm ero 1 y T 8 el tem- igual a la entrada dos negada,
escribir un program a en la ven­ porizador núm ero 8. si dicha entrada vale 0, el re­
tana de edición. C uando haya fi­ sultado será 1 y viceversa.
nalizado la escritura del progra­ De igual m anera, a cada va­
ma, éste podrá ser almacenado riable se le puede asignar un va­ Variables
en el disco duro de la PC (o en lor de acuerdo a determinadas C o n o zcam o s las diferentes va­
cualquier otra unidad de alm a­ operaciones booleanas. Veamos riables p e rm itid a s en la p ro ­
cenamiento), para que sea llama­ primero cuales son estas opera­ g ra m a c ió n y la form a de u t ili­
do posteriormente por el progra­ ciones, y luego veremos las va­ zarlas. R eco rd em o s q u e cada
m a que lo ejecuta en modo Run. riables y la forma de utilizarlas. u n a de ellas va a c o m p a ñ a d a de
un ín d ic e q u e la id en tific a, el
M odo de ejecución (Run). Lue­ Operaciones cual va de 1 a 10. T am b ién se
go de establecer la comunicación Las operaciones básicas que se debe te n er en c u e n ta q u e a l­
con el dispositivo electrónico de pueden utilizar en la program a­ g u n as variab les van re la c io n a ­
control, deberá cargarse una se­ ción son: das con ciertas in stru ccio n es
cuencia previamente archivada en y co n cie rto s p a rá m e tro s de
la computadora durante el proce­ • A N D : equivale a la m ism a co n fig u ració n .
so de Edición. Una vez que sea lla­ operación A N D de la lógica
mado uno de los programas, in­ booleana, donde el resulta­ • E ntradas (I). Desde II has­
mediatamente empezarán a ejecu­ do será 1 si a m b as variables ta 14 representan el estado de
tarse las órdenes que éste suminis­ son iguales a 1. Ejemplo: las cuatro entradas de la tar­
tre luego del procesamiento auto­ jeta electrónica. Las dem ás
mático. En este programa, figura 0 4 = 12 A N D 13. La salida (15.. 110), au n q u e no repre­
21.10, no se pueden ver los esta­ cuatro será 1 si las entradas sentan n in g u n a entrada físi­
dos de las variables ni se puede dos y tres valen 1, si no, el ca, pueden utilizarse como
modificar el contenido de las ins­ resultado será 0. posiciones de m em oria.
trucciones. Para ello es necesario
volver al modo de Edición. • O R : E qu iv ale a la m ism a Instrucción I
« K 199 Contiol d e 1/0 operación O R de la lógica P arám etro s N inguno
&K*T>0

K - l 9 9 C o n t r o l A u t o m á t i c o d e 1 /0
booleana, donde el resultado
M odo RUN
será 1 si cualquiera de las dos Ejemplos:
■ S e m é lo r o .tx t
Cc n e c t« |
variables vale 1. Ejemplo: 0 2 = 14. La salida dos es
EnHadíJ
1 2 3
oooo
4
igual al estado de la entrada
S * U : 0 4 = 12 O R 13. La salida cuatro, figura 2 1 .1 1 .
1 2 3 4

O O iO cuatro será 1 si cu alq u iera 0 3 = 14 A N D N 12. La sali­



de las e n tra d a s dos y tres da tres es igual a la operación
vale 1, si am b as son 0, el A N D entre la entrada cua­
Figura 21.1 0 Ejecución de un program a
de secuencia autom ática resultado será 0. tro y la entrada dos negada.

Curso práctico sobre Microcontroladores 0 J f¡ A ^ § 1 9 1 £


V eam os las in stru ccio n es p ara a c tiv a r y des­
i4 n i l a ctiv ar:
Set latch (SL ): activa el cerrojo (estad o = l).
Perm anece en 1 hasta que se c u m p la u n a ins­
0 2 = 14 trucción de reset latch.

Figura 21 .1 1 Funcionamiento de las instrucciones de


Reset latch (RL). D esactiva el cerrojo (esta-
entradas y salidas
do=0). Perm anece en O hasta q u e una co n ­
Salidas (O ). Desde O I hasta 0 4 , represen­ d ició n d e set latch se cu m p la.
tan el estado de las cu atro salidas, es decir, si
0 2 es ig u a l a 1, el relevo n ú m ero dos estará Ejemplos (ver figura 2 1 .1 2 ):
activado; pero si vale O, el relevo estará des­ SL4 = 13. El cerrojo cuatro se activa cuando
activado. Las dem ás salidas ( 0 5 . . 0 10) p u e­ la entrada tres sea uno.
den usarse com o posiciones de m em oria. RL4 = 12. El cerrojo cuatro se desactiva cu an ­
do la entrada dos sea uno.
Instrucción O 0 3 = L 4 . La salid a tres es ig u a l al estado del
Parám etros Ninguno cerrojo cuatro.

Ejemplos: • T e m p o riz a d o re s(T ). Los te m p o riz a d o re s


0 2 = 14 . La salida tres es igual al estado de la (.timers ) ta m b ié n son posicio nes de m e m o ­
entrada uno. ria q u e d e p e n d e n de u n lapso d e tiem p o d e ­
0 2 = 11 O R N 0 1. La salida dos es igual a la te rm in a d o . Por e je m p lo , si se activ a T i y
operación O R entre el estado de la entrada está p ro g ram ad o p ara 5 se g u n d o s, su valor
uno y el estado de la salida uno negada. será 1 m ie n tra s tra n scu rra d ich o tie m p o , y
será O c u a n d o fin alicen los 5 segundos.
Cerrojos (L). Los cerrojos (la tc h s ) son posi­
ciones de m em o ria q u e cuando se activan (es­ En to ta l se h a n e s ta b le c id o 10 m ó d u lo s
tado = 1), perm anecen así hasta que otra con­ te m p o riz a d o re s, los cu a le s recib en la d e n o ­
dición diferente a la de activación las desacti­ m in a c ió n d e sd e T i h asta T IO , d o n d e c ad a
ve. Se com portan de igual m anera a los cerro­ u n o d e ello s tie n e u n tie m p o d e p r o g r a m a ­
jos utilizados en electrónica digital. Se tienen c ió n en m ilis e g u n d o s , s ie n d o su m á x im o
10 cerrojos enum erados desde L1 hasta LIO. v a lo r 6 5 5 3 6 (65 se g u n d o s).

Instrucciones L SL RL Instrucciones T ST RT
Parám etros N inguno Parám etros T iem p o (ms)

Reset
Set
SL4 = 13 12
RL4 = 12 /
0 3 = L4 13 H
L4
Figura 21.12
Comportamiento de las
03 instrucciones relacionadas
con el cerrojo

„ Curso práctico sobre Microcontroladores


Proyectos

Poseen dos instrucciones para • Etiquetas (LB). Las etiquetas Instrucciones Parámetros
activar y desactivar. {labels), son posiciones de C L ím ite superior del contador
m em oria que se usan para fa­ CU L ím ite in ferio r del co n tad o r
S et tim e r ( S T ) : activa el te m ­ c ilita r las o peracion es con CD V alo r a c tu a l d el c o n ta d o r
porizador (e stad o = l). Su valor otras variables del programa. RC
será 1 hasta q u e se c u m p la el También son diez etiquetas,
tie m p o p r o g r a m a d o o h asta desde LB1 hasta LB10. C a d a contador tiene dos
q u e se de u n a in stru c ció n de variables diferentes que pueden
reset timer. Instrucciones LB estar en 1 ó en 0:
Parám etros N in gun o
R eset tim er (R T ): desactiva el C U {Counter up ): es el estado
t e m p o r i z a d o r ( e s t a d o =0 ) . Ejemplos con etiquetas: del co n tad o r con referencia al
O b lig a a fin a liz a r el tie m p o LB6= 14 A N D 13. La e t iq u e ­ lím ite superior del m ism o. Por
del tem p o rizad o r volviendo su ta 6 es ig u a l a la o p e ra c ió n ejem p lo , si el lím ite superior
estado a 0. Si el te m p o riz ad o r A N D en tre la e n tra d a cuatro del co ntad o r n úm ero dos es 50
no está activo, esta instrucción y la e n tra d a tres. y el valor actu al está en 4 9 , el
no tie n e efecto. 0 2 = L B 6 . La salida dos es igual estado de C U 2 es 0. Pero si el
al estado de la etiqueta 6. valor actu al es 51, el estado de
Ejemplos: ver figura 21.13. C U 2 será 1 y a q u e es m a y o r al
Si el tem po rizado r {timer) cero • Contadores (C U y C D ). Los lím ite superior.
está p ro gram ad o para 5 segu n ­ contadores se utilizan para
dos: contabilizar pulsos en las en­ CD {Counter down)\ es el es­
S T 4 = 13. El timer cuatro se acti­ tradas digitales o sucesos con tado del co n tad o r con referen­
va cuando el estado la entrada tres las dem ás variables. Son p o ­ cia al lím ite inferior del m is­
sea 1. Empieza la cuenta del tiem­ siciones de m em o ria que va­ mo. Por ejem plo, si el lím ite in­
po. len 0 ó 1, de acuerdo al va­ ferior del contador núm ero dos
R T 4 = 12. El tim er cuatro se lor de una cuenta. Las cu en ­ es 30 y el valor actu al está en
desactiva cuando la entrada dos tas pueden ser ascendentes o 2 5 , el estado de C U 2 es 1 ya
sea 1. descendentes y se efectúan que es m e n o r al lím ite inferior.
0 3 = T 4 . La salida tres es igual con los flancos de subida de Pero si el valor actu al es 3 1 , el
al estado del tim er cuatro. la señal involucrada. estado de C U 2 será 1.

Set Set
ST4 = 13
RT4 = 12 13
0 3 = T4 Reset

12

T4-

03
Figura 21.1 3 Comportamiento
5 seg. --------- 1 ( - > 5 segH
de las instrucciones
Si el tim e r 4 está program ado para 5 segundos relacionadas con los
temporizadores
T
Curso práctico sobre Microcontroladores
Control 1/0 de potencia por el puerto serial

T a m b ié n existe u n a in stru c ció n q u e hace figurar los parámetros que tendrán los temporiza-
referen cia a los co n tad o res, se trata del reset dores y los contadores, seleccionando los tiempos,
cou n ter. los límites superiores y los límites inferiores.

R C {Reset cou n ter). Esta instrucción hace que el Para ilu strar m ejor el fu n cio n am ien to de
valor actual del contador se inicie en cero. Es nuestro sistema, a c o n tin u a c ió n se m u estra un
utilizada especialm ente luego de que se ha c u m ­ p ro g ra m a q u e e m u la el fu n c io n a m ie n to de un
plido un lím ite superior o un lím ite inferior. sem áforo de tráfico vehicu lar.

Ejemplos con contadores: • Program a p ara el control de luces en un


CU 2= 14. Increm enta el contador 2 cada vez que semáforo. Para este program a fueron necesarios
la entrada cuatro pasa de 0 a 1. Si el valor actual cinco temporizadores, los cuales fueron configu­
de C 2 es 2 5 , cuando la en trad a cuatro pase de 0 rados con los siguientes tiempos:
a 1, el valor actual de C 2 será 26.
T I: 10000 (10 s)
C D 2= 13. D ecrem enta el contador dos cada vez T2: 2 0 0 0 (2 s)
que la entrada tres pasa de 0 a 1. Si el valor actual T3: 1 0 0 0 0 (1 0 s)
de C 2 es 2 5 , cuando la en trad a tres pase de 0 a 1, T4: 8 0 0 0 (8 s)
el valor actual de C 2 será 24. T5: 1 2 0 0 0 (12 s)
T6: 4 0 0 0 (4 s)
0 2 = C U 5 . L a salid a dos es ig u a l al estado del
c o n tad o r 5 co n respecto al lím ite superior. Si Las tres luces del semáforo se asignaron de la
el v alo r ac tu a l d e C 5 es 50 y el lím ite su p erio r siguiente manera:
d el m ism o está c o n fig u ra d o en 4 0 , el estado
de C U 5 será 1. Luz verde: salida 1 ( 0 1)
Luz am arilla: salida 2 ( 0 2 )
0 2 = C D 5 . La sa lid a dos es ig u a l al estado del Luz roja: salida 3 ( 0 3 )
c o n ta d o r 5 co n respecto al lím ite inferior. Si el
Figura 21.14
v alo r ac tu a l de C 5 es 50 y el lím ite in fe rio r del
Diagrama de
m ism o está c o n fig u ra d o en 5 1 , el estado de 5 = 12 [ tiempos para el
C D 5 será 1. IB IM T b programa del
T2 = 2 | _ l
manejo de las
T 3 = 10
T4 = 8 S |
luces de un
RC5= 12. El valor actual del contador cinco se semáforo
t--------- 1—I—t--------1—r
iniciará en 0 cuando la en trad a dos sea 1. 5 10 12 14 2 0 22

Estructura de un programa ST1 = N L1


U n program a está hecho a partir de líneas de ins­ ST5 = N L1
SL1 = N 15
trucciones. La co m p utad o ra ejecuta línea a línea ST6 = N T I AND T5
em pezando por la prim era y finalizando con la ST2 = N T I AND T5
ST3 = N T 2 AND T 6
que tenga la instrucción END. Luego repite el ST4 = N T 2 AND T 6
ciclo nuevam ente. Si u n a línea tiene más de dos ST1 = N T 5 AND N T 3 AND N T 6
ST5 = TI
instrucciones, cada una de ellas se ejecutará en LB 1 = T 3 AND N T 4
01 = TI
form a secuencial. 02 = T 2 0R LB1
03 = T3
END
Antes de empezar a escribir el programa, de
determinada secuencia en nuestro sistema, debe con­ Figura 21.15 Programa para un semáforo a partir de temporizadores

*
H TTs ». Curso práctico sobre Microcontroladores
Proyectos

Desde el —T "l_
m icrocontrolador *

Relevo 12V

Figura 21.1 6 Diagrama esquemático de una de las salidas

A cada luz se le asigna un tiem ­ g u ra 2 1 .1 5 , el listado del pro­ digital para activar circuitos de
po de la siguiente manera: grama. Ensáyelo y tomelo como p otencia partiendo de señales
punto de p artida para desa­ digitales, es por m edio de tran­
Luz verde: T i (10 s) rro lla r procesos a u to m á tic o s sistores y relevos.
Luz am arilla: T 2 (2 s) más complejos.
Luz roja: T 3 (10 s) La señal del circuito d i­
Ensamblaje de la tarjeta gital (en este caso el m icrocon­
Observe en la figu ra 2 1 .1 4 electrónica trolador) excita la base del tran­
el d iagram a de tiem pos utiliza­ U no de los m étodos más u tili­ sistor quien a su vez hace disp a­
do para este ejem plo, y en la fi­ zados dentro de la electrónica rar el relevo. Los contactos del

C o n e c to r s e ria l D B -9

A lim e n ta c ió n de
la ta rje ta
C ircu ito
a c o n d ic io n a d o r de
v o lta je s R S -2 3 2

CEKIT
K -19 9
M ic ro c o n tro la d o r C o n exió n dei
C ll XTAL tra n s fo rm a d o r y
fu s ib le

E n trad as
RLl RLE RL3 RL4 1
S a lid a s de la
ta rje ta

OUT1 DUT2 OUT3 0UT4

Figura 2 1 .1 7 Guía de montaje del proyecto

Curso práctico sobre Microcontroladores e e K iT .


C E K IT
K-199
ai XTAL

□UT1 DUT2 DUT3 DUT4

Sensores Actuadores

Figura 21.18 Forma de conectar la tarjeta a las diferentes partes externas

relevo pueden utilizarse para cerrar circuitos de


potencia de C A ó de C C sin que el circuito d ig i­
tal corra n in gún peligro. El d iagram a esqu em áti­
co utilizado por cada uno de los canales de salida
es el que se m uestra en la figura 2 1 .1 6 .

L u ego de h ab er e x p lic a d o c a d a u n a de
las etap as d el p ro y e c to , co n la a y u d a d e la lis ­
ta de c o m p o n e n te s v ea el p r o c e d im ie n to de
e n s a m b la je . C o m o g u í a d e m o n t a je para la
ubicación de los com ponentes p uede u tiliz a r los
e s q u e m a s m ostrados en las f i g u r a s 2 1 . 1 7 y
2 1 .1 8 . Los p rim e ro s e le m e n to s q u e se deben
so ld a r son las resisten cias d e m e n o r ta m a ñ o y
los p u e n te s de a la m b r e , es decir los elementos
con más baja altura.

Luego debe soldar los diodos con la polari­


dad correcta, tanto los de la sección de la fuente
de poder como los de protección que hay en pa­ Figura 21.1 9 La tarjeta puede ser instalada dentro de un
ralelo con las bobinas de los relevos. A continua- gabinete industrial

/ á *
^ H W s .a . Curso práctico sobre Microcontroladores
Proyectos

proyecto posee varios com po­


nentes periféricos como son el
INI IN2 IN3 IN4 0UT1 QUT2 0UT3 QUT4
0 0 |Q 0 |0 Q |O 0 ] | O Q [ O O | O Q [ Q O | k -199 interruptor general, el portafu-
sible y el transformador, para los
cuales están a disposición sus res­
Actuador pectivos conectores.
• M otor
• Electroválvula
• Lám para C o n estos ele m e n to s a d i­
Sensor • C ontactor
cionales usted, si lo desea, p u e­
de in s ta la r la tarjeta d en tro de
un g a b in e te m e tá lic o con los
110 - 220VAC 110 - 220VAC respectivos orificios de acceso
para el in terru p to r, la a lim e n ­
Figura 21.20 Como conectar un sensor y un actuador
tación y el puerto serial, com o
ción, se instalan las bases de los T am b ién p u ed e so ld ar el se m u e stra en la f ig u r a 2 1 .1 9 .
circuitos integrado s ten ien d o conector D B9 para circuito im ­ De e sta m a n e r a el p ro y e c to
como guía la muesca en uno de preso. Por ú ltim o , se suelda el to m a la a p a rie n c ia de un d is­
sus lad o s, la cu al d e b e estar cristal de 4 M H z y se insertan positivo in d u stria l.
orientada hacia el pin 1. los circuitos integrados en sus
respectivas bases. Recuerde que Forma de conectar
la m b ié n puede soldar los la m u esca del circuito in tegra­ sensores y actuadores
tran sisto res c u id a n d o d e no do va hacia el pin n úm ero 1 del En la fig u r a 2 1 . 2 0 p u ed e o b ­
in v e r tir la p o s ic ió n d e c ad a m ism o; todas estas recom enda­ servar la m a n e ra de co n ectar
uno de sus tres term in ales. Los c io n es las verá g rá fic a m e n te diversas en trad as y salidas de
reguladores de v o ltaje deben paso a paso y con m ayo r d e ta ­ p o te n cia en los te rm in a le s de
protegerse co n un p equ eñ o d i ­ lle en la sección de ensam blaje la tarjeta. Para evitar errores de
sip a d o r de calor antes de in s ­ q u e sigu e a co n tin u ació n . c o n e x i ó n , v e r i f i q u e la c o ­
talarlo s en la tarjeta. nexión de las salidas en los ter­
Una buena recomendación es m inales O U T y las entradas en
Los c o n d e n s a d o re s c e rá ­ que antes de insertar los circuitos los te rm in a le s IN.
m ic o s p u e d e n s o ld a r s e sin integrados en sus bases, alimente
im p o r ta r la p o la r id a d de sus el circuito y verifique que los ni­ C a d a e n tra d a a d m ite un
te rm in a le s. A h o ra , su eld e los veles de voltaje sean los adecuados. voltaje de C A de 110 ó 220 vol­
d io d o s LE D , re v isa n d o c u i ­ tios y un voltaje de C C , de 24 a
d a d o sa m e n te la u b ic a c ió n del Antes de aplicar corriente al 50 voltios. El sensor que utilice
á n o d o y del c á to d o ; el lado circuito, revise cada una de las para activar una de las entradas
p lan o se o rie n ta h acia la fu e n ­ soldaduras de tal modo que es­ debe su m in istrar los dos term i­
te n egativ a. tén bien adheridas a los termi­ nales del voltaje, como se mues­
nales de los componentes, y que tra en la figura.
Posteriormente, puede insta­ no estén haciendo contacto con
lar los elementos de mayor tama­ otro punto adyacente. A hora bien, los relevos sir­
ño, tales como los condensado­ ven solam ente com o interrup ­
res polarizados, cuidando de no Ensamblaje del proyecto tores de corriente para los dife­
invertir su polaridad, las resisten­ completo rentes actuadores. La configu­
cias de 1 W, los relevos y los bor­ Además de la tarjeta electrónica, ración que se debe utilizar, tam ­
nes de conexión con tornillo. referencia K-199 de CEKIT, el bién aparece en la figu ra 2 1 .2 0 .

*
Curso práctico sobre Microcontroladores (Ú M M í,IIT T ¡ .-. 197
Control 1/0 de potencia por el puerto serial

Ensamblaje del proyecto L IS T A DE M A T E R IA L E S

Cant. Reí. Descripción


I 1 IC 1 M i c r o c o n t r o la d o r P I C 1 6 F 8 4 . p r o g r a m a d o
1 IC 2 C ir c u it o in t e g r a d o M A X 2 3 2
1 IC 3 C ir c u it o in t e g r a d o C D 4 0 9 3
4 I C 4 a IC 7 O p t o a c o p la d o r e s 4 N 2 5
1 REG1 R e g u la d o r in t e g r a d o d e + 5 V , 7 8 0 5
1 REG2 R e g u la d o r in t e g r a d o d e + 1 2 V , 7 8 0 5
10 TR 1 a TR10 T r a n s is t o r e s d e p r o p ó s it o g e n e r a l N P N . 2 N 3 9 0 4
8 D1 a D8 D i o d o s r e c t if ic a d o r e s d e p r o p ó s it o g e n e r a l 1 N 4 0 0 4
4 DZ1 a DZ4 D io d o s Z e n e r d e 1 2 V a 1 W
4 D 9 a D12 D i o d o s r e c t if ic a d o r e s r á p id o s 1 N 4 1 4 8
12 LED S D i o d o s L E D r o jo s d e 5 m m
1 C1 C o n d e n s a d o r e le c t r o lí t ic o d e 2 . 2 0 0 u F - 3 5 V
4 C13 a C16 C o n d e n s a d o r e s e le c t r o lí t ic o s d e t a n t a lio d e 1 u F - 3 5 V
8 C2 a C10 C o n d e n s a d o r e s c e r á m ic o s d e 0 .1 u F - 5 0 V
2 C11 y C 1 2 C o n d e n s a d o r e s c e r á m ic o s d e 2 2 p F - 5 0 V
4 C 17 a C20 C o n d e n s a d o r e s d e p o lié s t e r d e 0 , 2 2 u F - 2 5 0 V
4 R 1 .R 3 .R 5 y R 7
Figura 21.21 Conjunto de componentes electrónicos y los R e s is t e n c ia s d e 4 7 k - 1 W
4 R 2 .R 4 .R 6 y R 8 R e s is t e n c ia s d e 10k-1W
accesorios que se requieren para ensam blar el control 1/0 de 4 R 9 a R12 R e s is t e n c ia s d e 4 ,7 k - 1 /4 W
potencia por el puerto serial. 12 R 1 3 a R 1 6 , R 2 1 .R 2 2 R e s is t e n c ia s d e 2 2 0 - 1 / 4 W
R 2 9 a R34
4 R17 a R20 R e s is t e n c ia s d e 4 7 k - 1 /4 W
Por medio de este proyecto y con la ayuda de una computadora 6 R 2 3 a R28 R e s is t e n c ia s d e 1 k - 1 /4 W
personal se podrán controlar muchos dispositivos eléctricos y 1 XTAL C r is t a l d e c u a r z o d e 4 M H z

electrónicos, enviando y recibiendo las señales correspondientes 4 R L 1 a RL4 R e lé s m i n i a t u r a d e 1 2 V C C


K -1 9 9 C i r c u it o im p r e s o C E K I T
de control a través de un puerto serial RS232 de la PC. Para el RS232 C o n e c t o r D B - 9 h e m b r a p a r a c i r c u i t o im p r e s o
ensamblaje de la tarjeta tenga en cuenta los siguientes pasos: C o n e c t o r e s d e t o m i l l o d e 2 p in e s
B a s e p a r a c ir c u it o in t e g r a d o d e 1 8 p in e s
B a s e p a r a c ir c u it o in t e g r a d o d e 1 6 p in e s
B a s e p a r a c ir c u it o in t e g r a d o d e 1 4 p in e s
B a s e s p a r a c i r c u i t o in t e g r a d o d e 8 p in e s
T ra n s fo rm a d o r M 5 0 8
C a b le s e ñ a l u n o a u n o D B - 9 M a D B - 9 H
C a b le d e p o t e n c ia c o n e n c h u f e
D is q u e te c o n p ro g r a m a s
2 T o r n illo s d e 1 /4 X 1 /8 c o n s u s t u e r c a s
2 D i s ip a d o r e s d e c a lo r p a r a T O - 2 2 0

S i& j
3S& ]

Paso 1
Instale y suelde los puentes de alambre, las resistencias de 1/4W, y
los diodos rápidos 1N4148, D9 a D I2.
Figura 21.22

Paso 2
Luego instale y suelde los diodos rectificadores de propósito
general D1 a D8 de i A. con referencia 1N4004.
Figura 21.23

Paso 3 Use unas pinzas y extraiga con ellas los pines 4 y 5 de las cuatro
Instale y suelde los diodos Zener de 5, IV 01 a 04, y las bases de 8 pines, para formar las bases de 6 pines requeridas
resistencias de 1W de 1 0 kü y 47kf¿. por los optoacopladores.
Figura 21.24 Figura 21.25

m K K T s , Curso práctico sobre Microcontroladores


1 Proyectos

Paso 4 Paso 5
Instale y suelde las bases para los circuitos integrados IC1 a IC7, Instale y suelde los transistores de propósito general NPN TR1 a
respetando la orientación indicada en la guía de ensamblaje. TRIO.
Figura 21.26 Figura 21.2 7

M ... MODULO I/O ,

Paso 6 Paso 7
Instale y suelde los diodos LED de entrada y salida e indicadores Instale y suelde todos los condensadores cerám icos de 50V
de comunicación serial, y asegure firmemente, con tornillos de C2 a C12.
1/4 ” por 1/8 " , los dispadores de calor de los dos reguladores de Figura 21.29
voltaje en el espacio indicado por la guía de ensamblaje.
Figura 21.28

Paso 8 Paso 9
Instale y suelde los cuatro condensadores electrolíticos de tantálio Instale y suelde los condensadores de poliéster de 250V C17 a
de 1pFy 35V, C13 a C16. C20, y el cristal de cuarzo de 4MHz XTAL.
Figura 21 .3 0 Figura 21.31

Curso práctico sobre Microcontroladores S .A .


Control 1/0 de potencia por el puerto serial

Paso 10 Paso 11
Instale y suelde los cuatro relés miniatura de 1 2 / en el espacio Instale y suelde el conector hembra DB-9 para el puerto de
indicado para las salidas, y los doce conectores de tornillo para comunicaciones serial RS232
las entradas y salidas de la tarjeta. Figura 21.33
Figura 21.32

Paso 12 Paso 13
Por último, instale y suelde el condensador electrolítico C1 de Éste es el aspecto final de la tarjeta ensamblada del control 1/0 de
2.200 uF y 5 0 / potencia por el puerto serial.
Figura 21.34 Figura 21.35

En la figura se muestra la tarjeta del control 1/0 de potencia por


el puerto serial controlando el movimiento de un brazo
robotizado, a pa rtir de las señales enviadas desde una
computadora por dicho puerto. De la tarjeta se han utilizado
algunas de sus salidas para manejar los motores de las
articulaciones, y también algunas entradas para recibir la
posición real indicada por los microinterruptores del robot.
Figura 21.35

Paso 14. Pruebas finales


Para alimentar el circuito utilice el conector tipo tornillo ubicado en el lado derecho de la tarjeta, tal como se mostró la guía de
ensamblaje; cuando está correctamente alimentado, los LED indicadores de + 5 / y + 1 2 / deben encenderse. Conecte el puerto
serial de la computadora al conector DB-9 del circuito impreso y ejecute uno de los programas incluidos en el disco; por medio de
los LED Tx y Bx, verifique la transferecia de los datos.
¥
ALARMA PflRfl MOTOCICLETA
C onstruya este proyecto y adquiera un sencillo
pero efectivo sistema de seguridad para su siste­
m a de transporte. Soluciones como ésta confir­
man que los microcontroladores nos pueden ha­
cer la vida mejor.

C aracterísticas
Facilidad de manejo
M icrocontrolador M otorola
Salida por medio de relevo
Tamaño reducido, lo que facilita su instalación
Diodo LED indicador del estado de la alarma
áí *
Curso práctico sobre Microcontroladores (£ IM li
Alarma para motocicleta

En esta o po rtun idad desarrollaremos un sis­


tem a sencillo de alarm a para m otocicleta basado
en un m icrocontrolador M otorola, el cual, por
su tamaño reducido, puede ser ocultado fácilmen­
te dentro del chasis.

Funcionamiento
La activación de la alarm a se hace por m edio de
la llave de encendido de la m otocicleta. Si, es­
tando el m o to r apagado, usted da vuelta a la lla­
ve de encendido (O N ) y dentro de un período
de tiem po no m ayo r a diez segundos cierra el
encendido (O FF), el sistem a se arm a o se pone
Figura 2 2 . 1 Sensor de movimiento
en estado de vigilancia.

D esde el m o m en to en que se activa el en ­ encontrar fácilm ente en el mercado. Este sensor


cendido y d urante dichos diez segundos, el LED consiste básicamente de un contacto norm alm en­
in d ic a d o r p e rm a n ec erá titila n d o para in d icar te abierto, el cu al se cierra cuando, debido al
que se en cu en tra en esta etap a del proceso. Si m ovim iento del sensor, el m ercurio líq u id o se
en este espacio de tiem p o el circu ito detectó la acerca al contacto y sirve de p uente entre los dos
desactivación d el en cen d id o el LED se apagará, puntos. Este sensor debe estar colocado en un
in d ica n d o que el sistem a está listo y d isp on ible lugar estratégico de la m otocicleta y como ya lo
para d etectar c u a lq u ie r m o v im ie n to . En este mencionamos, será chequeado permanentem ente
estado el m icro co n tro lad o r ch eq uea p e rm a n e n ­ u n a vez arm ad o el sistema.
tem en te el estado de u n sensor de m o vim ien to
para o rig in a r u n a señal de alarm a, c u a n d o este C u a n d o desarrolle a lg ú n proyecto de esta
sensor sea activado. naturaleza, lo m ás im p o rta n te que se debe g a ­
rantizar es que el circu ito eléctrico esencial de
Sensor de movimiento la m o to cicleta q u ed e in d e p en d ien te de la n u e ­
El sensor de m ovim iento utilizado es un sensor va conexión de la alarm a. Esto quiere decir que
de m ercurio co m ú n , fig u ra 2 2 .1 , que se puede se deben evitar problem as tales com o que la m o-

Llave Cable
de encendido de alta
tensión
Batería

Figura 2 2 .2 Esquema básico d e l encendido de una m otocicleta

H TT s a Curso práctico sobre Microcontroladores


Proyectos

C
o
/J
■03O V )
o
•O 1a
o
03> £=23 g
oo>
cc CS
CSI
H
r

Figura 22.3 Diagrama esquemático


del proyecto

tociclera no funcione en el caso ideal es que en caso de em er­ persona que no ten ga conoci­
de que el circu ito de la alarm a g e n c ia , el c irc u ito p u e d a ser m ien to algu n o en electrónica
se averíe o se hum edezca. Lo «d esh ab ilitad o » por cu alq u ier y la m o to cicleta p u e d a funcio-

Curso práctico sobre Microcontroladores S . A .


Alarma para motocicleta

n ar n o rm a lm en te. El esq u em a de en cen d id o de


u n a m o to cicleta se p uede apreciar en la fig u ra
2 2 .2 ; consta de varios elem entos, co m o el ge­
nerador, la b o b in a y m u ch o s otros que en este
d o cu m en to no se analizarán. Se p ued e observar
q u e la llave de en cen d id o en realidad funciona
co m o un in terru p to r n o rm a lm e n te abierto el Contacto
del relevo
cual se cierra y p erm anece así m ien tras la m o to ­ motocicleta
cicleta esté funcio nando .

Descripción del circuito


El d iagram a esquem ático del proyecto se puede
Figura 22.4 La señal del relevo debe activar la bocina de
ver en la fig u ra 2 2 .3 . La alim entació n normal
la motocicleta
de la alarm a se tom a de la batería de 12 Voltios
de la m otocicleta, los cuales se han regulado por m edio de u n divisor de voltaje co nfo rm ad o por
m edio de un circuito integrado 7 8 0 3 , adicional­ las resistencias R l y R2 y un d io do Z ener de
m ente se han dispuesto un condensador electro­ 5,1 V. La en trada del sensor corresponde al bit
lítico y uno cerám ico a la salida de la alim en ta­ 6 del puerto B q u e corresponde al p in 7 del en ­
ción para evitar problem as de ruido, los cuales cap su lad o y sim p le m e n te se disp on e de tal m a­
son com unes al trabajar en esta clase de fuentes y nera que c o n m u te entre 0 y 5 voltios cuando
que pueden ser fatales para el circuito. está activado o desactivado.

La en trad a de la señal de la llave de en cen ­ Circuito de salida con relevo


d id o al m icro co n tro lad o r se hace p or el bit 7 Para dar la salida hacia la bocina de la m otocicle­
del puerto B, q u e corresponde al p in 6 del cir­ ta, se decidió incorporar u n circuito de relevo. El
cuito integrado; éste se rebaja o aco n d icio n a por m icrocontrolador entrega sus señales de alarm a

Sensor

Batería

Llave
de encendido AT CRI A
J2V C C

K|<JcV>
?N390*J

Figura 22.5 Guía de m ontaje de la alarma

204 Curso práctico sobre Microcontroladores


Proyectos

por m edio del bit 7 del puerto D (pin 9 del cir­


cuito integrado) el cual dispara el contacto del
relevo a través de la resistencia R6 y el transistor No ¿Interruptor
Q l . Esta señal se debe acoplar a la bocina de la ■h h de encendido
activado?
motocicleta, lo que se puede hacer como se mues­
tra en la figura 2 2 .4 ; cuando la alarm a se en­
cuentra en estado de arm ado y detecta m ovim ien­
to en el sensor, la bocina em pezará a sonar.

Finalm ente, por el bit 6 del puerto D (pin


Cargar contador
10 del encapsulado) se conecta el LED indica­
dor del estado de la alarm a, de acuerdo a lo ex­
puesto en párrafos anteriores.
Retardo

Circuito impreso del proyecto


Es recomendable que una vez sea instalada la alar­
ma, se recubra con algun a clase de resina, para
¿Interruptor de
evitar que el circuito entre en contacto con el encendido Armar
desactivado?
m edio am biente. Para evitar confusiones y tener
claridad en el m ontaje del circuito, puede seguir
la guía de m ontaje que se ilustra en la figura 2 2 .5 ,
en ella se puede ver la ubicación de los distintos Encender LED
com ponentes dentro del circuito.

Programa del microcontrolador Retardo


C o m o se m uestra en el d iag ram a de flujo de la
figura 2 2 .6 , el p ro gram a em p ieza a funcio nar
desde el in stan te en q u e se detecta q u e se ha
cerrado el in terru p to r de en cen d id o ; a partir
de ese m o m en to se carga un registro d e n o m i­
n ado C O N T A D O R , q u e configura el tiem po
¿Interruptor de
dentro del cual se debe cerrar de nuevo el en ­ encendido Armar
desactivado?
cen d id o para que se establezca el a rm ad o de la
alarm a. La verificación de esa co n d ició n se hace
dentro de un ciclo en el cual se hace titila r el
LED y se p regu n ta rep etitivam en te el estado Decrementar
conrtador
del en cen d id o , m ien tras se decrem en ta p au la ­
tin am e n te el registro C O N T A D O R .

Si d e n tro de ese in terv alo no se ha d e te c ­


Contador = 0?
tad o la d esactiv ació n d el e n c e n d id o , el m icro ­
co n tro la d o r a s u m ir á q u e se trata de un e n c e n ­
d id o n o rm al de la m o to cicleta.

Normal
Si por el contrario se detecta la señal de des­
activación del en cen d id o , el p ro g ram a salta a la
Figura 22.6 Cuerpo principal del programa

Curso práctico sobre Microcontroladores


Alarma para motocicleta

Armar: Sonido:
Apagar el LED Activar la
bocina

Si Encender LED
¿Se detectó un Sonido
movimiento?

No Retardo

No
¿Se detectó un
movimiento?

No ¿Encendido
Si activado?

S I
■■■■■■■ Desarmar: 1

Figura 2 2 .7 Subrutina de armado del sistema Apagar LED

su b ru tin a A R M A R d o n d e se en tra al estado de


v ig ilan cia del sensor de m o vim ien to. Apagar bocina

La su b ru tin a A R M A R , donde se desarrolla


la vigilancia de la m otocicleta, la podem os ver
reflejada en el diagram a de flujo de la figura 22.7. Ir al inicio
En ella el LED se apaga y se entra en un ciclo en
el cual se lee la entrada del sensor de m ovim ien ­ Figura 22.8 Subrutina de generación de la señal de alarma
to y se pregunta si el interruptor de encendido
ha sido activado de nuevo. Ésta es la m anera de cío en el q u e la b o c in a p e r m a n e c e a c tiv a d a y
desactivar el estado de vigilancia. el LE D t itila de nuevo.

Si en el estado de v ig ila n c ia se h a d e te c ta ­ Seguram ente se le pueden agregarle muchas


do a lg ú n tipo de m o v im ie n to en la m o to c ic le ­ otras características de funcionam iento a esta alar­
ta, se g en era la señal de a la rm a ; este p ro c e d i­ ma, por ejemplo, puede adicionarle un interrup­
m ie n to lo p o d em o s ver en la figura 22.8. tor secreto con el cual se pueda desactivar en cual­
quier m om ento el funcionam iento del motor.
En esta p a r te d e l p ro g r a m a el LED i n d i ­
ca d o r se e n c ie n d e , al ig u a l q u e la s a lid a a la En d e fin itiv a , si le lla m a la a ten ció n este
b o c in a de la m o to c ic le ta . Para s a lir d e este es­ p ro yecto , está in v ita d o a p ro fu n d iz a r y m o d i­
ta d o el p ro g r a m a lee el esta d o del in te r r u p to r ficar el có d ig o a su g u sto ; p ara ello, en la figu­
de e n c e n d id o , si está a c tiv a d o se a p a g a n d e f i­ ra 2 2 .9 p u e d e ap rec iar el p ro g ra m a co m p leto ,
n it iv a m e n t e las s a lid a s y se re to rn a a l in ic io el c u a l ta m b ié n lo p u ed e d escargar de nuestra
d el p ro g ra m a , de lo c o n tr a r io , e n tr a en u n ci- p á g in a en la in tern et.

é m k ir :
Curso práctico sobre Microcontroladores
Proyectos

* * * * * * * * * * * * * * * * * * * * * * * *
RSP
* BRCLR 7,PORTB,ARMA ; SE CHEQUEA EL ENCENDIDO
* Software en assembler para el HC08 JK3, ; PARA DETERMINAR SI SE
* PROYECTO: ALARMA PARA MOTOCICLETA ; ARMA EL SISTEMA
* ___ BSET 6,PORTD ; APAGA EL LED
* Juan Andrés Castaño Welgos JSR RETA01 ; RETARDO DE 0,5 SEGUNDOS
* welgos@cekit.com.co JSR RETA01
JSR RETA01
* PEREIRA JSR RETA01
* COLOMBIA-2001 JSR RETA01
PTB7: MOTOCICLETA ENCENDIDA BCLR 6 , PORTD ; ENCIENDO EL LED
PTB6: SENSOR MAGNETICO BRCLR 7,PORTB,ARMA ; LEO DE NUEVO EL
************************
JSR RETA01 ; ENCENDIDO
$include ‘j!3regsg.inc’ JSR RETA01
JSR RETA01
RAMStart EQU $0080 DIRECCIÓN ORIGEN RAM JSR RETA01
RomStart EQU $EC00 DIR. ORIGEN DE LA ROM JSR RETA01
Vectores EQU $FFDE DBNZ CONTAI,ESPERA3 ; DECREMENTO CONTAI
RESET_VEC EQU $FFFE BRA NORMAL ; PARA CONFIGURAR EL
;TIEMPO DE ESPERA
org RAMStart
ARMA: JSR RETA01
CONTADOR RMB VARIABLES UTILIZADAS BSET 6,PORTD ;APAGO EL LED
REGIS1 RMB DENTRO DEL PROGRAMA. BRSET 6,PORTB,SOUND ; ¿SE MOVIO LA
REGIS2 RMB UBICACIÓN EN LA ;MOTOCICLETA?
CONTAI RMB MEMORIA RAM. ; EL SISTEMA
BANDERA RMB BRSET 7,PORTB,DESARMA ; SI SE ACCIONÓ LA
org RomStart ;LLAVE SE DESARMA
BRA ARMA
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

- DESDE ESTE PUNTO SE INICA LA EJECUCION DEL SOUND BSET 7,PORTD ; ACTIVAR LA ALARMA
CODIGO BCLR 6,PORTD
DESPUES DE UN RESET. JSR RETA01
JSR RETA01
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
JSR RETA01
INICIO: BRSET 7,PORTB,DESARMA ; SI SE ACCIONÓ LA
RSP ;LLAVE SE DESARMA
Bset COPDjCONFIGl ;DESHABILITA EL COP BCLR 7,PORTD
;(watchdog) BCLR 6,PORTD
CLRA JSR RETA01
CLRX JSR RETA01
MOV #$ff,DDRD ; CONFIGURO EL PUERTO D BRA SOUND
; COMO SALIDAS DESARMA:
BCLR 7,PORTD ; APAGO LA SALIDA DEL RELÉ
MOV #$000,DDRB ; CONFIGURO EL PUERTO B BSET 6 , PORTD ; APAGO EL LED
; COMO ENTRADAS • BSET 0 , BANDERA
)
BRA INI ; INICIO DE NUEVO EL PROCESO
INI:
***************************************************
CLR PORTD * RETARDO- SUBRUTINA DE RETARDO POR SOFTWARE *
BSET 6,PORTD ; INICIAMOS CON EL LED OFF * *
***************************************************
RSP ; INICIANDO EL STACK POIN.
BRCLR 0,BANDERA,ESPERA1 ; SE CHEQUEA SI SE
; ACTIVADO EL BIT 0 DE BANDERA. ESTO SIGNIFICA RETA01
; QUE LA MOTOCICLETA SE ENCUENTRA TRABAJANDO
; EN MODO NORMAL. LDA #128T ; RETARDO DE 0.1 s
BRSET 7,PORTB,INI ET2 CLRX
ESPERA1: ET3 DECX
BSET 6,PORTD ; APAGAR EL LED BNE ET3
BRCLR 7,P0RTB,ESPERA1 ;ESPERA QUE SE DECA
ENCIENDA LA MOTOCICLETA BNE ET2
PARA INICIAR EL PROGRAMA RTS
AL ACTIVARSE, SE RET20S
ENCIENDE EL LED LDA #20T
BSET 4,PORTD STA REGIS1
ET1 JSR RETA01
;AHORA DEBE ESPERAR QUE SE APAGUE LA DEC REGIS1
;MOTOCICLETA DENTRO DE UN PERIODO DETERMINADO BNE ET1
ESPERA2: RTS
;Y SE HACE PARPADEAR EL LED
MOV #$08,CONTAI; 100 VECES .1 SEG. = 10 NORMAL:
SEG NOP
JSR RETA01 BSET 0,BANDERA
JSR RETA01 Org RESET.VEC
JSR RETA01 Dw INICIO ;al darse reset salta a Start
JSR RETA01
END
ESPERA3:

Figura 2 2 .9 Código fuente d e l proyecto

Curso práctico sobre Microcontroladores C E K S r , 5 .A .


Alarma para motocicleta

Ensamblaje del proyecto U S T A OE M A T E R IA LE S

C an t. Ref. D e s c rip c ió n
IC1 M ic ro c o n tro la d o r 6 8 H C 9 0 8 J K 3 , p ro g ra m a d o
REG1 R e g u la d o r fijo d e + 5 V -1 A , 7 8 0 5
. ^ V X i Q1 T ra n s is to r d e p ro p ó s ito g e n e ra l N P N , 2 N 3 9 0 4
. D1 y D 3 D io d o s re c tific a d o re s d e p ro p ó s ito g e n e ra l
1N 4004
D2 D io d o z e n e r d e 5.1 V a 1W
LED1 D io d o L E D ro jo d e 5 m m
C1 C o n d e n s a d o r e le c tro lític o d e 1 0 0 0 u F - 2 5 V
C 2 y C3 C o n d e n s a d o re s c e rá m ic o s d e 0.1 u F - 5 0 V
C 4 y C5 C o n d e n s a d o re s c e rá m ic o s d e 2 2 p F - 5 0 V
XT1 C ris ta l d e q u a rz o d e 5 M H z
R1 R e s is te n c ia d e 8 2 0 - 1 W
R2 R e s is te n c ia d e 8 2 0 - 1 /4 W
R3 R e s is te n c ia d e 1 0 M - 1 /4 W
Figura 22 .1 0 Conjunto de componentes electrónicos y los
R 4 y R8 R e s is te n c ia s d e 1 0 k - 1 /4 W
accesorios que se requieren para ensam blar la alarma para R5 R e s is te n c ia d e 1 k - 1 /4 W
motocicleta K-334. R6 R e s is te n c ia d e 4 .7 k - 1 /4 W
R7 R e s is te n c ia d e 3 3 0 - 1 /4 W
Utilizando este circuito usted puede proteger eficazmente su K1 R e lé d e 1 2 V C C
motocicleta contra robo, para ello este proyecto cuenta con una K -3 3 4 C irc u ito im p re s o C E K IT
J1 C o n e c to r e n lín e a d e 2 p in e s M /H
entrada de propósito general para el sensor, y un relé de salida
C o n e c to r d e to rn illo d e 3 p in e s
con capacidad de 10A. Con éste se puede interrum pir el sistema C o n e c to re s d e to rn illo d e 2 p in e s
de encendido. Para el ensamblaje de la tarjeta tenga en cuenta B a s e p a ra c irc u ito in te g ra d o d e 2 0 p in e s
los siguientes pasos: m C a b le ribbon d e 2 h ilo s

Paso 1
Paso 4
Instale y suelde el puente
Instale y suelde los
de alambre, las
conectores de tornillo de
resistencias de 1/4W, los
dos pines para la
diodos rectificadores
alimentación y para la
1N4004, y el diodo Zener
entrada y la salida del
de 5,1 V.
circuito.
Figura 22.11
Figura 22.14

Paso 2
Luego instale y suelde la Paso 5
base para el Instale y suelde el relé de
microcontrolador, y la 1 2 / con capacidad de
resistencia R1 de 1W. 10A, el cristal de cuarzo,
Figura 22.12 y el condensador
electrolítico C1.
Figura 22.15

Paso 3
Instale y suelde el Paso 6
regulador integrado de final de la alarma
voltaje de +5V, el ensamblada, luego de
transistor NPN 01 y los conectar e l LED indicador,
condensadores e insertar el
cerámicos. microcontrolador en su
Figura 22.13 base.
Figura 22.16

Paso 7. Pruebas finales


S i la llave de encendido está cerrada el sistema no ejecutará ninguna función. Si se hace la activación de la alarma,
de acuerdo a lo expuesto en párrafos anteriores, el LED se apagará y se vigilará constantemente el estado del sensor.
S i en ese momento la motocicleta se mueve, el LED se encenderá y el relé se activará y desactivará continuamente,
hasta que se cierre de nuevo e l encendido.

Curso práctico sobre Microcontroladores


CONVERTIDOR PARALELO-SERIAL
Existen casos en donde no está libre un puerto
serial para trabajar en algunos desarrollos propios.
Este circuito perm ite trabajar el puerto paralelo
como un puerto serial adicional.

C aracterísticas
• Conversión de datos en paralelo, a formato serial
• Configuración de la velocidad serial por medio
de un ju m p e r
• Velocidades de 9.6 0 0 o 19.200 bps
• Conversión unidireccional, de paralelo a serial
• A p ro p iad o para desarro llo s d o n d e no se
d isp o n g a de un puerto serial

Curso práctico sobre Microcontroladores


El puerro paralelo de las co m p utad o ras tie­ co n el protocolo serial R S -2 3 2 . Este proyecto
ne com o propiedad p erm itir la en trad a y salida p uede ser de gran u tilid a d en sus tareas especí­
de datos digitales. El circuito presentado en esta ficas de control o in stru m e n tac ió n , d o n d e 1 1 0
ocasión, consiste en un sistem a capaz de tom ar d isp o n ga de un puerto serial para trabajar, o en
la info rm ación en viad a a través del puerto pa­ casos d o n d e requiera d is m in u ir el n úm ero de
ralelo y convertirla en info rm ación q u e cu m p le líneas de co m u n icació n .

— IH "

Figura 2 3 .1 Diagram a esquem ático deI circuito

m / c ir Curso práctico sobre Microcontroladores


Proyectos

Pin
Señal Función
D-sub
1 nStrobe Strobe
2 DO B it de datos 0
3 D1 B it de datos 1
4 D2 B it de datos 2
5 D3 B it de datos 3
6 D4 B it de datos 4
7 D5 B it de datos 5
8 D6 B it de datos 6
9 D7 B it de datos 7
10 nAck Reconocimiento
11 Busy Impresora ocupada
12 PaperEnd Sin papel
13 Select Impresora seleccionada
14 nAutoLF Genera automáticamente
saltos de página
15 nError (nFault) Error
16 nlnit Inicializar impresora
17 nSelectln Seleccionar impresora
18 Gnd Tierra para DO
19 Gnd Tierra para D1,D2
20 Gnd Tierra para D3. D4
21 Gnd Tierra para D5, D6
22 Gnd Tierra para D7
23 Gnd Tierra para nSelectln
24 Gnd Tierra para Busy
25 Gnd Tierra para nlnit Figura 23.2 Diagrama de pines y tabla de funciones del puerto paralelo

La conversión es u n id ire c­ p u t a d o r a , la c u a l d e b e te n e r ta d o ra acced e a las señales del


cio n a l, es decir, de paralelo a m u y p o ca d u ra c ió n (u n o s p u erto p aralelo al leer y escri­
serial. Se rrata de un circuito que c u a n to s m ic r o s e g u n d o s ) . bir en estos registros, d e n o m i­
lee la inform ación enviada des­ n ad o s los registros de datos,
de el puerto paralelo y luego la El m i c r o c o n t o l a d o r no estados y control.
envía de m anera serial. debe operar hasta no tener se­
g u rid a d en la c o m u n ic a c ió n ; D u ra n te el tiem p o reque­
Funcionamiento del por esta razón se in tro d u jo un rido para que el sistem a tom e
circuito flip-flop. El pulso de strobe o de el dato del puerto paralelo y lo
En la f ig u r a 2 3 .1 ap arece el reco n o cim ien to vien e del flip - transform e en form ato serial,
d ia g ra m a esq u em ático del cir­ flo p y da el pulso para aprobar no se debe enviar n in g ú n n u e­
cuito d iseñado para el envío de la co m u n icació n . vo dato , en ese sentid o se debe
señales a través del puerto p a ­ utilizar el p in de busy. C o n e c ­
ralelo y su conversión a p ro to ­ La figu ra 2 3 .2 m uestra las tando la salida del flip -flop d i ­
colo serial, llegan d o fin a lm e n ­ funciones de cada uno de los 25 rectam ente a este pin, se ase­
te a un conector D B9. p in e s d e l p u e r to p a r a le lo o g u ra q u e n in g ú n otro byte se
puerto de impresora, y la infor­ enviará m ien tras se esté proce­
El co ra z ó n d el p ro y e c to m ación de sus señales y sus co­ sando el d ato actual.
es u n m ic r o c o n t o la d o r P I C , rrespondientes registros; note la
el c u a l se a d h ie r e a l p r o to c o ­ ubicación del pin busy que es el U n a vez term inada toda la
lo d e c o m u n ic a c ió n p a r a le la . que se utiliza para p erm itir el transm isión, el m icrocontrola­
D e e sta m a n e r a , c u a n d o los flujo de los datos al sistema. dor origina un pulso que reini-
p in e s d e d a to s del p u e rto ciará al flip-flop. Así, el pin busy
p a ra le lo tie n e n listo un byte , R e c u e r d e q u e el p u e r to quedará igualm en te reiniciado
se e n v ía u n a s e ñ a l, lla m a d a p ara le lo e stá n d a r u tiliz a tres y todo el procedim iento se re­
strob e , de r e c o n o c im ie n t o o registros de ocho bits en una petirá p or cada byte que llegue
d e a p r o b a c ió n d e s d e la co m - P C co n v en c io n al. L a c o m p u - desde el puerto paralelo.

Curso práctico sobre Microcontroladores S.A.


Convertidor paralelo - serial

Cargar REG2
Configurar con 8
puertos

Originar bit
Línea serial en
de inicio
estado IDLE

Retardo

¿Byte recibido?

Rotar registro de
transm isión

Guardar dato en el
registro de recepción

Poner en cero
línea de TX
Leo la configuración
de la velocidad

Invoco rutina de
transm isión
¿Bit carry= 1?

Retardo
Figura 2 3 .3 Cuerpo principal del programa

La salid a del m icrocontrolador va h ac ia un


circ u ito in te g rad o M A X 2 3 2 (o c o m p a tib le ), el Decrementar
REG2
cu al co n v ierte la señal de acuerdo a las esp eci­
ficaciones dadas en la norm a internacional para
comunicaciones RS-232.

Descripción del programa


El p ro g ra m a b á sic a m e n te lee el d ato d el p u e r­
to B del m ic ro c o n tro la d o r y, según el ju m p er
d e selecció n de v elo cid ad de tra n sm isió n , salta
a la r u tin a in d ic a d a de en vío , de 1 9 .2 0 0 bps ó
Originar bit de
de 9 .6 0 0 bps. La selecció n de la v e lo c id a d se stop Figura 23.4 Subrutinas de
h ace a través del ju m p er J l . Si J l se e n c u e n tra transmisión de los datos

Curso práctico sobre Microcontroladores


Proyectos

En la fig u ra 2 3 .4 p ued e ver el d iag ram a de


flujo genérico para cada u n a de las subrutinas
de transm isión.

En él p ued e observar q u e in ic ia lm e n te se
envía el bit de inicio y sobre el registro de trans­
m isió n se efectúan ocho rotaciones en cada una
Figura 2 3.5 Aspecto final de la tarjeta ensamblada y la conexión
con el puerto paralelo de la computadora de las cuales se d e te rm in a el estado del bit carry
del registro de estado, y según d ich o estado, se
a b ierto se establece u n a v elo cid ad d e 1 9 .2 0 0 envía el nivel al p in de transm isión. F in alm en ­
bps y si está cerrado se trab aja a 9 .6 0 0 bps. te se envía el bit de p arad a o STOP.
A m b as o p cio n es sin p a rid a d , con 8 bits de d a ­
tos y sin n in g ú n co n tro l de flujo. El aspecto final del proyecto lo p ued e apre­
ciar en la fig u ra 2 3 .5 . En realidad puede ver que
En la figu ra 2 3 .3 puede apreciar el diagra­ el resultado final es u n a tarjeta que o cup a poco
m a de flujo del cuerpo principal del proyecto; espacio y se p uede instalar en el puerto de la
en él puede ver que la tarjeta m an tien e la línea com putadora, en su parte posterior.
de transmisión en estado IDLE hasta que se de­
tecte la llegada de un dato válido desde el puerto Para el m ontaje de este circuito, igual como lo
paralelo. Ese dato se alm acena en un registro es­ hemos indicado en anteriores proyectos, debe ins­
pecializado den o m in ad o registro de transmisión talar primero los puentes de alambre y los compo­
T X R E G y se procede a leer el ju m p er que confi­ nentes de menor tamaño, dejando por último los
gu ra la velocidad a la cual va a transmitir. conectores de cada uno de los puertos. Utilice como
guía de montaje el diagrama de la figura 23.6.
De acuerdo a la velocidad seleccionada, el
program a llam a u n a de las rutinas de transm i­ V erifiq u e q u e las so ld ad u ras h a y a n q u e ­
sión, hay una para transm itir a 9 .6 0 0 bps y otra d a d o firm es y q u e no h agan co n tacto con los
para transm itir a 1 9 .200 bps. p u n to s co n tigu o s.

Curso práctico sobre Microcontroladores


Convertidor paralelo - serial

de la
velocid ad de
tran sm isió n

M icro co n tro lad o r


C onector D B -9
C onector D B -25
(serial)
(p aralelo )

Entrada de la
a lim en tació n

Figura 2 3 .6 Guía de montaje del proyecto

Debido al exigente manejo que se hace sobre con el cual puede controlar el estado y escribir
el reloj, es m ejor que se asegure de lim piar la placa cualquier dato en los pines del puerto paralelo.
del circuito impreso, para que los residuos de resina
y de soldadura no queden ejerciendo falsos contac­ Al ten er los datos en el p uerto , p ued e reci­
tos lo que alteraría el funcionam iento general del birlos serialm en te a través del p ro gram a hyper-
circuito. Este proyecto con todos sus componentes term in a l d e W in d o w s 9 5 , con lo cu al co m p ru e­
lo puede adquirir en cualquiera de nuestros distri­ ba la tran sm isió n a la velo cid ad co n figu rad a en
buidores bajo la referencia K -227 de CEKIT. la tarjeta, fig u ra 2 3 .7 .

Pruebas del sistema En la figura 2 3 .8 puede apreciar el código


Para comprobar el correcto funcionam iento de este fuente del proyecto, el cual tam b ién p ued e des­
proyecto, se acudió a un program a en Visual Basic cargar de nuestra p ágin a en la internet.
K??/
C o n y e rid o r p a ra le lo - s e ria l K-227

eO fO T T Safc

D ire cció n b a s e n 0 fn o

<? H 3 7 8 Inicio | Fin


LPT 1
C H38C

r H278 Intervalo*"*): I 1000 H


B u s d e d ato s
B u s d e e sta d o

V alor actual
V alor actual 159

V alor a a s c r t* fo
B u s d e control

V alor a ctu a l: [192


(? S a ld a

r Entrada (sólo E P P )
V alor a e s c r i* . 0

Figura 2 3 .7 Programa de prueba de la tarjeta

m iciT.: Curso práctico sobre M icrocontroladores


Proyectos

RTCC EQU 01H CURSO PRACTICO SOBRE MICROCONTROLADORES****


STAT EQU 03H CEKIT- PEREIRA - COLOMBIA
PORTA EQU 05H CONVERTIDOR PARALELO / SERIAL
PORTB EQU 06H AUTOR JUAN ANDRES CASTAÑO WELGOS
INTCON EQU 0BH
TR_A EQU 85H
TR_B EQU 86H
AREG01 EQU 0CH
AREG02 EQU 0DH
TXREG EQU 0EH ; REGISTRO DE TRANSMISIÓN
«define TX PORTA,0 ¡ PIN DE TRANSMISIÓN
ORG 0
goto START ¡VECTOR DE RESET
nop
goto INTERP ¡SERVICIO DE INTERRUPCIÓN

y .......... ...... _ D1ITTMAC
ii nC TDAMCUTCTOK1
l 1 JI 'AJA CCDTAI nATOC A DDC
DEL192 movlw .10 ; SE REPITE 10 VECES
movwf AREG01 ; W SE USA COMO CONTADOR
L00P19 clrwdt ¡ BORRAR PERRO
decfsz AREG01 ; DECREMENTAR REGI
goto L00P19 f
clrwdt ; RETARDO
clrwdt
return
TXRS19 movlw .8 REPETIR TODO PARA LA 8 BITS
movwf AREG02 AREG02 MANTIENE LA CUENTA DE BITS
bcf TX BIT DE INICIO
cali DEL192 RETARDO
LOOPTl rrf TXREG SIGUIENTE BIT
btfsc STAT,0 SI EL BIT DE TX ES 1
bsf TX ACTIVE EL BIT DE TX = 1
btfss STAT.0 SI EL BIT DE TX ES 0
bcf TX PONGO EL PIN DE Tx EN 0
cali DEL192 RETARDO
decfsz AREG02 DECREMENTO AREG02 Y PARO SI NO
goto LOOPTl QUEDA NINGÚN BIT
bsf TX BIT DE STOP
cali DEL192
nop RETARDO
return
•_ _____ ______ RHTTNAS PARA TRANSMTS7 v ON
/ll DF
l/U DATOS
L/H 1UJ MA 9600 RPS
ZJyJXJXJ Dr J _______________ _______ ______
DEL96 movlw .23 REPETIR 10 VECES
movwf AREG01 W COMO CONTADOR
L00P96 clrwdt BORRAR EL PERRO
decfsz AREG01 DECREMENTAR Y REPETIR HASTA 0
goto LOOP96
clrwdt RETARDO
clrwdt
return 95 9+Xx4 80
TXRS96 movlw .8 REPETIR TODO PARA LOS 8 BITS
movwf AREG02 AREG02 MANTIENE LA CUENTA DE BITS
bcf TX BIT DE INICIO
cali DEL96 RETARDO
L00PT9 rrf TXREG SIGUIENTE BIT
btfsc STAT.0 SI EL BIT DE TX ES 1
bsf TX ACTIVE EL BIT DE TX - 1
btfss STAT.0 SI EL BIT DE TX ES 0
bcf TX PONGO EL PIN DE Tx EN 0
cali DEL96 RETARDO
decfsz AREG02 DECREMENTO AREG02 Y PARO SI NO
goto L00PT9 QUEDA NINGUN BIT
bsf TX BIT DE STOP
cali DEL96 RETARDO
nop
return
START bsf STAT,5 ¡ SELECCIONO BANCO 1 DE RAM ***INICI0 DEL PROGRAMA**********
movlw H'FF’ i RB0...RB7 COMO SALIDAS i****.***************************
movwf TR_B
movlw H ’0 A ’ i RA0.RA2 SALIDAS , RAI, RA3 ENTRADAS
movwf TR_A
clrwdt ¡ BORRO PERRO GUARDIÁN
clrf INTCON ¡ DESHABILITO INTERRUPCIONES
bcf STAT,5 ; SELECIONO BANCO 0 DE RAM
movlw .128 ; CARGO EL TMRO
movwf RTCC
MAIN bsf TX i PONGO LA LÍNEA SERIAL EN ESTADO IDLE
bsf PORTA, 2 ; BORRO LA SALIDA DEL FLIP-FLOP
bcf PORTA, 2
SIGO clrwdt ; BORRO PERRO GUARDIÁN
btfss PORTA, 1 ; ESPERO A QUE SE RECIBA UN BYTE DEL PUERTO
goto SIGO ; PARALELO.
movf PORTB, 0 ; GUARDO EL BYTE DE DATOS EN W
movwf TXREG ¡ LO ALMACENO EN EL BYTE DE TX
btfss PORTA, 3 ; LEO LA CONFIGURACIÓN DE LA VELOCIDAD
cali TXRS19 ; Y LLAMO L A C T I N A DE TRANSMISION
btfsc PORTA, 3 ¡ LEO LA-CONFIGURACIÓN DE LA VELOCIDAD
cali TXRS96 ; Y LLAMO LA RUTINA DE TRANSMISION
bsf PORTA, 2 ; BORRO FLIP FLOP
bcf PORTA, 2
goto SIGO ; REPITO TODO
INTERP retfie ; VECTOR DE INTERRUPCIÓN
END

Figura 2 3 .8 Código fuente d e l proyecto

Curso práctico sobre M icrocontroladores


Convertidor paralelo - serial

Ensamblaje del proyecto U S T A D E M A T E R IA L E S

Cant. Ref. D e s c rip c ió n


* IC1 M ia o c o n t r o la d o r P IC 1 6 F 8 4 , p r o g r a m a d o
IC 2 C irc u ito in te g ra d o C D 4 0 4 3

♦ IC 3 D riv e r d e c o m u n ic a c ió n M A X 2 3 2
IC 4
f m í C irc u ito in te g ra d o C D 4 0 4 9
♦ U O r - '; J IC 5 R e g u la d o r fijo d e + 5 V . L M 7 8 0 5
C1 y C 2 C o n d e n s a d o r e s c e r á m ic o s d e 2 2 p F - 5 0 V
* C 3 ,C 4 ,C 5 y C 6 C o n d e n s a d o r e s e le c tro lític o s d e 10 u F - 2 5 V
C7 C o n d e n s a d o r c e r á m ic o d e 0,1 u F - 5 0 V
R1 a R 1 0 y R 1 3 R e s is te n c ia s d e 2 2 0 - 1 /4 W
R11 R e s is te n c ia d e 1 k - 1 /4 W
R12 R e s is te n c ia d e 1 0 k - 1 /4 W
Figura 2 3 .9 Conjunto de componentes electrónicos y los
XTAL C ris ta l d e c u a r z o d e 4 M H z
accesorios que se requieren para ensam blar el convertidor
K -2 2 7 C irc u ito im p r e s o C E K íT
paralelo-serial CEKIT K-227.
CON1 C o n e c to r D B 2 5 M a c h o p a ra c irc u ito im p re s o
Algunos equipos electrónicos , como impresoras, escáners y CON2 C o n e c to r D B 9 H e m b r a p a ra c irc u ito im p re s o
computadoras personales, sólo disponen de una clase de puerto C o n e c to r d e to m illo d e 2 p in e s p a ra im p re s o
serial o paralelo. Para facilitar la comunicación y aumentar la C o n e c to r rib b o n tip o c e r c a d e 2 p in e s
flexibilidad de estos equipos se ha diseñado el convertidor B a s e d e 1 8 p in e s p a ra c irc u ito in te g ra d o
paralelo-serial, que convierte el puerto paralelo de una
computadora en un puerto serial. Para el ensamblaje de la
tarjeta tenga en cuenta los siguientes pasos:
3
1 Jumper
B a s e s d e 1 6 p in e s p a ra c irc u ito in te g ra d o

Paso 4
rc tb u i Instale y suelde los condensadores electrolíticos C3 a C6 y el
Instale y suelde los puentes de alambre y las resistencias R1 a R13. conector serial DB-9 hembra J3.
Figura 23.10 Figura 23.13

COCTT

=r i* .
i::" i p .5 ¿5
a e s » = r* .

Paso 2 Paso 5
Luego instale y suelde las bases para el microcontrolador y los Instale y suelde el conector para el puerto paralelo DB-25 macho
circuitos integrados, y e l regulador integrado de +5VIC5. J2. el jum per J l, y el conector de tornillo de 2 pines para el
Figura 23.11 voltaje de entrada.
Figura 23.14

Instale y suelde los condensadores cerámicos C1,C2 y C7, y el Psso 6


cristal de cuarzo del microcontrolador XTAL. Aspecto final del convertidor paralelo-serial.
Figura 2 3 .1 2 Figura 23.15

Paso 7. Pruebas finales


Esta tarjeta debe alimentarse mediante un voltaje de CC de 5 V en el conector tipo tornillo de dos pines, ubicado en la parte inferior.
Conecte adecuadamente la alimentación para evitar daños en los circuitos integrados. Por medio de un programa de prueba de PC,
envíe datos desde el puerto paralelo de la tarjeta y verifique la transmisión de datos en el pin TX del conector DB-9.

Curso práctico sobre M icrocontroladores


ADQUISICION DE DATOS POR EL
PUERTO SERIAL
Ésta es una económ ica y versátil tarjeta de adquisición de
datos por el puerto serial que utiliza un m icrocontrolador
P IC 16 F 87 3, lo que nos perm ite m ed ir señales de entrada
en datos de 10 b its . Es de gran utilid ad para el estudio de la
tecnología de adquisición de datos a nivel académ ico o a
título personal. T am bién se puede utilizar en la industria
para el m onitoreo y control de todo tipo de variables.

C aracterísticas
• A dquisición de cuatro señales análogas previam ente
aco n d icio n ad as de cero a cin co voltios
• T am añ o reducido
• C o n ex ió n p o r el p u erto serial
• C a d a señal se ad q u ie re en 10 b it s
• T ran sm isió n a 2 .4 0 0 bps

Curso práctico sobre M icrocontroladores émiKir.


Adquisición de datos por el puerto serial

Ahora construiremos un dispositivo que nos d o , y p o r ú ltim o , q u e se p u e d e c o n s tru ir con


perm itirá conocer el valor de cuatro señales análo­ u n b ajo p resu p u esto .
gas provenientes de cualquier sensor, las cuales de­
ben estar previamente acondicionadas para que se Este proyecto nos dem uestra que para m u ­
encuentren en el rango de cero a cinco voltios. Esta chas aplicaciones en electrónica, no siem pre es
precaución es vital para no ocasionarle daños irre­ necesario ad qu irir costosas tarjetas de adquisición
versibles al microcontrolador. de datos; por el contrario, nosotros m ism os po­
dem os ofrecer soluciones m u y versátiles y con la
El elem en to p rin c ip a l del p ro yecto es el satisfacción de haber desarrollado nuestra pro­
m icro co n tro la d o r P IC 1 6 F 8 7 3 de la firm a M i- pia tecnología.
cro ch ip , el cu al es u n d isp o sitiv o d e un as ca­
racterísticas m u y in teresan tes: co n tie n e m ó d u ­ Entre los módulos internos de este circuito in­
los in tern o s q u e lo h acen m u y eficien te y atra c­ tegrado se destacan el conversor A/D de 10 bits,
tivo p ara ser in co rp o rad o en g ra n c a n tid a d de con cinco canales en su presentación de 28 pines y
a p lic a c io n e s y co n él, p o d em o s o b ten er u n a ocho canales en su presentación de 40 pines, en
ta rje ta de a d q u is ic ió n de d ato s m u y co m p leta, este caso hem os seleccionado el encapsulado de
q u e tra n sm ite los d ato s a d q u irid o s a u n a b u e­ 28 pines; al igual que un módulo de comunicación
n a v e lo c id a d , q u e p resen ta un ta m a ñ o re d u c i­ serial USART. Este últim o se encarga de transmitir

ENTRADAS
ANÁLOGAS
0-5V

Figura 24.1 Diagram a esquem ático d e l proyecto

€ M IK IT . Curso práctico sobre M icrocontroladores


Proyectos

el valor resultante de la conver­ ; A d q u i s i c i ó n d e d a t o s a 1 0 b i t s y T x s e r i a l v í a R S -2 3 2


* * * * * * * * D E F IN IC IO N DE REGISTROS Y B IT S U T IL IZ A D O S
sión hacia la computadora, reali­ s ta tu s equ 03 ; r e g i s t r o de e s ta d o
p to a equ 05 ; d ir e c c io n e s de lo s p u e rto s
zando todas las actividades nece­ p to b equ 06 ; d e l m ic ro c o n tro la d o r
p to c equ 07
sarias para la transmisión, por lo p c la th 0ah •
equ >
cual ú n icam en te nos debem os in tc o n equ 0bh ; r e g is t r o de c o n tr o l de la s
p ir l equ 0ch ; in te r ru p c io n e s
p reo cu p ar de co n fig u rar ad e­ re s ta equ 18 h ; e s ta d o de l a r e c e p c ió n
tx re g equ 19 h ; r e g is t r o de tr a n s m is ió n
cu ad am en te ciertos registros. rc re g equ la h ; r e g i s t r o de re c e p c ió n
a d re s h equ le h
adconO equ lfh ; c o n t r o l de l o c a n a le s a /d
A m bos m ó d u lo s, el con- tr is a equ 85h ; c o n fig u r a c ió n de lo s p u e rto s
tr is b equ 86h
versor y el U SA R T , se h an u ti­ tr is e equ 87h
tx s ta equ 98h ; e s ta d o de l a t r a n s m is ió n
lizado en este proyecto y por s p b rg equ 99h ; v e lo c id a d de tra n s m is ó n
a d re s l equ 9eh
esa razón los en trarem o s a a n a­ adconl equ 9 fh ; c o n t r o l de l o s c a n a le s a /d
lizar brevem ente. rp 0 equ 5 ; b i t s de c o n f i g u r a c ió n de l a p á g in a
rp l equ 6
ir p equ 7
z equ 2 ; b i t c e ro
Módulo conversor c equ 0 ; b it c a rry
análogo-digital tx if
go
equ
equ
4
2
Recordem os el p rin cip io básico lo o p s equ 20h ; r e g is t r o s p a ra a ju s t a r re ta rd o s
lo o p s 2 eq u 21h
bajo el cual trabaja un conver­ n i b b l e l eq u 22h
n ib b le 2 equ 23h
sor A/D: d e p e n d ie n d o de la n ib b le 3 equ 24h
m agn itu d de la señal análoga,
se carga un condensador hasta
yb u ffe r
.
equ

o rg
g o to
25h
* * * * * EM PIEZA EL PROGRAMA
00
in ic io
cierto nivel; según dicho nivel, re ta rd o m ovwf lo o p s ; s u b r u t in a de r e t a r d o en m ilis e g u n d o s
to p 2 m o v lw d’ll0 v ; e l n ú m e ro d e m ilis e g u n d o s l l e g a
el condensador tarda d eterm i­ m ovwf lo o p s 2 ; c a rg a d o en e l r e g i s t r o lo o p s
to p nop
nado tiem po en descargarse, el nop
cual puede m edirse para calcu­ nop
nop
lar la m a g n itu d de la señal aná­ nop
nop
loga de entrada. d e c fs z lo o p s 2 ¡ p r e g u n t a s i t e r m i n ó 1 ms
g o to to p
d e c fs z lo o p s ¡p re g u n ta s i te rm in a e l r e ta r d o
La conversión de esa entra­ g o to to p 2
re tu rn
da análoga entrega un núm ero ; R u t i n a d e c o n v e r s i ó n A /D a 1 0 b i t s d e v u e lv e 3 d a to s e n h e x a d e c im a l g u a rd a d o s
;e n l o s r e g i s t r o s n i b b l e l , n ib b le 2 y n ib b le 3
digital de 10 bits, razón por la conver bsf s ta tu s ,rp 0
m o v lw b *10000010' ¡ s e l e c c i o n o V r e f i n t e r n o s ( + 5 y GND)
cual, cuando la conversión A/D ¡ y 5 c a n a l e s A /D
se ha completado, el resultado se m ovwf adconl ¡ d a t o s e n ADRESL y 2 b i t s e n ADRESH
bef s ta tu s ,rp 0
carga en dos registros denom ina­ nop
nop ¡e s ta s in s tr u c c io n e s no s ir v e n p a ra
dos A D RE SH y A D RE SL don­ nop ¡ d a r l e a l m ic r o e l tie m p o de a d q u i s i .
nop ¡ r e q u e r id o . En e s t e c a s o e s d e 7 p s a p r o x .
de se almacenan la parte alta y baja nop
del resultado, respectivamente. nop
bsf a d c o n 0 ,g o ¡ i n i c i a c o n v e rs ió n
nop
nop
Para utilizar el m ódulo con­ consu b tfs c a d c o n 0 ,g o ¡e s p e ra que te rm in e de c o n v e r t ir e l d a to
g o to consu
versor A/D in tern o , se deben m ovf a d re s h ,w ¡d e b e p a s a r l o s t r e s d í g i t o s h e x a d e c .
configurar los pines de entrada, m ovwf n ib b le l ¡a l o s r e g i s t r o s i n d i v i d u a l e s p a ra
m o v lw 30h ¡s e r tr a n s m itid o s
el voltaje de referencia y el reloj addwf n ib b le l ¡ A l r e g i s t r o n i b b l e 1 l e suma 3 0 h p a r a
bsf s ta tu s ,rp 0 ¡ c o n v e r t i r l o e n A S C I I a n t e s d e TX
de conversión. m ovf a d r e s l,w
bef s ta tu s ,rp 0
m ovwf b u ffe r
Para una b uen a conversión a n d lw 0 fh ¡E l r e g is t r o n ib b le 3 que c o n tie n e e l
m ovwf n ib b le 3 ¡ d í g i t o m enos s i g n i f i c a t i v o
A/D, el reloj de la conversión m o v lw 0ah ¡ d e b e p r o b a r s e p a r a v e r s i e s un

Curso práctico sobre M icrocontroladores c e / K ir.


Adquisición de datos por el puerto serial

subwf n ib b le 3 ,0 ; n ú m e ro d e 0 a 9 o s i es l e t r a A h a s ta F
m o v lw 37h ; p a r a h a c e r l a c o n v e r s ió n a c ó d ig o A S C II
b tfs s s ta tu s ,c
m o v lw 30 h
addwf n ib b le 3
sw apf b u ffe r,0
a n d lw 0 fh
m ovwf n ib b le 2 ;E 1 d í g i t o d e l c e n t r o n i b b l e 2 t i e n e e l m is m o
m o v lw 0ah ¡ p r o c e d im ie n to que n ib b le 3
subw f n ib b le 2 ,0
m o v lw 37h
b tfs s s ta tu s ,c
m o v lw 30h
addwf n ib b le 2
re tu rn
e n v ia r m ovf n ib b le l,0
esper b tfs s p ir l,tx if ¡E s ta r u t in a e n v ía s e r ia lm e n te lo s d a to s
g o to esper ¡ o b te n id o s en ca d a c o n v e rs ió n
m ovwf tx re g ¡ tr a n s m ite e l d í g i t o h e x a d e c im a l d e m a y o r p e s o
m ovf n ib b le 2 ,0 ¡ tr a n s m ite e l s e g u n d o d í g i t o h e x a d e c im a l
e s p e ra b tfs s p ir l,tx if ¡p e ro debe e s p e r a r q u e t e r m in e d e TX e l a n t e r i o r
g o to e s p e ra
m ovwf tx re g
m ovf n ib b le 3 ,0 ¡ tr a n s m ite e l t e r c e r d í g it o
e s p e r2 b tfs s p ir l,tx if ¡ p e r o a n te s r e v is a que h a ya e n v ia d o e l se g u n d o
g o to e s p e r2
m ovwf tx re g
m o v lw d’44' ¡ e l c a r á c t e r «com a» s i r v e p a r a s e p a r a r e l d a to
e s p e r3 b tfs s p ir l,tx if ¡d e l o s d i f e r e n t e s c a n a le s
g o to e s p e r3
m ovwf tx re g
re tu rn
**** PROGRAMA P R IN C IP ***************
in ic io bsf s ta tu s ,rp 0
m o v lw 0 ffh
m ovwf tr is a ¡ p u e r to A e n tra d a s
m ovwf tr is b ¡ p u e r to B e n tra d a s
m o v lw b ’ 10111111'
m ovwf tr is e ¡ p u e r t o C e n t r a d a s y p i n TX s a l i d a
m o v lw b ’ 00100110’ ¡ p r o g r a m a USART n o s i n c r ó n i c o p a r a TX
m ovwf tx s ta ¡ a l t a r a t a de b a u d io s
m o v lw d *103' ¡ c o n f i g u r a t e m p o r i z a d o r a 4 MHZ
m ovwf s p b rg ¡2 .4 0 0 bps ( 8 , n , l )
bcf s ta tu s ,rp 0
bsf p ir l,tx if
m o v lw b ’ 10000000’ ¡ h a b ilita p u e rto s e r ia l
m ovwf re s ta
m o v lw b *10000001' s e le c c io n a c a n a l 0 , r e l o j de co n v. fo s c /3 2
m ovwf adcon0 c o n v e r t i d o r e n c e n d id o
c a li conver lla m a r u t i n a d e c o n v e r s ió n A /D
c a li e n v ia r e n v ía d a to s s e r ia le s
m o v lw b ’ 10001001’ s e le c c io n a c a n a l 1 , r e l o j de co n v. fo s c /3 2
m ovwf adcon0 c o n v e r t i d o r e n c e n d id o
c a li conver l l a m a r u t i n a d e c o n v e r s i ó n A /D
c a li e n v ia r e n v ía d a to s s e r ia le s
m o v lw b ’ 10010001' s e le c c io n a c a n a l 2 , r e l o j de co n v. fo s c /3 2
m ovwf adcon0 c o n v e r t i d o r e n c e n d id o
c a li conver l l a m a r u t i n a d e c o n v e r s i ó n A /D
c a li e n v ia r e n v ía d a to s s e r ia le s
m o v lw b ’ 10011001' s e le c c io n a c a n a l 3 , r e l o j de conv. fo s c /3 2
m ovwf adcon0 c o n v e r t i d o r e n c e n d id o
c a li conver l l a m a r u t i n a d e c o n v e r s i ó n A /D
c a li e n v ia r e n v ía d a to s s e r ia le s
m o v lw d ’ 13' La s e p a r a c ió n e n t r e c a d a b lo q u e d e 4 d a to s
e s p e r4 b tfs s p ir l,tx if se hace co n un c a r r ia g e r e t u r n
g o to e s p e r4 y un c a r á c t e r l i n e fe e d
m ovwf tx re g
m o v lw d ’ 10' ¡ s i r v e p a ra s e p a r a r la s lí n e a s de d a to s que
e s p e rS b tfs s p ir l,tx if ¡ s e r e c i b e n e n e l p r o g r a m a t e r m i n a l d e W in d o w s
g o to e s p e r5 ¡C a d a l í n e a d e d a t o s t i e n e c a n a l 0 , c a n a l l , c a n a ! 2 y
:a n a !3 m ovwf tx re g
nop
nop
s p e r6 b tfs s p ir l,tx if ¡ e s t a c o m p ro b a c ió n e s p a r a g a r a n t i z a r q u e s e t r a n s m i t a
a;

g o to e s p e r6 ¡ e l ú ltim o c a r á c te r a n te s de s e g u ir con o t r a a c tiv id a d


m o v lw d ’ 250' ¡ r e t a r d o e n t r e b lo q u e s de 4 c a r a c t e r e s
c a li re ta rd o ¡ e s t e r e t a r d o e q u iv a le a 250 m ilis e g u n d o s
g o to in ic io ¡Vuelve a empezar el ciclo para enviar otro paquete de datos
end

Figura 2 4 .2 Código fuente del proyecto

& H K E T .A .
Curso práctico sobre M icrocontroladores
( Proyectos

debe asegurar por lo m enos, un tiem po de co n ­ u n a com putadora. A pesar de qu e en este caso se
versión de 1,6 us para cada bit. ha utilizado un P IC 16F 873 , las rutinas son ex­
tendióles a otros dispositivos sin necesidad de ha­
Módulo USART cer mayores cambios.
Varios microcontroladores PIC de las series lóC xxx,
l6F xxx y 17Cxxx poseen un módulo U SA R T in ­ Existen ocho registros especiales asociados con
terno o módulo universal transmisor-receptor sincró- la USART, los cuales se deben configurar conve­
nico-no sincrónico. Este m ódulo se encarga de reali­ nientem ente para establecer el control, el estado y
zar la com unicación no sincrónica full-duplex o la la interfaz de datos que requiere el programa. Toda
com unicación sincrónica b a lf dúplex. la configuración de estos registros se puede seguir
en el programa, el cual se m uestra en la figura 24.2.
Este m ó d u lo , adem ás de arrojar excelentes
resultados, p erm ite aliv iar un poco el trabajo del Analicemos brevemente algunos de estos re­
program ador y p erm ite m ás espacio de progra­ gistros. El registro SPBRG se usa para establecer la
m a disponible para otras tareas distintas a la de rata de transmisión ( bits por segundo); el conteni­
la co m unicación. do que debe tener este registro, antes de habilitar la
USART, se determ ina según la siguiente fórmula:
El formato de los datos m anejados por el m ó­
dulo es: un bit de inicio, ocho o nueve bits de da­
tos, y un bit de parada (stop). D entro de este for­
Fose - 64 (Ra)
SPBRG =
m ato no se encuentra el bit de paridad, sin em bar­ 64 (Ra)
go, el noveno bit puede usarse para ese fin. En
esta ocasión seguirem os el diagram a m ostrado en Donde Fose es la frecuencia de oscilación en M Fiz y
la figura 2 4 .1 , en el cual existe com unicación con R a es la rata de los datos en bits por segundo.

7 6 5 4 3 2 1 0
trsc
Deben estar en uno
para la operación de la
USART

7 6 5 4 3 2 1 0
ROSTA 1 0
CREN: Habilitar recepción
TRMT: 1 Registro de transmisión vacío
Rxa: Selección modo no sincrónico
SPEN: Puerto serial habilitado
7 6 5 4 3 2 1 0
PIR 1
7 6 5 4 3 2 1 0
TXIF: 1 Buffer de
TXSTA | 0 1 0 0 * transmisión vacío
RCIF: 1 Recibe dato
'— ► BRGH: selección de rata baja
U SYNC: Selección modo no sincrónico
TXEN: Transmisión habilitada
*TX9: Transmisión en 10 bits
RCREG
Registro de recepción
Recibe datos cuando RCIF está en 1
6 5 4 3 2 1 0 7 f i A 9 9 1 n
SPBRG 0 0 1 1 0 0 1
TXREG
LL ■ ■

Registro de transmisión
Contenido = fos- . ^ 1 * ^ - =1 M Hz: 64 (rata) Se recibe en este registro sólo cuando TXIF
64 (rata) 64 (2.400) está en 1

Figura 24 .3 Registros asociados al control de la USART Figura 24.4 Registros asociados al estado de la USART

Curso práctico sobre Microcontroladores S . A .


Adquisición de datos por el puerto serial

• U n registro vacío in d ic a q u e el byte q u e va a


ser tra n s m itid o h a sid o m o vido h acia un re­
gistro de d e sp la z a m ie n to , q u e co n v ie rte el
d ato a fo rm ato serial y em p iez a el proceso
Formato de datos
¿Registro de
transmisión
de la USART d e tra n sm isió n d el byte.
1 START
vacío ? r
8 o 9 datos
1 STOP • Si el registro d e d e sp la z a m ie n to se e n c u e n ­
Si
tra o cu p a d o , no tien e lu g a r la tra n sm isió n
de nuevos c o n te n id o s, es d ecir, h asta qu e
Carácter de registro el byte previo h a y a sid o tra n s m itid o c o m ­
de desplazam iento
para su transmisión p le ta m e n te .

C6 = TX
C7 o RX
En este caso , co m o m e n c io n a m o s en un
p r in c ip io , la ta rje ta lee las señ ales p ro v e n ie n ­
S alir tes de c u a tro sensores y a a c o n d ic io n a d o s e n ­
tre cero y cin c o v o ltio s, y esa in fo rm a c ió n la
e n v ía s e ria lm e n te de la s ig u ie n te fo rm a: d e n ­
Figura 2 4 .5 Diagrama de flujo de la subrutina de transmisión
tro d el p ro g ra m a ex iste u n a r u tin a d e c o n v e r­
Los registro s R C S T A y T X S T A , estab le­ sió n A/D q u e , co m o re su lta d o fin a l, arro ja
cen el estado y el co n tro l de la recepció n y la c a d a d a to de la se ñ a l en tres c a ra c te re s h exa-
tr a n s m is ió n , r e s p e c tiv a m e n te . Los reg istro s d e c im a le s ; p o r e je m p lo 2 F 5 , d o n d e el p rim e r
R C S T A , R X ST A y P IR 1 , p ro p o rcio n an el es­ c a rá c te r e n v ia d o c o rre sp o n d e al M S B y el ú l­
tad o d e la c o m u n ic a c ió n . tim o al L SB .

En la fig u ra 2 4 .3 se ven los registro s de C a d a ca rá cter de estos se a lm a c e n a en re­


co n tro l req u erid o s p ara c o n fig u ra r u n a c o m u ­ gistro s sep arad o s y es en v ia d o un o tras o tro se­
n ic a c ió n de ocho bits d e d ato s a 2 .4 0 0 bits por cu en cialm e n te . D espués d e cada p aq u ete de es­
segu n d o . La fig u ra 2 4 .4 m u e stra las b an d eras tos, se e n v ía el ca rá cter p ara in d ic a r q u e ha
de estad o de la U SA R T . te rm in a d o el d ato de la p rim e ra se ñ al, y qu e
sig u e el d ato de la se g u n d a señ al, y a sí su cesi­
Transmisión por la USART v a m e n te h asta q u e se en v ían los d ato s d ig ita ­
Para establecer comunicación, a través de este mó­ les de las cu a tro en trad as an a ló g ic a s. A cto se­
dulo, se deben seguir los siguientes pasos, figura 24.5. g u id o se en v ían los caracteres “0 D ” y “0 A ”,
q u e in d ic a n q u e te rm in ó el en vío de las m u es­
• Se verifica si el registro de transm isión se en ­ tras de cad a señ al, fig u ra 2 4 .6 .
cuentra vacío, chequeando la bandera deT X IF
en el registro PIR1. Montaje del proyecto
• Si ese registro no está vacío (bandera en cero), El procedim iento para arm ar este proyecto es m uy
se entra a un procedim iento cíclico de chequeo sencillo, debido a qu e se necesitan m u y pocos
hasta qu e esa bandera se ponga en uno. com ponentes para su ensam blaje, lo qu e hace esta

Figura 2 4 .6 Estructura de la trama


de transm isión

Curso práctico sobre M icrocontroladores


Proyectos

Figura 2 4 .7 Monitoreo desde la computadora

ADQUISICION DC DATOS
POR EL RUERTO SERIAL
IC ) C3
U
Entrada de las - C onector D B -9
señales análogas
_Controlador para
M icro co n tro lad o r los niveles R S -232
P IC 16F873
XT AL

C E K IT K - 2 2 5

Figura 2 4 .8 Guía de montaje de la tarjeta


tarjeta esp ecialm en te atractiva p ara tenerla en
nuestro laboratorio, por el poco espacio qu e ocu­
pa y por la capacidad de ad q u irir datos en 10
bits. Para m an ejar la tarjeta se puede elaborar un
program a en C , LabV IEW , o cu alq u ier otro en­
torno de p rogram ación, en donde se p u ed a im-
p lem en tar la lectura tenien do en cuenta el for­
m ato con qu e se han enviado los datos. Sin e m ­
bargo, la prueba m ás rápida qu e se puede hacer
del funcio nam ien to de la tarjeta es a través del
program a hyperterm inal de W in d o w s 9 5 ; éste se
debe configurar a 2 .4 0 0 bps, sin control de flu­
jo, para poder leer sin n in gú n problem a los d a ­
tos qu e se están adqu irien do , fig u ra 2 4 .7 . En la
fig u ra 2 4 .8 se m uestra la guía de m o ntaje y en la
fig u ra 2 4 .9 la ap arien cia final del circuito. Figura 2 4 .9 Aspecto final de la tarjeta ensamblada

Curso práctico sobre M icrocontroladores m k i t : .


Adquisición de datos por el puerto serial

Ensamblaje del proyecto LISTA DE MATERIALES

* Cant. Ref. Descripción

*• .) •J ► •»
|. * »
#1 IC 1
IC 2
C1 y C 2
M ic ro c o n tro la d o r P IC 1 6 F 8 7 3 , p ro g ra m a d o
C ir c u it o i n t e g r a d o M A X 2 3 2
C o n d e n s a d o r e s c e rá m ic o s d e 2 0 p F - 5 0 V
C3 C o n d e n s a d o r c e r á m i c o d e 0,1 p F - 5 0 V
C 4 ,C 5 ,C 6 y C 7 C o n d e n s a d o r e s e le c t r o l í t i c o s d e 1 0 p F /2 5 V
XTAL C r is t a l d e c u a r z o d e 4 M H z
K -2 2 5 C ir c u it o im p r e s o C E K I T K - 2 2 5
C o n e c t o r e n l í n e a d e 2 p in e s
C o n e c t o r e s d e t o r n illo d e 2 p in e s
Figura 2 4 .1 0 Conjunto de componentes electrónicos y los C o n e c t o r D B 9 h e m b r a p a r a im p r e s o
accesorios que se requieren para ensam blar el circuito de B a s e p a r a i n t e g r a d o d e 2 8 p in e s , d e lg a d a

adquisición de datos por el puerto serial CEKIT K-225. B a s e p a r a i n t e g r a d o d e 1 6 p in e s


C o n e c to r D B 9 h e m b ra c o n c a rc a s a
Unos de los usos más importantes de las computadoras es la C o n e c to r D B 9 m a c h o c o n c a rc a s a
adquisición de datos provenientes de sensores o equipos m C a b l e r i b b o n d e 2 h ilo s
electrónicos. Por medio de esta tarjeta, se podrá utilizar el puerto 4 T o r n illo s d e 1 /2 " X 1 /8 " c o n s u s t u e r c a s
serial de la PC para comunicarse y adquirir datos desde cuatro 1 L á m in a d e a c rílic o d e 8 5 m m X 7 0 m m X 2 ,5 m m
fuentes diferentes. Para el ensamblaje de la tarjeta tenga en 4 S e p a r a d o r e s p lá s t ic o s d e 5 m m
cuenta los siguientes pasos:

Paso 1
Instale y suelde e l cristal de cuarzo XTAL, de 4MHz.
Instale y suelde las bases para los circuitos integrados IC1 e IC2. Figura 24.14
Figura 24.11

Paso 5
Paso 2 Instale y suelde el conector para la alimentación de +5VCC, y
Luego instale y suelde los condensadores cerámicos del oscilador los conectores de tornillo de 2 pines, en las cuatro entradas
y del filtro de la fuente C1,C2 y C3. (canal 1 a canal 4 ).
Figura 24.12 Figura 24.15

Paso 3 '—J Qm*‘ ’ Paso 6


. .. . r. . . . J úe i0uFC 4 C5 Aspecto final de la tarjeta de adquisición de datos por el puerto serial
K-225, luego de haber soldado el conector DB-9H para el puerto serial,
C6yC7.
y ubicados los circuitos integrados en sus respectivas posiciones.
Figura 24.13
Figura 24.16
Paso 7. Pruebas finales
Esta tarjeta debe alimentarse mediante un voltaje de CC de 5 V en el conector en línea de dos pines, ubicado en la parte superior
derecha. Conecte adecuadamente la alimentación para evitar daños en los circuitos integrados. Por medio de un programa de
prueba de PC, como el hyperterminal, haga una lectura de los datos que la tarjeta transmite de forma permanente.

S,4.
Curso práctico sobre M icrocontroladores
CERRADURA ELECTRÓNICA
Este proyecto permite tener en nuestro propio hogar
u oficina un moderno sistema de control de entra­
das, antes exclusivo del sistema bancario. Con este
sistema podemos decidir quien puede entrar y cuan­
do, ya que es posible cambiar la “llave” (clave) en
cualquier momento, a través del mismo teclado con
el que escribimos el código de acceso.

Características
• Admite una clave de cuatro dígitos, entre los que
se encuentran los números del 0 al 9, y las letras
B, D, E y F.
• Estos cuatro dígitos posibilitan un total de 38.876
combinaciones diferentes.
• Fácil y segura modificación de la clave.
• Tamaño reducido, lo que permite una fácil insta­
lación del sistema.

Curso práctico sobre M icrocontroladores


Cerradura electrónica !■

Funcionam iento m em o ria en el m icrocontrolador, nos ahorra ter-


El sistem a se p u ed e d iv id ir en dos p artes: una ner qu e in clu ir una m em oria serial externa, com o
ló g ic a , y o tra de p o te n c ia . En la p rim e ra se e n ­ una 2 4 C X X o una 93XXX. El uso de estas m e­
c u e n tra u n m ic ro c o n tro la d o r P IC 1 6 F 8 4 , el m orias se ju stifica en casos donde debam os ala-
cu al tien e co m o fu n c ió n re c ib ir la clave prove­ m cenar gran can tid ad de datos, com o en un sis­
n ie n te d el te c lad o y c o m p a ra rla con la q u e ha tem a de in strum entació n. Este caso lo abordare­
sid o a lm a c e n a d a con a n te rio rid a d en la m e ­ mos en nuestro siguiente proyecto titulado «D a-
m o ria ; si éstas son ig u a le s, el m ic ro c o n tro la ­ talogger de 12 bits».
d o r a ctiv a, a través d el p in 6 (RBO), e l c irc u ito
de la c a n to n e ra o cerrad u ra eléctrica con el cual El m icrocontrolador tiene com o función
se p u ed e a b rir la p u erta. recibir la clave proveniente del teclado y co m p a­
rarla con la qu e se ha alm acen ado ; si éstas son
En la fig u ra 2 5 .1 tenem os un d iagram a de iguales, el m icrocontrolador activa, a través del
bloques genérico donde se puede apreciar la es­ pin 6 , el circuito de la cantonera, con lo cual se
tru ctu ra del proyecto, en él se puede d istin gu ir puede ab rir la puerta.
el m icrocontrolador PIC 16F84 que es el elem en­
to central de procesam iento, al cual se conecta Es claro qu e para lograr qu e la cerradura
com o dispositivo de entrada u n teclado hexade- se abra, es necesario escribir en el teclado la clave
c im al tipo m em b ran a y, com o dispositivos de correcta, ya sea la qu e se grab a in icialm en te en la
salida, el circuito qu e m an eja el cierre de la can­ m em o ria o la qu e el usuario haya grabado, pues­
to n era y el circuito que genera una señal audib le to q u e es posible m o dificar la clave in icial desde
por m edio de un zum bador. el teclado. C ad a vez qu e se d igite cada uno de los
núm eros qu e conform an la clave, una señal a u ­
D entro del código del program a se ha dis­ dible in d ica su validez.
puesto el alm acen am ien to in icial de u n a clave de
acce so en c u a tro p o sic io n e s de la m e m o ria U n a vez in tro d u cid a la clave, el usuario
E P R O M de datos del m icrocontrolador. Es de debe pulsar la tecla A (A brir); si la clave in tro d u ­
anotar qu e gracias a la presencia de este tipo de cid a es la correcta, la can ton era se abrirá durante

ALIM EN TA C IO N REGULACIÓN A lim entación del


CA DE VOLTAJE circu ito 5V CC

CIRCUITO DE
CONTROL DE LA MICROCONTROLADOR
CANTONERA PIC16F84

CANTO NERA

Figura 2 5 .1 Diagrama de bloques del proyecto

Curso práctico sobre M icrocontroladores


Proyectos

Figura 2 5 .2 Diagrama esquemático de la cerradura

Curso práctico sobre M icrocontroladores


Cerradura electrónica

u n tiem po determ inado. A p artir del m om ento El circuito para el zum bador piezoeléctrico
de la apertura, si desea cam b iar la clave de acce­ se co m p on e fu n d am en talm en te de un circuito
so, cuenta con algunos segundos para introducir o scila d o r b asad o en c o m p u e rta s N A N D , tal
el nuevo código, el cual debe term in ar pulsando com o se m uestra en la fig u ra 2 5 .3 . El m icrocon­
la tecla C (C am b iar). trolador m aneja este circuito al proporcionarle o
no su voltaje de alim entació n.
En la fig u ra 2 5 .2 está el d iagram a esque­
m ático del circuito donde podem os apreciar cada Circuito de potencia
u n a de las partes co n stitu tivas del proyecto y La cantonera, o m ecanism o de cerrojo de la puer­
donde podem os ver claram en te el desarrollo de ta, se a lim e n ta n o rm alm en te co n ectán d o la al
los circuitos del d iagram a de bloques. voltaje de la red (corriente alterna). Pero en este
caso preferim os hacerlo con corriente continua,
El softw are o p ro g ra m a in te rn o tam b ién y a qu e este m étodo tiene la ventaja de elim in ar
c o n tie n e las ru tin a s p ara la p ro g ram ac ió n de el ruido excesivo del solenoide cuan do éste se
nuevas claves a través del teclad o . El circu ito activa, debido a qu e no se presentarán cruces por
ló g ico ta m b ié n p e rm ite a ctiv ar u n a a la rm a o cero de la señal de alim entació n.
z u m b a d o r d u r a n te 4 0 segu n d o s, cu a n d o el n ú ­
m ero d e in te n to s errón eo s p ara in tro d u c ir la C o m o se puede apreciar en el diagram a
clave lleg u e a tres. A d em ás, el sistem a ofrece esquem ático, el T R IA C se dispara por m edio de
o tras fu n c io n e s, co m o son g e n e ra r u n tono u n a señal en el pin RBO, perm itiendo qu e el vol­
a u d ib le c u a n d o se p re sio n a u n a tecla, y e n c e n ­ taje del transform ador llegue al puente rectifica­
d er un d io d o LE D q u e in d ic a q u e la clave in ­ dor B R 2 y un voltaje de corriente co n tin u a ali­
tro d u c id a es correcta. m en te la cantonera.

El circuito de potencia contiene los elementos El puente B R 2 cuenta con u n a red R C para
necesarios para la alim entación del circuito lógico y evitar problem as de ruid o , y la salida del m icro ­
el de lí'can to n era. El voltaje regulado para el m i­ controlador se h a pasado por un optoacoplador
crocontrolador se obtiene de un circuito basado en p ara qu e cuan do el T R IA C se encuentre cerra­
un puente rectificador, unos condensadores para do, se presente un desacople galvánico entre la
filtrar la señal, y un regulador 78 05 que proporcio­ señal C A y el m icrocontrolador, evitando daños
na los 5 voltios para el microcontrolador. en el circuito d igital.

Figura 2 5 .3 Diagrama esquemático del circuito del zumbador

á *
€ M K iT s l Curso práctico sobre M icrocontroladores
Proyectos

Circuito lógico 2- Por la term inación de la tem porización del


Está c o m p u esto b ásic a m e n te , p o r un p ro cesa­ circuito de vigilan cia ( WatchDog Timer).
d o r q u e e je c u ta u n a serie d e in stru c c io n e s y 3 - Por u n a interrupción.
u n a m e m o ria en la cu al se a lm a c e n a el có d igo
d el sistem a. P ara el p resen te c irc u ito , se u tiliz a En el presente proyecto, el prim ero de los
co m o p ro c e sa d o r u n m ic ro c o n tro la d o r P IC eventos no es posible, y a qu e el pin M C L R se en­
1 6 F 8 4 de M ic ro c h ip ; de éste se ap ro vech an a l­ cuentra unido al term in al positivo (+5V) de la
g u n a s de sus ca ra c te rístic as esp eciales, com o fuente de alim entación y no se ha d ejado dispo­
son las in te rru p c io n e s, la m e m o ria E P R O M nible n in gú n pulsador qu e pueda m an ip u lar el
de d ato s, y el m o do de b ajo co n su m o . R ecu er­ usuario. Los otros dos eventos sí son aprovecha­
de q u e éste, co m o todos los m ic ro c o n tro la d o ­ dos para lograr que el m icrocontrolador atienda
res, se d eb e p ro g ra m a r p ara q u e p u e d a o p erar m o m en tán eam en te (d u ran te m icrosegundos o
de acu erd o a la tarea p ara la c u a l h a sid o d e sti­ unos pocos milisegundos) algunas condiciones ex­
n ado . Esto q u iere d ec ir q u e si en el c irc u ito se ternas, tales com o la activación de elem entos tales
c o n e cta u n m ic ro c o n tro la d o r tal co m o lo s u ­ com o una bocina o un relé.
m in is tra el fa b ric a n te , el p ro yecto n o fu n c io ­
n ará; p o r lo ta n to , el u su a rio d el p ro yecto debe La term in ación de la tem porización del cir­
a d q u ir ir el m ic ro c o n tro la d o r con el fab rican te cu ito de vigilan cia posee un tiem po n o m in al de
de los k its (C E K IT S .A .), o p ro g ra m a r su p ro ­ 18 m ilisegundos, pero, con la utilización de un
p io c irc u ito in te g ra d o co n los arch ivo s q u e se preescalador es posible extenderlo a 2 ó 3 segun ­
e n c u e n tra n d isp o n ib le s en n u estra p á g in a en dos. A q u í se utiliza p ara generar algun as rutinas
la in te rn e t. R ecu erd e q u e ta m b ié n se e n c u e n ­ de tiem p o , necesarias p ara activar d u ran te un
tran d isp o n ib le s los archivo s p ara c o n s tru ir un determ in ad o intervalo la can ton era o el zu m b a­
p ro g ram ad o r de m icro co n tro lad o res P IC por dor, al igu al qu e para establecer un tiem po de
m e d io d el p u e rto se ria l de u n a co m p u ta d o ra . h ab ilitació n para el cam b io de la clave.

El m o do de bajo co nsum o se co n sigu e por En el microcontrolador PIC 16F84 se poseen,


la ejecu ció n , por parte del m icro con trolad or, de entre otras, las siguientes fuentes de interrupción:
la in stru cció n SLEEP, an te lo cual el oscilador
se detiene y, con ello, todas las funciones de éste, • In te rru p c ió n e x te rn a p ro v en ien te d el pin
en tran d o en u n estado d e h ib ern ació n . El ú n i­ RBO/INT
co elem en to q u e p erm an ece activo es el c irc u i­ • Por so b reflu jo d el tem p o rizad o r/ co n tad o r
to de v ig ilan c ia , si es qu e se h a d ejad o esta op­ TIM ERO
ción en los fusibles E E P R O M del m icro co n ­ • Por el c a m b io de estad o en c u a lq u ie ra de
tro lad o r (en el m o m en to del grabar el archivo los cuatro pines m ás significativos del puerto
H E X en la m em o ria del m icro co n tro la d o r); este B (R B 4 a R B 7 ).
circu ito posee su propio o scilad o r com puesto
p o r un cristal de 4 M H z . U n a n o ta im p o rtan te A q u í se usa la ú ltim a , y p ara ap ro vech arla,
es qu e el estado presente en cad a un o de los p i­ las cu a tro c o lu m n a s d el teclad o se h a n co n ec­
nes de los puertos se conserva. tad o a estos p in es, u tiliz á n d o se co m o e n tra ­
das. D ich os p in es p erm a n ec en en u n estado
Para salir del estado de h ib ernació n, el m i­ ló gico alto ap ro vech an do elem en to s p u ll-u p in ­
crocontrolador sólo responde a unos d eterm in a­ tern o s, q u e se h a b ilita n o d e s h a b ilita n p o r soft­
dos eventos: ware. Por otro lad o , las cu atro filas se h an p ues­
to a los p in es RAO h asta R A 3, y se co n fig u ran
1- Por el cam bio a un estado bajo del pin M C L R . co m o sa lid a s, co lo cán d o se estad os ló gico s ba-

Curso práctico sobre M icrocontroladores es k it .


Cerradura electrónica l

jo s en ello s co n a n te la c ió n a la e je c u c ió n d e la (debido a los “ceros” que se encuentran en las colum­


in stru c c ió n SLEEP. nas). Ésta es una de las situaciones que “despiertan” al
microcontrolador, y, opcionalmente generan una in­
Cuando se pulsa cualquiera de los elementos del terrupción (si es que éstas se encuentran habilitadas).
teclado, las columnas, que normalmente se encuen­
tran en un estado alto (debido a los elementos pull- El código o clave del sistem a se alm acen a en
up internos habilitados), tom an el estado lógico bajo la m em o ria E P R O M de datos.

WT~
W06M

C irc u ito re c tific a d o r


y re g u la d o r p a ra la
C o n ecció n del a lim e n ta c ió n
tra n s fo rm a d o r ER £
k!C£M
CAN1
XTJ
4 MHz

C o n e c c ió n d e la
c a n to n e ra
C4
0 .1 /2 5 Q V
em e

C o n e c to r p a ra el
te c la d o

M ic ro c o n tro la d o r

* ]C c ' R3 IC J
)_ M 0C3031 ££0 P ]C 1 6 r8 4

CERRADURA ELECTRONICA CON PIC

TECLADO

Z u m b a d o r p ie z o e lé c tric o -------------------------------------------------------------------- ) O ^ c irc u ito p a ra el


. fu n c io n a m ie n to d el
zum bador

Figura 25.4 Guía de ensam blaje de la cerradura

emiicir, Curso práctico sobre M icrocontroladores


i Proyectos

Ensamblaje cir a lg ú n d íg ito , sólo tie n e q u e escrib ir d e n u e ­


G racias a la tecn o lo gía de los m icro co n tro lad o ­ vo el c ó d ig o co rrecto .
res, la co n stru cció n de dispositivos electrónicos
se to rn a m u y sim p le, p ues la c a n tid a d de c o m ­ El sistem a se ha diseñado de tal form a que
ponentes se reduce a m enos de la m ita d de lo alm acena los cuatro últim os dígitos introducidos
qu e antes se requería para un diseño sim ilar; ade­ desde el teclado; para qu e la clave sea validada, se
m ás, el tiem p o d e en sam b laje de los circuitos hace necesario qu e el usuario pulse la tecla A
tam b ién d ism in u y e. (Abrir). Si los dígitos introducidos coinciden con
la clave del sistem a, la cantonera conectada al ter­
El c u id a d o en estos casos se c e n tra en la m in al de salida RBO se activará durante aproxi­
m a n ip u la c ió n d e l m ic ro c o n tro la d o r, y a q u e m adam en te 1,5 segundos, tiem po qu e se conside­
éste es sen sib le a la e le c tric id a d e stática; por ra suficiente para los propósitos de apertura de una
ta n to , es el c o m p o n e n te q u e se d eb e in sta la r puerta, por ejem plo.
en ú ltim o té rm in o y só lo d esp u és de h ab er
co m p ro b ad o q u e la p o la rid a d de la fu en te de Cambio de clave
a lim e n ta c ió n es correcta. P ara m o d ific ar la clave, sólo p ued e hacerlo d es­
p ués de u n a c o n d ic ió n d e a p e rtu ra . A p artir
In icialm en te, in stale en la tarjeta los p u e n ­
tes d e alam b re, recorte las p artes sobrantes y Introducir la
suelde. C o n tin ú e con el m o n taje d e las resis­ clave por medio Señal sonora
del teclado
ten cias, los d io d o s, las bases p ara los circuito s
in tegrad o s, los conectores, los condensadores y
d em ás elem entos. En las g u ías de en sam b laje Validar con la
de la fig u ra 2 5 .4 , p ued e observar la d istrib u ­ letra A

ción de los co m p on entes.

C u an d o haya m o n tad o co m p letam en te los


No No se abre la
circuitos im presos, proceda a com probar su co­ ¿Clave
correcta? cerradura
rrecto fu n cio n am ien to , antes de instalarlos en el
chasis. En p rim era instancia se deben com probar
los voltajes de alim en tació n , p ara ello conecte la
alim en tació n , pero sin instalar todavía el m icro­ I Si

A b rir cantonera
controlador. C o n un voltím etro en la escala de RBO — 1
voltios de C C , m id a el voltaje a la salida del rec­
tificador, éste debe estar en 5 voltios.
C am biar clave
Introducción de la clave Pulsar letra C

Para lograr la apertura del sistem a, el usuario tiene


que escribir en el teclado la clave correcta, intro­
duciendo secuencialm ente los cuatro dígitos ade­ Verificar la nueva
clave
cuados. Para iniciar, el sistem a viene program ado
previam ente con el código 0 1 2 3 , figura 2 5 .5 .

A l e s c rib ir c a d a u n o de los d íg ito s q u e Pulsar letra A

c o n fo rm a n la clav e, u n a se ñ a l so n o ra a v isa la
a c e p ta c ió n de ésto s; si se e q u iv o c a a l in tro d u - Figura 2 5 .5 Interacción del usuario con la cerradura

Curso práctico sobre M icrocontroladores CBKIT.1


Cerradura electrónica i

d el m o m en to en el cu al se d esactiv a la carga, y sep arad o res de p lástico d e 5 m m . El chasis


c u e n ta con ocho (8) segu n d o s p ara in tro d u c ir tien e p erfo racio n es a través de las cuales se
el nuevo n ú m ero deseado; fin alizad o esto, debe pasan los cab les de a lim e n ta c ió n , el d e la
p u lsar la tecla C (C a m b ia r) e in tro d u c ir de n u e­ c a n to n e ra , y el de c o m u n ic a c ió n co n el te­
vo el c ó d ig o , co m o u n a v e rificació n d el n ú m e ­ clad o . En la fig u ra 2 3 .6 se p u ed e ap reciar
ro. D esp ués d e p u lsa r la te c la C se p u ed e to­ este chasis.
m a r h asta 3 0 segu n d o s p ara escrib ir el có d igo
de v e rificació n . b - T arjeta del teclado.
In ic ia lm e n te so b rep o n ga el chasis d el tecla­
Si am bos códigos no co in cid en , la o p era­ do sobre la su p e rfic ie esco gid a, lu e g o m a r­
ció n es in te rru m p id a y el código qu e q u ed a v i­ q u e co n u n láp iz d e p u n ta fin a los p un to s
gen te es el qu e se ten ía antes. Si am bos códigos d o n d e van los to rn illo s de fijac ió n . Retire la
son iguales, el nuevo có d igo se alm acen ará en la c a ja y perfore o rificio s de ta m a ñ o su fic ie n ­
m e m o ria del sistem a. D espués de dos segundos te p ara q u e p u ed a in s ta la r los tacos (ch a­
de p u lsar la ú ltim a tecla d el có d igo d e verifica­ zos) p ara los to rn illo s.
ció n , presione la tecla de ap ertu ra: la can to n era
deb erá activarse, co n firm an d o la v alid ació n de A h o ra in stale la ta rje ta d en tro d el chasis
la n ueva clave. u san d o to rn illo s d e cab eza p la n a de 1/2” por
1/8”, y sep arad o res de p lástico de 5 m m . Pro­
Instalación ceda a co n e ctar el cab le d el teclad o a l co n ecto r
U n a vez q u e se h a y a c o m p ro b a d o el co rrecto C N 2 . T e rm in a d a esta o p eració n p u ed e in sta ­
fu n c io n a m ie n to d e la c e r r a d u r a (e lé c tric o y la r el c o n ju n to en el lu g a r esco gid o , con lo cual
o p e ra tiv o ), se p ro c e d e a la in s ta la c ió n d e las sólo fa lta c o n e c ta r el te c lad o y cerrar la caja
ta rje ta s d e n tro d e las cajas m e tá lic a s q u e van d e fin itiv a m e n te .
in c ru s ta d a s en la p ared .
El teclado se asegura sobre la tapa gracias a
La c a ja q u e c o n tie n e el c irc u ito de z u m b a ­ una sustancia adhesiva qu e norm alm ente se en­
d o r y el co n ecto r p ara el te clad o , se in sta la por cuentra protegida con papel siliconado. Los ter­
fu era y a la e n tra d a del lu g a r q u e se q u ie re p ro ­ m inales de conexión del teclado se pasan a través
teger; m ie n tra s q u e la c a ja q u e c o n tie n e el m i­ de una ranura localizada a la altura del conector
c ro c o n tro la d o r q u e d a m o n ta d a al in te rio r (al C N 4 , esto facilita el ensam blaje final y perm ite el
o tro lad o d e la p ared ). cam bio del teclado cuando se requiera.

La co m u n icació n entre las dos cajas se hace


por m edio de cable ribbon de 12 líneas y 11 cm
de lo n g itu d (si en su caso la distan cia es m ayor,
p ued e utilizar cable telefónico de 6 pares). De
otro lado, la instalación de las tarjetas dentro de
las cajas se hace de la sigu ien te forma:

a - T* arjeta del m icrocontrolador.


Esta se m o n ta en u n chasis o c a ja re c ta n g u ­
lar, la c u a l posee aletas laterales p ara fijarla
p e rm a n e n te m e n te a la su p erficie o p ared es­
co gid a. Para in stalar la tarjeta se u tiliz a n tor­
n illo s de cabeza p la n a de 1/2” de lo n g itu d Figura 2 5 .6 Chasis d e l proyecto

C M K IT . Curso práctico sobre M icrocontroladores


Proyectos

Inicio de p ro g ra m a y d e la m e m o ria
de d ato s.

Configuración de
S e tra ta de u n tip o de m e ­
puertos m o ria q u e o b v ia m e n te posee
u n c o n ju n to d e d ir e c c io n e s
i
Activar interrupciones
q u e se p u e d e n a c c e d e r a tr a ­
vés d e re g istro s e sp e c ia le s y
por teclado
so b re las c u a le s p o d em o s a l­
m a c e n a r d a to s q u e p u e d e n
m o d if ic a r s e e s ta n d o d e n tro
Configurar registro
OPCION d e l f u n c io n a m ie n to n o rm a l
d el c irc u ito .

Almacenar código ó Por su naturaleza E PRO M ,


clave inicial los d ato s se m a n te n d rá n a lm a ­
c e n a d o s s in im p o r ta r q u e no
h a y a a lim e n ta c ió n en el c ir ­
c u ito , lo q u e p e r m ite q u e la
v W S fií Guardar clave
¿Cam bio de Leer teclado en
1 EPROM de
» ■■ ■ » * WWW V » V V
clave p erm an ez c a a lm a c e n a d a
clave? datos in d e f in id a m e n te , a m en o s
q u e se v u e lv a n a g r a b a r las
m ism a s p o sic io n e s.

Entrar a modo
sleep La p o s ib ilid a d d e co n tar
con la E P R Ó M d e dato s en el
Figura 2 5 .7 Diagrama de flujo de la cerradura m ic ro c o n tro la d o r P IC 1 6 F 8 4 ,
nos a h o r r a e l tr a b a jo de te ­
Descripción del clav e d e acceso in ic ia l en c u a ­ n e r q u e c o n e c ta r u n a m e m o ­
programa tro p o sic io n e s d e la m e m o ria ria s e r ia l p a r a a lm a c e n a r la
En la f i g u r a 2 5 .7 p o d e m o s E P R O M d e d a to s. R e c o rd e ­ c la v e y d e a lg u n a m a n e r a la
a p re c ia r el d ia g ra m a d e flujo m os q u e la E P R O M de d ato s n e c e s id a d d e c o n ta r co n un
gen eral d el proyecto y el có d i­ es u n b lo q u e d e m e m o ria in ­ d is p o s itiv o p r o g r a m a d o r de
go fuente se e n c u e n tra d isp o ­ d e p e n d ie n t e d e la m e m o ria m e m o r ia s se ria le s .
n ib le en n uestra p á g in a en la
in t e r n e t en e l e n la c e C u rs o R EG ISTRO O PCIO N
Práctico sobre M ic ro c o n tro la ­ 7 6 5 4 3 2 1 0
dores; ahora nos lim itare m o s a 0 0 0 0 1 0 1 1
u n a d escrip ció n m u y gen eral L
Pull-up del puertoB Configuración del
d el c ó d ig o fu e n te escrito en deshabilitada post-escalador
le n g u a je e n s a m b la d o r y sus 1 :16
Interrupción externa Preescalador asignado
partes fu n d am en tales. en flanco de subida al perro guardián

La fuente de señal Incremento en flanco de


El e s q u e m a g e n e ra l es el es el reloj interno bajada
s ig u ie n te : d e n tro d el có d ig o
d el p ro g ra m a se a lm a c e n a u n a Figura 2 5 .8 Configuración del registro OPCION

Curso práctico sobre M icrocontroladores m K i T i


Cerradura electrónica

C o m o se p u e d e o b s e rv a r en e l anterio r C a d a q u e u n u su ario q u ie re acced er al s i­


d ia g r a m a d e flujo, d esp u és d e c o n fig u ra r el tio p ro teg id o p o r el sistem a, d eb e escrib ir una
funcio nam ien to de los p u e rto s , se a c tiv a la p o ­ clave c o m p u e sta d e cu atro d íg ito s q u e te m p o ­
s ib ilid a d d e g e n e r a r u n a in t e r r u p c ió n p o r ra lm e n te se g u a rd a en cu a tro registro s d e m e ­
c a m b io de n iv el en el p u e rto B , p ara lo cual m o ria R A M , p ara c o m p a ra rla co n la clave a l­
debe activar los bits correspondientes en el regis­ m a c e n a d a p re v ia m e n te y d e te rm in a r si se debe
tro de control de interrupciones IN T C O N . a b rir la c e rra d u ra .

un PANEL DE PR U EB A S DEL HAHDUARE


IK ) DESHABILITAR PROTECCION DE CODIGO

S E L E C C IO N E UN CONANDÜ O IESC1 PARA SALIR

P H IX .R A N A D O R C E K I T N S 'D O S C U B O F f lA C t lC O UBRE ÑlCR / JL *


ICI A c e re n de I

En e s te p ro g ra m a
Puerto s e r t n l . : C O N 1 . 3 6 0 0 . 0 , 1 ,N
p ie « d u a l. . : I6FH1 p a ra DOS se h a b ilita
PnU hrn de co n f x * U l i l i l i l i ÍOOI
En el K -224, m e d ia n te e l ra tó n
C o n te n id o del B o ííe r IN A G E N DE LA f l F J K J R lA DEL P IC
p re s io n a n d o el h a c ie n d o c lic en
111 NODO DEL OSCILADOR : XT
n ú m e ro 2 se 1*1 UATCM DOG TINER : DESHAUILITADO
e s ta c a s illa
h a b ilita ó 131 PROTECCION DEL CODIGO : DESHABILITADO
(SI Power up tiner..: DESHAB(LITADA
d e s h a b ilita el
• 1*1 B u f íe r dunp PROG
watchdg IR 1 LEER PIC
IU» ESCRIBIR PIC
EPIC PROGRRMMLR VER 1.2
»ri ESCRIBIR SO LO FUSIBLES
I tl CARGAR A R O U U O IM O IIE X
«SI S íd J A R D A R A R C I I I U O IN H M E X
<U> AERIFICAR PIC
¡TI S E L E C C IO N A R T I P O DE PIC
*«« PANEL DE P R U E B A S D E L IIA R D U .
’ H D E S H A B IL IT A R P R O T E C C IO N DF

n » / : iO N E U N C U N A N D O O IESCI I

PROGRRMMLR NOT FOUND!

8 1 **- 3*03 1d03 29*C 01b7 01 b8 0839 1d03 03b9


0 1 *c - 18*3 295f 1d23 295f 0 **9 3002 0629 1d03
8154- 295f 1683 81*3 01*2 1283 1210 1618 081..
015C- 1285 1683 168c 1283 1806 2963 2965 1006 Cod.P»o«*c*on
81 6*- 2967 1*06 2967 1288 1683 0*ba 30c8 063* OH r Uppat 1/2 r O tfaEE Memory
0 1 6 c- 1d03 297d 01b* 0*bb 308* 063b 1d03 297d r a i r uppe.3/4 r
01 7*- 01 bb 1283 1*87 2979 297b 1287 297d 1687
0 1 7 c- 297d 1283 28b1 1283 180c 28b1 OOaS 0 1 ** Bro»wvoU Vcíage
0 1 8 *- 082* 0625 1dB3 298* 0008 1683 OOab 3008 r r / r • r ú
818C- 0 0 *c 062b 1083 o c*d O c *t 3901 1903
81 9*- 2999 3 0 *0 06*d 3001 Oóae Ocab Ob*c 298d Enable
0 1 9 c- 0008 1683 00b 3 3008 00b* 0836 0633 1003 # P W *tcM oflT n m r M r t y íf c r . í-r& :
O H *- 0cb5 0c b 6 3981 1903 29*d 3 0 *0 06b5 3001
r Pcw** up r lowVolege Program
OUC- 06b6 0cb3 Obb* 29*1 0008 1283 138b 1685
r BrowrvoU Retel T FlathPiogiamWni»
r • r IrvCtcul Debugger

E ste e s el p ro g ra m a EPIC W in. Posee una


v e n ta n a de c o n fig u ra c ió n d o n d e se puede
s e le c c io n a r e l watchdog

Figura 2 5 .9 Habilitación del WATCHDOG


Proyectos

La configuración del registro O P C IO N es p o r cam b io en el p uerto B (R BIE ) y al h a b ilita ­


com o se m uestra en la figura 2 5 .8 . P rincipalm en­ d o r global de in terru p cio n es (G IE ). En la por­
te podemos notar qu e en este proyecto no se utili­ ción de código de la fig u ra 2 5 .1 1 podem os apre­
zó el TIM ERO p ara generar interrupciones, ni ciar la co n figuració n del registro O P C IO N , IN-
com o tem porizador o contador; por el contrario, T C O N , de los puertos, y el m o m en to en q u e se
se utilizó el WATCHDOG razón por la cual se le pone el m icro co n tro lad o r en m o do SLEEP.
asignó el preescalador (ó post-escalador).
Podem os observar q u e el p ro gram a se en ­
La posibilidad de trabajar con el WATCHDOG cierra en un p eq u eñ o lazo en el cu al se in terro ­
debe estar h ab ilitad a al m o m en to de grabar o ga p erm a n en tem en te p o r el b it cu atro d el regis­
«q u em ar» el m icrocontrolador; para ello todos tro de estado, fig u ra 2 5 .1 2 , el cual es u n a b an ­
los sistem as de p rogram ación deben poseer d en ­ dera q u e nos in d ic a cu a n d o ha te rm in ad o de
tro de la interfaz de usuario, la p o sib ilidad de tem p o rizar el WATCfíDOG. M ie n tra s no haya
activar esta o pción, fig u ra 2 5 .9 . term in ad o este proceso, el m icro co n tro lad o r no
sald rá de su estado d e bajo co nsum o. C ad a qu e
S igu ien d o el orden dispuesto en el diagram a sale del m o do SLEEP el p ro gram a hace un ch e­
de bloques se debe proceder a alm acenar en la queo de todos los eventos qu e tu viero n lugar
E P R O M de datos la clave de acceso inicial. m ien tras se en co n trab a “d u rm ie n d o ” y qu e se
deben a las acciones efectuadas d u ra n te el ser­
Es im portante aclarar que la clave inicial pue­ vicio de in te rru p c ió n .
de ser m odificada; de esta m an era le garantiza
total seguridad en el m om ento qu e instale el sis­ T odos esto s ev en to s se a g ru p a n en un re­
tem a en su hogar u oficina. C uando se desea cam ­ gistro b an d era d e n o m in a d o fla g s l, y, de a c u e r­
b iar la clave, el program a lee el teclado y guarda do a l c a m b io de los bits d e este re g istro , el
el dato leído en la E P R O M , finalm en te en tra en p ro g ra m a sa lta a d is tin ta s s u b r u tin a s q u e lle ­
m o do de bajo consum o o m o do SLEEP. van a cab o las a c c io n e s n ecesa ria s p ara c u m ­
p lir co n los o b je tiv o s p ro p u e sto s en el sis te ­
La lectu ra n o rm al d el teclad o sólo se d esa­ m a , c o m o p o r e je m p lo , d e te r m in a r c u a n d o
rro lla d en tro de la s u b ru tin a o servicio de in ­ se q u ie re c a m b ia r la clav e, o b lo q u e a r la c e ­
te rru p c ió n , no d en tro d el cu erp o p rin c ip a l del r ra d u ra en caso de q u e se h a y a n in te n ta d o
p ro g ram a. Só lo tien e lu g a r cu a n d o se d etecta c u a tro o m á s claves in c o rre c ta s.
un cam b io de nivel en el p u erto B y se gen era
la in te rru p c ió n p o r teclad o . El servicio de interrupción por cam bio en el
puerto B, algunas veces denom inado interrupción
En lecciones anteriores ya hemos analizado de­
talladamente cómo se efectúa el barrido y todo el R E G IS TR O IN TC O N
procedimiento de lectura de las colum nas y las filas 7 6 5 4 3 2 1 0
del teclado para deducir acertadamente el valor de
la tecla que se presiona en un m om ento dado.
1 m

Para h ab ilita r el fu n cio n am ien to de esta in ­ Habilitación de la


interrupción por
terru p ció n se debe co n fig u rar ad ecu ad am en te
cambio en el puertoB
el registro IN T C O N , com o se m u estra en la
fig u ra 2 5 .1 0 . Podem os observar cóm o se deben Habilitador global de
interrupciones
activar los bits tres y siete de este registro, qu e
corresponden al h ab ilitad o r de in terru p cio n es Figura 2 5 .1 0 Configuración del registro INTCON

Curso práctico sobre M icrocontroladores C £ K t n


S IG U E BSF STA, 5 S E L E C C I O N A R P Á G IN A 1
CLRW L I M P I A R R E G IS T R O W
MOVWF TR ISA CO N FIG URAR PUERTO A COMO S A L I D A
MOVLW B ’ 11111100' MEMORIA COMO S A L I D A
MOVWF TR ISB CO N FIG URAR PUERTO B
BCF STA, 5 IR A P jG IN A 0
MOVF JU FE ,W L L E V A R CONTENIDO P P A L A W
MOVWF PORT_B PARA L L E V A R A L PUERTO B
CLRF INTCON L I M P I A R R E G IS T R O DE I N T E R R U P C IO N E S
BSF IN T C O N ,3 A C T I V A R I N T E R R U P C IÓ N POR TECLADO
BSF IN TCO N ,7 A C T I V A R L A S IN T E R R U P C IO N E S
BTFSS S T A , TO ¿ R E S E T POR TEMPORIZADOR?
GOTO DORM

D O R S IL BCF JU FE ,S N A APA G A R EL ZUMBADOR


MOVF JU F E ,W L L E V A R CONTENIDO P P A L A W
MOVWF P O R T .B PARA EL PUERTO B

DORM MOVLW 0 L I M P I A R R E G IS T R O W
MOVWF PORT_A PARA L L E V A R A F I L A S TECLADO
1111 BSF STA, 5 PÁGINA 1
CLRWDT L I M P I A R C I R C U I T O DE V I G I L A N C I A
MOVLW B ’ 00001011' PU LL-U PS, WDT, 1/8
MOVWF O PCIO N
BCF STA, 5 PÁGINA 0
DORMITA SLEEP DORMITAR
NOP
NOP
WAKE BTFSS S T A , TO A V E R IG U A R S I F I N WATCHDOG
GOTO WATCH SI ES A S Í , I R A TRATAR
GOTO DORMITA

WATCH BTFSS F L A G S 1 ,T E M P O BANDERA DE T IE M P O


GOTO DORM S I NO A C T I V A , I R A DORMITAR
D ECFSZ CUENTA DECREMENTAR CUENTA
GOTO DORM S I NO ES C E R O , I R A DORMITAR
BCF F L A G S 1 ,T E M P O L I M P I A R BANDERA DE T IE M P O
BT FS C F L A G S 1 ,C A N T O PREGUNTAR POR CANTONERA
GOTO CANTOS S I A C T IV A , I R A TRATAMIENTO
BT FS C F L A G S l. C O D E ¿BAN D ERA DE CAMBIO DE CÓDIGO?
GOTO DONES S I A C T IV A , I R A TRATAMIENTO
BT FS C F L A G S l.S N A ¿BAN D ERA DE ALARM A?
GOTO ALAS S I A C T IV A , TRATAR
BT FS C FLA G S 1.C H 1 ¿BAN D ERA DE CAMBIO DE CÓDIGO?
GOTO CAM BIO l S I A C T IV A , I R A TRATAMIENTO
BT FS C FLA G S 1.C H 2 ¿BAN D ERA DE CAMBIO 2 ?
GOTO C A M B I0 2 I R A TRATAR
BT FS C F L A G S l.E R R O ¿BAN D ERA DE ERROR?
GOTO ERROS I R A TRATAM IEN TO DE ERROR
GOTO DORM NINGUNA DE L A S A N T E R I O R E S , DORMITAR

Figura 25.11 Porción del código fuente de la interrupción

a*. Curso práctico sobre M icrocontroladores


Proyectos

REGISTRO DE ESTADO Leer los dígitos

7 6 5 4 3 2 1 0

JJZ

TO: TIMEOUT o bit de finalización


-del temporizador.
Se coloca en 0 cuando el circuito
de vigilancia Watch dog finaliza la
temporización.

Figura 2 5 .1 2 Registro de estado

por teclado, es el qu e observamos en el diagram a


No
de flujo de la figura 2 5 .1 3 . La prim era acción que
se ejecuta es la lectura de los cuatro dígitos entre­
No Incrementar ¿N° d e n
gados desde el teclado y su alm acenam iento en ¿Son
número de intentos = 4 ?
iguales?
registros en m em oria RA M . intentos fallidos

U no p o r un o se co m p aran con los dígito s ,s


alm acenados qu e corresponden a la clave correc­
Abrir la Desactivar
ta. Si son igu ales, se genera la acción p ara abrir cantonera cantonera de
la can to n era; si la clave in tro d u c id a no es la co­ f n r m a r i p f i n i t i v / 3 i
I U I 1 1 l a u e i l l I I 1 1 V d

rrecta, se in c re m en ta un co n tad o r de intentos


fallido s; si este co n tad o r lle g a a cuatro, se des­ Figura 2 5 .1 3 Diagrama de flujo del servicio de interrupción
activa la can to n era en form a defin itiva.

En la figura 2 5 .1 5 observamos parte del códi­ puerto B (IN T C O N ,R B IF) para perm itir que el
go fuente del servicio de interrupción; podemos microcontrolador pueda generar una nueva inte­
apreciar que entre las primeras acciones que se eje­ rrupción y ejecutar de nuevo esta subrutina; poste­
cutan está el borrado del perro guardián y el borra­ riormente se llevan a cabo las demás acciones con­
do de la bandera de interrupción por cambio en el templadas dentro del diagram a de flujo.

ORG 0 ¡V E C T O R DE R E S E T
NOP
NOP
NOP
GOTO IN IC IO ¡V A Y A A COMIENZO

ORG 4 ¡V E C TO R DE LA IN T E R R U P C IÓ N
NOP
BSF S T A ,5 ¡ S I NO ES A S Í , A C T I V A R P Á G IN A 1
CLRWDT ¡ L I M P I A R C I R C U I T O DE V I G I L A N C I A
MOVLW B ’ 00001111' ¡ S E L E C C I O N A R WDT, 1 / 1 2 8
MOVWF OPCION ¡P A R A R E G IS T R O OPTION
BCF S T A ,5 ¡ I R A P Á G IN A 0
BCF IN T C O N ,R B IF ¡ L I M P I A R BANDERA IN T E R R U P C IÓ N

; POR L E C T U R A DEL TECLADO

Figura 2 5 .1 4 Porción de código de la interrupción


¿ *
Curso práctico sobre M icrocontroladores m K ffT s i
Cant. Ref. D e s c rip c ió n
1 IC1 Microcontrolador PIC16F84, programado
1 IC2 Circuto integrado optotriac M O C 3 0 3 1
1 IC3 Circuto integrado C D 4 0 11
1 REG1 Regulador fijo d e + 5 V - 1 A. 7805
2 BR1y BR2 Puentes rectificadores circulares d e 1A, W 0 6 M
1 LED1 Diodo L E D rojo d e 5 m m
1 C1 C o ndensador electrolítico d e 1 0 0 0 u F - 2 5 V
2 C2yC5 Condensadores cerámicos d e 0.1 u F - 5 0 V
1 C3 C o ndensador electrolítico d e 1 0 u F - 2 5 V
1 C4 C o ndensador cerámico d e 0.1 u F - 2 5 0 V
2 C6 y C7 Condensadores cerámicos d e 2 2 p F - 5 0 V
1 C8 C o ndensador cerámico d e 0.01 u F - 5 0 V
1 XT1 Cristal d e quarzo d e 4 M H z
1 R1 Resistencia d e 1 0 - 1 / 2 W
1 R2 Resistencia d e 1 8 k - 1 / 2 W
1 R3 Resistencia d e 2 2 0 - 1 / 4 W
1 R4 Resistencia d e 1 k - 1 / 2 W
1 R5 Resistencia d e 100k - 1 / 4 W
1 R6 Resistencia d e 8.2k - 1 / 4 W
1 R7 Resistencia d e 100 - 1 / 4 W
1 Q1 Triac d e 10A, BTA06-400. ó equivalente
1 TR1 Transformador d e 9 V - 4 5 0 m A ( M a g o m M-504)
1 PZ1 Buzzer o parlante piezoeléctrico
1 KB1 Teclado matricial d e m e m b r a n a o teclas
2 K-335A y K-335B Circuitos impresos C E K I T
1 Chasis K - 3 3 5 A Chasis metálico para el circuito principal
1 Chasis K-335B Chasis metálico para el teclado y el z u m b a d o r
3 CON1 Conectores d e tornillo d e 2 pines
1 CON2 Conector e n línea d e 12 pines M / H
1 CON4 Conector tipo cerca n o polarizado d e 14 pines
Figura 2 5 .1 4 Conjunto de componentes electrónicos y los
1 Conector ribbon hembra d e 28 pines para el teclado
accesorios que se requieren para ensam blar la cerradura 4 Espadines para circuito impreso
electrónica CEKIT K-335. 1 B a s e para circuito integrado d e 6 pines
1 B a s e para circuito integrado d e 18 pines
Este sencillo proyecto usted podrá utilizarlo como una 1 B a s e para circuito integrado d e 14 pines
cerradura electrónica en el interior de su vivienda, con ella 1 Porta L E D d e 5 m m
podrá proteger el acceso a algunos lugares que pueden ser 2 P a s a cables d e caucho
8 Tornillos d e 1/2" X 1/8", con sus tuercas
privados o deben mantenerse vigilados, como por ejemplo el
2 Tornillos d e 1/4" X 1/8", con sus tuercas
armario, la caja fuerte, la puerta de la habitación, o el acceso a 4 Tornillos golosos d e 3 m m para lámina
lugares especiales. Para su instalación se requiere de una 8 Separadores plásticos d e 5 m m
cantonera de 110VCA y un adecuado acople mecánico con la 1m Cable ribbon d e 12 hilos
chapa. Para el ensamblaje de las tarjetas de este proyecto 1m Cable tipo vehículo No. 2 0 A W G
1 Cable d e potencia
tenga en cuenta los siguientes pasos:

Paso 1 Paso 2
Como prim er paso se ensamblará la tarjeta del zumbador; para Instale y suelde la base para el circuito integrado CD4011 y el
ello instale y suelde los puentes con alambre telefónico desnudo condensador cerámico.
N° 24AWG, y también las tres resistencias de 1/4 de vatio. Figura 25.16
Figura 25.15
*
C E K IT , Curso práctico sobre M icrocontroladores
Proyectos

Paso 3 Paso 4
Instale y suelde el conector macho tipo cerca no polarizado para En este paso se muestra el aspecto final de la tarjeta del zumbador
conectar el teclado, y los dos espadines para el zumbador. luego de conectare! cable ribbon de entrada, instalar y pegar el
F ig u ra 25.17 zumbador piezoeléctrico. y haberle colocado su circuito integrado.
Figura 25.18

Paso 5 Paso 6
Ahora se instalarán todos los componentes de la tarjeta principal Instale y suelde las bases para los circuitos integrados IC1 e IC2,
de la cerradura electrónica: en este prim er paso, instale y suelde y los dos puentes rectificadores circulares de 1A, BR1 y BR2.
los puentes de alambre, luego la resistencia de 1/4 de vatio, y Figura 25.20
también las tres resistencias de 1/2 vatio.
Figura 25.19

Paso 7 Paso 8
Instale y suelde el circuito integrado regulador de voltaje de +5V Instale y suelde los cuatro condensadores cerámicos de 50V, y
(REGI), y el TRIAC (Q1) para manejar la cantonera. también el condensador cerámico de 0 ,1pF y 250V.
Figura 25.21 Figura 25.22
*
Curso práctico sobre M icrocontroladores e s K i r :
C£Sfi*BüKA EU-XT^Ort^g* M H 'ftC

Paso 9 Paso 10
Instale y suelde los condensadores electrolíticos C l y C3, y el Instale y suelde los conectores de tornillo para la entrada de
cristal de cuarzo de 4MHz del microcontrolador. alimentación y la salida de la cantonera, y e l conector del
Figura 25.23 teclado y de la tarjeta del circuito zumbador.
Figura 25.24

Paso 11 Paso 12
Ahora, luego de haber ensamblado las dos tarjetas use cuatro Instale en el chasis, con dos tomillos de 1/4" x 1/8" con sus tuercas
tornillos con tuercas de 1/2" x 1/8” y los respectivos separadores el transformador, y efectúe las conecciones necesarias entre la
plásticos, para instalar cada una e ellas en su correspondiente entrada de alimentación, el transformador, y el circuito electrónico;
chasis. tal como se indica en el diagrama de conexiones.
Figura 25.25 Figura 25.26

Paso 13 Paso 14
Una vez instalados los dos circuitos en su respectivo chasis, En la figura se muestra e l aspecto final de la cerradura
introduzca a través de las ranuras de cada chasis el cable ribbon que electrónica ensamblada, luego de haber instalado y soldado el
sirve para conectarlas dos tapetas, y pegue en uno de sus extremos diodo LED en el frente del chasis, y haber pegado el teclado de
el conector en linea hembra que va en el circuito principal. membrana, con su respectivo conector, de la tapa frontal del
Figura 2 5 .2 7 chasis del zumbador.
Figura 25.28
Paso 15. Pruebas finales
Este sistema viene con una configuración inicial para la clave de acceso, verifíquela y compruebe que el circuito del zumbador
ejecuta normalmente su trabajo. Luego inserte sus propias claves personales y obtenga un método de seguridad absolutamente
confiable y moderno.

C C K IT .. Curso práctico sobre M icrocontroladores


REGISTRADOR DE DATOS DE 12 RITS
Existen muchos casos, especialmente en la indus­
tria, donde se requiere que los sistemas de instru­
m entación y/o de m edición tengan una resolución
de al menos 12 bits. C on este proyecto logramos
dicho objetivo, utilizando circuitos integrados de
reciente incorporación al mercado y con caracte­
rísticas de funcionam iento m u y especiales.

C aracterísticas
• A dquisición de datos en 12 bits
• A lm acenam iento de los datos adquiridos
dentro de una m em oria no volátil
• Transm isión de los datos alm acenados por
m edio de una interfaz R S-232
• M icrocontrolador P IC 16F 873
• Velocidad de transm isión de 9 .6 0 0 bps

Curso práctico sobre M icrocontroladores


Registrador de datos de 12 b it s

L a in s tru m e n ta c ió n es u n a d e las áreas de m os cada uno de los bloques que lo com ponen.
m a y o r in terés p ara q u ien es trab ajam o s en elec­ Es im p o rtan te aclarar qu e se asum e qu e las seña­
tró n ic a ; en e lla se p u e d e n d e sa rro lla r g ran c a n ­ les q u e se qu ieren m ed ir h an sido aco n d icio n a­
tid a d de pro yectos y ex p erim en to s q u e in v o lu ­ das previam ente por m edio de un am plificador
cran d iferen tes procesos, d en tro de los cuales de in strum entació n.
se p u e d e c o n ta r la co n v ersió n an álo g o / d ig ital
y la c o m u n ic a c ió n se rial, co m o a lg u n o s d e los C o n v e r tid o r A/D de 12 bits. M u c h o s a m p li­
m ás frecu en tes. En este p ro yecto u tiliz arem o s ficad o res d e in s tru m e n ta c ió n co m erciales e n ­
ju sta m e n te estas dos técn icas p ara c o n stru ir un tregan u n a señ al d ife re n c ia l q u e p u ed e variar
e q u ip o q u e será de g ra n a y u d a p ara aq u ello s en tre ±5 v o ltio s, p o r esta razón es m u y p rá c ti­
q u e d eb en m o n ito re a r o v ig ila r el c o m p o rta ­ co q u e se u tilic e u n c o n v e rtid o r a n á lo g o a d i­
m ie n to de v ariab les an aló g icas q u e v a ría n le n ­ g ita l q u e recib a señales de e n tra d a b ip o lares
ta m e n te a través d el tie m p o y q u e, p o r su n a ­ (p o sitiv as y n e g a tiv a s); ad em ás, d ich o co n v er­
tu ra le z a , re q u ie re n de u n tra ta m ie n to m u y es­ tid o r d eb e p o seer u n a in terfaz de c o m u n ic a ­
p ecializad o . c ió n se ria l p a ra q u e e n tre g u e los d ato s al m i­
cro c o n tro la d o r u tiliz a n d o p ara ello pocas lí­
Funcionamiento n eas. E stas c o n d ic io n e s red u c en b a sta n te el
La id ea p rin c ip a l es co n stru ir un ap arato qu e espectro de p o sib ilid ad es qu e se tienen a la hora
p e rm ita leer el estado de u n a señal p reviam en te de escoger d ich o disp o sitivo .
a c o n d ic io n a d a qu e p u ed e variar en tre 0 y 5 vol­
tios, llevar este dato a un v alo r d ig ita l m ed ian te El c o n v e r tid o r A D S 7 8 1 2 de la em p resa
un co n vertid o r A/D de 12 bits y g u ard ar el v a ­ B U R R B R O W N c u m p le co n las c o n d ic io n e s
lor de los dato s to m ad o s en u n a m em o ria no e sp e c ific a d a s, y a ú n m á s, p re se n ta u n as c a ra c ­
volátil (del tipo E E PR O M serial). Posteriorm en­ te r ís tic a s e sp e c ia le s q u e lo h a c e n so b re sa lir
te, los datos de la m e m o ria p u ed en ser transfe­ e n tre los d e m ás. A c o n tin u a c ió n n o m b ram o s
ridos a u n a co m p u tad o ra p ara su an álisis y de­ a lg u n a s de ellas:
m ás procesos requeridos. En la fig u ra 2 6 .1 se
m u estra el d ia g ra m a de b lo ques del sistem a. • R esolución de 12 bits
• M ú ltip le s rangos de entrada, in clu yen d o se­
Descripción del circuito ñales bipolares
En la fig u ra 2 6 .2 se m uestra el d iagram a esque­ • S alid a de datos del tipo serial
m ático del circuito. A co n tin u ació n describire­

SEÑAL A M P LIFIC A D O R DE CONVERTIDOR


ANÁLOGA INSTRUM ENTACIÓ N A /D 1 2 BITS

INTERFAZ
T T L /R S -2 3 2

Figura 26. 1 Sistema de adquisición y almacenamiento de datos a 12 bits

* IT ¿ Curso práctico sobre M icrocontroladores


(
Proyectos

V ,
íXl
15 5
RC4SDA DA IC3
14 6 a 24tC64 W P
RC3SCL
SEÑAL
^— Tantalio
S 1p3 AD A l A2 Vss
0-5V

IC2
IC1 PIC16F873
AD57812

R2
3000

Tantalio
MEMORIA

RC7/RX
RC6^X

T20UT

IC4 PUERTO
MAX232 SERIAL DE LA
PC

R20UT
C0N3
Conector DB9H

ALIM EN TA C IÓ N

Figura 2 6 .2 Diagrama
FUENTE REGULADA DE 5V esquemático del circuito

O pera con u n a fuente senci- Referencia de conversión in ­ Este d isp o sitiv o p u ed e ser
lia de +5V terna o externa c o n fig u ra d o p a ra q u e acep te
T ie m p o d e co n v ersió n de E n cap su lad o tip o D IP de señales de e n tra d a d e d ife re n ­
2 0 Lis m áxim o 16 pines tes r a n g o s , p o r e je m p lo : de

Curso práctico sobre M icrocontroladores es k it ,'.


Registrador de datos de 12 b it s

±10V, ±5V, ± 3,33V , 0 a 10V, etc. Para ello , m a d a m ás de 1 .0 0 0 veces y posee vario s m ó ­
posee tres p in es ( R l i n , R 2 in y R 3 in ) q u e p e r­ d u lo s esp ecializad o s, lo q u e fa c ilita el d esarro ­
m ite n h ac e r la c o n f ig u r a c ió n m e d ia n te c o ­ llo del software-, a d em á s, su costo lo h ace acce­
n exio n es esp eciales. En n u estro caso p a r tic u ­ sib le a c u a lq u ie r persona.
lar, la c o n fig u ra c ió n del c irc u ito se ha hecho
p ara q u e acep te señales de ±5V. En la f i g u r a Este d isp o sitiv o está e n c a rg ad o de leer los
2 6 .3 se p resen ta el d ia g ra m a d el c o n v e rtid o r y dato s q u e e n tre g a e l c o n v e rtid o r A/D y a lm a ­
la ta b la de co n ex io n es p ara lo g rar cad a un o de cen arlo s en la m e m o ria E E P R O M se rial, a d e ­
los ran go s p o sib les d e señal de e n tra d a . m á s, d eb e m a n e ja r la c o m u n ic a c ió n co n la
c o m p u ta d o ra y a q u e e lla es q u ie n in fo rm a en
El convertidor A D S 7 8 12 en trega el dato b i­ q u e m o m en to se em p ieza a h ac e r el m uestreo
n ario en form ato d e co m p lem en to a dos. Por de los d ato s, co n q u e frecu en cia se van a hacer,
ejem p lo : si el rango de la señal de e n tra d a es de y en q u e m o m e n to se va a tran sferir el c o n te ­
±5V, cu an d o el vo ltaje es de +5V el dato b in a ­ n id o de la E E P R O M h a c ia la c o m p u ta d o ra
rio es 0 1 1 1 1 1 1 1 1 1 1 1 (7FF en h exa), si la señal p ara q u e los dato s p u ed a n ser v isu a liz a d o s en
es de 0 V el dato b in ario es 0 0 0 0 0 0 0 0 0 0 0 0 (0 0 0 fo rm a g ráfica, o sean a n aliz ad o s y a lm a c e n a ­
en h exa), si la señal es de -3 m V el d ato b in ario dos, si a sí se requ iere.
es 1 1 1 1 1 1 1 1 1 1 1 1 (FFF en hexa) y si la señal es
de -5 V el dato b in a rio es de 1 0 0 0 0 0 0 0 0 0 0 0 El m ic r o c o n tr o la d o r p o see u n a in te rfaz
(8 0 0 en hexa). I 2 C q u e le p e rm ite c o m u n ic a rse co n la m e ­
m o r ia s e r ia l f á c ilm e n t e , p o see u n m ó d u lo
Para revisar las características eléctricas de este U S A R T q u e le p erm ite h acer la c o m u n ic a c ió n
dispositivo, se rem ite al lector a la hoja de datos R S - 2 3 2 c o n la c o m p u ta d o r a a la v e lo c id a d
correspondiente, la cual puede enco ntrar en la deseada y con los p arám etro s seleccionados pre­
p ág in a w eb del fabricante. v ia m e n t e .E s t e d isp o sitiv o o p era co n un cris­
ta l de 4 M H z . Para m a y o r in fo rm a c ió n sobre
M ic ro c o n tro la d o r. En este in s tru m e n to se d e ­ este m icro co n tro lad o r, se rem ite al lecto r a la
c id ió u tiliz a r un m icro co n tro lad o r P IC 1 6 F 8 7 3 h o ja de dato s co rresp o n d ien te.
de M ic ro c h ip T e c h n o lo g y p o r v arias razones:
la p rim e ra , es q u e es u n d isp o sitiv o nuevo de M e m o r ia se ria l E E P R O M . Esta m e m o ria , re­
m u y b u en as p restacio n es, posee m e m o ria de ferencia 2 4 L C 6 4 de M icro ch ip Technology, tie­
p ro g ra m a tip o fla sh q u e p e rm ite ser rep ro gra- n e u n a c a p ac id a d d e 8K b ytes (6 4 K b its), posee

Vs
RANGO DE CONECTAR CONECTAR CONECTAR IMPEDANCIA
PWRD ENTRADA AR1IN AR2IN AR3IN DE ENTRADA
00 m
M fl 1 M | |

BUSY ±10V VlN BUF GND 45.7


0,3125V a
CS
2.8125V VlN VlN VlN >10,000
CONV ±5V GND BUF VlN 26,7
OV a 10V BUF GND VlN 26,7
EXT/IÑT
0Va4V BUF VlN GND 21,3
DATA
±3,33V VlN GND VlN 21,3
DATACLK 0.5V a 4,5 GND VlN GND 21,3

Figura 2 6 .3 Convertidor A/D de 12 bits con interfaz serial y rango de señal de entrada configurable. ADS7812.

k it , : Curso práctico sobre M icrocontroladores


Proyectos

u n a in terfaz de c o m u n ic a c ió n I 2 C , o p era con d o ra p rin c ip a l y d ich as m u estras d eb en ad e­


u n a fu en te d e a lim e n ta c ió n de 2 ,5 h asta 5 v o l­ m ás ser. tra ta d a s con un filtro de p ro m e d io
tios, p e rm ite m ás de u n m illó n d e ciclo s de d en tro d el m ism o m ic ro c o n tro la d o r p a ra evi­
escritu ra/ lectu ra, y u n a reten ció n de d ato s s u ­ tar a sí errores de le c tu ra cau sado s p o r in te rfe ­
p erio r a 2 0 0 añ o s. Todo esto en u n solo e n c a p ­ ren cias tra n sito ria s en la señ al.
su lad o d e 8 pin es.
El p ro ceso d e to m a de m u e stra s se in ic ia
En esta m em o ria se alm acen an los datos que c u a n d o la c o m p u ta d o r a e n v ía a l m ic ro c o n ­
provienen del convertidor A/D. C o m o cada co n ­ tr o la d o r u n a o rd e n q u e e sp e c ific a e l in te r v a ­
versión en trega 12 bits, se o cup arán dos bytes lo de m u e stre o ; esto se h ace s im p le m e n te e n ­
por cad a m u estra, lo cu al nos d eja una cap aci­ v ia n d o u n n ú m e ro e n tre 1 y 9 (la c o m p u ta ­
d ad total de a lm acen am ie n to de 4K . C u a n d o el d o ra e n v ía el c ó d ig o A S C II de esto s d íg ito s al
m icro co n tro lad o r em p iece el proceso de m ues- ser p u ls a d a la te c la re sp e c tiv a ). L a c o m u n ic a ­
treo alm acen ará u n dato cada in tervalo de tiem ­ c ió n se h a c e a través d el p u e rto se ria l de la
po d eterm in ad o . C u a n d o la co m p u tad o ra e n ­ P C a u n a v e lo c id a d de 9 .6 0 0 b p s , co n d ato s
víe al m icro la orden de en treg ar los datos a lm a ­ d e 8 bits, s in p a r id a d y u n b it d e p a r a d a
cen ad o s en la m em o ria, éste h ará un barrido (9 .6 0 0 b p s , 8, n , 1).
total de las posiciones y tran sm itirá los datos
h ac ia ella un o tras otro. El u su ario d eb e crear u n a a p lic a c ió n espe­
cial en la c o m p u ta d o ra q u e le p e rm ita en v iar
In terfaz de c o m u n ic a c ió n T T L / R S -2 3 2 . Este la o rd en m e n c io n a d a y a la vez recib ir el p a ­
b lo q u e se en carg a de c o n v e rtir las señ ales qu e q u e te de d ato s q u e en v ía el m ic ro c o n tro la d o r
m an eja el m icro co n tro lad o r en niveles T T L (0- cu a n d o se d esea leer el c o n te n id o de la m e m o ­
5 V ), a niveles ad ecu ad o s R S -2 3 2 p ara q u e haya ria. U n a o p ció n se n c illa es u tiliz a r el p ro gra­
u n a co rrecta c o m u n ic a c ió n con la c o m p u ta ­ m a H y p e rT e rm in a l de W in d o w s.
d o ra. D ic h a la b o r la h a c e e l c irc u ito in te g rad o
M A X 2 3 2 d e M a x im S em ico n d u cto r. Este in ­ En la figura 2 6 .4 se m uestra la tabla con los
teg rad o se d estaca p o rq u e m a n e ja los niveles intervalos de muestreo y dem ás funciones que hace
d e v o ltaje p o sitivo s y n egativo s p ro p io s de la el microcontrolador. D e ahí, si el usuario pulsa la
interfaz R S -2 3 2 , a pesar de q u e se a lim e n ta sólo tecla núm ero 1, el m icrocontrolador em pieza a
co n u n a fu en te se n c illa de 5V. tom ar las muestras cada segundo, esto quiere de­
cir que las 4 .0 9 6 (4K) conversiones A/D qu e se
Operación dei sistema pueden alm acenar en la m em oria, serán tom adas
En los p un to s anteriores h ab lam o s acerca del en un tiem po de 4 .0 9 6 segundos.
hardware del proyecto; ahora, vam os a hablar un
poco del software qu e es quizás lo m ás interesan­ Tecla Función
te. A ntes de referirnos al p ro gram a del m icro ­ p u lsa d a
1 Intervalo 1 s
controlador p ro piam en te, vam os a describir que 2 Intervalo 2 s
es lo qu e hace. 3 Intervalo 4 s
4 Intervalo 8 s.
5 Intervalo 16 s
En esen cia, el e q u ip o d eb e to m a r m u es­ 6 Intervalo 32 s
tras d e la señal de e n tra d a , co n v ertirlas a un 7 Intervalo 64 s
8 Intervalo 128 s
e q u iv a le n te d ig ita l de 12 bits y a lm a c e n a r d i­
9 Intervalo 255 s
chos d a to s en u n a m e m o r ia no v o lá til. Las Enter Lectura de la memoria
m u estras d eb en ser to m ad as a in terv alo s reg u ­
lares de tie m p o , estab lecid o s p o r la c o m p u ta ­ Figura 2 6 .4 Funciones del equipo (tiempos de muestreo)
M. *
Curso práctico sobre M icrocontroladores
Registrador de datos de 12 b i t s

D entro de las aplica­


±10V o
0+5V ciones prácticas que puede
te n e r este d isp o sitiv o se
encuentran los monitores
de silos o ambientes con va­
riables que deben ser con­
Pulso de conversión troladas, tales como tem pe­
ratura, presión, hum edad,
etc. O tra aplicación es el se­
40ns min guim iento de la tem pera­
tura en invernaderos, don­
de los cam bios del clim a
durante la noche pueden
Figura 2 6 .5 Circuito para el manejo del conversor ADS7812 afectar considerablem ente
el desarrollo de los cultivos.
A sí s u c e s iv a m e n te se p u e d e c a lc u la r el
tie m p o p ara c a d a in te rv a lo se le c c io n a d o . El Operación del ADS7812
LE D c o n e c ta d o al m ic r o c o n t r o la d o r t it i la En la f ig u r a 2 6 .5 se m u estra u n c irc u ito b ási­
c a d a vez q u e to m a u n a m u e s tra y perm anece co p ara tra b a ja r co n el A D S 7 8 1 2 . Para em p e­
e n c e n d id o c u a n d o se lle n a el c o n te n id o d e la zar u n a co n v ersió n y la tra n sm isió n serial de
m e m o ria E E P R O M . los resu ltad o s de la co n v ersió n p re v ia, se re­
q u iere de un flan co de b ajad a en el p in C O N V .
U n a vez qu e la m em oria está llena, se debe
vaciar su contenido en la co m p utado ra, para ello El pin BU SY se pondrá en estado lógico bajo
el usuario debe pulsar la tecla E nter (con esto se p ara in d icar qu e la conversión se ha iniciado y
envía al m icrocontrolador el código A SC II de la perm anecerá así hasta qu e finalice. D uran te la
tecla qu e es OD en hexadecim al). El m icrocon­ conversión, los resultados de la conversión ante­
trolador, de in m ed iato , com ienza a leer las posi­ rior se tran sm itirán por el pin DATA m ientras el
ciones de m em o ria y a tran sm itir hacia la P C los pin D A TA CLK proporciona el reloj de sin cro n i­
datos correspondientes. zación p ara los datos seriales.

C om o se trata de datos
de 12 bits, éstos se transmiti­
<3+5V
rán en form ato hexadeci­ ±10V °-
C1 % fc 2
mal. Por ejemplo, si el dato 0 ,1 n F l— f — M O nF
de la mem oria en binario es
"Interrupción
0 0 0 0 0 0 0 0 0 0 0 0 , en panta­
lla aparece 000; si el dato es < Selección del integrado

111111 1111 11, en panta­ . Pulso de conversión

lla aparece FFF. C ada mues­


C3 J+ . C4 1------- o +5V
tra aparece separada de las iufT 1 0,01 nF
40ns min
otras por el carácter coma _L
C 5±
Para obtener el programa del 1MF £ < Reloj externo
m ic r o c o n tr o la d o r v isite
nuestra página en la internet
www.cekit.com.co. Figura 2 6 .6 Circuito para el manejo del conversor ADS7812 con señal externa de reloj

€ E K !T s \ Curso práctico sobre M icrocontroladores


Proyectos

O tro m odo de trabajo del conversor es con aprecia una parte del código fuente en donde se
u n a señal externa en el pin DATACLK, figura generan las señales para acceder a los datos del con­
2 6 .6 . En este caso el resultado se alm acena en un vertidor, se puede apreciar en la parte A la genera­
registro de desplazam iento qu e se basa en la señal ción de la señal de DATACLK, y en la parte B, la
de reloj generada por un dispositivo externo, en generación de la señal para el pin C O N V , de acuer­
este caso el microcontrolador. En la fig u ra 2 6 .7 se do a lo explicado en las figuras anteriores.

********** R U T IN A QUE GENERA E L PULSO DE R E L O J PARA L E E R EL A D S 7 8 1 2 * * * * * * * * * * * *


R ELO J BCF P T O C ,C L K A -----
MOVLW 01H EN E S T A PARTE DEL PROGRAMA SE GENERA
MOVWF T IM E S E L PULSO DE R E L O J ( P I N C L K ) N E C E S A R IO
REL0J2 D ECFSZ T IM E S ,1 PARA PODER L E E R EL CONVERTIDOR
GOTO REL0J2 ANÁLOGO D I G I T A L A D S 7 8 1 2 .
BSF P T O C ,C L K E L P I N C L K DEL PUERTO C VA CONECTADO
MOVLW 01H A L P I N D A T A C LK DEL INTEGRADO.
MOVWF T IM E S
RELOJB D ECFSZ T IM E S ,1
GOTO REL0J3
RETURN

* * * * * * * * * * * * * * * * R U T IN A DE CO NVERSIÓN A / D DEVUELVE 2 B Y T E S * * * * * * * * * * * * * * * * * * * * * *
* 8 B I T S B A JO S EN A D R E S L Y 4 B I T S A LT O S EN ADRESH *
*******************************************************************************
CONVER BCF P T O C , CONV b —
MOVLW D’ 10' ; EN E S T A PORCION DEL PROGRAMA SE E N V IA
MOVWF T IM E S ; L A H A B I L I T A C I Ó N PARA EL P IN
C0NVE2 D ECFSZ T IM E S ,1 ; CONV D E L C I R C U I T O A D S 7 8 1 2 .
GOTO C 0N VE2
CLRF ADRESH ¡ L I M P I A R R E G I S T R O DE R E C E P C IÓ N
CLRF ADRESL
MOVLW 04H ¡ I N I C I A CONTADOR PARA L E E R 2 B I T S DE MAYOR
¡PESO
MOVWF CONTA
BCF P T O C , CONV ¡ B A J A C H I P S E L E C T PARA EMPEZAR
NOP
O TR O B IT CALL RELOJ ¡ L L A M A PULSO DE R E L O J
BSF STATUS, C ¡ L O S DATOS SE VAN ALMACENANDO EN FORMATO
BTFSS PT O C ,IN ¡ S E R I A L . E L B I T QUE V A LLEGANDO SE VA
BCF STATUS, C ¡ROTANDO SOBRE LOS R E G IS T R O S ADRESH Y
R LF A D R E S H ,1 ; ADRESL.
D ECFSZ CONTA,1
GOTO O TR O B IT
MOVLW 08H ¡ I N I C I A CONTADOR PARA L E E R 8 B I T S DE MENOR
MOVWF CONTA ; PESO
BCF P T O C , CONV ¡ B A J A C H I P S E L E C T PARA EMPEZAR
NOP
O TRO BIS CALL R ELO J
BSF STATUS, C
BTFSS P T O C , IN
BCF STATUS, C
R LF A D R E S L,1
DECFSZ CO N TA, 1
GOTO O TRO BIS
BSF P T O C , CONV
BCF PT O C ,C LK
NOP
RETURN

Figura 2 6 .7 Porción del código fuente donde se generan ias señales para el convertidor

Curso práctico sobre M icrocontroladores CMKIT,.


Ensamblaje del proyecto LISTA DE MATERIALES

II
Ref. Descripción
1 IC1 Circuitos integrado A D S 7 8 1 2
1 IC2 Microcontrolador PIC 16F873, programado
1 IC3 Circuito integrado 2 4 L C 6 4
1 IC4 Circuitos integrado M A X 2 3 2
1 REG1 Regulador fijo d e + 5 V -1 A, 7805
1 BR1 Puente rectificador circular d e 1A, W 0 4 M
1 LED1 Diodo L E D d e 5 m m , verde
1 LED2 Diodo L E D d e 5 m m , rojo
1 C1 C o n d e n s a d o r electrolítico d e 1 0 0 0 u F - 2 5 V
1 C2 C o n d e n s a d o r electrolítico d e 2 2 u F - 16V
2 C3 y C4 C o n d ensadores cerámicos d e 0.1 u F - 50V
2 C5 y C7 C o n d ensadores d e tantalio d e 1uF - 35V
1 C6 C o n d e n s a d o r cerámico d e 0.01 u F - 5 0 V
2 C8 y C9 C o n d ensadores cerámicos d e 2 2 p F - 5 0 V
4 C10 a C13 C o n d ensadores electrolíticos d e 1 0 u F - 1 6 V
Figura 2 6 .8 Conjunto de componentes electrónicos y los 2 R1 y R2 Resistencias d e 3 0 0 - 1 / 4 W
1 XT1 Cristal d e cuarzo d e 4 M H z
accesorios que se requieren para ensam blar el circuito del
1 K-337 Circuito impreso C E K I T
registrador de datos de 12 bits CEKIT K-337. 1 CON1 Conector A C / D C para alimentación
1 CON2 Conector d e tomillo d e 2 pines para impreso
Por medio de este circuito se pueden adquirir datos
1 CON3 Conector D B 9 H e m b r a para circuito impreso
provenientes de sensores o transductores con un alto grado de 1 B a s e d e 8 pines para circuito integrado
resolución, de 12 bits. Con este proyecto se facilita la toma y 2 Bases d e 16 pines para circuito integrado
almacenamiento de datos en el laboratorio o en el campo, y el 1 Bases d e 2 8 pines para circuito integrado

posterior análisis en la computadora. Para el ensamblaje de la


tarjeta tenga en cuenta los siguientes pasos:
Paso 4
Instale y suelde los dos
Paso 1 condensadores de
Instale y suelde los tantalio, y los
puentes de alambre condensadores
telefónico desnudo, y electrolíticos.
las dos resistencias de Figura 26.12
1/4 de vatio.
Figura 26.9

Paso 5
Instale y suelde el
Paso 2 conector para la
Luego instale y suelde las alimentación de la tarjeta
bases para los circuitos (9JCA/CC), y los bornes
integrados y el regulador para la señal de entrada
de voltaje de +5V. entre 0 y 5J.
Figura 26.10 Figura 26.13

Paso 6
Paso 3 Aspecto final de la tarjeta
del circuito registrador
■ • - -
Instale y suelde el
puente rectificador BR1, de datos de12 bits K-
los diodos LED, los 337, luego de haber 4 .
A É M
.
l i S '

* *

condensadores soldado el conector DB-9H . • • • • V

U r
- ,

B .

para el puerto serial, y !®I I


cerámicos, y e l cristal de 9 * i*

cuarzo de 4MHz. ubicado los circuitos m F


• * " '• ‘i l
T *
. *
>
~•

Figura 26.11 integrados en sus It y


/ -

.
' .

:~ J
!*' T ,.* /

respectivas posiciones.
Figura 26.14

Paso 7. Pruebas finales


Esta tarjeta debe alimentarse mediante un adaptador de voltaje de CC sin im portar la polarización que posea, gracias a l puente
rectificador y al regulador de 5 V. Por medio del puerto serial y un programa de prueba de PC, como el hyperterminal, haga una
lectura de los datos que la tarjeta transmite.

€ M K !T 1 Curso práctico sobre M icrocontroladores


PROYECTO 26

LUCES RÍTMICAS
En este proyecto construirem os un circuito que
genera secuencialm ente unos patrones de luces,
y, dependiendo de una entrada de audio, se va­
ría la velocidad de la secuencia visualizada.

C aracterísticas
• Envío de secuencia de 8 bits a través de d io ­
dos LED
• La velocidad con que se origina la secuencia
varía de acuerdo a una entrada de audio
• Lectura de señal análoga proveniente de un
m icrófono u otra fuente de sonido
• M icrocontrolador M otorola

*
Curso práctico sobre M icrocontroladores IIK II TTs.a \ 249
Luces rítmicas

Funcionamiento te a c irc u ito s a m p lific a d o re s n i a p a rla n te s.


En m uchos sitios públicos, com o tabernas, es­ P ara s o lu c io n a r este in c o v e n ie n te , se u san los
pectáculos y discotecas, se tienen dispositivos de c irc u ito s p re a m p lific a d o re s, los cu ales p u ed e n
luces para am b ien tar los distintos escenarios. La a c e p ta r señ ales de e n tr a d a de m u y b ajo n iv el
variedad y creatividad con qu e estas luces se en­ y las a m p lific a n h asta v alo res a d e c u a d o s p ara
cien d an y apaguen, com binados con las caracte­ ser in tr o d u c id a s en u n a m p lific a d o r de p o ­
rísticas del sonido en cad a instante del espectá­ te n c ia . Los p re a m p lific a d o re s ta m b ié n se u t i­
culo pueden crear diversas em ociones en el o b ­ liz a n co n o tras fu en tes de se ñ a l, co m o to c a ­
servador, lo qu e hace a estos sistem as m u y atrac­ d isc o s , re p ro d u c to r e s de d isc o s c o m p a c to s
tivos com ercialm ente. (C D ), re p ro d u c to re s d e casetes, s in to n iz a d o ­
res de A M o F M , etc. P ara cad a u n o de estos
En este proyecto vam os a co n struir un sen­ tip o s d e se ñ a l, el p r e a m p lific a d o r p u e d e te ­
cillo dispositivo qu e genera un patrón de luces n e r d ife re n te s c a ra c te rís tic a s , p ero el o b jetiv o
cu ya velocidad depende de la in ten sid ad con que en to d o s lo s casos es e l m ism o .
se sienta la m úsica. Si el usuario lo desea puede
filtrar las señal del sonido y variar la velocidad de Existen diferentes clases de m icrófonos, cada
las luces, dep en diend o de los sonidos bajos, m e­ uno de ellos posee características especiales que
dios y altos. los hacen aptos p ara determ inadas tareas y qu e a
la vez los diferencian de los dem ás.
Descripción del circuito
En la fig u ra 2 6 .1 o b serv am o s u n d ia g r a m a El diagram a esquemático de una etapa pream-
d e b lo q u e s g e n e ra l d el p ro y e c to y en la fig u ra plificadora típica se ve en la figura 26.3. El com ­
2 6 .2 e l d ia g r a m a e s q u e m á t ic o c o m p le to . ponente central del circuito es el am plificador ope-
C o m o p o d e m o s a p rec iar, e x iste n d o s p o sib les racional L M 3 5 8 , éste cum ple la función de am ­
clases de e n tra d a s al s e c u e n c ia d o r: e n tr a d a de plificar las débiles señales qu e entrega el m icrófo­
m ic ró fo n o o e n tr a d a p ara o tra fu e n te d e so­ no para llevarlas a niveles adecuados para ser apli­
n id o . A m b as p o s ib ilid a d e s d eb en ser p re v ia ­ cadas a un am plificador de potencia. Para ajustar
m e n te so m e tid a s a u n a e ta p a de p re a m p lifi- el nivel de am plificación a un valor adecuado se
c ació n q u e a d e c ú a sus d é b ile s señ ales p ara qu e utiliza el trim m er P2, el cual debe ajustarse cada
p u e d a n ser le íd a s d e sd e el co n v erso r A/D in ­ vez que se cam bie de micrófono.
tern o del m ic ro c o n tro la d o r.
Entre los pines 1 y 2 del am p lificad o r opera-
Etapa de preamplificación cional (salida y en trad a negativa respectivam en­
L a se ñ a l q u e e n tre g a u n m ic ró fo n o tie n e n i­ te) se ha conectado u n a resistencia ajustable ( tri­
veles d e v o lta je y d e c o rrie n te m u y b ajo s. Por mmer •) de 1M Q , éste sirve para ajustar el nivel de
esa razó n n o se p u e d e n c o n e c ta r d ir e c ta m e n ­ am p lificación al nivel deseado. N o rm alm en te la

M icrófono

h -
(
u
I
ETAPA DE MICROCONTROLADOR
SALIDA

r PREAMPLIFICACIÓN 68HCJK3
(MÓDULO A/D) (LED)
Otras fuentes I
de señal

Figura 26.1 Diagrama de bloques d e l circuito

éM K IT ,A Curso práctico sobre M icrocontroladores


. Proyectos

w<
O o

Figura 26.2 Diagrama esquemático del secuenciador de luces

É *
Curso práctico sobre M icrocontroladores ( @ [ M I I Ws a
Luces rítmicas

+V(5V) entrada suficientem ente alta;


en ese punto ya se puede co­
n ectar nuestro m e d id o r de
nivel de sonido o un am plifi­
cador de potencia que pueda
m anejar uno o varios parlan­
tes directamente.

A d icio n alm en te a la e n ­
trad a d el m icró fo n o , el c ir ­
c u ito posee la o p ció n de in ­
co rp o rarle otras fuen tes de
a u d io , f i g u r a 2 6 . 4 . P ara
esto se d isp u so de u n a e ta ­
pa de aco p lam ien to . La idea
del c irc u ito es a ju s ta r el n i­
Figura 26.3 Etapa preamplificadora
vel d e la señal y se rv ir p ara
aco p la r las im p e d a n c ia s. La
salida de un p ream plificado r puede ser de IV, sa lid a d e esta e ta p a de a c o p la m ie n to se p ued e
m ientras qu e su entrada, es decir, el m icrófono, co n e ctar d ire c ta m e n te al m icro co n tro lad o r.
es del orden de los m ilivoltios.
Para el desarrollo de este proyecto se ha uti­
El valor de am p lificación es diferente para lizado el am plificador operacional L M 3 5 8 , el cual
cada caso, por lo tanto, si se cam bia de un tipo es apto para tareas de aud io por sus característi­
de m icrófono a otro, se debe c a m b ia r la posición cas de alta im p ed an cia de en trad a y baja im p e­
del trim m er con el fin de obtener un óptim o fun­ d a n c ia de salid a. El am p lificad o r operacion al
cio n am ien to del circuito. cu en ta con u n a red de realim entación basada en
resistencias, qu e le dan un m argen de am p lifica­
La salida del am plificador operacional pasa a ción a la señal tratada. El trim m er P 1 sirve para
través de un condensador (C 6) con el objetivo de ajustar el nivel del voltaje de la señal de entrada.
elim in ar el nivel C C , y una resistencia, conectada
a tierra, sirve para establecer una im pedancia de La entrada de la señal análoga acondicionada
se envía al pin 7 del puerto B, el cual
co m p arte sus funciones de pin I/O
convencional con las de convertidor Al
D . Esto es posible gracias a la configu­
ración establecida sobre el registro de
C6 pTB7 estado y control del A D C (A D SC R ).

Recordemos que, cuando el m i­


crocontrolador finaliza un ciclo de con­
versión, el m ódulo A D C graba el re­
sultado con resolución de 8 bits en el
registro de datos del A D C , llam ado
A D R ; y pone en uno lógico su corres­
Figura 26.4 Otras fuentes de audio pondiente bit bandera C O C O .

S .A Curso práctico sobre M icrocontroladores


I
Proyectos

Entre el envío de cada uno de los bytes se debe


+5V
aguardar un tiempo de espera, el cual a su vez,
depende del valor leído en el conversor A/D,
el cual proviene de las fuentes de señal o de
sonido. Entre m ayor sea el valor leído, menor
será el tiem po de espera o retardo.

En el p ro g ra m a p r in c ip a l se in ic ia liz a el
m ó d u lo A D C d e l H C 0 8 c a d a vez q u e se
Figura 26.5 Circuito sugerido para conectar cargas de potencia
r e in ic ia el p ro g ra m a e in v o c a u n a s u b r u ­
tin a q u e to m a las m e d ic io n e s d e l c o n ­
Es posible configurar el convertidor para que v e rtid o r A/D. C u a n d o o c u rre un e stad o de
haga su trabajo de m an era co n tin u a, lo qu e hace reset, el p r im e r paso es d e f in ir el reg istro de
que efectúe ciclos consecutivos de conversión A/D c o n fig u ra c ió n d el hardw are.
sobre el canal de entrada seleccionado, y sobrees-
cribe y actualiza el contenido del registro A D R El p r o g r a m a o c u p a m e m o ria fla sh y d e ­
al co n clu ir cada tiem po de conversión. Para con­ b em o s d e c irle al c o m p ila d o r en q u é p o sic io ­
figurar el A D C se deben configurar tres registros nes de m e m o ria se lo c a liz a rá ; p a ra d e f in ir es­
para poner a funcio nar correctam ente el conver­ tas c o n d ic io n e s u tiliz a m o s la d ir e c tiv a “o rg ”.
tido r A/D: el registro de estado y control (AD S- En este caso se h a o p tad o q u e el reloj d el A D C
C R ), el registro de datos (A D R ), y el registro de sie m p re fu n c io n a r á a la m is m a fre c u e n c ia , si
configuración d el reloj (A D IC LK ). no fu e ra a sí, d e b e ría m o s c o n fig u r a r r e p e tid a ­
m e n te el reg istro A D IC L K .
La utilidad práctica de este proyecto se hace
más evidente cuando le adicionam os la capacidad
de qu e m aneje bom billos o lám paras de buena Configurar
C0NFIG1
potencia. En el circuito impreso se ha dejado dis­
ponible un conector en donde se puede incorpo­
rar para cad a salida un circuito com o el de la fi­ i
Configurar
g u ra 2 6 .5 , donde se ha utilizado un optoacopla- ADCLK
dor y un triac para conm utar una carga a un vol­
taje d e l 10 o 2 2 0 V CA.

Descripción del programa


En la fig u ra 2 6 .6 vemos un diagram a de bloques
básico donde podemos apreciar el funcionam iento
del program a. En él podem os d istin g u ir los pasos
fundam entales com o son configurar el registro
C O N F IG 1 y el registro A D C L K de acuerdo a
los requerim ientos qu e tengam os, com o lo expli­
caremos en los párrafos qu e están a continuación.
Posteriorm ente debem os encerrarnos en un ciclo
en el cual se en vía paso a paso cada uno de los
bytes que conform an la secuencia y qu e se en cuen ­
tran ordenados dentro de u n a tabla localizada en
la m em oria de program a. Figura 2 6 .6 Diagrama de bloques del programa

Curso práctico sobre M icrocontroladores € E K !T


Luces rítmicas w

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

* PROYECTO: LUCES R ÍT M IC A S
* CURSO PRÁCTICO SOBRE MICROCONTROLADORES
* FA SC ÍC ULO 3 2
* C E K IT - 2 0 0 1
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

S in c lu d e ‘ jl3 r e g s g .in c * ; IN C L U IR ARCHIVO DE D E F IN IC IO N E S

RAM_START eq u S0080 ¡D IR E C C IÓ N DE I N I C I O DE LA RAM


F L A S H .S T A R T .J K 3 equ SEC00 ¡SOLO PARA J K 3 / J L 3
RESET.VEC equ SFFFE ; VECTOR DE RESET

o rg RAM_START

d a to l rm b 1 ¡SEPARA UN BYTE
d a to 2 rm b 1 ¡SEPARA UN BYTE
MEM1 RMB 1
o rg FLAS H _S TA R T_JK 3 ¡ I N I C I O DE LA MEMORIA FLASH

R e s e t:
R sp
m ov # * 1 1 1 1 1 1 1 1 , CONFIG 1 ; D E S H A B IL IT A R EL COP (WATCHDOG)
mo v # * 0 1 1 0 0 0 0 0 , ADCLK ¡ EN ESTE CASO U T IL IZ A M O S UN C R IS T A L DE 8 MHZ
¡ EL CUAL SE D IV ID E POR 8 PARA OBTENER 1MH
BCLR 7,D D R B ; P B 7 I N PARA EL ADC
Bset 6 ,D D R B ¡ LOS DEMÁS P IN E S EXCEPTO PB0 SE CONFIGURAN
Bset 5,D D R B ; PARA SER LAS S A L ID A S DE LOS DATOS DE LA
Bset 4,D D R B ; SEC U EN C IA.
Bset 3,DDRB
Bset 2,D D R B
Bset 1,DDRB

P r in c ip a l:

c l ra
js r le e r_ a d ¡ INVOCAR SUBRUTINA DE LECTURA DEL CONVERSOR A /D
coma ; EN ESTE PUNTO EL DATO L E ÍD O SE ENCUENTRA
; D IS P O N IB L E EN EL ACUMULADOR.
s ta / d a to l ; ÉSTE ES EL RESULTADO, A P A R T IR DE ESTE VALOR SE
; CONFIGURA EL VALOR DEL RETARDO.
b ra P r in c ip a l

*****************************************************************************************************
NOMBRE DE LA S U B R U TIN A : L E E R .A D Ú L T IM A R E V IS IÓ N : AGOSTO 2 0 0 1

O B J E T IV O : EJECUTAR UNA CONVERSIÓN A / D DE UNO DE LOS CANALES

C O N DIC IO NES DE ENTRADA: HABER CONFIGURADO ADECUADAMENTE EL REGISTRO ADCLK PARA UNA VELOCIDAD
DE CONVERSIÓN DE 1 MHZ. EL CANAL ADC DESEADO EN EL ACUMULADOR Y EL
R ESPECTIVO P IN D ISPU ESTO COMO ENTRADA.

C O N DIC IO NES DE S A L ID A : EL RESULTADO DE LA CONVERSIÓN EN EL ACUMULADOR

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

le e r.a d
o ra # *0 0 1 0 0 1 1 1 ; SELECCIONO MODO DE CONVERSIÓN
; CONTINÚO POR EL CANAL 7
s ta ADSCR
b r c lr C O C O ,AD SC R ,* ¡A C T IV A R EL ADC Y ESPERAR UNA VUELTA AL C IC LO
¡DE CONVERSIÓN PARA E S T A B IL IZ A R S E
Id a ADR ¡ L IM P I A R E L B I T COCO, LEYENDO EL ADR
b r c lr C O C O ,A D S C R ,* ¡ESTE T IE M P O TOMA LA LECTURA REAL

m ov # * 0 0 0 1 1 1 1 1 , ADSCR ; TOMAR DATO Y APAGAR EL ADC


Id a ADR ; RETORNA LA M E D IC IÓ N TOMADA EN EL ACUMULADOR
rts

O rg R ESET.VEC
Dw R eset ¡ a l d a rs e re s e t s a lta a S ta r t

Figura 2 6 .7 Código del proyecto

éM K IT . Curso práctico sobre M icrocontroladores


Proyectos

El lazo p rin c ip a l d el p ro g ra m a lla m a a una el b it de selección de la conversión co n la selec­


s u b r u tin a q u e to m a las m e d ic io n e s c o n las ción del can al de en trad a en un valor final de 8
c u a le s se e s ta b le c e la v e lo c id a d c o n q u e se bits. La m ejo r m an era de h acer esto es m e d ia n ­
e n v ia r á la s e c u e n c ia . L a s u b r u t in a m a n e ja te u n a o peración ló g ica O R .
to d o lo c o n c e rn ie n te a l c o n v e rtid o r A/D y re­
q u ie re q u e el relo j se e n c u e n tre a c tiv a d o . D e Por e je m p lo , p ara se leccio n ar el m o d o de
la m is m a m a n e ra re q u ie re de p in es d e tra b a jo co n versió n c o n tin u a u tiliz a n d o co m o en trad a
y de c a n a le s d e e n tra d a . el ca n al 3 . U tiliz a m o s el a c u m u la d o r p ara p a ­
sar a la s u b r u tin a el p a rá m e tro 3 p ara el can al
El reloj d el A D C y los p u erto s se c o n fig u ­ de e n tra d a . Si ejecu tam o s u n a O R en tre el a c u ­
ran ju s to d esp u és de u n estad o de reset, de m a ­ m u la d o r y el $ 2 0 p ara co n v ersió n c o n tin u a , el
n era q u e d eb em o s d e c irle a la s u b ru tin a qu é resu ltad o es $ 2 3 .
c a n a l d eb e usar. Esto se p u e d e h ac e r cargan d o
n u estra selecció n en el a c u m u la d o r. C u a n d o T an p ro n to alm acen am o s este valor en el
la s u b r u tin a te rm in a su ejecu ció n el v alo r m e­ A D S C R , el m ó d u lo A D C in ic ia su proceso de
d id o (co n reso lu ció n de 8 bits) es reto rn ad o en conversión. El circu ito A D C no se ha estab ili­
el acu m u lad o r. zado aú n , debem os esperar un ciclo de conver­
sión p ara tenerlo listo. La m an era m ás ráp id a
La p a rte d e l có d ig o d e le c tu r a d el A D C de h acer esto es en tra r en u n ciclo co n tin u o
es u n b u en e je m p lo d e r e u tiliz a c ió n d e c ó d i­ m ien tras se ch eq u ea el b it de fin de conversión
g o , p ues esta s u b r u tin a p u e d e ser in v o c a d a fá­ del registro A D S C R .
c ilm e n te d e sd e u n p ro g ra m a p r in c ip a l. Por
e je m p lo , si n e c e s itá ra m o s le e r o ch o d ife re n ­ C u a n d o este b it e stá en e stad o a lto , ha
tes sensores de te m p e ra tu ra en cad a c a n a l, esta fin a liz a d o la c o n v e rsió n , lo q u e q u ie re d ec ir
r u t in a p o d ría u tiliz a rs e p a ra to d a s e lla s. La q u e el c ir c u ito h a te n id o tie m p o p a ra e s ta b i­
ú n ic a e n tr a d a q u e n e c e s ita ría es la id e n t if ic a ­ liz arse . E ste p aso n o es n e c e sa rio si in ic ia m o s
c ió n d el c a n a l A D . la co n v e rsió n d esp u és d e q u e el m ó d u lo A D C
se h a a lim e n ta d o .
En la porción de código fu en te de la fi­
g u r a 2 6 .7 p odem os ap reciar la co n figu ració n y La lectura del A D R lim p ia el b it C O C O .
m an ejo del conversor análogo d ig ital interno del No utilizarem os la p rim era m edició n m ientras el
m icro co n tro lad o r, de acu erd o a lo expuesto en circuito A D esté inestable, esperaremos la siguien­
la sección de teoría. Esta es la porción novedosa te m edició n para com pletar. A penas se en cuen ­
den tro de nuestro estu d io , la otra p arte del có­ tra listo, el bit C O C O se activa n uevam ente y
d ig o se trata del b arrid o de los datos de u n a ta­ podrem os salir del ciclo.
b la y la gen eració n de retardos, casos qu e y a se
h an exp licad o en proyectos an terio res con m i­ El m ó d u lo A D C se d esa ctiv a e s ta b le c ie n ­
crocon troladores M otorola. d o los bits de selecció n d e ca n al en el registro
A D S C R . Para o rig in a r el efecto de luces r ít­
El co n vertid o r A/D p ued e ser co n figu rad o m icas, la m ed ició n o b te n id a en el registro A D R
p ara q u e fu n cio n e en m o do sim p le o en m odo se reto rn a m e d ia n te e l a c u m u la d o r y co n él se
co n tin u o , es decir, qu e haga u n a sola conversión estab lece u n retard o . S e in v o c a u n a ta b la p ara
para que sea chequeado o qu e permanezca en fun­ re sc a ta r s e c u e n c ia lm e n te los d a to s q u e se van
cio n am ien to y se tom en los datos en cu alq u ier a e n v ia r p o r los p u e rto s , a g u a r d a n d o en tre
m om ento. Esto se establece m e d ia n te el b it 5 c a d a u n o d e ello s, e l re ta rd o g e n e ra d o p o r los
d el registro A D S C R . A h o ra, se debe co m b in ar n iv eles de las señ ales d e e n tra d a .
Luces rítmicas 1

Ensamblaje del proyecto L IS T A D E M A T E R IA L E S

Cant. Reí. Descripción


1 IC1 Microcontrolador Motorola 68HC908JK3, programado.
1 IC2 Circuto integrado LM358.
1 REG1 Regulador fijo d e + 5 V -1A, 7805.
1 BR1 Puente rectificador circular d e 1A, W 0 4 M .
1 LED1 Diodo L E D verde d e 3 m m .
8 LED2 a LED9 Diodos L E D rojos d e 3 m m .
1 C1 C o n d e n s a d o r electrolítico d e 1 0 0 0 u F - 25V.
2 C 2 y C5 C o n d ensadores electrolíticos d e 2 2 u F - 25V.
1 C3 C o n d e n s a d o r cerámico d e 0.1 u F - 50V.
2 C 4 y C6 Condensadores electrolíticos d e 1 0 u F - 25V.
2 Condensadores cerámicos d e 2 2 p F - 50V.
1 Cristal d e quarzo d e 4 M H z .
1 P1 Reóstato d e 100k.
F igura 26.8 Conjunto de componentes electrónicos y los ^ P2 Trimmer d e 1M.
accesorios que se requieren para ensam blar el circuito de 9 R1, R 8 a R 1 5 Resistencias d e 3 0 0 Q - 1/4W.
luces rítmicas CEKIT K-337. 1 R2 Resistencia d e 4.7k - 1/4W.
3 R3, R 4 y R 6 Resistencias d e 10k - 1/4W.
Con este sencillo proyecto usted podrá divertirse al hacer variar la 1 R5 Resistencia d e 1k - 1/4W.
R7 Resistencia d e 1 M - 1/4W.
velocidad de la secuencia de exitación de 8 LEDs en función del
K-337 Circuito impreso CEKIT.
sonido; y adicionamente por medio del byte de potencia de CEKÍT, se
Conectores d e tomillo d e 2 pines.
podrán manejar de una manera segura ocho lámparas de hasta Conector e n línea d e 9 pines M/H.
250W cada una. Para el ensamblaje de la tarjeta tenga en cuenta los 1 Conector d e alimentación A C / D C .
siguientes pasos: 2 Conectores tipo cerca n o polarizado d e 2 pines.
1 Jumper.
1 B a s e para circuito integrado d e 2 0 pines.
1 B a s e para circuito integrado d e 8 pines.

Instale y suelde los puentes de alambre y las resistencias de 1/4


de vatio.
Figura 2 6 .9

Paso 4
Instale y suelde el TRIMMER P2, el reóstato P1, los condensadores
cerámicos, y el cristal de cuarzo XT 1.
Figura 26.12

Paso 2
Luego instale y suelde las bases para los circuitos integrados IC1 e IC2.
Figura 26.10

Paso 5
Aspecto fin a l d e l circu ito de las luces rítm icas K-337,
después de in stalar y soldar los condensadores
electrolíticos, los conectores para la entrada de sonido
Paso 3 ■ ■ ■ ■ ■ ■ ■*** : (m icrófono y línea), e l conector para la alim entación, los
Instale y suelde el puente rectificador BR1, e l regulador de voltaje conectores tip o cerca para e l selector, e l conector para el
integrado REG1, y los nueve diodos LED de 3mm. byte de potencia, e in se rtar los respectivos circuitos
Figura 26.11 integrados.
Figura 26.13
Paso 6. Pruebas finales
Alimente el circuito mediante un adaptador de voltaje. Antes de insertar el microcontrolador pruebe que e l voltaje de entrada
debido a las señales del micrófono o de la otra fuente de señal, se encuentren dentro del rango adecuado y el circuito no corra
peligro; para este propósito la tarjeta cuenta con dos resistencias variables que permiten ajustar los niveles de la señal.

Curso práctico sobre M icrocontroladores


PROYECTO 27

HERRAMIENTAS DE DESARROLLO
PARA DASIC Stamp I
Los m icrocontroladores B A SIC S tam p son los dispositi­
vos, dentro d e su clase, m ás fáciles d e m an ejar q u e existen
en el m ercado. En esta ocasión, vam os a co n struir un
m ó d ulo q u e nos p erm itirá poner en practica un gran n ú ­
m ero d e experim entos y nos facilitará en o rm em en te el
desarrollo de sistem as y soluciones reales.

En la sección de teo ría h em os an alizad o los conceptos


básicos d e los m icro co n tro lad o res B A S IC S tam p , com o
su a rq u ite c tu ra y co n ju n to de in struccio n es. En la sec­
ció n de p ro g ram ació n llevam os a cabo algun o s ejercicios
p artie n d o de los conceptos teóricos. A h o ra, estu d iare­
m o s u n a serie de h erram ien tas q u e nos p e rm itirá n a d e n ­
trarn os en el m u n d o d el desarrollo electró n ico con estos
fabulosos m icroco ntroladores.

Curso práctico sobre M icrocontroladores €MIKIT,


Herramientas de desarrollo para BASIC Stanip I

Tarjeta para desarrollo de prototipos La p rin cip al ven taja de este circuito es qu e
para BASIC Stamp I. CEKIT K-189. en él se pueden incorporar gran can tid ad de ele­
L a p rim e ra ta r je ta q u e e s tu d ia re m o s en esta m entos con los q u e el m icrocontrolador puede
o c a sió n es la ta r je ta p ara el d e sa rro llo d e p ro ­ in teractuar para llevar a cabo tareas específicas.
to tip o s co n B A S IC S ta m p I. Este c ir c u ito es L a fuente de alim en tació n del sistem a puede ser
b á s ic a m e n te u n a ta rje ta p a ra h ac e r d e s a rro ­ u n ad ap tad o r de corriente o un transform ador
llo s fin ales co n este m icrocontrolador. En este qu e entregue en su salida 9 V C A ó 12 V C C .
m ó d u lo se p u e d e c o lo c a r el m ic ro c o n tro la d o r
p a ra su p ro g ra m a c ió n y a q u e tie n e lis ta la co ­ Experimentando con la tarjeta de
n e x ió n p a ra el c a b le q u e va h a sta el p u erto prototipos
p a ra le lo de la c o m p u ta d o ra . A d e m á s, co m o A hora mostraremos un ejem plo donde se ilustra
p o see u n a fu e n te de a lim e n ta c ió n re g u la d a , la m etodología de trabajo y el desarrollo de pro­
n o ex iste n in g ú n riesgo p a ra el m ic r o c o n tr o ­ yectos con la tarjeta de prototipos K -189 de C E ­
la d o r n i p a ra los o tro s e le m e n to s q u e se u t ili­ KIT. Vamos a desarrollar un sencillo ejem plo que
cen en el d iseñ o . nos servirá para comprobar el buen funcionam ien­
to de la tarjeta y para familiarizarnos con el uso de
El sistem a tien e u n a área de circuito im pre­ esta sencilla pero práctica herram ienta.
so libre donde el usuario puede m o n tar los otros
elem entos qu e conform an el sistem a, p o r ejem ­ El objetivo d el ejercicio es d esaro llar u n se-
plo, transistores, diodos, resistencias, circuitos cu en ciad o r de luces básico en el cu al, el sentido
integrados, etc. Los pines del m icrocontrolador con qu e se se en cien d en los cuatro diodos LED,
se pueden llevar fácilm ente hasta los otros ele­ d ep en d e de la señal d ad a por u n p u lsad o r (S I ).
m entos ya qu e poseen puntos de conexión para C a d a qu e el m icro co n tro lad o r d etecta u n a se­
ello. T am b ién , se ha dispuesto un botón de reset ñ al en S 1, se m o d ifica el sen tid o de rotación de
p ara qu e el usuario p u ed a fácilm ente acceder a la secu en cia. El p ro gram a de este ejercicio lo
dich a función. En la figura 27.1 se m u estra el p o d em o s a p re c ia r en la fig u ra 2 7 .3 y co n el
d iagram a esquem ático del circuito y en la figura d ia g ra m a esq u em ático de la fig u ra 2 7 .4 p o d e­
2 7 .2 , el circuito im p re so ., m os gu iarn o s en este fácil ejercicio . Los diodos

+Vin +5V
BR1

# L_1 Ef--------
9VAC
12VCC
T 4^ F T T 1S F
4

BASIC Stamp 1
r U p i l I Lm

i 4 6 \l |8 |9 |l0 |l1 |l2 |l3 114


Conectar al puerto
paralelo de la
computadora
Figura 27.1 Diagrama
fesET esquemático de la tarjeta
+5V
de prototipos para el
t BASIC Stamp I

m /K lT . Curso práctico sobre M icrocontroladores


Proyectos

le VPC
9VAC
E ste p u e n te re c tific a d o r p e rm ite C o n e c to r p a ra la a lim e n ta c ió n
q u e la a lim e n ta c ió n de CC posea d e CC
c u a lq u ie r p o la rid a d

- R e g u la d o r
C o n exió n con la c o m p u ta d o ra

PASJC S T A M P ) P u ls a d o r d e re s e t
SCSCT

- 2 o o 1.1 n o rx»(*> l m cr
_ B ase p a ra la u b ic a c ió n del
2 CD“ <^ m ic ro c o n tro la d o r BASIC S ta m p I

E spacio p a ra h a c e r la s c o n e xio n e s
con c irc u ito s e x te rn o s

Figura 27.2 Guía de ensamblaje y circuito impreso de la


tarjeta de prototipos

partir de la etiqueta ciclo2) don­


de se envía la m ism a secuencia
pero en orden invertido. D e la
m ism a m anera, el program a se
qued a encerrado en este segun­
do bloque m ientras no exsita se­
ñal en S 1, cuando esto ocurra, se
salta de nuevo a ciclo 1.
LE D se han conectado a los p i­ gramación. En la prim era línea
l e t d ir s = *1 1 1 1 1 1 1 0
nes P l , P 3, P5 y P 7 del BA ­ se configura el funcionamiento c ic lo l:
S IC Stam p I por m ed io de cu a­ de los puertos y luego se pueden f o r b2 = 0 t o 3
L00KUP
tro resistencias de 4 7 0 O hm ios distinguir básicamente dos blo­ b 2 , ( 1 8 9 , 1 6 7 , 2 2 2 , 1 2 7 ) , b3
l e t p in s = b3
y el p u lsad o r S i se ha co n ecta­ ques, cada uno origina una se­ p a u s e 700
i f p in 0 = 0 th e n c ic lo 2
do al p in PO. D e las figu ras cuencia distinta sobre el puerto next
2 7 .1 3 a la 2 7 .1 6 se m u e stra del BASIC Stamp. En el primer GOTO c i c l o l
c ic lo 2 :
paso a paso có m o in s ta la r los bloque (a partir de la etiqueta ci­ f o r b4 = 0 t o 3
L00KUP
c ir c u ito s so b re la t a r je t a de clo 1) podemos apreciar que por b 4 ,(1 2 7 ,2 2 2 ,1 6 7
l e t p in s =
p ro to tip o s. el puerto se envía la secuencia p a u s e 700
8,4,5,2,1 y el proceso se repite i f p in 0 = 0 th e n c i c l o l
next
Todas las instrucciones que mientras no exista una señal en GOTO c i c l o 2

lo com ponen ya se han analizado S I . C uando esto ocurre el pro­ Figura 27.3 Código del ejercicio para
en las secciones de teoría y pro­ gram a salta al segundo bloque (a m ontar en la tarjeta de prototipos
¥
Curso práctico sobre M icrocontroladores <& í£ § ( l M V 1 1 % ,2 5 9
Herramientas de desarrollo para BASIC Stamp I

+5V

Figura 2 7 .4 Diagrama esquemático del ejercicio para m ontar en la tarjeta de prototipos

Ensamblaje del proyecto


A continuación daremos las instrucciones para
LISTA DE MATERIALES
el ensam blaje de la tarjeta de prototipos para
C ant. Reí. D e s c rip c ió n
B A SIC Stam p I, K -189
C1 C o n d e n s a d o r e le c tro lític o d e 1 0 0 0 p F /2 5 V
C2 C o n d e n s a d o r e le c tro lític o d e 1 0 p F /2 5 V
BR1 P u e n te r e c tific a d o r d e 1 A
7805 R e g u la d o r 7 8 0 5
RESET P u ls a d o r p e q u e ñ o d e 4 p a t a s p a r a im p r e s o
K -1 8 9 C ir c u i t o im p r e s o C e k i t
C o n e c to r C A /C C
S o c k e t e n l í n e a d e 1 4 p in e s
T e r m in a le s ( e s p a d in e s ) p a r a c ir c u ito im p r e s o
T o r n illo m i li m é t r i c o 3 x 7 c o n t u e r c a
C o n e c to r D B 2 5 m a c h o c o n c a rc a z a
C o n e c t o r e n lí n e a d e 3 p in e s
C o n e c t o r t ip o c e r c a n o p o la r i z a d o d e 1 4
p i n e s ( d e u n a f ila )
D is ip a d o r T O -2 2 0
Figura 27.5 Conjunto de componentes electrónicos y los C a b l e r ib b o n d e 3 h ilo s (1 m )
accesorios que se requieren para ensam blar la tarjeta de
prototipos del BASIC Stamp I, K-189

Esta tarjeta se constituye en una herramienta muy ú til para el usuario, a la hora de desarrollar, programar
y monitorear proyectos experimentales con e l microcontrolador BASIC Stamp I. Cuenta con un regulador
de voltaje de +5Z y 1A que puede ser utilizado para alimentar los circuitos que en ésta se construyan.
Para el ensamblaje de la tarjeta tenga en cuenta los siguientes pasos:

Paso 1 Paso 2
Instale y suelde el Instale y suelde el
puente rectificador regulador fijo de
circularBR1. Éstese voltaje de +5Z que
utiliza para proteger el alimenta a todo el
microcontrolador de la circuito. Móntelo
alimentación con sobre un disipador
polaridad invertida. tipo TO-220.
Figura 27.6 Figura 2 7 .7
Q k £ *
260 Ú M K Í T s l Curso práctico sobre M icrocontroladores
(
Proyectos

H " S Paso 3 Paso 4


x:;x) R / □
2□ i = — — M I* / S I
Instale y suelde el Instale y suelde el
n
—— Íl A 'V pulsador de reset y el
□ socket en linea de 14 f•

□ 19 conector de entrada pines que soporta al


LJ

Od
U
<

CA/CC para la microcontrolador □
EEiE
C d •*— — n □
a EE ¡ ! Í f M alimentación. BASIC Stamp I. n
a Figura 27.8 Figura 27.9
□ f-

m SSí m
Paso 5
m
frtti Paso 6
— ^IA 'jC
M IA
Instale y suelde el Instale y suelde los
* (U O '
D3d conector tipo cerca no condensadores
e m - '—

i! | ¡fil polarizado en paralelo


A C -

electrolíticos C1 y C2.
i con el socket del F ig u ra 27.11
5 &
m-— *¡o' K \
= - S -:ÍS lfeL Stamp I, los espadines
I ZUZ " '- -jo r - - ».
L J y el conector de tres
C&fW . . pines para el cable de
s - 1ÍCL - J 8 9 5 ® l programación.
. X

Figura 27.10

Paso 7
Aspecto final de la tarjeta de prototipos del BASIC Stamp
I luego de construir el cable de programación con el
conector DB-25 para el puerto paralelo en uno de sus
extremos, y e l conector de tres pines para la tarjeta en
el otro.
Figura 27.12

Ensamblaje de un ejercicio en la tarjeta de prototipos


Paso 1 Paso 2
Instale y suelde primero Instale y suelde el
las resistencias y los pulsador y su
diodos LID y haga las resistencia en serie de
conexiones con puentes acuerdo a l diagrama
de alambre que se esquemático.
requieran de acuerdo con Figura 27.14
el diagrama esquemático
del ejercicio (figura 27.4).
Figura 27.13

Paso 3 Paso 4
Una vez terminado de Una vez transferido el
ensamblar el circuito de este programa de
ejercicio, inserte el aplicación se puede
microcontrolador Stamp I en su desconectar el cable
socket, y conecte el cable de de programación. Para
programación a la tarjeta de ejecutar el programa,
desarrollo. Luego de haber basta con conectar la
desarrollado y depurado el alimentación al
programa, transfiéralo hacia la sistema.
memoria de programa EEPROM Figura 27.16
del sistema.
Figura 27.15

Paso 8. Pruebas finales


S i todos los elementos se encuentran en buen estado y la alimentación se encuentra dentro del rango indicado, la tarjeta debe funcionar
sin problemas. La manera más sencilla de probar su funcionamiento es montando cualquiera de los ejercicios mostrados en esta
sección y en la de programación. Una vez escrito el programa en e l entorno de programación pulse CTRL-R y observe y disfrute el
funcionamiento de este maravilloso microcontrolador.

Curso práctico sobre M icrocontroladores


Herramientas de desarrollo para BASIC Stamp I

Entrenador para BASIC Stamp I se ha d ejado disponible m ed ian te un pulsador


CEKIT K-190 para qu e el usuario lo m an ip u le según su necesi­
U n entrenador de m icrocontroladores es un apa­ dad. Los otros pines del m icrocontrolador ya tie­
rato qu e sirve com o elem ento de soporte para el nen sus conexiones hechas en el circuito de tal
proceso de' aprendizaje de esta tecnología. El K- m an era q u e el usuario no puede acceder a ellos.
190 de C E K IT es un producto qu e facilita el de­
sarrollo de una serie de prácticas con el BASIC D iodos LED . Este b lo que lo conform an cuatro
Stam p I. Este aparato se encuentra disponible pa- diodos LED ( D i a D 4 ). Para encenderlos se re­
tra todos los seguidores de C E K IT en toda Lati­ q u iere de un nivel lógico bajo en su respectivo
noam érica. Está conform ado por un conjunto de pin de acceso. Para lim itar la corriente qu e co n ­
circuitos, independientes entre sí, tales com o dio­ su m e el LED , se ha colocado en serie, con cada
dos LED, interruptores y u n m ódulo de com uni­ uno de ellos, una resistencia de 5 6 0 ohm ios (R l
cación serial, entre otros, para que el estudiante a R 4 ). Los LED se pueden utilizar para hacer las
pueda desarrollar los más variados experim entos y prácticas en los prim eros program as, para crear
proyectos sencillos (para los qu e se in ician ), o de secuencias y com o m onitores de estados lógicos.
cierta com plejidad (para los más experim entados).
Dipswitch. Esta parte del circuito consta de cuatro
Cada bloque dene listas las conexiones a la fuente interruptores normalmente abiertos (S i a S4), los
de alimentación y a los diferentes elementos que lo cuales se conectan a la fuente de alimentación positi­
componen; de esta forma, sólo se requiere conectar va mediante resistencias de 1KD (R5 a R8). De esta
las entradas y/o salidas al sitio que corresponda. forma, en los pines de conexión del dipswitch se tiene
un nivel lógico alto si el interruptor está abierto, pero,
C ada bloque posee unos pines o terminales de cuando el intermptor se cierra, se obtiene un nivel
conexión, donde, utilizando alambre telefónico, se lógico bajo ya que su otro extremo está conectado a
pueden llevar algunas señales de control desde un tierra. Se pueden utilizar en las primeras prácticas
bloque hasta otro, permitiendo que según el circuito para experimentar la lectura de los puertos, para si­
que se desee probar, el usuario haga la configuración m ular sensores, o entradas de control.
necesaria. En la figura 2 7 .1 7 se muestra el diagrama
esquemático del circuito y en la figura 2 7 .1 8 la apa­ Pulsadores. Son interruptores pulsadores norm al­
riencia final del entrenador. A continuación, vamos m ente abiertos (S5 y S 6 ), conectados a la fuente
a explicar cada uno de los bloques que lo componen. de alim en tació n con una resistencia de 1KÍ2 (R 9
y RIO). En los pines de conexión se tiene nor­
M icro co n tro lad o r B A S IC S ta m p I. En este blo­ m alm en te un nivel lógico alto, pero cuan d o se
qu e se h a reservado u n área especial para colocar o p rim en los botones se obtiene un nivel lógico
el m icrocontrolador, ju n to con el cable de pro­ bajo. Son de gran u tilid ad cuan d o se practica la
gram ación . Este últim o debe ir desde los pines lectura de puertos o cuan do se requiere sim ular
m arcados en el circuito, hasta el puerto paralelo entradas de sensores u otros dispositivos.
de una co m p utad o ra P C , d o n d e se tiene el soft­
ware qu e p erm ite escribir los program as, co m p i­ S a lid a con relé. Para m an ejar cargas de potencia
larlos y descargarlos hacia el m icrocontrolador. desde el m icrocontrolador podem os em p lear un
relé, el cual se opera a través de un transistor
T am bién, se han dispuesto unos conectores N P N . Para activarlo, sólo se debe poner u n nivel
especiales qu e sirven para extender los pines del lógico alto en el pin m arcado IN. D entro de las
m icrocontrolador; de esta form a, las señales de posibles aplicaciones de este b lo que se en cuen ­
entrada y salida, se pueden llevar hasta los otros tran los tem porizadores, las alarm as, el m anejo
bloques del circuito. Por su parte, el pin de reset de aparatos de corriente alterna, etc.

T T s a . Curso práctico sobre M icrocontroladores


Proyectos

DIODOS
hi pin ¿ o LED
Al pin 11 B A SIC S ta m p 1
Al pin 2

Conectar al puerto
paralelo de la 560Q
computadora

PULSADORES
FUENTE DIPSWITCH

9VCA
12VCC

DISPLAYS
330Í2
Display 2 Display 1
R15-R21
- A / W —

- V A —

D5
IN4004

IN W v—
01 V A —
2N3904
+5V
i

* Q2
Display 2 2N3906 R14 2N3906
L_ 27K
Display 1

COMUNICACION RS-232

Cable de comunicación
l i l i Conexión 1 a 1 (sin cruces)

----------- >

Q A A n
y w 9 9

/ • • 7

6 a
w • b

Conector DB9 macho Conector DB9 hembra


al puerto de la
al circuito
computadora

Figura 27.17 Diagrama esquemático del entrenador para BASIC Stamp I

M *
Curso práctico sobre M icrocontroladores @ E j¡ll& IITTs a
Herramientas de desarrollo para BASIC Stamp I

D io d o s LED
M ic ro c o n tro la d o r BASIC S ta m p I

R e g u la c ió n del
v o lta je de
a lim e n ta c ió n

V is u a liza c ió n
p o r d is p la y de
E n tra d a por s ie te s e g m e n to s
p u ls ad o re s

E n tra d a p o r S a lid a p o r relé


d ip s w itc h

Figura 27.18 Conjunto de módulos pertenecientes al entrenador para BASIC Stamp 1

Interfaz R S -2 3 2 . La com unicación serial R S -232 dos los segmentos de los displays se encuentran co­
es u n a de las m ás utilizadas en la in du stria y en nectados a los pines de salida del 7447; por lo tanto,
general, en todos los sitios d o n d e se tienen co m ­ el dígito que se desea mostrar en ese momento, se
putadoras o equipos electrónicos. Para estable­ debe seleccionar mediante la habilitación del dis­
cerla sólo se requiere de un circuito integrado play correspondiente. Esto se hace conectando un
M A X 2 3 2 y cinco condensadores de 10|iF (tan ­ nivel lógico bajo en la base del transistor PNP que
talio); los pines de co m u n icació n se d en o m in an : maneja el ánodo de dicho display.
T x (transm isión) y R x (recepción).
Los cuatro bits del dígito qu e se va a m os­
Dado que los BASIC Stamp poseen instruc­ trar, se deben conectar desde el m icrocontrola­
ciones especiales para hacer este tipo de comunica­ d o r a los pines m arcados D , C , B y A del circu i­
ción (SERIN y SERO U T) con diferentes configu­ to integrado 7 4 4 7 . El de m ayo r peso es D y el
raciones (por ejemplo a 1.200 y 2.400 bps), este blo­ de m eno r peso es el A . Los pines m arcados D 2 y
que es uno de los más importantes ya que podemos D 1 corresponden a las bases de los transistores
construir fácilmente dispositivos que se comuniquen qu e h ab ilitan los displays.
con una computadora tipo PC. El cable de conexión
que se utilice entre el entrenador y la computadora F uen te d e alim en tac ió n . El sistem a se alim en ta
o equipo al que nos conectamos, debe ser de 9 hilos de la red de 110 ó 2 2 0 V C A , a través de un
y con los cables 1 a 1, es decir, sin emees. transform ador o adaptador de corriente qu e en ­
tregue en su salida una señal de 9V C A ó 12 V C C ,
Pantallas multiplexadas. El sistema dispone de dos de los qu e se u tilizan en las radios y en peque­
pantallas (displays) de ánodo com ún, conectadas so­ ños equipos electrónicos. Luego de rectificar la
bre el mismo bus de datos y con los ánodos maneja­ se ñ al, se o b tie n e u n a te n s ió n c e rc a n a a los
dos de forma independiente. Para la conversión del 1 1 V C C q u e se em p lea para alim en tar el relé.
dato que entrega el microcontrolador al código de 7 D e igu al form a, se conecta el regulador de +5V,
segmentos, se emplea un decodificador 7447. To­ el cual alim en ta toda la parte d ig ital del sistema.

Curso práctico sobre M icrocontroladores


TARJETA PARA PROTOTIPOS CON
BASIC Stamp II
C o n este sistem a se p u ed en llev ar a cabo todas las p ru e­
bas p ertin en tes p ara el desarrollo d e un p ro to tip o final
q u e in c lu y a un m icro co n tro lad o r B A SIC S tam p II. Esta
ta rje ta se ac o m o d a a m u ch as ap lic ac io n e s p rácticas y
p u ed e usarse co m o p ro d u cto fin al in clu y en d o los p rin c i­
pales elem en to s d el circu ito desarrollado.

G racias a su v ersatilid ad y a la gran c a n tid a d de fu n c io ­


nes q u e poseen los m icro co n tro lad o res, h an revo lucio­
n ad o la fo rm a d e d iseñ ar p ro d u cto s electró n ico s. Esto
h a hecho q u e los in gen iero s, técnicos y aficio n ad o s a la
electró n ica vuelvan sus ojos h acia tan m arav illo sa tecn o ­
logía. Por tal razón, el desarrollo de h erram ien tas y siste­
m as q u e p e rm ita n hacer prácticas con estos dispositivos
ad q u ie re g ra n im p o rta n c ia ; ad em ás, es u n a lab o r fu n d a ­
m en tal facilitar e in cen tiv ar la cap acitació n en esta área.
á *
Curso práctico sobre M icrocontroladores
V
rje ta p a ra prototipos con BASIC Stam p II

Descripción general D ado q u e el regu lad o r tam b ién alim en tará


La ta rje ta p ara p ro to tip o s co n B A S IC S tam p el circu ito d el p ro to tip o , se debe tener cu id ad o
II co n sta de los elem en to s básicos q u e deben de no exceder su cap acid ad de corriente. D e por
a c o m p a ñ a r al m ic ro c o n tro la d o r y de u n a sec­ sí, los elem en to s qu e y a van en la tarjeta tienen
c ió n de c irc u ito im p reso de tip o u n iv ersal, es u n co nsum o de 2 0 m A, p o r lo tan to , los dispo­
decir, co n p erfo racio n es y pistas q u e p u ed en sitivos q u e se en sam b len en el im preso u n iv er­
ser u tiliz a d a s p ara el e n sa m b la je de d iferen tes sal no deben co n su m ir m ás de 2 0 m A . Si nece­
tip o s d e c irc u ito s con elem en to s co m u n es, ta ­ sita m ás co rrien te deb erá in stalar u n disip ad o r
les com o circu ito s in tegrad o s, resistencias, c o n ­ a este regulador.
d en sad o res, d io d o s, etc.
El circuito tam b ién contiene un pulsador de
Características RESET, etiq uetado com o S W 1, con el fin de ini-
• D im ensiones: 120 m m x 130 m m cializar el m icrocontrolador en form a m anual.
• A lim en tació n : 9 -1 8 V C C ó 9 -1 5 V C A
• P ro gram ació n : serial R S -2 3 2 por m edio de C o n el o b jeto de ten er d isp o n ib ilid a d de
conector D B 9 cad a uno de los pines d el m icro con trolador, la
• Indicador de voltaje regulado tarjeta posee dos ju ego s de conectores h em b ra
• Pulsador de RESET qu e p erm iten el uso de puentes a diferentes par­
• C ab le de co m u n icació n para P C tes del circu ito . En caso de qu e el prototipo se
q u ie ra d e ja r co m o p ro d u cto fin al, se pueden
En la fig u ra 2 8 .1 podemos apreciar el diagra­ retirar d ichos conectores y so ld ar p uen tes hacia
m a de bloques q u e describe la tarjeta para proto­ el resto del circuito, de tal form a qu e la conexión
tipos. O b viam en te qu e el corazón del proyecto sea p erm an en te.
es el m icrocontrolador com o tal. La fuente de
a lim e n ta c ió n , ta n to p ara el m icro co n tro lad o r D en tro de la sección de circu ito im preso
com o para la sección de im preso universal, está universal hem os construido buses de alim en ta­
basada en un rectificador de o n da co m p leta y un ción a través de todo el espacio del m ism o. C ad a
regulador de 5 voltios. O bserve en la fig u ra 2 8 .2 uno de los buses lleva los 5 voltios provenientes
el d iagram a esquem ático de nuestra tarjeta. del regulador, m arcados com o V D D y la tierra
gen eral d el c irc u ito , m arcad a com o
V SS. C o n este sistem a se facilita enor­
m em en te la alim en tació n a otros cir­
ENTRADA DE RECTIFICACIÓ N Y IDEN TIFIC ADO R cuitos qu e construyam os dentro de la
VOLTAJE REGULACIÓN D EVD D 0K
A C /D C tarjeta de prototipos.

CIR CUITO DE ____


T Ensamblaje
RESET
Para el en sam b laje de la tarjeta utilice
'
b. la g u ía de m o ntaje de la figura 2 8 .3 .
R ecu erd e q u e las so ld ad u ras deben
q u ed ar pequeñas, brillantes y u n ien ­
COMUNICACIONES CIR CUITO IM PRESO
SERIALES CON LA PC UNIVERSAL do perfectam ente el pin del elem ento

T
ESPADINES
con el cobre del circuito impreso.

Lo prim ero qu e se debe soldar son


0 BORNERAS
D E E /S los com ponentes de m enor altura, ojalá
Figura 28.1 Diagrama de bloques en el siguiente orden: la resistencia R 1 ,

€ M K ff T s , Curso práctico sobre M icrocontroladores


Proyectos

recer el LED 1 encendido indican­


do que el voltaje está correcto. Sin
embargo, verifique que tenga un
valor entre 4 ,8 5 y 5,15 voltios ya
que este proviene del regulador.

El cable para co m u n icar la


tarjeta con la P C debe ser 1 a 1,
VDD es decir sin cruces. En la fig u ra
2 8 .4 podem os apreciar la forma
de elaborar dicho cable.

1— 1
2 2
3 3
4 4
5 5
6 6
7§— ■ i 7
8 8
9 9

Figura 2 8 .2 Diagrama
Figura 2 8 .4 El cable de conexión debe
esquemático de la tarjeta
ser uno a uno

el condensador cerám ico C 2 , el


p uen te rectificador P R 1 , el p u l­
sador S W I y la base de 2 4 p i­
nes p ara el m icrocontrolador.
Luego suelde los com ponentes
de m ayor tam año en el sigu ien ­
te orden: el d io d o LED D I , el
regulador R E G I, los conecto-
res C N 1 y C N 2 , y por últim o
el condensador C l .

Antes de alim entar el circui­


to es recom endable hacer prue­
bas de continuidad con u n m ul-
tím etro para corroborar que no
haya algún cortocircuito, espe­
cialm en te entre las pistas que
transportarán voltajes a diferen­
tes puntos del circuito.

U na vez que se hayan hecho


las p ru eb as an terio res, p ued e
energizar el circuito. Deberá apa­ Figura 2 8 .3 Guía de montaje

É l *
Curso práctico sobre M icrocontroladores 267
Tarjeta para prototipos con BASIC Stam p

Pruebas de programación
Para com probar el fu n cio n am ien to com pleto de
la tarjeta es necesario, adem ás de in stalarle un
m icrocontrolador, elaborar un pequeño progra­
m a qu e utilice al m enos un pin de salida en modo
in term iten te y tran sm itir a través del cable de co­
m u n icació n serial.

Lo prim ero q u e se debe h acer es co m u n icar


la tarjeta con la co m p utado ra, p ara ello u tilice el
cable y conéctelo entre la tarjeta y un puerto se­
rial de ella (C O M I o C O M 2 ). Figura 2 8 3 Entorno del software de programación del BASIC Stamp II

Se debe utilizar el software de program ación


d el m icrocontrolador, figu ra 2 8 .5 . Podemos car­
gar el sigu ien te program a y co n struir el circuito
q u e aparece en la figura 2 8 .6 .

ciclo:
low 0
pause 500
high 0
fíg u ra 28.6 Circuito de prueba de la tarjeta
pause 500
goto ciclo C E K IT pone a disposición de todos los intere­
sados en esta tecnología un entrenador para el m i­
U n a vez cargado el program a, el LED debe­ crocontrolador BASIC Stam p II, con el cual po­
rá en cender en form a in term iten te in d ican d o sa­ dremos llevar a cabo una serie de experimentos bas­
lidas altas y bajas. A sí com probam os q u e la tarje­ tante interesantes.
ta ha quedado funcio nando bien. En la sección
de program ación se m uestran algunos ejercicios C o n este sistem a de en tren am iento podre­
q u e pueden m ontarse en esta tarjeta. mos hacer un sinnúm ero de prácticas tales com o
el m an ejo de m ódulos L C D , co m u n icació n se­
Ensamblaje de la tarjeta de prototipos rial R S -2 3 2 , m an ejo de teclados y pantallas {dis­
En las figuras 2 8 .7 a la 2 8 .1 2 se m uestran los plays), y m uchas otras, ya qu e se incorpora en el
pasos p ara el en sam b laje de la tarjeta de prototi­ equip o un protoboard con el qu e el exp erim enta­
pos p ara B A SIC Stam p II, K -211. d o r p ued e crear sus propios ejercicios.

Entrenador para Microcontroladores La tarjeta del entrenador está conform ada por
BASIC Stamp II un co n ju n to de circuitos, independientes entre
Los en tren ado res son equip o s q u e p erm iten h a ­ sí, p ara qu e el estu d ian te p u ed a hacer los más
cer p rácticas y exp erim en to s d e u n a fo rm a rá p i­ variados experim entos y proyectos sencillos (para
d a y sen cilla. C o n tie n e n circu ito s, o co n ju n to s los qu e se in ician ), o de cierta co m p lejid ad (para
d e ellos, d isp o n ib les p ara q u e el u su ario pueda, los m ás experim entados). C ad a b lo que tien e lis­
co n unos pocos cables, m o n tar, s im u la r o p ro ­ tas las conexiones a la fuente de alim en tació n y a
bar el fu n cio n a m ien to d e un aparato o de un los diferentes elem entos qu e lo co m ponen. De
nuevo diseño. esta form a, solo se requiere conectar las entradas

Curso práctico sobre M icrocontroladores


Proyectos

Ensamblaje del proyecto


» ,v' Cant. Ref. Descripción

1 R1 330 Q a 1/4W
1 C1 1000|iF/35V electrolítico
1 C2 0.1pF/50V cerámico
1 PR1 Puente rectificador circular W 0 6 M
1 REG1 Regulador de voltaje integrado de
+5V, 7805
1 D1 L E D rojo de 5 mm
1 CN1 Conector D B 9 hem bra par circuito
C onjunto de com ponentes electrónicos y los
F/pt/ra 2 5 .7 impreso
accesorios que se requieren para ensam blar la tarjeta de
1 CN2 Conector C A / C C
prototipos del BASIC Stam p II, CEKIT K -2 1 1.
1 SW 1 Pulsador pequeño de cuatro pines
Esta tarjeta de prototipos se utiliza en e l desarrollo, la para circuito impreso
program ación, depuración y m onitoreo de los circuitos de 1 K-211 Circuito impreso Cekit
aplicación que se construyan con e l m icrocontrolador BASIC 1 Base para C l de 24 pines (ancha)
Stam p II. Cuenta con una fuente regulada de 5V y 1A para
2 Espadines
alim entar cualquier circuito. Para e l ensamblaje de la tarjeta tenga
en cuenta los siguientes pasos: 5 Conectores de tornillo de 3 pines
4 Sockets en línea de 12 pines
1 Conector D B -9 M con chasis

Paso 1
Instale y suelde la resistencia, la base para e l m icrocontrolador, el
pulsador de reset, e l regulador de voltaje y e l rectificador
circu la r de 1A. Paso 4
Figura 28.8 Aspecto fin al de la tarjeta de prototipo del BASIC Stam p II.
Figura 28.11

E n sam b laje de un e jercicio en la ta rje ta de


prototipos
Paso 2
Luego instale y suelde el condensador cerámico, el diodo LED indicador
de alimentación y los socket en linea que son una extensión para la
conexión de todos los pines del microcontrolador.
Figura 28.9

Como un ejem plo para ilu stra r e l uso que se le puede d a r a la


tarjeta de prototipos, se ha construido en ella un circuito que usa
un parlante piezoeléctrico, un pulsador y tres diodos LED para
Paso 3 generar y m onitorear la salida de tres señales seno con
Instale y suelde los conextores de salida de tornillo y de propósito frecuencias diferentes. El diodo LED rojo indica la frecuencia de
general, e l conector serial DB-9 de program ación, e l conector de 2kHz, e l verde la de 1kHz y e l am arillo la de 500Hz; p o r m edio del
alim entación CA/CC y e l condensador electrolítico de lOOOpF. pulsador se cam bia la frecuencia de salida.
Figura 28.10 Figura 28.12

Paso 5. Pruebas finales


Una vez ensam blada y asum iendo que todos sus com ponentes se encuentran en buen estado, es suficiente con conectar la fuente de
alim entación dentro del rango indicado y e l cable de program ación que conecta la tarjeta con la PC. Por m edio d e l diodo LED rojo
encendido se indica e l buen estado de la fuente regulada; y transfiriendo un program a cualquiera com o uno de los m ostrados en los
ejercicos, se puede m onitorear y d isffrutar del buen funcionam iento de este sistem a.

Curso práctico sobre Microcontroladores GM KIT.


Tarjeta para prototipos con BASIC Stam p II

y/o las salidas al sitio qu e corresponda. Dichas q u e se m onten en el p rotob oa rd del entrenador.
conexiones se hacen fácilm ente em pleando alam ­ Diodos LED. El circuito incluye ocho diodos LED,
bre telefónico ya q u e se estableció un sistem a de denominados D í a D8. Para amplificar la corriente
conectores qu e hacen esta labor m u y sencilla. En que entrega el microcontrolador para encender los
la fig u ra 2 8 .1 3 se m uestra el d iagram a esquem á­ LED se emplea un circuito integrado U LN 2803. Éste
tico de los circuitos qu e co m ponen el entrena­ posee internamente ocho transistores N PN , los cua­
dor. A co n tin u ació n , describirem os cada uno de les tienen m uy buena capacidad de corriente.
sus bloques.
Interruptores dipswitch. Estos interruptores permi­
M icrocontrolador B A SIC Stam p II. C om o lo he­ ten que el estudiante practique la lectura de puertos.
mos visto en la sección de teoría, este microcontro­ En el circuito se emplea un dipswitch de 4 interrup­
lador tiene características de hardware y software tores, denominados S 1 a S4. Cuando un interruptor
especiales que lo hacen m u y versátil y funcional. se encuentra apagado (posición OFF), el microcon­
Entre las principales se encuentran: programación trolador leerá un nivel lógico alto (+5V), cuando el
en lenguaje BASIC, instrucciones para com unica­ interruptor se encuentra activado (posición O N ), la
ción serial, lectura de pulsadores, generación de to­ lectura entregará un nivel lógico bajo (0V).
nos D TM F, 16 pines de entrada/salida, etc. El sis­
tem a entrenador pretende utilizar todas estas carac­ Pulsadores. En el sistema se incluyen dos pulsado­
terísticas, para lo cual se dispone de buses de expan­ res norm alm ente abiertos, los cuales también son
sión en los pines del microcontrolador. Recorde­ de sum a im portancia cuando se ejercita la lectura
mos que la conexión de la fuente de alimentación, de puertos. Se encuentran referenciados como S5 y
el circuito de reset y el cable de programación, que S6. En estado de reposo, la lectura de estos pines
se conecta a la computadora donde se escribe el pro­ entrega un nivel lógico alto (+5V), cuando se pre­
gram a, ya se encuentran instalados, por tanto, el sionan, la lectura será un nivel lógico bajo (0V ).
usuario sólo debe conectar los puertos o pines de
entrada y salida según su necesidad. Interfaz R S-232. La comunicación serial R S-232
es una de las más utilizadas en la industria. Para
F uen te de alim en tac ió n . El sistem a se alim en ta establecerla, sólo se requiere de un circuito integra­
de la línea C A de 110 ó 2 2 0 V, in clu ye u n in te­ do M A X 232 y cinco condensadores de 10|iF (tan­
rruptor general y un fusible de protección. El talio). Los pines de com unicación se denom inan
en trenador in clu ye una fuente interna con ten­ T x y Rx. El cable que une el entrenador y la com­
siones de salida de +5 y ±12 V C C . La fuente de putadora o equipo con el que se quiere establecer
5V se utiliza para alim en tar la parte d igital del com unicación se hace uno a uno (sin cruces).
sistem a y la fuente dual de ±12V sirve, por ejem ­
plo, para alim en tar am plificadores operacionales S a lid a co n relé. Para m an ejar cargas de potencia

120V/220 I_____
VAC

Figura 2 8 .13a
Fuente de
alimentación

C M K t K l Curso práctico sobre Microcontroladores


r
. Proyectos

DIPSWITCH BUZZER

2N3904

10QÍ1

Conector DB9 hembra.


Conectar al PC para program ación

D ISPLAYS TECLADO 3x 4
DISP. 3
a — — --
4A L
b —— W
74LS47 C
V — -
¡ ~ i i~ i —
i i

i
1 ^ 1
i
O 1

D a
| 1 11__fI I1__11
Ico I

IC

7. 7 '
iC
B
e
f 2 L > W v — í- L». v__V
i i

w

w
--

A g Ji- W V — -- — —

2N 3906

2N3906

2N3906

2N3906

COMUNICACION RS-232

Cable de com unicación


Conexión 1 a 1 (sin cruces)

Conector
DB9
hembra en el
Impreso

C onector DB9 Conector 0 8 9 hembra


a l puerto de la
m acho al circuito
com putadora

LCD PULSADORES

M O D ULO LCD

D7 D7 D6 05 D4 D3 D2 01 DO E R/W Vo Vin V

Figura 2 8 .13b Circuitos que com ponen e l entrenador

Curso práctico sobre Microcontroladores e m ic iT ,:


desde el m icrocontrolador, podem os em p lear un n ectadas unas resistencias de p u ll-u p . Éstas sir­
relé. Este se opera a través de un transistor N P N . ven p ara fijar un nivel alto cu an d o no se está
Para activarlo, sólo se debe entregar un nivel ló­ o p rim ien d o n in g u n a tecla.
gico alto en el pin m arcado RELE.
M ódulo de cristal líquido o LCD. Este elemento per­
Displays. El sistema dispone de cuatro displays de mite darle mucha funcionalidad y elegancia a los pro­
ánodo común, conectados sobre el mismo bus de véaos; además, es m uy fácil de manejar con un mi­
datos y con los ánodos manejados de forma inde­ crocontrolador. Si se utiliza un módulo LCD que tie­
pendiente. Para la conversión del dato que entrega el ne todos los pines en línea, se puede conectar directa­
microcontrolador al código 7 segmentos, se emplea mente al circuito impreso sin necesidad de hacer puen­
un decodificador 7447. Todos los segmentos de los tes. Si, por el contrario, el módulo tiene los pines en
displays se encuentran conectados a los pines de sali­ un conjunto de dos filas de 7 pines cada uno, se deben
da del 7447. Por lo tanto, el dígito que se desea mos­ conectar los puentes de alambre que están marcados
trar en ese momento se debe seleccionar mediante la en el circuito impreso. Normalmente esta última clase
habilitación del display correspondiente. Esto se hace tiene además luz posterior (backlight), se debe enton­
conectando un nivel lógico bajo en la base del tran­ ces coneaar los dos pines del extremo derecho del mó­
sistor PNP que maneja el ánodo de dicho display. dulo y la resistencia de 10Q (1/2W) que se encuentra
junto al potenciómetro de ajuste del brillo.
T eclado m a tric ia l. Este teclad o tien e u n a m a ­
triz de 3 x 4 , con los caracteres desde 0 hasta 9 Z u m b ad o r. D ado q u e este m icro co n tro lad o r
y * y #. En el co n ecto r del m ism o se en cu en tran posee instrucciones para generar frecuencias, un
m arcadas las filas co m o F l , F 4, F 7 y F*. Las zum bador ( buzzer ) es de de gran utilidad.
co lu m n as se d e n o m in a n C l , C 2 y C 3 . La n u ­
m eració n de las filas y las co lu m n as correspon­ En la f ig u r a 2 8 .1 4 se m u e stra el aspecto
de al p rim er carácter, y a sea de la fila o de la físico d el e n tre n a d o r c o m p le to c u y a referencia
co lu m n a. Las co lu m n as d el teclado tien en co­ d e C E K IT es K -2 0 2 .

M ó d u lo LCD

Display de sie te
M ó d u lo R S-232 se g m en to s

BASIC S tam p II

P u lsa d o re s

Teclado m a tric ia l

S a lid a

Protoboard para m o n ta r c irc u ito s

Figura 2 8 .1 4 Entrenador para Basic Stam p II de CEKIT. Referencia K -202

Curso práctico sobre Microcontroladores


PROYECTO 30

MIIMIROBOT CON EL BASIC STAMP II


E ste p ro y e c to es id e a l p a r a in ic ia r s e e n la ro b ó tic a d e b id o a
s u fá c il c o n s tr u c c ió n y m o d o d e p r o g r a m a c ió n , a l u tiliz a r el
le n g u a je P B A S I C d e lo s m ic ro c o n tr o la d o r e s B a sic S ta m p . L a
e s tr u c tu r a d e l ro b o t es d e tip o p la ta f o r m a y su m o v im ie n to
lo p ro p o r c io n a n d o s se rv o m o to re s s im ila r e s a lo s u tiliz a d o s
e n a e r o m o d e lis m o y v e h íc u lo s p e q u e ñ o s d e c o n tr o l rem o to .

Características
• T ra c c ió n c o n d o s r u e d a s im p u ls a d a s p o r se rv o m o to re s
• C o n tr o l c o n u n B a s ic S ta m p II
• Sensores: fotoceldas y p arach o q ues ( bum per) electrom ecánico
• In d icad o re s: d o s d io d o s L E D y u n z u m b a d o r p iezo eléctrico
• C o n e x io n e s c o n fig u ra b le s
• P ro g r a m a c ió n c o n u n a P C p o r p u e r to se ria l R S 2 3 2
• A lim e n ta c ió n c o n c u a tro p ila s a lc a lin a s o re c a rg a b le s A A
d e 1,5 V
• P ro to b o a rd p a r a c ir c u ito s a d ic io n a le s

*
Curso práctico sobre Microcontroladores //& H ' 273.
En las prácticas de un curso de m icrocon­ ba. A cad a lado del m icro con trolador, en los
troladores no p ued e faltar el ensam blaje y pro­ p in es de los puertos de en trad a y sa lid a (I/O),
gram ación de un robot. En esta o p o rtu n id ad es­ h a y tres conectores con todos sus p in es dispo­
tam os presentando una platafo rm a básica co n ­ nibles qu e p erm iten co n ectar los elem en to s ex­
trolada por un BasicStam p II la cual p erm ite rea­ ternos, co m o los m otores, los sensores, los in d i­
lizar u n a b uen a can tidad de ejercicios con el fin cadores etc. p ara diferentes tareas y poder hacer
de fam iliarizarnos e ir ap ren d ien d o sobre esta la exp an sió n del sistem a. A dem ás se tien e d is­
tecnología. p o n ib le un p r o t o b o a r d p ara m o n tar en él d ife­
rentes tip o s d e c irc u ito s e x p e rim e n ta le s con
Estructuras eléctrica y m ecánica otros tipos d e sensores, m ó d u lo s de RF para
del robot co m u n icacio n es in alám b ricas, etc.
C o m o la gran m ayoría de los robots, h ay una
parte electrónica y otra m ecánica. Esta ú ltim a es C o m o p rin cip al sensor del robot se tiene
del tipo platafo rm a con dos ruedas im pulsadas un parachoques (bum per) form ado con u n a p ie­
cad a u n a por un m otor in d ep en d ien te y u n a rue­ za de alam b re acerado q u e hace co ntacto entre
da libre para darle estabilidad. Este robot, con dos conectores, lo qu e cam b ia el nivel lógico de
referencia K -338 de CEKIT, está basado en a l­ un pin (1 ó 0) cu an d o el robot toca un obstácu­
gunos m odelos de Parallax, fabricante del BA­ lo. T am b ién tien e dos fotorresistencias o “foto-
S IC Stam p, pero tiene sus características propias, celdas" qu e se pueden u tiliz a r p ara d etectar d i­
p rin cip alm en te la p osibilidad de configurar sus ferentes niveles de ilu m in ació n y seguir una ruta
conexiones en diferentes formas. Los dos m oto­ tra z ad a con u n a lín e a b lan ca en el piso, por
res, qu e se aseguran en los lados de la platafor­ ejem p lo , u o rien tarse p o r m ed io de la ilu m in a ­
m a, son del tipo servom otor o “servo”, a los cu a­ ción de u n recinto. C o m o elem entos de e n tra ­
les se les hace u n a m odificación con el fin de que da y salid a, el robot tien e dos diodos LED in d i­
puedan girar los 3 6 0 ° qu e se requieren p ara el cadores y u n in te rru p to r tip o p u lsad o r p ara
m ovim iento co n tin u o de las ruedas. d arle “reset” o re in ic ia r el circu ito y un p equeño
tran sd u cto r sonoro (p arlan te piezoeléctrico m i­
La platafo rm a, fabricada en alu m in io , lleva n ia tu ra). Estos elem entos se p u ed en co n ectar
en su parte superio r el circuito im preso qu e con­ en fo rm a in d iv id u a l p ara qu e el u su ario los u ti­
tiene todos los elem entos electrónicos del siste­ lice cu an d o sea necesario.
m a in clu yen d o el control p rin cip al q u e es un
m icrocontrolador BA SIC Stam p II (B S 2 -IC ), el Los servomotores
cual ha sido am p liam en te explicado en las sec­ Estos son u n tipo especial de m otores, fig u ra
ciones de teoría y program ación de este curso. El 3 0 .2 , qu e solam ente giran una porción de la cir­
d iagram a esquem ático del circuito electrónico se cu n fe re n cia, g e n e ra lm e n te en tre 9 0 ° y 180°.
m uestra en la fig u ra 3 0 .1 . La fuente de alim en ­ D ebido a la facilidad para controlar el án gulo de
tación es u n co njunto de cuatro pilas de 1,5 vol­
tios p ara un total de 6 voltios q u e se utilizan para
alim en tar los m otores y el m icrocontrolador; el
soporte p ara las pilas está ubicado por debajo de
la plataform a.

Se in c lu ye un co n ecto r tipo D B -9 h em b ra
p o r m edio d el cu al se p ro g ram a el m icro co n ­
tro lad o r desde u n a P C . En el k it se in c lu ye un
disquete con algunos program as básicos de prue­ Figura 30.2 Servomotores

F lk á *
“P w € M K IIT s , Curso práctico sobre M icrocontroladores
Proyectos

(O
evj ¡S
il 1 »
<55 <55 03

m
e n co

ri
C\J S g
O
C O

M
CM
o
í— l
— u
C O O I
2
— 3
z
2
o O

r V

O
£
OJ
C/)

m co c\j •— o
co
Q _ Q _ Q _ D _ Q _ Q _ s.

?????? y y i in

1ii il Ittl
co
n iiiiiii
■4— V V V - i- O O ||l
r- O
C C » -
S3
CO

OsJ

x fiM
Conector DB-9

C C
C5
o t— cm co ui co r-
C O . LO Q_ Q_ Q_ Q_ Q. Q_ Q_ Q_

J ^ W V -

Figura 30.1 Diagram a esuqem ático del robot con m icrocontrolador BasicStamp II

4
C w so práctico sobre Microcontroladores C é K I T
nirobot con el BASIC Stamp II

giro y a su relativo bajo costo, son m u y em p lea­ desaparezca, m om ento en el cual se detiene. Si
dos en robótica experim ental. cam b ia la señal de control, el m otor vuelve a g i­
rar según esta señal. En la fig u ra 3 0 .4 tenem os
Un servom otor contiene en su interior un u n a representación sim ple de este proceso y el
motor de C C , una caja de engranajes o reducción, tipo de pulsos qu e se utilizan para él.
un potenciómetro y un circuito electrónico para
controlar el giro del motor, figura 3 0 .3 . En la salida Adaptación de los servomotores
solo tiene tres cables de conexión: el voltaje positi­ C o m o lo habíam os m encionado, el robot utiliza
vo o de alim entación (rojo), el voltaje de control dos servomotores cu ya referencia es Futaba S - 148
(blanco o amarillo) y la tierra (negro). Los servo­ o similar. D e fábrica, estos vienen con un giro en­
motores utilizan el principio básico de control en tre 9 0 ° y 180° y para este robot los debemos m o­
“bucle cerrado” o realimentado. Por medio del po­ dificar para qu e puedan girar 360° en form a re­
tenciómetro, qu e está unido al eje del motor, se versible. Este procedimiento es m u y fácil y se puede
detecta la posición del eje la cual se toma como un revertir en caso de que necesitemos dejarlos en su
“error” si no está en la posición definida com o fija, estado original. Para hacer esta conversión se debe
generalm ente en el centro y en la cual no gira. desarm ar con cuidado y retirar el engranaje final
para cortar con una cuchilla bien afilada o con un
m oto-tool el tope que éste tiene.

Antes de ensamblar nuevamente el motor, se


debe hacer una calibración del mismo. Este proce­
dim iento se encuentra am pliam ente explicado en
■s *
la internet en diferentes páginas sobre robótica.

F igura 3 0 .3 Elem entos de un servom otor


ENSAMBLAJE DEL PROYECTO

La can tid ad de voltaje o en ergía qu e se su ­ Ensamblaje del circuito de control


m in istra al servom otor depende del án gulo de Inicialm en te debem os en sam b lar el circuito de
giro qu e se quiera lograr. Esto se hace por m edio control en el cual la m ayo ría de los com ponentes
de pulsos de ancho variable, entre 1 y 2 m s con se instalan en la parte superior del circuito im ­
una frecuencia entre 10 y 3 0 ms. El m o to r traba­ preso, solam ente las dos fotoceldas se instalan por
ja com parando el ancho de los pulsos qu e recibe debajo. O bserve qu e cada soldadura quede m u y
con un patrón o m uestra generado por el circu i­ bien hecha y a qu e de ello depende en gran par­
to interno y la diferencia se tom a com o el “error”. te el buen fu n cio n am ien to del circuito. En las
D ependiendo del tam añ o de este error el m otor figu ras 3 0 .5 a 3 0 .1 3 se m uestran los pasos para
gira en una u otra dirección hasta qu e el error hacer este ensam blaje.

1~2m s 1~2m s 1~2m s

t Tiem po 0 F F

10~30m s 10~30m s
Tiem po 0N

Figura 30.4 Señal de pulsos que se debe aplicar a un servomotor

<4 C urso p rá c tic o so b re M ic ro c o n tro la d o re s


Proyectos

LISTADEMATERIALES
Cant. Ref. Descripción
1 IC1 Microcontrolador Basic S t a m p II, programado
2 D1 y D 2 Diodos L E D rojos d e 5 m m
1 C1 C o nd ens ad or electrolítico d e 3 3 0 0 u F - 1 6 V
Figura 30.5 Conjunto 1 C2 C o nd ens ad or electrolítico d e 1 0 u F - 16V
de com ponentes 2 C3 y C4 Condensadores cerámicos d e 0,01 u F - 5 0 V
electrónicos y los 1 C5 C o nd ens ad or electrolítico d e 2 2 u F - 16V
2 PH1 y P H 2 Fotoceldas
' accesorios que se
2 R1 y R 2 Resistencias d e 4 7 0 Q - 1 / 4 W
requieren para 1 R3 Resistencia d e 100k - 1 / 4 W
ensam blar el 1 R4 Resistencia d e 220k - 1 / 4 W
m inirobot CEKIT K-338. 2 R5 y R6 Resistencias d e 2 2 0 Q - 1 / 4 W
5 R 7 a R11 Resistencias d e 10k - 1 / 4 W
1 BZ1 Buzzer piezoeléctrico
2 S1 y S2 Interruptores d e codillo miniatura, S P D T
1 S3 Pulsador p e q u e ñ o d e 4 pines para impreso
1 K-338 Circuito impreso C E K I T
2 J1 y J2 Conectores tipo cerca n o polarizados de 3 pines
9 J3 a J9. J16 y J17 Sockets e n línea d e 2 pines
3 J10 a J12 Sockets e n línea d e 8 pines
( f f i 3 J13 a J15 Sockets e n línea d e 9 pines
2 VDD y VSS Sockets e n línea d e 4 pines
O fc K
y fr 1 DB9F Conector D B 9 F para circuito impreso
1 B a s e para circuito integrado d e 2 4 pines
i S ñ Sfitt’
3 t I
I*i *#•*,
2 Conectores tipo cerca no polarizados d e 2 pines
4 Espadines
2 Servomotores Futaba S-148 o similar
2 R u e d a s d e plástico y caucho para servomotor
E /fnPt #)>T ' 1 Chasis d e aluminio C E K I T K-338
I W ) \ T ^ F :' p g p p 1 Soporte para cuatro pilas A A d e 1 ,5V
12 Tornillos con tuerca hexagonal d e 3x7 m m
Paso 1 1 P r o t o b o a r d peque ño
1 Parachoques d e alambre acerado
Instale y suelde prim ero las once (11) resistencias. 1 Juego d e cables d e conexión
Figura 30.6

Paso 2 Paso 4
Instale y suelde la base de 24 pine s para e l m icro ­ Instale los dos conectores tipo cerca de tres pines
controlador. Figura 30.7 para la conexión de los servom otores (J l y J2), los
dos de dos pines para el parachoques (BUMPER1 y
BUMPER2) y los cuatro espadines. Figura 30.9

Paso 3
Instale y suelde luego los seis “sockets” en línea que van a
los lados de la base del microcontrolador (J10 a J15).
Luego los de cuatro pines (VIN y Vss). Después monte los Paso 5
nueve sockets en línea de dos pines (J3 ; J4, J5, J6, J7, J8, Instale los diodos LED y e l pulsador S3.
J9, J16yJ17). Figura 30.8 Figura 30.10
£ ¥
Curso práctico sobre Microcontroladores m a z iT s A.
¡robot con el BASIC Stamp II

Paso 6
Instale los condensadores cerám icos (C3 y C4), los
condensadores electrolíticos pequeños (C2 y C5). Figura 3 0 .1 4 Chasis de alum inio para e l m ontaje
Figura 30.11 d el robot

Paso 7
Instale e l conector DB-9 y los interruptores de codillo
(S I yS 2 ). Figura 30.12
Paso 1
Conecte un cable de co lo r ro jo y uno de co lo r negro
a lo s term inales p o sitivo y negativo respectivam en­
te d el soporte para las p ila s e instále lo p o r debajo
d e l chasis, asegurándolo con dos to rn illo s dejándolo
aislado de éste, p o r m edio de dos separadores de
plástico. Figura 3 0 .1 5

Paso 8
Instale e l protoboard, e l parlante piezoeléctrico o
buzzer y e l condensador electrolítico grande (Cl).
Figura 30.13

Ensamblaje mecánico y conexiones


U n a vez q u e te n g a la ta r je ta d e c ir c u ito im ­
preso to ta lm e n te a rm a d a , d eb e e n s a m b la r las
d ife re n te s p iezas de la e s tr u c tu r a m e c á n ic a en
el ch asis, f ig u r a 3 0 .1 4 e in te rc o n e c ta rla s con
el c ir c u ito d e c o n tro l. En la s f ig u r a s 3 0 .1 5 a Paso 2
3 0 .2 2 se m u e s tra n los p asos p a ra h a c e r este Asegure con tornillos y separadores plásticos e l circui­
e n s a m b la je . to im preso en e l chasis del robot. Figura 30.16

á *
278 € M íK < m ; Curso práctico sobre Microcontroladores
Proyectos

Paso 3
Asegure los dos servomotores con cuatro tom illos, cada Paso 6
uno en la parte in fe rio r del chasis con los ejes hacia la Instale y suelde las dos fotoceldas (PH1 y PH2) en la
parte trasera del robot. Figura 30.17 parte delantera. Figura 30.20

Paso 7
Luego conecte e l cable de las pilas en los term inales
positivo y negativo de alim entación del robot (+ 6V -),
conservando la polaridad adecuada. Figura 30.21

Paso 4
Instale las ruedas en los ejes del m otor y asegúrelas
con los tom illos adecuados. Figura 30.18

Paso 8
Después instale los term inales de los servom otores en
los conectores J1 y J2. El alam bre negro debe ir en el
punto m arcado com o GND. Figura 30.22

Paso 9
Para asegurarnos que la alim entación del m icrocontro­
lador esté correcta, m ida e l voltaje entre los pines 24 y
2 3 de su base antes de instalarlo. Debe encontrar un
Paso 5 valor cercano a los + 6V s i las pilas están nuevas. Ins­
Instale y suelde e l soporte delantero de alam bre con la tale e l m icrocontrolador BasicStamp en su base obser­
rueda guía en los orificios destinados para ta l fin en el vando bien su posición. El p in No. 1 debe quedaraI lado
circuito impreso. Figura 30.19 del interruptor de RESET.

*
Curso práctico sobre Microcontroladores CM KtTsl
revise la posición de las pilas y cada una de las
diferentes conexiones. Después de corregir los erro­
res, si los hay, pasamos a probar los motores y los
dem ás elem entos para term inar el robot.

Para probar el robot con sus motores y el bumper ,


sosténgalo en el aire y active el interruptor S2 (hacia el
LED D i). En este momento las ruedas deben girar.
Accione cada lado del bumper pasa, que el alambre haga
contacto con cada uno de los terminales por donde
pasa y los motores deben cambiar de dirección en los
F igura 30.23 Conexión de los elem entos externos al diferentes casos (accionamiento izquierdo y derecho).
m icrocontrolador
Si no es así, hay un problema en el programa o en las
Interconexión de los elementos conexiones de los servomotores, revíselos bien y corri­
externos a la tarjeta de control ja los errores de software o los de las conexiones hasta
Para que el robot funcione, debemos conectar los que el robot opere correctamente, funcionando en for­
diferentes elementos (motores, diodos LED, par­ m a autónoma en el piso y cambiando de nim bo cuan­
lante y bumper) a los respectivos puertos del micro­ do encuentra un obstáculo.
controlador haciendo puentes de alambre a través
de los diferentes conectores. Antes de hacerlo, veri­ Programación del robot
fique que el interruptor general S i esté apagado U n a de las grandes ventajas de este robot es qu e es
(hacia el protoboard). H aga las conexiones así: el totalm ente configurable en cuanto a sus elem en­
m otor izquierdo (J3) al pin P13 del BS2, el motor tos externos y program able utilizando el lenguaje
derecho (J4) al pin P12 del BS2, el LED izquierdo PBA SIC. A dem ás, los programas se pueden llevar
(J5) al pin P 15 del BS2, el LED derecho (J6) al pin fácilm ente al m icrocontrolador B S2-IC por m e­
P 11 del BS2, el zum bador (J7) al pin P8 del BS2, dio de un cable serial. C onfigure el robot de acuer­
el BU M PER1 0 1 7 ) al pin PIO del B S 2 y e l B U M - do a sus ideas y necesidades utilizando esta estruc­
PER2 ( J 18) al pin P9 del BS2. Por ahora no conec­ tura robótica básica. U tilizando el protoboard , se
te las fotoceldas. Figura 3 0 .2 3 pueden agregar otros circuitos con diferentes ti­
pos de sensores, un receptor de infrarrojos, un re­
Prueba inicial de la tarjeta ceptor y transm isor de RF, etc., con el fin de brin­
Puede hacer una prueba prelim inar de la tarjeta darle nuevas funciones a este práctico robot.
de control por m edio del program a robotest.bs2,
el cual se puede descargar de la página w eb de Para el m an ejo de los servom otores y su in ­
CEKIT. Antes de hacerla debe llevar el program a teracción con los diferentes sensores, debe u tili­
a la m em oria del microcontrolador, tal com o lo zar algoritm os qu e generen las señales de pulsos
explicam os en la sección de program ación de este m ostradas en la figura 3 0 .4 . Para u n a m ayor in ­
curso. Para hacer la prueba, lleve el interruptor de form ación, puede consultar la p ágin a web de Pa-
los servomotores a su posición de apagado (hacia rallax y su sección de aplicaciones p ara clases:
S I ) e instale las pilas en su soporte. Lleve ahora el http ://w w w .stam pinclass.com en el aparte para
interruptor general S i a su posición de encendi­ robótica ( robotics) y algunos program as com en­
do (O N ), los diodos LED se deben encender en ta d o s q u e te n e m o s en n u e s tra p á g in a w eb:
form a interm itente y se debe escuchar tam bién w w w .cek it.co m .co
un sonido interm itente en el zum bador. Si esto
ocurre, se confirm a qu e buena perte del circuito Parallax y Basic Stam p II son m arcas regis­
está funcionando. Si las pruebas no funcionan, tradas de Parallax Inc.
*
TERMÓMETRO DIGITAL
JUMBO
L a t e m p e r a tu r a es u n a v a ria b le física q u e está in v o lu ­
c r a d a en casi to d as las a c tiv id a d e s h u m a n a s , d e sd e las
a p lic a c io n e s in d u s tr ia le s , h a sta la fo rm a en q u e afecta
n uestras a c tiv id a d e s d iarias. Por esta razón, es frecuente
e n c o n tr a r m u c h o s sitio s en los q u e se h a n in s ta la d o
te r m ó m e tr o s d e g r a n ta m a ñ o q u e p e r m ite n ser vistos
a d is ta n c ia .

Características
• In te rv a lo d e m e d ic ió n e n tr e - 1 0 y +70 g rad o s
c e n tíg r a d o s
• V isualizació n en d is p la y s gigan tes co n struido s con
diodos LED
• U tiliza sensor de te m p e ratu ra en circuito integrado
• M ic ro c o n tro lad o r 16C 71

Curso práctico sobre Microcontroladores m K H T ,


Termómetro digital jumbo

El m u n d o real se rige p o r fenóm enos y leyes m a y el cuarto, a los elem entos de visualización
físicas cuyas m agnitudes tom an valores continuos {displays). El diagram a esquem ático del circuito
a través del tiem po, esto quiere d ecir qu e se co m ­ se m uestra en la fig u ra 3 1 .1 .
portan de form a analógica. D ichos fenóm enos y
las variables qu e los representan, son de m ucho Sensor de temperatura
interés para nosotros ya qu e ellas indican el esta­ El d is p o s itiv o u tiliz a d o co m o se n so r es u n
do en qu e se en cu en tra todo aquello qu e nos ro­ L M 3 3 5 , fig u ra 3 1 .2 , el cual tiene u n a variación
dea. U na de las m ás im portantes es la tem pera­ en su salida de 10mV/°K. Esto quiere decir que
tu ra, la cual está involucrada en m uchos aspec­ cuan do se tenga una tem peratura de 0 o C , eq u i­
tos de la vida hum ana. valentes a 2 7 3 ° Kelvin, el sensor ten d rá en su
salida 2 ,7 3 voltios. Este com p on ente posee tres
En este proyecto, vam os a desarrollar un ter­ pines (+, - y A D J), en este caso sólo vam os a u ti­
m óm etro d igital, el cual p erm ite m ed ir la tem ­ lizar dos de ellos (+ y -).
peratura en una gam a qu e va desde los 10 o bajo
cero hasta los 7 0 ° C , u n a g a m a m ás q u e sufi­ En la parte som breada de la fig u ra 3 1 .1 se
cien te para un buen núm ero de tareas. U n a de m uestran la form a de conectar el sensor de tem ­
las características im p ortantes de este proyecto p eratura y la parte del circuito qu e hace el acon­
es qu e el valor m edido se m uestra en displays de d icio n am ien to de señal, la cual se ha im p lem en -
gran tam añ o , lo qu e lo hace m u y atractivo. tado alrededor de un am p lificad o r operacional
L M 3 5 8 . Este circuito requiere una calibración
Aplicaciones especial en varios p un to s antes de ponerlo en
Este in strum en to puede ser utilizado para m edir operación, por lo tanto se debe prestar atención
la tem peratura am b ien te en cu alq u ier oficina, a las siguientes instrucciones:
in du stria, o en el hogar. T am b ién puede ser u tili­
zado en laboratorios de q u ím ic a y física y a qu e la • El p rim e r a m p lif ic a d o r está c o n fig u ra d o
p o sib ilid ad de m ed ir tem peraturas bajo 0 o C le com o diferen ciad o r (restador) de gan an cia 1,
da gran versatilidad. en cu ya en trad a p ositiva se ha conectado el
L M 3 3 5 y en la n egativa se ha co n ectad o el
Descripción p u n to c e n tra l del p o ten ció m etro R 3 , este
El term óm etro d igita l ju m b o recibe su nom bre ú ltim o sirve p ara fijar u n vo ltaje de referen­
debido a qu e el valor m edido se presenta en dis­ cia de 2 ,0 voltios, el cual se p ued e m e d ir entre
plays de gran tam año, adem ás, está m o n tad o en tierra y el p u n to de p ru eb a m arcad o T P 1. El
un chasis diseñado para ser instalado en la pared, objeto de esta parte del circu ito es restarle 2
de tal form a qu e pueda ser visto desde m uchos voltios al valor en tregado p o r el L M 3 3 5 ; de
ángulos. Posee signo negativo, el cual se encien­ esta fo rm a, si el L M 3 3 5 en trega 2 ,9 3 voltios
de cuan do la lectura está por debajo de 0 o C. (eq u iv alen tes a 2 2 ° C ), en la sa lid a del a m ­
Este proyecto se puede conseguir en form a de kit p lificad o r o p eracio n al (p in 7) se deben m e­
bajo la referencia K -172 de CEKIT. d ir 0 ,9 5 voltios. Para verificarlo se ha d is­
puesto u n p u n to de p ru eb a m arcad o T P 2 a
Funcionamiento la salid a del operacion al.
El circuito consta básicam ente de cuatro bloques,
el prim ero de ellos, es el sensor de tem peratura y • El segundo am plificador operacional se confi­
la parte análoga de aco n dicio n am ien to de señal, gu ra com o am plificador no inversor, cu ya ga­
el segundo, es el circuito de control basado en nancia se ajusta con el potencióm etro R 1 1. El
un m icrocontrolador P IC 1 6 C 7 1 , el tercero co­ factor de am plificación buscado es de 1,5, para
rresponde a la fuente de alim en tació n del siste­ lograrlo, se debe m edir en el punto T P 2 el ni-
¿ *
2 8 2 félM IfállTi Curso práctico sobre Microcontroladores
Proyectos

Decenas Unidades
(conectar a los (conectar a los
displays) displays)
7| 6| 13 1 2 1 111 10I
CO CNJ r^. co
CD CD CD CD C4
CC CC cc cc 20pF
16
0SC1
P IC 1 6 C 7 1
4MHZ
0SC2

C5
20pF^L
+ 5V +5V

□ R15 +5V


Control TP4
8.2K

R16
01 Voltaje de 5K
2N3904 referencia
(3.84V) R17
27K

R18
10012

+5V Control

S ig n o n e g a tiv o

S e n s o r d e te m p e ra tu ra

S ig n o d e g r a d o s

Ajuste de
ganancia

LM335

F ig u ra 31.1 Diagrama esquem ático del term óm etro d ig ita l jum bo

Curso práctico sobre Microcontroladores e e / e ir :


m os 3 ,8 4 e n tre 2 5 6 , o b te n e m o s e l v alo r
m ín im o p a r a p r o d u c ir u n c a m b io en el
v a lo r e n tr e g a d o p o r e l c o n v e r tid o r (1 5
m V ). La d iv is ió n se h a c e p o r 2 5 6 y a q u e el
c o n v e rtid o r es de 8 bits.

C o n todas las operaciones anteriores se buscan


varias cosas: primero que todo, al restarle los 2 vol­
ADJ + tios a la lectura del L M 335 se busca reducir la gama
de tem peratura ya que, en nuestro caso, sólo nos
F ig u ra 3 1 .2 Configuración de pines del sensor LM 335 interesa m edir desde -10 o C hacia arriba (-10° C
equivalen a 2 ,6 3 voltios). Segundo, como el sensor
vel de voltaje y, mediante el potenciómetro R 1 1, presenta en su salida una variación de 10 m V por
se busca qu e el valor m edido en T P 3 corres­ grado y nosotros lo amplificamos por 1,5 veces, es­
ponda a 1,5 veces el de la entrada. La salida del tamos obteniendo una variación de 15 -mV por gra­
segundo am plificador operacional se conecta do de temperatura, de esta forma, el convertidor
al pin RA2/AN2 del P IC 1 6 C 7 1 , el cual se ha del PIC puede detectar el cambio en cada grado.
configurado com o entrada análoga.
C u a n d o la te m p e ra tu r a m e d id a sea d e 0 o
El v o ltaje de referen cia d e l c o n v e rtid o r a n á ­ C , en el p u n to m a rc a d o T P 2 ex isten 0 ,7 3 v o l­
lo g o a d ig ita l d el P I C 1 6 C 7 1 se a ju s ta m e ­ tio s y en e l p u n to T P 3 e x iste n 1 ,5 x 0 ,7 3 =
d ia n te el p o te n c ió m e tro R 1 6 , éste d eb e te ­ 1 ,0 9 5 v o ltio s. C o n este v a lo r en la e n tra d a
n e r u n v a lo r d e 3 ,8 4 v o ltio s y se p u e d e m e ­ a n á lo g a y co n u n v o lta je d e referen cia de 3 ,8 4
d ir en tre el p u n to m a rc a d o T P 4 y tie rra . v o ltio s, el v a lo r d ig it a l e n tre g a d o p o r el c o n ­
Lo q u e se b u sc a c o n este v a lo r d e referen ­ v e r tid o r es de 7 3 . Por lo ta n to , p a r a m o strar
c ia es h ac e r q u e el c o n v e rtid o r p u e d a d ife ­ en lo s d isp la ys el v a lo r real de 0 ° C , el m ic ro ­
re n c ia r c a m b io s d e 15 m V en la e n tra d a c o n tro la d o r d eb e restarle 7 3 al v alo r leíd o p ara
a n á lo g a , o d ic h o d e o tra fo rm a, si d iv id i­ h a c e r la c o rre c c ió n .

s e e w i aDswas ri
C o n exió n p a ra el sen so r

E n tra d a d e a lim e n ta c ió n
C a lib ra c ió n d el sen so r

K-172
TP4 L ]T P 3
A ju s te d el v o lta je de .
□ • n
re fe re n c ia d el c o n v e rs o r

C o n exió n p a ra el sign o M ic ro c o n tro la d o r PIC


n e g a tiv o
C EKIT
DECENAS UNIDADES

C o n e x ió n p a ra la s C o n exió n para
u n id a d e s y las d e c e n a s el sign o g rad o s

Figura 31.3 Guía de ensamblaje del termómetro digital

ém K iT . Curso práctico sobre Microcontroladores


Proyectos

Circuito de control En la figura 3 1 .3 se m uestra la guía de ensam­


Está conform ado por un P IC 1 6 C 7 1 , au n q u e se blaje y el circuito impreso de la tarjeta de control,
puede utilizar un PIC 16 C 7 10, ó un PIC 16 C 7 11. allí se incluyen toda la parte análoga del sistema, el
Éste co n tien e el p ro gram a en cargad o de hacer microcontrolador y la fuente de alimentación.
la conversión análogo a d ig ita l y de pasar el dato
co rresp o n d ien te a los displays. Estos ú ltim o s se En este aparato, el sensor de tem peratura se
h an conectado al p uerto B del m icro co n tro la­ puede ensam blar en form a de sonda para llevarlo
dor, uno de ellos corresponde a las decenas y el hasta el sitio en qu e se desea tom ar la m edida, y,
otro a las u n id ad es. para unirlo al circuito, se utiliza cable blindado
term inado en un conector de 2 pines.
En el m o m en to de obtener una lectura por
debajo de 0 ° C , el m icrocontrolador activa su sa­ Fuente de alimentación
lida RA 4 y por lo tanto se activa el co n ju n to de El s is te m a se p u e d e a lim e n t a r d e la red p ú ­
diodos LED correspondiente al signo negativo, b lic a de 110 ó 2 2 0 V C A , u tiliz a n d o u n tra n s­
los cuales se en cu en tran en un circuito im preso fo rm a d o r q u e e n tre g u e en su s a lid a 6 V C A .
independiente. E ste v o lta je es re c tific a d o y c o n e c ta d o a la en -

Segmento a Segmento g

LED rojo LED rojo


de 5mm de 5mm

Ubicación de los
segmentos

A B C D LATCH

Conexión con otros circuitos

F igura 31.4 Diagrama esquem ático del display de diodos LED

d *
Curso práctico sobre Microcontroladores 285
tra d a de u n r e g u la d o r 7 8 0 5 , el c u a l a lim e n ta El m ic ro c o n tro la d o r e n tre g a a c a d a c ir ­
to do el c ir c u ito , in c lu y e n d o los c irc u ito s im ­ c u ito de v is u a liz a c ió n los bits q u e se c o n e c ­
presos d e los displays, d e l sig n o n e g a tiv o y del ta n en las e n tr a d a s A B C D d e lo s m ism o s.
sím b o lo d e g rad o s. Estos c irc u ito s r e q u ie r e n , a d e m á s , de u n a a li­
m e n ta c ió n d e +5V.
Visualización
El v a lo r de la te m p e ra tu ra m e d id a se m u e stra El sig n o n e g a tiv o se d eb e c o n e c ta r al c ir ­
en dos displays g ig a n te s c o n stru id o s co n d io ­ c u ito de c o n tro l en los p u n to s m a rc a d o s co n
dos LE D e in sta la d o s en c irc u ito s im p reso s in ­ la p a la b ra sign o, a llí se e n c u e n tr a u n b o rn e
d ep en d ien tes. C o n estos circuito s se busca crear co n la fu e n te d e +5V, y o tro , co n la se ñ a l de
un display d e sie te segm en to s pero co n la p a r­ c o n tro l q u e in d ic a el m o m e n to en q u e se d eb e
tic u la rid a d d e ser m ás g ra n d e de lo n o rm al, en cen d er. El sig n o de g ra d o s (° ), se c o n e cta a
p ara ello se d ise ñ ó un c irc u ito im p reso en el la fu e n te d e a lim e n ta c ió n de 5 V d ir e c ta m e n ­
q u e cad a un o d e los segm en to s está fo rm ad o te. En la f ig u r a 3 1 .5 se m u e s tra n los c ir c u i­
p o r seis LE D rojos de 5 m m . tos im p re so s de estos m ó d u lo s.

A dicionalm ente, para facilitar la tarea de con­ Ensamblaje


trol y m an ejo del display, se incluyó un decodifi- L a c o n e x ió n d e los d ife re n te s m ó d u lo s qu e
cador de B C D a siete segm entos referencia 4 5 1 1 . fo rm a n el te rm ó m e tro d ig ita l se m u e s tra en
D e esta m anera, sólo se requiere entregar al dis­ la f ig u r a 3 1 .6 , y, co m o se p u e d e a p rec iar, es
p la y el dato en binario (señales A B C D ). b a s ta n te s e n c illo . El p ro yecto in c lu y e u n c h a ­
sis d o n d e se m o n ta n to d as las p iezas, en la
En la f ig u r a 3 1 .4 se m u e s tra el d ia g r a m a p a rte s u p e rio r d el m ism o se u b ic a n los ele­
e s q u e m á tic o d el c ir c u ito , en é l se p u e d e n o ­ m e n to s de v is u a liz a c ió n , y sus cab les de c o n ­
ta r q u e las sa lid a s d e l d e c o d ific a d o r se h an tro l se p asa n h a c ia el in te r io r a través d e los
c o n e c ta d o a u n c irc u ito in te g ra d o U L N 2 8 0 3 , o rific io s d isp u e sto s p a ra tal fin . L a p re se n ta ­
el c u a l p o see in te r n a m e n te un o s tra n sisto re s c ió n fin a l d e este p ro yec to p e r m ite q u e sea
N P N q u e sirv e n p a ra a m p lif ic a r la c o rrie n te in sta la d o en sitio s p ú b lico s d e b id o a q u e p u e ­
h a sta el n iv el re q u e rid o p ara m a n e ja r los LED d e ser le íd o d e sd e u n a b u e n a d is ta n c ia . Esto
d e c a d a seg m en to . lo h ace m u y a p e te c id o p ara fines p u b lic it a ­
rios o c o m e rc ia le s.
K-172B Q □ CEKIT
h -C D H T + 5 V En la tap a in ferio r del chasis se in stala el
circu ito de co n tro l, m ien tras qu e en la parte tra­
sera se h an hecho las perforaciones p ara el por-
tafu sib le, el in terru p to r, el pasacable, el trans­
□ □ fo rm ad o r de la fuente, y se h a hecho u n a perfo­
GND
ración ad icio n al p ara sacar el sensor de tem p e­
O ratu ra. C o m o elem en to fin al, y p ara m ejo rar la

r
O D2 D3 Q ;
D6 ^
v isib ilid a d de los displays, se agrega u n a lám in a
d e acrílico ah u m ad o e n c im a d e los m ism os.
^ R 19 K -1 7 2 C o

En la figura 3 1 .6 se muestra la m anera de co­


nectar los distintos elementos entre sí y en la figu­
ra 3 1 .7 podemos apreciar el aspecto de la parte
F ig u ra 3 1 .5 Circuito im preso de los signos negativo y de grados trasera del chasis con los elementos ya instalados.

G E K IT l Curso práctico sobre Microcontroladores


Proyectos

DECENAS UNIDADES

SIMBOLO DE
GRADOS

SENSOR
LM335

Interruptor

SIGNO NEGATIVO Figura 31.6 Conexión de los diferentes elementos

Lámina de acrílico color


humo

Tornillo con Circuito impreso del display


plástico Tornillo con separador plástico

Interruptor Portafusible

Tornillo del chasis Tornillo para


fijar el
transformador
Pasacables

Figura 31.7Disposición de los elem entos en e l chasis


j . *
Curso práctico sobre Microcontroladores a
rmómetro digital jumbo

Ensamblaje del proyecto L IS T A O E M A T E R IA LE S

Cant Ref. Descripción


Display jumbo con L E D K-170A (lista para uno)
1 C ir c u ito in te g ra d o U L N 2 8 0 3
1 IC 2 C irc u ito in te g ra d o C D 4 5 11
7 R1 a R 7 R e s is te n c ia s d e 100 O h m a 1/4 W
1 R8 R e s is te n c ia d e 2 .7 K a 1/4 W
42 D1 a D 42 D io d o s L E D ro jo s d e 5 m m
1 K -1 7 0 A C ir c u ito im p r e s o C E K I T
1 C o n e c to r e n lin e a d e 4 p in e s (c o m p le to )
1 B a s e p a ra in te g ra d o d e 1 8 p in e s
1 B a s e p a r a in te g ra d o d e 1 6 p in e s
30cm C a b le p o la r iz a d o 2 x 2 0 ó 2 x 2 2 A W G
30cm C a b le rib b o n d e 4 h ilo s
30cm A la m b r e te le fó n ic o p a ra p u e n te s
4 T o m illo s m ilim é tric o s d e 3 x 1 5 c o n s u s tu e rc a s
4 S e p a r a d o r e s p lá s t ic o s d e 1cm

Circuito de control del termómetro K-172


Figura 31.8 Conjunto de com ponentes electrónicos y los 1 IC1 M ic ro c o n tro la d o r P I C 1 6 C 7 1 , g ra b a d o
1 IC 2 C irc u ito in te g ra d o L M 3 5 8
accesorios que se requieren para ensam blar e l term óm etro 1 IC 3 L M 3 3 5 ( S e n s o r d e tem p eratura)

d ig ita l jum bo, CEKIT K-172. 1 REG R e g u la d o r fijo d e + 5 V L M 7 8 0 5


1 Q1 T ra n s is to r 2 N 3 9 0 4
1 BR1 P u e n te re c tific a d o r c irc u la r d e 1 .5 A (W 0 4 M )
Con este circuito se construye un termómetro que m ide con 1 R1 R e s is te n c ia d e 3 ,3 K a 1/4 W
1 R2 R e s is te n c ia d e 1 5 K a 1/4 W
precisión de 1oC, la temperatura en grados centígrados entre -5 9 y 5 R4 a R8 R e s is te n c ia s d e 1 0 K a 1/4 W
1 R9 R e s is te n c ia d e 2 0 K a 1/4 W
9 9 'C, y usa dos displays grandes (jumbo) para su visualización. Para 2 R 1 0 y R15 R e s is te n c ia s d e 8 .2 K a 1/4 W
3 R 1 2 a R14 R e s is te n c ia s d e 2 . 7 K a 1/4 W
1 R17 R e s is te n c ia d e 2 7 K a 1/4W
3 T rim m e rs re s is tiv o s m u ltiv u e lta s d e 5 K
1 C o n d e n s a d o r e le c tro lític o d e 1 .0 0 0 p F /2 5 V
1 C o n d e n s a d o r e le c tro lític o d e 1 0 p F /2 5 V
1 C o n d e n s a d o r c e rá m ic o d e 0,1 p F
2 C 4 y C5 C o n d e n s a d o r e s c e r á m ic o s d e 2 0 pF
1 XTAL C ris ta l d e c u a rz o d e 4 M H z
1 K -1 7 2 C ir c u ito im p re s o C E K I T
3 C o n e c to r e s d e to m illo d e 2 p in e s
1 C o n e c to r e n lín e a d e 2 p in e s (co m pleto )
1 B a s e p a ra in te g ra d o d e 1 8 p in e s
1 B a s e p a ra in te g ra d o d e 8 p in e s
1 D is ip a d o r tip o T O - 2 2 0 (el d e l K -0 2 5 )
1 T o rn illo m ilim é trico d e 3 x7 c o n s u tu e rca
4 T o rn illo s m ilim é tn c o s d e 3 x 1 5 c o n s u s tu e rc a s
4 S e p a r a d o re s p lá s t ic o s d e 1cm
Primero se instalan y se sueldan todos los diodos LED y las resistencias 5 0 cm C a b le b lin d a d o m o n o fó n ic o p a ra e¡ s e n s o r
3 cm T e rm o e n c o g íb le d e 3 m m
necesarias para ensamblar las tarjetas de los signos menos y de grados. Signo negativo K-172B
Figura 31.9 6 D1 a D 6 D io d o s L E D ro jo s d e 5 m m
1 R18 R e s is te n c ia d e 1 0 0 O h m a 114 W
1 K -1 7 2 B C ir c u ito im p r e s o C E K I T
2 T o m illo s m ilim é tric o s d e 3 x 1 5 c o n s u s tu e rc a s
2 S e p a r a d o r e s p lá s tic o s d e 1cm
30cm C a b le p o la r iz a d o 2 x 2 0 ó 2 x 2 2 A W G

Signo de grados K-172C

6 D1 a D 6 D io d o s L E D ro jo s d e 5 m m
1 R19 R e s is te n c ia d e 1 0 0 O h m a 1/4 W
1 K -1 7 2 C C ir c u ito im p r e s o C E K I T
4 T o m illo s m ilim é tric o s d e 3 x 1 5 co n s u s tu e rc a s
4 S e p a r a d o re s p lá s t ic o s d e Ic m

Luego se instalan 30cm C a b le p o la riz a d o 2 x 2 0 ó 2 x 2 2 A W G

Varios
bases para los circuitos 1 K -1 7 2 C h a s is m e tá lic o
tarjeta del display jum bo. 1 T ra n s fo rm a d o r M -5 0 8 (P h m :1 1 0 ó 1 2 0 V C A . S e c : 6 V C A . C a p :1 A )

Figura 31.10 1m
1
C a b le p o la r iz a d o 2 x 2 0 ó 2 x 2 2 A W G
C a b le d e p o te n c ia c o n e n ch u fe
1 P o rta fu s ib le c o r lo p a ra c h a s is
1 F u s ib le c o rto d e 1A
1 P a s a c a b le d e c a u c h o
1 Interruptor d e b a la n c ín c o n lu z p iloto

Instale y suelde todos los componentes 1


4
L á m in a d e a c rilic o a h u m a d o (2 7 x 1 5 c m y p e rfo ra d a )
T o rn illo s m ilim é tric o s d e 3 x 2 5 c o n s u s tu e r c a s (ne g ro s)
que hacen parte de la tarjeta de control 2 T o rn illo s m ilim é tric o s d e 3 x 7 c o n s u s t u e r c a s (ne g ro s)
10 T o rn illo s g o lo s o s p a ra lá m in a (ne g ro s)
del term óm etro jum bo, y asegúrela con 1 C a b le rib b o n d e 4 h ilo s (6 0 c m ) (p a ra lo s d is p la y s )
1 J a c k m o n o fó n ico
tornillos y separadores plásticos sobre 1 P lu g m o n o fó n ic o
4 T e rm in a le s p a ra c irc u ito im p r e s o (e s p a d in e s )
la tapa in fe rio r d e l chasis m etálico. 4 S e p a r a d o r e s p lá s t ic o s d e 2 cm

Figura 31.11
Pruebas finales
Después de ensam blar todos los elem entos del
Luego de ensam blar las tarjetas, proyecto en e l orden que se ha indicado en las
im ágenes anteriores , conecte e l sensor de
asegúrelas con tornillos y
tem peratura y alim ente e l circuito; debe visualizar la
separadores plásticos en la cara tem peratura en los displays grandes.
frontal del chasis; y efectúe las A p a rtir de este m om ento basta con som eter la sonda
conexiones necesarias dentro del del sensor a cam bios de tem peratura para visualizar
chasis y de acuerdo con los de m anera inm ediata e l cam bio en la medida.
Para obtener m ejores resultados visuales use una
esquemas de conexión.
lám ina de acrílico color hum o com o polarizador sobre
Figura 31.12 los displays.

4
C M K IT1 Curso práctico sobre Microcontroladores
PROYECTO 32

►* . - •

PROGRAMADOR PARA
MICROCONTROLADORES ATMEL
En esta ocasión co n stru irem o s un sencillo p ro gram ad o r
p ara m icrocontroladores A T M E L A T 9 0 S x x x x y an aliz a­
rem os al m an ejo de algu n as h erram ien tas de s o ftw a r e
apropiadas para el ráp id o desarrollo d e p ro gram as con
esta fam ilia d e m icrocontroladores.

C a ra c te rís tic a s
N o requiere fu en te d e alim en tació n
Bajo costo
Fácil de co n struir
In clu ye p ro gram a d e interfaz con la c o m p u ta d o ra
T rabaja en c u a lq u ie r c o m p u ta d o ra tipo P C , desde
X T hasta P en tiu m
S o p o rta m icro co n tro lado res d e la serie A V R
i *
Curso p rá c tic o so b re M ic ro co n tro la d o re s ( § J M Ifá llV il
Programador por el puerto paralelo
Microcontroladores que acepta
El p uerro paralelo de las co m p u tad o ras es un
A T 9 0 S 2 3 2 3 (8 pines) dispositivo m u y versátil. A pesar de su nom bre,
es p o sib le u tilizarlo p ara m an ejar dato s serial­
A T 9 0 S 2 3 4 3 (8 pines)
m en te aú n a m ayo r velo cid ad qu e un puerto
A T 9 0 S 2 3 1 3 (2 0 pines) serial co nvencio nal.
A T 9 0 S 8 5 1 5 (4 0 pines)
En los program adores anteriores hem os u ti­
A T 9 0 S 4 4 1 4 (4 0 pines) lizado tanto el puerto serial com o el puerto p ara­
A T 9 0 S 8 5 3 5 (4 0 pines) lelo para conectar las tarjetas a la com putadora,
cada m étodo tiene ventajas sobre el otro pero
A T 9 0 S 4 4 3 4 (4 0 pines)
am bos son igual de efectivos. En este proyecto se
utiliza el puerto paralelo p ara p rogram ar los m i­
Importancia de los dispositivos crocontroladores A V R utilizando u n a interfaz de
programadores m u y pocos cables y una construcción bastante
A lo largo de este curso hem os estu d iad o algu - sencilla. Lo único qu e se necesita es un conector
nos dispositivos p ro gram ado res p ara las d is tin ­ D B -25 p ara el puerto paralelo, un socket o base
tas fam ilias de m icro co n tro lado res y hem os re­ de 2 0 ó 4 0 pines y el circuito impreso.
saltad o su im p o rta n c ia para sentar bases reales
y concretas de nuestro ap ren d izaje en este cam ­ Interfaz sencilla
po de la electró n ica. Lo m ás im p o rtan te es qu e D ebido a qu e los m icrocontroladores AV R no
hem os construido sistem as m u y económ icos, fá­ requieren de voltajes elevados para su program a­
ciles de elab o rar ,y, lo m ás im p o rtan te, con toda ción y poseen un generoso rango de voltaje de
la in fo rm ació n necesaria p ara su co n stru cció n , trabajo (2 ,7 V - 6 V ), es posible alim en tar el cir­
ad em ás, todo el softw a re d isp o n ib le para su fun­ cuito con los pines de datos del puerto paralelo.
cio n am ien to p ued e ser descargado de nuestra
p ág in a w w w .c e k it.c o m .c o . R ecordem o s qu e el p uerto paralelo (de 25
pines) qu e se en cu en tra en cada co m p u tad o ra,
U n elem en to de este tipo co n stitu ye una posee ocho bits p ara la salid a de datos, cinco
de las p rin cipales h erram ien tas qu e debem os te­ bits de estado y cu atro bits de salidas de control.
n er en nuestro lab o rato rio , pues si no se cuenta Las co m p utad o ras m ás m odernas poseen bits bi-
con ella, no p odrem os d esarro llar sistem as m i- d ireccio n ales, pero esa característica no es u tili­
crocontrolados. zada en este caso.

A h o ra a n a lic e m o s un se n c illo p ro g ra m a ­ En la f ig u r a 3 2 .1 p o d e m o s a p r e c ia r el
d o r p ara los m icro co n tro lad o res A T M E L . D is­ d ia g r a m a e s q u e m á tic o de las p o sib le s c o n fi­
p o sitivo s co m o éste se e n c u e n tra n d isp o n ib les g u ra c io n e s p ara los d is tin to s tip o s d e en cap -
en la red p ara ser d escargad o s y u tiliz a d o s sin su la d o s d e los m ic ro c o n tro la d o re s ; co m o se
n in g ú n p ro b lem a; el q u e m o stram o s a c o n ti­ p u e d e ver, los ú n ic o s e le m e n to s a d ic io n a le s
n u a c ió n se esco gió d eb id o a su b u en d ise ñ o y so n las re siste n c ia s d e 2 2 0 O h m io s. O b se rv e ­
fácil co n stru cció n . m os en la f ig u r a 3 2 .1 .d q u e el siste m a ta m ­
b ién p u ed e llev ar a cab o p ro g ra m a c ió n “ i n Cir­
Este dispositivo y su softw are fueron elabo­ c u i t ' c o n e c ta n d o la ta r je ta al circuito p o r m e ­
rados por el ingeniero Je rry M e n g de B eijin g d io de los p in es C L K , M O S I , M I S O y G N D .
(C h in a ), qu ien lo dispuso en m odo de fteew a re En la f ig u r a 3 2 .2 se m u e s tra la g u ía d e m o n ­
para ser copiado librem ente. ta je d el p ro g ra m a d o r.

s.a. Curso práctico sobre Microcontroladores


Proyectos

2
o
C/3
0 3

S2
03
T3
O
E

r
0 3
3
Q -

S o c k e t d e 2 0 p in e s
<P
1
Reset VCC
2
PDO(RXD) PB7(SC K)
3.
PD1(TXD) PB6 (M IS0 )
_4
XTAL2 PB5 (M 0 SI)
5
XTAL1 PB4
_6
PD2(INT0) PB3(0C 1)
_7
PD3(INT1) PB2 ez
O
_8 C/3
0 3
PD4(T0) PB1(AIN1)
_9 E
P05CT1)

PBOjAINO) ro
10 0 3

GND PD6(ICP) ■O
o
r
0 3
AT90S2313 3
Q-

Curso práctico sobre Microcontroladores éH K !T ¿


Programador para microcontroladores ATM EL

(C )

rz
i—
o
V)
ÜJ
o.
E
ro
•a
r
OJ

Puerto de la im presora
(d)

DB-25

co o C sJ
CT> CNJ ce r>- <X> c o u r-»
C N C \

(Conector para programación


Ó ó ó 6 ó J2
“ In Circuit'’)
O co cu O
C/D o o co Z
co cu CD
cc

F/fft/ra 32./ Diagram a esquem ático d e l program ador para los distintos tipos de m icrocontroladores

El software programador nejo por m edio de las presentaciones visuales y la


El softw are para program ar los m icrocontrolado­ interfaz de usuario qu e nos brinda el programa.
res A T M E L , qu e se m aneja en esta oportunidad,
se encuentra en entorno D O S, con una interfaz Al ejecutar el programa FBPRG.EXE se desplie­
m u y am igab le y u n m anejo m u y intuitivo. O b­ ga una pantalla en DOS, como la que se muestra en
servemos los aspectos m ás im portantes de su m a­ la f i g u r a 3 2 .3 . En esta primera pantalla se muestra el

Curso práctico sobre Microcontroladores


Proyectos

C o n e c to r p a ra el p u erto
p a ra le lo

Socket p a ra
m ic ro c o n tro la d o re s
A T 9 0 S 2 3 2 3 /4 3

C o n e c to r para
Socket para e je c u ta r
m ic ro c o n tro la d o re s p ro g ra m a c ió n “ In
A T90S2313 C irc u it”

Socket p a ra
m ic ro c o n tro la d o re s — « O P IN E S

A T 9 0 S 8 5 1 5 /4 4 1 4 /8 5 3 5 /4 4 3 4

'U ü U l I
AT90S8SIV4414/833S/4434 C E K IT
PROGRAMADOR A V R K -3 3 9 ®

Figura 32.2 Guía de m ontaje del program ador

menú principal donde el usuario escoge la acción acciones. A pesar de funcionar en DOS, la interfaz es
que pretende ejecutar. A la izquierda de cada una de agradable y m uy intuitiva, de m anera que cualquiera
las opciones se encuentra una letra entre paréntesis; que esté familiarizado con otro software de progra­
pulsando la letra indicada, se ejecuta cada una de las mación puede adaptarse fácilmente.

BftlFB AT90SXXXX PC BftSED PROGRAHflER U1.3Q


En la c o lu m n a de la
iz q u ie rd a s e e n c u e n tra n Copyright 1997,1338 hy Jerry fteng
Ernai 1:jerrynGpublic.gh.coi.cn E stas son la s d ive rsa s
la s d is tin ta s le tra s que
p e rm ite n e je c u ta r las p o s ib ilid a d e s q u e tie n e
a c c io n e s q u e se el u s u a rio p a ra le e r y
e n c u e n tra n a la p ro g ra m a r los
d e re c h a . S e p u e d e m ic ro c o n tro la d o re s
p u ls a r la le tra A tm e l A VR . Podem os
re s p e c tiv a o s e le c c io n a r n o ta r que
la o p ció n m e d ia n te las e s c e n c ia lm e n te son las
fle c h a s d el te c la d o m is m a s q u e se
e n c u e n tra n en c u a lq u ie r
o tro p ro g ra m a d o r
c o m e rc ia l

Figura 3 2 .3 M enú p rin cip a l d e l softw are del program ador

Curso práctico sobre M icrocontroladores S .A .


Programador para microcontroladores ATMEL

BA1F8 AT90SXXXX PC BASED PROGRAMMER U1.30


P u ls a n d o la le tra A ó
u b ic á n d o n o s e n la p rim e ra lín e a C o p y rig h t 1997,1998 by J e r r y Meng
y p u ls a n d o ENTER, p o d e m o s E*w i 1 :j c r r y r f p u b l ic . g b . c o B . c n

c a rg a r un a rc h iv o h e x a d e c im a l
en la m e m o ria de la (A ) Load HEX f i l e to F la s h b u ffe r
c o m p u ta d o ra , p a ra s e r ) Load HEX f i l e to EEPROM b u ffe r
) D is p la y F la s h b u ffe r
p ro g ra m a d o d e n tro d e la
) D is p la y EEPROM b u ffe r
m e m o ria d el m ic ro c o n tro la d o r ) Pro g ran
) Rcad D euicc code
) Read F la s h R EEPROM to b u ffe r
) Saue F la s h b u f f e r to HEX f i l e
) Save EEPROM b u ffe r to HEX f i l e
) G e n c ra te AUR S tu d io DEBI1G.0BJ
) Setu p
C u a n d o e s ta o p c ió n se ha ) Shou se he»* t i c
) U u it
s e le c c io n a d o , a p a re c e
un a lín e a d o n d e el
u s u a rio e s p e c ific a el r*’*1 F i lena « e : Ju an , hex

n o m b re d el a rc h iv o qu e
d e s e a c a rg a r
F ig u ra 32.4 Cargando los archivos hexadeclm ales en memoria

M ediante las dos primeras opciones del menú M e d ia n te las letras C y D se h ace u n a vi-
(letras A y B) se le pide al usuario que escriba el nom­ s u a liz a c ió n d e los a rc h iv o s q u e se h a n c a r g a ­
bre de los archivos hexadecimales que contienen la d o en la m e m o ria R A M d e la c o m p u ta d o ra y
información que se va a almacenar en la memoria. q u e se e n c u e n tra n te m p o r a lm e n te a lm a c e n a ­
En este caso se puede visualizar una línea de com an­ dos en e le m e n to s d e n o m in a d o s b u ffers, f ig u ­
dos en la parte inferior de la pantalla, figura 32.4. ra 3 2 .5 .

Esta e s la p re s e n ta c ió n q u e o rig in a el
p ro g ra m a d el c o n ju n to d e d a to s qu e
O 1 2 3 1 5 6 7 8 9 0 B C D E F 01234S6789ABCDEF c o m p o n e n el a rc h iv o c a rg a d o de
W 0 8 : W 00 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 00 0 0 00 00 0 0 0 0 .......................... m e m o ria . Con la c o lu m n a iz q u ie rd a y
0010:10 0000 00 00 00 00 00 00 00 00 00 00 00 0000 ............ la fila su p erio r, c o n fig u ra m o s c a d a una
0020 : 10 00 00 0 0 00 00 00 00 0 0 0 0 00 0 0 00 00 00 00
0 0 3 0 : 10 00 00 0 0 00 0 0 00 00 0 0 0 0 00 00 00 00 00 00 d e la s d ire c c io n e s de m e m o ria
0 0 1 0 :1 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00
0 0 5 0 :> 0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
I
0 0 6 0 :1 0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0 0 7 0 : JO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0 0 8 0 :> 0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0 0 9 0 :1 0 00 00 00 00 00 00 00 00 00 00 00 QQ 00 00 00
0 1 2 3 4 5 6 7 8 9 A B C D E F 01231567O T0ICHF

0000 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............
QQIO 30 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 ............
0020 30 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 ............
0830 90 00 00 00 00 00 00 00 00 00 80 00 00 00 00 00 ............

• i ESC t o « b o r t . «uu ke u t o c o n tin u é

E sta o s la p r e s e n ta c ió n d e to d o s lo s ___________

C o m o se

po sició n de m e m o ria qu e se d esee

Figura 32.5 Visualización de los archivos cargados en memoria


Proyectos

El programa proporciona
Cuando ejecutamos
una forma de indicación
desde el Menú Erase Flash « EEPROM memory del porcentaje de
principal la opción de Progran Flash memory
memoria que se ha
programar el
- — Program EEPROM memory trabajado (borrado,
microcontrolador
programado y verificado)
aparece esta pantalla, ................. U e r i f y Flash memory — que emula una barra
donde podemos
progresiva, por medio de
apreciar cómo se lleva V e r i f y EEPROM memory
puntos. Cada uno de los
a cabo dicho proceso
Lock p r o t e c t b i t 1 procesos involucrados
en las memorias lock p ro t ec t h i t 2 en la programación van
EEPROM y FLASH
apareciendo
secuencialmente en la
pantalla con su
respectiva barra.
Press tiny kc¡y to continué

Figura 3 2 .6 Programación del m icrocontrolador

C u an d o se pulsa la letra E se procede a pro­ te, este procedim iento fue seguido en el progra­
gram ar el m icrocontrolador con la inform ación m ador K -224 y es m u y útil para verificar qu e el
co n ten ida en los buffers. Se presenta una panta­ m icrocontrolador se encuentre en buen estado.
lla y una barra de puntos progresiva que au m e n ­
ta de acuerdo al porcentaje de m em o ria progra­ C u an d o el m icrocontrolador posea alguna
m ad a en el m icrocontrolador, fig u ra 3 2 .6 . información alm acenada, es posible leerla m edian­
te las teclas F y G, fig u ra 3 2 .7 . La información
El softw are perm ite verificar los datos progra­ contenida en el m icrocontrolador quedará alm a­
mados, esa verificación por lo general se hace com ­ cenada en un bujfer para qu e pueda ser grabada
parando los datos de todo el buffer, ya sea en el dentro de un archivo en el disco duro o en un
m ism o m om ento de programarse o posteriormen- disco flexible, mediante las teclas H e I, figura 32.8.

Cuando se tiene un
microcontrolador
programado es posible leer
su contenido pulsando las
letras F y G del menú
principal. La lectura de la
Figura 3 2 .7 Lectura d e l contenido del memoria también posee su
m icrocontrolador barra indicadora y cuando
ella termina podemos
grabar esa información en
un archivo del disco duro

Figura 3 2 .8 Grabando los datos en disco

á *
Curso práctico sobre Microcontroladores (£ ¡M IK flilis *
Programador para microcontroladores ATMEL

Pulsando la letra K se en tra al m e n ú de co n ­ pecífica del m icrocontrolador que se esté traba­


figuración del sistem a, fig u ra 3 2 .9 . Podem os ver jan d o , fig u ra 3 2 .1 0 .
una serie de núm eros entre paréntesis ,y, al frente
de cada uno de ellos, cada u n a de las opciones El program a nos presenta una p equ eñ a a y u ­
qu e el usuario debe establecer. C o n cada uno de da m u y sim p ática; pulsando la letra L se accede
estos núm eros d eterm in am o s las acciones que al d iagram a esquem ático del circuito del progra­
querem os qu e se ejecuten sobre el m icrocontro­ m ador, fig u ra 3 2 .1 1 . Puede pensarse q u e esta
lador objetivo. Estando en esta p an talla y p u l­ ayu d a adicional nos perm ite construir nuevam en­
sando el n úm ero 9 se selecciona la referencia es­ te la tarjeta en cu alq u ier m om ento o lugar.

BA1FB AT90SXXXX PC BASED PROGRAMMER Ü1.30

Copyright 1397,1938 by J e r r y rteng


E»a i 1 : Jerry«Gpuhlic.gb.con.cn

Ir — ii
E ste es el m e n ú p a ra c o n fig u ra r el
) E ra s e F la s h A EEPROMa e a o ry ------------ Yes fu n c io n a m ie n to d el s is te m a . A la
) P ro g ra » F la s h a e m r y -------------------- Yes iz q u ie rd a s e e n c u e n tra un a s e rie de
-

) P ro g ra » EEPROM n en o ry ------------------ Yes


le tra s q u e h a b ilita n o d e s h a b ilita n las
) U e r i f y F la s h nemory -------------------- Yes
) U e r i f y EEPROM a e n o ry--------------------- Yes o p c io n e s qu e se e n c u e n tra n a la
) Lock p r o te c t b i t 1 --------------------- Yes d e re c h a . La ú ltim a o p ció n s irv e para
) Lock p r o t e c t b i t 2 --------------------- Yes
g u a rd a r la c o n fig u ra c ió n q u e h a hecho
) P r i n t e r p o r t ---------------------------- 1
) D e u i c e -------------------AT98S1200 el usu ario
iaue setup

|| ( ) Quit

F ig u ra 3 2 .9 M enú de configuración del sistem a

Copyright 1997,1998 by Je rry fleng


Em ail: jerrym0public.gb.com.cn

P u ls an d o e l n ú m e ro 9 se
d e s p lie g a un n u e v o m en ú
d o n d e p o d e m o s s e le c c io n a r el
tip o d e m ic ro c o n tro la d o r AVR
q u e v a m o s a p ro g ra m a r. Este
n u evo m e n ú p o see el m ism o
fo rm a to y m é to d o d e s e le c c ió n
de lo s a n te rio re s

F ig u ra 3 2 .1 0 Selección d e l m icrocontrolador que se va a program ar

Si4. Curso práctico sobre Microcontroladores


Proyectos

T h e s c h e a a t l c o f BA1FB PC b a s e d p r o g r a i n e r

AUR P R IN TE R PORT

D
AMt orlTl VCC GND 25
SCK GND 24. . . .

M ISO GND 23 —
Este es el diagrama MOSI \ 10 flCK GND 22 —
esquemático que muestra el XTALl 9 D7 GND 21—

programa. Gracias a él 8 D6 GND 20 -


podemos montar nuestro 7 DS 6ND 19 —
programador en cualquier 6 D4
laboratorio o sitio de trabajo. 5 D3
GND 4 D2
A pesar de que el diagrama
- \/\/v 3 DI
se gráfico mediante
—S/N /\- 2 DQ
programación en modo
20 on 1 STROBE
texto, tenemos completa
x4
claridad de cómo construirlo

N o te : Yon d o n ' t h a o e t o u s e 4 r e s i s t o r o n l y o n e d a t a
o u t p u t p i n c a n d r i o e t h e AT9BS128Q

“re s s any k e y t o c o n t in u é

F ig u ra 32.11 Diagrama esquem ático del circuito programador, presentado en e l softw are

Herramientas de desarrollo A nalicem os brevem ente dos herram ientas de soft­


adicionales w are qu e se pueden descargar lib rem en te de la
Los m icro co n tro lad o res A T M E L están a u m e n ­ internet y qu e constituyen un excelente m aterial
tan d o su nivel de acep tació n por sus p o d ero ­ de apoyo p ara los desarrolladores de tecnología
sas características (rem itirse a la sección d e teo­ con m icrocontroladores AVR. Ya conocem os la
ría) y su costo red u cid o . En la in te rn e t y a se im p o rtan cia de un buen sistem a sim u lad o r y las
h an co n fo rm ad o u n a b u e n a c a n tid a d de p á g i­ ventajas qu e b rin d a el d ep u rar los códigos con
n as, foros y em p resas a lre d e d o r de estos m i­ un program a especializado de esta naturaleza.
cro co n tro lad o res. Este h ech o , su m ad o a su fa­
c ilid a d de co n secu ció n en el m e rc ad o , su bajo La p rim era h erram ien ta la proporciona la
costo, y la fortaleza m u n d ia l en electró n ica que em presa M IC R O D E S IG N , q u ien ha desarro­
está to m a n d o A T M E L , h acen m u y lla m a tiv a llad o el p ro gram a FASTAVR qu e es un en to rn o
la id e a de d e c id irn o s p o r esta m arca. p ara la ed ició n y la c o m p ilació n de p ro gram as
p ara m icro co n tro lado res de la serie AVR.
V isite la p á g in a w w w .a tm e l.c o m y en tére­
se d e todos los p ro d u cto s, so lucio n es y a d e la n ­ L a p a n ta lla in ic ia l d e este p ro g ra m a se
tos a q u e han llegado los ingenieros de esta pres­ p u e d e a p re c ia r en la f ig u r a 3 2 .1 2 . C o m o se
tigio sa em presa. p u e d e ver, tie n e u n e d ito r d e texto en el que
se e sc rib e n lo s p ro g ra m a s d o n d e se n u m e ra n
M u c h a s em presas d e d esarro llo e le c tró n i­ c a d a u n a las lín e a s , u n a b a rra d e h e r r a m ie n ­
co h an visto en A T M E L u n a m u y b u e n a o p o r­ tas, y u n a v e n ta n a d e estad o . C u a n d o se ha
tu n id a d y h an e stru c tu ra d o u n a serie d e he­ e s c r ito el p r o g r a m a p o d e m o s c o m p ila r lo y
rra m ie n ta s de h a rd w a re y softw a re p ara d is tr i­ c re a r el a rc h iv o h e x a d e c im a l q u e se g ra b a rá
b u ir en tre los in teresad o s en esta tecn o lo g ía. d e n tro d e l m ic ro c o n tro la d o r.

Curso práctico sobre Microcontroladores m m w A.


gramador para microcontroladores ATMEL

Programación

Terminal
Ejecución del
programa Calculadora

-igi *i
Barra de herramientas

Pw cavp í «»ic c«»psiít fot avr ty nxcPori:si<ai


lo a r •■ f Y ouc p io 't c ’

Número de linea

Ventana para el
código fuente

o c Z d lC C e s t a d a tC u c , C o p y , P a s t e , 3 «
Barra de estado
l l c k >n T r o n t o í t i M N t o s « l « c t U m
t c l - X f o r tTnDo, f 8 f o r PeDo*

F igura 3 2 .1 2 Entorno de com pilación FASTAVR

El p ro g ram a tie n e u n a p re sen tació n visu al En la fig u ra 3 2 .1 3 vem os una de ellas. Se


b a sta n te a g ra d a b le a u n q u e no es tan co m p leto trata de un program a para trabajar con los puer­
co m o el M P L A B de M ic r o c h ip o el en to rn o tos seriales, algo sim ilar al h yp erterm in a l de W in ­
p ara M o to ro la de P em icro , sin e m b a rg o , p o ­ dows 9 8 ; cu en ta con su m en ú de configuración
see a lg u n a s h e rra m ie n ta s b astan te in teresan tes. p ara la velocidad, la selección del puerto, etc.

Ventana de
visualización y
escritura sobre el
f o t I A % I h f t A V l l I r t

puerto serial
Selección del puerto -EdL^fcwl
IwlRM ttro
Selección de velocidad "4*00 ~ Z ¡ G O * C O n

G N o n a
D a la 8 4 » [ 5 3

Configuración del Par* 3


C X o r v K e *

r Ris
paquete de datos StcpBí. fT r xwv^ts
Caro!

Control de flujo

F igura 3 2 .1 3 Program a para trabajar con los puertos

€M ¡K<n. Curso práctico sobre Microcontroladores


Proyectos

AVR C alculalor H H E3

S e le c c ió n del crista l
■•Used C rys ta l [M H z ] |z
|? 3728
d
utilizado Tiem po d esead o en
(iooo •
S e le c c ió n del valo r m icroseg undos
P re sca le
de la pre-escala
TimetO
TCNTO
R e g istro s a so c ia d o s a
Timetl ” los tem porizadores
TCNT1H TCNT1L TimerO y Tim er1
OCR1AH OCR!AL
V alo r d el tiem po P a ra a ctu a liz a r el
■#Actual tim e [us|
obtenido c á lc u lo s e p u lsa este

Factoi Angle Slep Functon botón

c 100 r ai r Sn
r 255 r a2 r Cos
r iooo r as r X H- Fu n cio n e s ad icio n ales
r ioooo c 1 r Lin (10J
r 3226? r 2 r La W
r 65535 r 5 r X

Cancel OK

F igura 32.14 Calculadora para e l cálculo de los tem porizadores en los m icrocontroladores AVR

En la figura 3 2 .1 4 vemos otra herram ienta una calculadora de m ano y hacer nosotros m is­
bastante original y útil. Se trata de una calculado­ mos los cálculos del reloj, la pre-escala, etc.
ra para m an ip ular los parám etros de los tem pori­
zadores con el objetivo de obtener un tiem po de­ O tra h erram ien ta bastante o rigin al, que ha
seado con m ucha precisión. Esta llam ativa carac­ desarrollado M IC R O D E S IG N , es la incorpora­
terística nos ahorra el trabajo de tener qu e utilizar ción de una librería para generar rápidam ente,

LCD C h a ra c le is d esig ner

V entana para
d ib u jar los
ca ra cte re s

Pu lsan d o e ste botón


se genera el c a rá c te r
dibujado

F igura 32.15 Interfaz para la generación de caracteres LCD.

á *
Curso práctico sobre Microcontroladores „ ,SA
Programador para microcontroladores ATMEL

F ig u ra 32.16 Programa AVR Studio

desde FASTAVR, la visualiza­ m ite al usuario una com pleta si­ Ella se crea cu an d o se ha
ción de m ensajes en un display m ulación de los program as y la gen erad o un archivo objeto y
de cristal líq u id o (L C D ), por co n exió n p ara un dispositivo p erm an ece d u ran te toda la se­
m edio de una sencilla interfaz em ulad o r. O bservem os ahora sión. Si se cierra esta ventan a,
gráfica, fig u ra 3 2 .1 5 . sus principales componentes y su la sesión d e d ep u ració n ta m ­
correspondiente función. bién se cierra. En ella se visua­
AVR Studio liza el código fuente con el que
La segunda herram ienta que re­ La ventana del se está tra b a ja n d o , y a sea en
com endam os se puede descargar código fuente m o d o s im u la d o r o en m o do
de la página w w w .atm el.co m , se Es la ventan a p rin cip al en cu al­ em ulador, y cuenta con una se­
trata del program a AV R Studio, q u ie r sesión de trabajo o d ep u ­ rie de indicadores qu e la hacen
figura 3 2 .1 6 . Este programa per­ ració n , fig u ra 3 2 .1 7 . m u y versátil y útil.

Selección del modo

Módulo actual Buscar

Buscar siguiente

Explorador de
O T ESVA * •
códigos fuente
jln lt Scack P o ln t« r

Punto de chequeo-

C o p y 20 b y t M P O H - > RA H
Deshabilitar punto
de chequeo Z H , h l(|h (F _T A B L E *2 )
Z L , l o w ( F _ T A B L E * 2 ) ¡ l n i t Z - p o in t « r
Y H ,h l$ h (8 L O C K 1 )
ldi Y L , lo w (BLO C K 1) ü n lt Y - p o in te c
ld l í l a a h w i z e , 20
Indicador de la r c a ll i i M h 2 r«R i ;c o p y 20 byce*

línea que se ejecuta


actualmente
Z H ,h ig h (B L O C K l)
Z L ,lo w (B L O C K 1 ) iín ic Z - p o in t « r

F igura 3 2 .1 7 Ventana d e l código fuente

S .d . Curso práctico sobre M icrocontroladores


i Proyectos

M arcas Ventana del procesador basada en la S R A M , el p ro gra­


En la m a rg e n iz q u ie rd a de la E sta v e n ta n a , f ig u r a 3 2 .1 8 , m a in d icará este fenóm eno.
v e n ta n a p o d e m o s e n c o n tra r co n tien e in fo rm ació n v ital so­
u n a serie de m arcas a u x ilia re s bre la ejecució n actu al. C o n ­ C o n ta d o r de ciclos
c u y a rep re sen ta ció n son a lg u ­ tie n e in fo rm a c ió n v ita l p ara D a in fo rm a c ió n sobre el n ú ­
nas fig u ras g e o m é tric a s co m o d e p u r a r a d e c u a d a m e n t e los m ero de ciclos de reloj qu e han
flech as o c u a d ra d o s q u e in d i­ p r o g r a m a s ; re s a lte m o s c a d a pasado desde el ú ltim o estado
can la p o sic ió n d el c o n ta d o r una de sus partes constitutivas. de reset. Su v alo r se presenta
d e p ro g ra m a y o tro s p u n to s en fo rm ato d e c im a l y p ued e
de d e p u ra c ió n co m o los p u n ­ C o n ta d o r de p ro gram a m o d ific arse cu a n d o se d e tie ­
tos de c h e q u e o ( break points ). Indica la dirección de la siguien­ ne la ejecu ció n .
te instrucción qu e se va a ejecu­
M o d o s de d ep u ració n tar. Si se m odifica el valor de este Frecuencia
El código fuente puede verse de contador, no se ejecutará la ins­ En este in d icad o r se m uestra la
distintas form as. D ependiendo trucción actual. frecuencia del sistem a objetivo.
de cual m odo está activo, la d e ­
p uració n se lleva a cabo en el D espués de cam b iarlo , el B an deras
nivel co rrespondiente. usuario puede ejecutar la fun­ Son u n a visualización del valor
ción de ejecu tar sólo un paso actu al d el registro de estado.
E xplorando los m ó dulo s p ara saltar a la dirección desea­ C u an d o se detiene la ejecución,
U n archivo o b jeto p ued e tener da y no a la qu e debería seguir estos bits p u ed en m odificarse
varios m ó d u lo s, pero sólo se norm alm ente. pulsando el cursor sobre la b an ­
p ued e v isu alizar uno en cada dera respectiva.
in stan te de tiem po. El usuario P un tero a la p ila
p ued e cam b iar a otros m ó d u ­ M a n tie n e el v a lo r a c tu a l del Ventana 1/0
los, según el q u e requiera, se­ p u n tero a la p ila, el cual se u b i­ Se u tiliz a p ara in sp e c c io n a r y
leccionándolos desde un m enú ca en el área I/O. Si el sistem a m o d ific a r los c o n te n id o s de
ubicado en la parte superio r de o b je tiv o p o see u n h a rd w a re los d istin to s registro s I/O d u ­
esta ventana. p ara la p ila en lu g ar de una p ila ran te la e je c u c ió n d el p ro gra-

r j P io ce sso i
V alo r de los
C ontador de program a Program C ouní» |0x00 re g istro s de 16
Pu n tero a la p ila — Stack P óriet [535 b its X, Y y Z,

C ontador de c ic lo s — CycteCount» [* " * co n fo rm ad o s por

TimeElapted |0-00 1.0 MHz p a re s de reg istro s


Rx

B a n d e ra s de la CPU

F igura 32.18 Ventana d e l procesador

M *
Curso práctico sobre Microcontroladores fé M /K T U W s ».
Programador para microcontroladores ATMEL J
___________________

En esta ventana se visualizan los distintos registros del microcontrolador por


medio de item desplegables. Se distinguen tres columnas principales: en la de la
izquierda se encuentran los nombres de los registros y banderas, en la de la
mitad el valor de cada uno de ellos y en la columna de la derecha se indica la
posición de memoria que ocupan

Registros de
estado y control
de la CPU
Bits de bandera y control
Bits y registros de interrupciones
del temporizador

Datos y Control del perro guardián


r r r r r
direcciones de la
EEPROM
Estado del puerto B
r r r í. '8 t * ? v o
r r r w r M iii
r r r

Figura 32.19 Ventanal/O

m a o b jetiv o , f ig u r a 3 2 .1 9 . Se C o n f ig u r a c ió n d e la ventana se puede configurar car­


p u ed en a b rir v arias v en tan as v e n ta n a I/O gando un archivo desde el disco.
de este tipo se le c c io n a n d o la Esta ventana se configura automá­
o p c ió n N e w I/O W in d o w , ticamente cuando se abre de acuer­ C u an d o se cierra un pro­
ub icad a en el m e n ú V iew . do a unos parámetros estándar. La yecto, A VR S tu d io guarda au-

Tipo de memoria Dirección

Memory: 1

0 0 02 0 0 00 0 0 00 00 0 0 0 0 ........................
00 00 00 09 4 0 00 01 00 . . • • b - 0 * * *
Columna ASCII
Columna de 48 65 6C 6F 2 0 7 7 6P 7 2 i H e l l o v o r
direcciones 64 00 0 0 dOQ6E: 098d 0110001 > Información adicional
80 00 00 00 00 00 00 00 00 .....................
00 00 0 1 0 0 0 0 0 4 0 0 0 0 4 3 .................... C
00 00 00 0 0 00 02 00 00 0 0 ........................
00 00 0 0 0 0 0 0 0 0 0 0 0 0 0 8 .............................
Columnas de datos 0 0 0 0 OA 0 0 0 0 0 0 0 0 2 0 0 0 ...........................
OQBA 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 ..........................
00C4 00 0 0 00 0 0 0 0 00 0 0 00 00 ........................
¡OOCE 00 20 4 0 0 0 0 0 0 0 0 0 0 0 3 0 • • 0 .......... 0
00D8 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 H........................
I00E2 00 0 0 00 00 0 0 00 0 0 0 0 00 ........................

Figura 32.20 Ventana de memoria


Proyectos

to m áticam en te los cam bios he­ Ventana de memoria rras q u e se e n c u e n tr a n en su


chos sobre d ich a ventana. Le p e rm ite al u su ario in sp e c­ p a rte in ferio r.
c io n a r y m o d ific ar los c o n te ­
C o n ten id o s n id o s de to d a la m e m o ria del Esta ventana consta de cu a­
La ventana I/O se organiza de siste m a o b jetivo . tro co lum n as. La p rim era es el
m anera jerárquica, lo que le da n o m b re d e l s ím b o lo q u e se
al usuario la posibilidad de ver Se pueden ab rir varias ven ­ quiere visualizar, la siguiente es
los registros I/O, y, si lo desea, tanas de este tipo, fig u ra 3 2 .2 0 . el valor del sím bolo, la tercera
entrar en detalles. es el tipo del sím bolo, y la cu ar­
In fo rm ació n ad icio n al ta es la dirección.
La configuración estándar U b ic a n d o el rató n sobre c u a l­
proporciona una rápida visión del q u ie r p o sic ió n , se p u e d e o b ­ Por d efecto , la v e n ta n a de
hardware con la capacidad de ex­ te n e r m ás in fo rm a c ió n sobre o b se rv a c ió n se e n c u e n tra v a ­
pandir puntos en particular. e lla g r a c ia s a u n a p e q u e ñ a cía y to d o s los sím b o lo s y v a ­
v e n ta n a q u e se d e s p lie g a a u ­ ria b le s se d eb en a d ic io n a r de
La v e n tan a I/O co n tien e to m á tic a m e n te . a c u e rd o a las n e c e sid a d e s d el
tres colum nas. La co lu m n a de u su a rio .
la izquierda m uestra los regis­ Ventana de variables
tros; haciendo doble clic en cada L a v e n t a n a d e o b s e r v a c ió n Al incorporar un registro en
uno de ellos, se exp an dirá el re­ ( Watch w indow ) perm ite visua­ esta ventan a, podrem os ver el
gistro m ostrando inform ación lizar los tipos y valores de las dis­ com portam iento de cada uno de
ad icio n al, incluyendo una pe­ tintas variables de un program a, sus bits cuando depuram os paso
q u eñ a pero m u y eficaz gráfica fig u ra 3 2 .2 1 . a paso el programa.
de los registros y los bits.
S ó lo p u e d e h a b e r u n a P ara a b rir la v e n ta n a de
L a c o lu m n a d e la m ita d v e n ta n a de o b serv ació n a b ie r ­ o b se rv a c ió n se s e le c c io n a la
m uestra los valores de los regis­ ta al tie m p o . L a v e n ta n a de o p ció n W a tc h , presente en el
tros y en la co lu m n a de la dere­ o b se rv a c ió n c o n tie n e cu a tro m e n ú V ie w o se h ace c lic so ­
cha se m uestran las correspon­ v ista s, las c u a le s se se le c c io ­ bre W a tc h W in d o w en la b a ­
dientes direcciones. n an h a c ie n d o c lic en las b a ­ rra d e h e r ra m ie n ta s V ie w s.

131Wdtches (SBC
viten 1IA Tvn# A d d r «s s

- pCircBuf OxCE tiny • (PEC) R16


L-ra-> (0xD3, OxOA Ox... struct (SPAH) OxOOCI
(-Í-:'—
pB->ufíar 0xD3 txnyunsignadchar* (SPAH) OxOOCI
OxOA'O' un*iqjn«dchar (SPAH) 0x00D3
sis* OxOA ur>signadchar (SPAH) OxOOCF
inPos x *' unsignadchar (SPAH) OxOODO
outPos
0 01
x '\0'
0
unsignadchar (SPAH) OxOODl
fraa
0 00
0x09 unsignadchar (SPAH) OxOODZ
r° OxOA unsignadchar (PIC) R20

T . ..4____ ---------3-------- — 4 —
WatcM WalchZ |Wdch31 Watch4
\

V ariab le

D irección

F ig u ra 32.21 Ventana de observación

Curso práctico sobre Microcontroladores


| Programador para microcontroladores ATMEL

Ensamblaje del proyecto


C ant. R e fe re n c ia D e s c rip c ió n
1 C1 C o n d e n s a d o r c e r á m ic o d e 0,1 u F - 5 0 V
1 C2 C o n d e n s a d o r electrolítico d e 4 7 u F - 1 6 V
3 R1 a R 3 R e s is te n c ia s d e 2 2 0 - 1 / 4 W
1 J1 C o n e c t o r D B 2 5 m a c h o p a r a im p r e s o
1 J2 C o n e c t o r tip o c e r c a n o p o la r iz a d o d e 5 p in e s
1 K -339 C irc u ito im p r e s o C E K I T
1 C a b l e p a r a c o m p u t a d o r a p a rale lo -p a ra le lo

2 SSoocck
ekettss
(hem bra - m acho)
e n lín e a d e 2 0 p in e s
2
2
1
Sockets e n lín e a d e 10 p in e s
e n lín e a d e 4 p in e s
L á m in a d e a crílico d e 8 c m X 8 c m
4 S e p a r a d o r e s p lá s tic o s d e 5 m m
Figura 32.22 Conjunto de com ponentes electrónicos y los
4 T o m illo s m ilim é tric o s 3 X 1 2
accesorios que se requieren para ensam blar e l program ador
4 Tuercas d e 3 m m
de m icrocontroladores ATMEL, CEKIT K-339.
Con este program ador usted podrá grabar los
m icrocontroladores m ás populares de ATMEL, utilizando el
puerto paralelo de la computadora. En este proyecto se han
incluido sockets que facilitan la program ación de los circuitos Paso 3
integrados de 8 ,2 0 y 40 pines. Para e l ensamblaje de la Instale y suelde e l
tarjeta tenga en cuenta los siguientes pasos: condensador cerám ico
C1 de 0. IpF .
Figura 32.25
« ■ ■ ■ i

soa
Paso 1
Instale y suelde los
puentes de alam bre y
¡ t ■ ................. I mct
AT9GS?313 !J Ü S
las tres resistencias de
220Í2. Paso 4
Figura 32.23 Instale y suelde e l
- r condensador electrolítico
«I9 0 S*5 1 V M l«'*3 3 a /4 4 3 4
CEKIT C2 de 47¡jF.
AVR K -3 3 9 Figura 32.26

Paso-2 AVR K -3 3 9 ©
Luego instale y suelde los
sockets en línea para
cada uno de los Paso 5
form atos de los circuitos Aspecto fin a l de la tarjeta
integrados, y e l conector luego de in sta la r y soldar el
para la program ación “in conector (J1> D B -25 macho,
Circuit" (J2). que se utiliza para conectar
Figura 32.24 la tarjeta de program ación
con e l puerto paralelo de la
com putadora, p o r m edio de
un cable paralelo-paralelo
estándar.
Figura 32.27 O ) PROGRAMADOR A V R

Paso 6. Pruebas finales


Esta tarjeta no necesita alim entación adicional, la única conexión necesaria es la d e l cable D B -25 del puerto paralelo. El
program a funciona de m anera inm ediata; s i se presenta algún incoveniente en la program ación cam bie e l m icrocontrolador, si
persisten los problem as es posible que e l puerto paralelo presente algún daño.

m n cir : Curso práctico sobre Microcontroladores


PROYECTO 33

MEDIDOR DE HUMEDAD Y
TEMPERATURA
En este proyecto construirem os un dispositivo de
m edida que m uestra en un d is p la y de cristal líquido
(L C D ) dos variables análogas, cuya m edición es una
necesidad perm anente en los procesos industriales; se
trata de la tem peratura en grados centígrados y la h u ­
m edad relativa m edida en porcentaje.

C aracterísticas
• V isualización de la tem peratura y la h u m ed ad re­
lativa en un d is p la y L C D de dos líneas y dieciséis
caracteres (2x16)
• Sensor de h u m ed ad capacitivo
• Sensor en circuito integrado para la temperatura
• Intervalo de medición de temperatura entre 0 y 150° C
• M icrocontro lador PIC 1 6 C 7 1 1
* y-y\\

C urso p rá c tic o s o b re M ic ro c o n tro la d o re s 305


Medidor de humedad y temperatura

Funcionamiento
El núcleo del proyecto es un m icrocontrolador
P I C 1 6 C 7 1 1 qu e representa una m u y b uen a so­
lució n para m uchos problem as de diseño donde
F igura 33.1 Diagram a en bloques del proyecto
se requiera trabajar con señales análogas y d ig ita­
les. En el interior de este m icrocontrolador PIC Sensores
existe un convertidor análogo/digital cuyas p rin ­ Para m ed ir la tem peratura em plearem os un cir­
cipales características son: cu ito integrado L M 3 5 . Este sensor tiene tres p i­
nes: alim en tació n , tierra y la salida análoga. Este
• C u atro canales de entrada dispositivo presenta en su salida u n a variación
• T iem p o de conversión m ín im o de 2 0 us de 10 m V /°C , por lo tanto, el valor de la tem pe­
• Voltaje de referencia interno o externo ratura se p ued e recibir d irectam ente, sin necesi­
• R esolución de 8 bits dad de hacer m odificaciones al dato obtenido.
• M a g n itu d de la en trad a an álo ga desde Vss
hasta V ref El L M 3 5 p ued e trabajar en una escala de
tem p eratu ra entre - 5 3 y 15 0°C , y la fuente de
C o m o característica im p o rtan te podem os alim en tació n positiva puede estar entre 4 y 30
m en cio n ar q u e una de las presentaciones con la voltios. A dem ás, su precisión es de 0 ,5 ° C . Este
qu e se consigue en el m ercado es la de m ontaje elem ento viene en un encapsulado plástico y tie­
superficial, qu e lo hace m u y conveniente para in ­ ne la m ism a ap arien cia de un transistor.
corporarlo en aparatos de tam año reducido ,y,
por su bajo costo, se convierte en la clave del éxi­ Para m ed ir la h um ed ad utilizarem os un sen­
to para producciones en serie. sor capacitivo de Philips, fig u ra 3 3 .3 , cuyo co m ­
p ortam ien to responde a la gráfica m ostrada en la
El P I C 1 6 C 7 1 1 se encarga de a d q u irirla s dos fig u ra 3 3 .4 . Este sensor se caracteriza por su fa­
señales (previam ente acondicionadas) de los sen­ cilid ad de m an ejo y su bajo costo; y su diseño
sores de h um ed ad y tem peratura, y de generar p erm ite m e d ir valores entre 10% y 9 0 % de h u ­
las señales de control para poder visualizar los m edad relativa. C o m o vem os en la gráfica de la
datos tom ados en las dos líneas del display LCD . fig u ra 3 3 .4 , el sensor presenta una respuesta bas­
B ásicam ente ese es el funcio nam ien to y el obje­ tante lineal, lo qu e p erm ite ser leído m ediante
tivo perseguido en este proyecto; a pesar de pare­ circuitos electrónicos no m u y com plicados. Bá­
cer sim p le, esta aplicación de los m icrocontrola­ sicam ente su fu n cio n am ien to se basa en una fina
dores es m u y apetecida (por ejem plo en los in ­ m em b ran a polím era capaz de absorber la h u m e­
vernaderos) por b rin d ar in depen den cia de una dad qu e h ay a su alrededor originan do un cam ­
co m p utad o ra para tom ar una lectura y por la es­ bio en el valor de su cap acitan cia. Señalem os las
tética qu e b rin d a un L C D . principales características del sensor de hum edad:

Descripción del circuito • Larga vida útil


Podem os d is tin g u ir tres b lo ques fu n d a m e n ta ­ • A lta sensibilidad
les en este proyecto: los sensores, la etap a de • Respuesta rápida
proceso y la etap a de visualizació n de los datos, • A lta in m u n id ad contra contam inantes
fig u ra 3 3 .1 . A n alicem o s brevem ente cada una • O pera con un sencillo circuito de m ed id a
de las etapas y los circuito s qu e las co m p o n en ;
el d ia g ra m a co m p leto del proyecto con todos D e n tro de las a p lic a c io n e s m ás co m u n es,
los co m p o n en tes y sus co nexio nes, lo podem os en d o n d e se p ued e e n c o n tra r este sensor, se e n ­
ap reciar en la fig u ra 3 3 .2 . c u e n tra n los procesos de secad o , sistem as de
*
ÚMKBTsl Curso práctico sobre Microcontroladores
Proyectos

FUENTE REGULADA DE +5V

s
O
O

Igl
co
S°= c
cc OJ
w
3

13
12
11

6
ll¿39L3ld
¿162I/V1 931
231

F igura 3 3 .2 Diagrama esquem ático d e l proyecto

aire a c o n d ic io n a d o , sistem as p e n d ie n d o d el v alo r de la c a ­ frecu en cia a v o ltaje, referencia


d e im p re sió n , estacio n es m e ­ p acitan cia qu e se tenga en cada L M 2 9 1 7 de N a tio n a l S e m i­
teo ro ló gicas, etc. Para o rig in ar m o m en to ; con los c o m p o n e n ­ co n d u cto r, o b ten em o s u n a se­
la se ñ a l a n á lo g a , el sensor se tes u tiliz a d o s la fre c u e n c ia de ñal a n á lo g a en tre 2 y 5 voltios
instala en un circu ito 555 co n ­ esa señ al p u e d e estar en tre 5 y p ro p o rc io n al a la h u m e d a d y
figu rad o en m o do astab le para 6 K H z. Por m e d io de un c ir ­ lista p ara ser leíd a por el m i­
q u e en v íe u n a frecu en cia d e ­ cu ito in teg rad o co n v ertid o r de cro co n tro lad o r.

*
Curso práctico sobre Microcontroladores T T s . a . % ■> 307
Medidor de humedad y tem peratura

D ado lo anterior, el valor qu e entrega el con­


v ertid o r se debe d u p lic a r p ara co m p en sar la d i­
ferencia (v ariació n de 10 m V /°C y resolución
de lectu ra d e 2 0 m V ), a u n q u e esto hace q u e la
lectu ra siem p re sea un n ú m ero par.

Para so lu cio n ar el p ro b lem a de ten er que


d u p lic a r el valor leíd o y g aran tiz ar qu e el resul­
tado de la conversión corresponda a la te m p e­
ratu ra real, se p ued e u tiliz a r un am p lificad o r
o p eracio n al p ara a m p lific a r la señal en tregada
p o r el sensor L M 3 5 ; d ich o o p eracio n al se debe
F igura 3 3 .3 Sensor de hum edad capacitivo
co n fig u rar co m o am p lificad o r no inversor. De
esta form a, con el valor an álo go ad ecu ad o a la
en trad a del co n v ertid o r y con la fuente de a li­
m en tació n co m o vo ltaje de referencia, se puede
o b ten er u n a lectu ra precisa y directa.

Etapa de visualización
El m ó d u lo d e cristal líq u id o se c o n e cta al m i­
c ro c o n tro la d o r u tiliz a n d o u n a in te rfaz de c u a ­
tro bits. El m an ejo de los displays L C D ya lo
estu d iam o s a n te rio rm e n te en la lecció n de p ro ­
g ra m a c ió n , pero vam os a h acer u n a sín tesis de
los aspectos m ás im p o rta n te s. Ellos están d o ­
tado s d e to d a la e le c tró n ic a n ecesaria p ara v i­
su a liz a r d ato s de m a n e ra m u y e fic ie n te . A de­
Figura 33.4 Comportamiento del sensor: capacitancia contra humedad m ás d isp o n en de un b uen c o n ju n to de in s tru c ­
c io n e s, co n e le m e n to s tales co m o b o rra r la
Etapa de procesamiento p a n ta lla , p o s ic io n a r el cu rso r, d e s p la z a r los
Las entradas análogas se conectan a los pines RAO m en sajes, e tc ., las cu ales satisfacen la m ayo r
(canal 0 del convertidor) y RAI (canal 1) que co­ p arte de las n ecesid ad es de los u su ario s p ara el
rresponden a los pines 17 y 18 del m icrocontrola­ d e sp lie g u e d e m ensajes.
dor P IC 1 6 C 7 1 1. El voltaje de referencia del con­
vertidor se configura para que corresponda al vol­ La a rq u ite c tu r a de u n m ó d u lo L C D la p o ­
taje de alim entación del microcontrolador. d em o s a p re c ia r en la figura 3 3 .5 ; en e lla p o d e­
m os d is tin g u ir la m e m o ria R A M la cu al está
La m áx im a lectura del convertidor análogo d e stin a d a a a lm a c e n a r la in fo rm a c ió n de los
a d ig ital (OFFH) se obtiene cuando la entrada m e n sajes, éstos p u e d e n esta r en: área v isib le si
análoga sea igual o superior a 5 voltios. D e tal están desde la p o sició n 0 0 H h asta la 0 F H para
m an era, qu e si hacem os la división de 5 voltios la p rim e ra lín e a , ó d esd e la 4 0 H h asta la 4F H
en tre 2 5 5 (F F H ), obtenem os una relación de p ara la se g u n d a lín e a , figura 3 3 .6 . O tro b lo ­
ap ro xim adam en te 2 0 m V p o r un idad. Por ejem ­ q u e es la m e m o ria R O M , en e lla se e n c u e n tra
plo en el caso de la tem peratura, si la entrada g ra b a d a la in fo rm a c ió n n ecesaria de los p u n ­
análoga está en 160 m V (es d ecir 16 ° C ), el valor tos p ara crear los caracteres a lfa n u m é ric o s y
d ig ital qu e en trega el convertidor es 8 (160/20). sím b o lo s (A S C II).

é & c ir : Curso práctico sobre Microcontroladores


Proyectos

P R IN C IP A L E S C A R A C T ER ÍST IC A S

D im ensiones........................................... 84mm X 44mm X 12mm


Área v is ib le .......................................................61,0mm X 15,8mm
Formato de los caracteres.............................Matriz de 5x7 puntos
Reloj de P e s o ............................................................................................25g*
Alim entación.....................................................................+5 voltios
Consum o..................................................7,5m W (equiv. 1=1,5mA)
Bus de transferencia de datos........................................ 8 ó 4 bits
Número de term inales de conexión............................................. 14
Tiempo de encendido típico a 2 5 °C ...................................... 110ms
Tiempo de apagado típico a 2 5 °C ......................................... 110ms

D river
Para m anejar un L C D se requiere de un siste­
m a digital basado en microprocesador, microcon­
trolador o computadora, figura 3 3 .9 . Recordemos
los aspectos fundamentales para el manejo del LCD:

1. Interconexión apropiada con el sistema digital


Esta se consigue interconectando el m ódulo
L C D y el sistem a digital a través del bus de
datos (4 ó 8 líneas) y las señales de control (3
líneas). El control necesita las señales RS, R/W
y E. RS para co m unicar si el dato en el bus es
un carácter A SCII o una palabra de control,
R/W para inform ar si se quiere leer o escribir
F igura 3 3 .5 Diagram a de bloques sim plificado de la arquitectura en el m ódulo y E, para habilitar la operación.
de un m ódulo LCD

Los term inales de conexión pueden variar un 2. Programar el número de bits para el bus de datos
poco entre los distintos m odelos; en la figura 3 3 .7 Esta program ación puede ser en ocho o en
vem os una d istrib ució n típ ica de ellos. La ali­ cuatro bits, la prim era “entra” por defecto (al
m entación del m ódulo se indica en la figura 3 3 .8 , en cender la fuente), esto quiere d ecir que no
el term in al Vo del m ódulo se obtiene de la deri­ necesita program arse. La segunda, en cam bio,
vación del potencióm etro. El voltaje de la fuente requiere de una secuencia cuidadosa recom en­
de alim en tació n y su correcta conexión son críti­ dada por los fabricantes; pero vale la pena,
cos; no se p erm iten errores es este sentido y a que tenien do en cu en ta las cuatro líneas qu e nos
pueden resultar fatales para el L C D . podem os econom izar.

Posición de mem oria de la primera línea Códigos ASCII correspondientes


a los caracteres del mensaje
A R E A V IS IB L E

*'00H 01H 02H 03H 04H 05H 06H 07H 08H 09H OAH OBH OCH ODH OEH OFH
M E D I D 0 R D E
20H 52H 45H 56H 49H 53H 54H 41H 20H 20H 45H 20H 26H 20H 43H 20H

’40H 41H 42H 43H 44H 45H 46H 47H 48H 49H 4AH 4BH 4CH 4DH 4EH 4FH 5 0 H /Í. 5FH
T E M P Y H U M E D
20H 41H 4EH 49H 56H 45H 52H 53H 41H 52H 49H 4FH 20H 23H 33H 20H

Posición de mem oria de la segunda línea


F ig u ra 3 3 .6 Posiciones de m em oria RAM del m ódulo LCD

Curso práctico sobre Microcontroladores


M edidor de humedad y tem peratura

T ER M IN A L s ím b o l o N O M B R E Y FUNCIÓN 3. Programar el modo de operación de la pantalla


1 Vss Tierra, 0V Éste p ued e in clu ir elem entos tales como:
2 VOD Alim entación +5V • A ctiv ar el n ú m e ro d e lín eas q u e se van a
3 Vo Ajuste de voltaje/contraste visualizar en el m ódulo
4 RS Selección control/dato
• M antener el mensaje fijo y desplazar el cursor
5 R/W Lectura/escritura en LCD
6
• Desplazar el mensaje y mantener el cursor fijo
E Habilitación
7 DO B it menos significativo dato 2o • D esplazar a la izquierda o a la derecha, ya
8 D1 B it dato 21 sea el cursor o el m ensaje
9 D2 B it dato 22 • Hacer que el carácter señalado parpadee o no
10 D3 B it dato 23 • E scribir en la p rim era o segun da línea
11 D4 B it dato 24
12 D5 B it dato 25
13 D6 B it dato 26 T odos los có digos de fu n c io n a m ie n to se
14 D7 B it m ás significativo 27 m uestran en la figura 3 3 .1 0 .

F ig u ra 3 3 .7 Terminales de conexión del m ódulo LCD


La figura 3 3 .1 1 muestra los diagramas de tiem­
+5V
po del m ódulo L C D , en ella se observa el ciclo de
escritura de una palabra de control y de un dato.

En el eje y están localizadas las señales de control y
V DD
el bus de datos, y en el eje x se encuentra el tiempo.
10k
M ódulo de
c ris ta l líquido v0 Para escribir una palabra de control, por ejemplo
borrar pantalla, es necesario seguir los siguientes pa­
sos (una vez programado el número de bits del bus):
VS S
¡k

1 • C o lo car RS en bajo, porque se trata de una


F ig u ra 33.8
i A lim entación y contraste
p alab ra de control

+5V +5V +5V +5V +5V +5V


n O
?40 ?2 ?40 Í2 |4 0 ?2
Vcc Vcc Vcc Vcc
J___ 7 2 4
P1.0 P1.0 RS DO RS
____ 5
P1.1 ____ P1.1 R/W D1 3 5 R/W
____ 9 ____ 6 E 4 6 E
P1.2 P1.2 D2
4___ CC o
P1.3
o Q.
5___ 11 o O o
P1.4 o
____ 12 2 '11 III f* 11
P1.5 O ____ 6
P1.4; ^ 04 D4 o
CC
7___ .... ►— ____ 12 7 12
P1.6 P1.5 5 D5 D5 =
Z o
14 O
P1.7 ____ ____ 13 8 13
O P1.6 o 06 D6 f ¡
O 14
CC 9 14
P1.7 £ D7 D7
o
P2.5 ____ _ RS 3
a.
____ _____
P2.6 R /W
P2.7 ____ _____ E

____ t 1 2 L 1
GND GND GND Vss
f—
(a ) (b ) —
(c )

F ig u ra 3 3 .9 Interfaces del m ódulo LCD


a) Con m icrocontrolador a 8 bits , b ) Con m icrocontrolador a 4 bits, c) Con una com putadora

Curso práctico sobre Microcontroladores


Proyectos

SIG N IFIC A D O DE L A S A B R E V IA T U R A S Descripción del programa


En el program a se debe desarrollar la interfaz a 4
.
I/D 1 Increm enta bits con el display de cristal líquido, una sección
— 0 Decrementa que se encarga de leer el convertidor análogo a
S — 1 Desplaza el m ensaje en la pantalla
digital, y u n a sección que convierte el dato hexa­
— 0 M ensaje fijo en la pantalla
D — 1 Encender (activar) la pantalla
decim al obtenido de la conversión, a su equiva­
0 Apagar la pantalla (desactivar) lente en decim al, para ser mostrado en la pantalla.

C — 1 Activar cursor Pasos q u e se d eb en se g u ir p ara h acer u n a c o n ­


— 0 D esactivar cursor
versión A/D:
B 1 Parpadea carácter señalado por el cursor
— 0 No parpadea el carácter
1. Configure los pines del puerto A; los que vayan
S/C = 1 Desplaza pantalla a trabajar como entradas análogas deben ser con­
0 Mueve cursor figurados como entradas en el registro TRISA.
2. C onfigure las entradas análogas y el voltaje
RL — 1 Desplazamiento a la derecha
de referencia (interno o externo) en el regis­
— 0 Desplazamiento a izquierda
DL — 1 Datos de ocho bits
tro A D C O N 1.
= 0 Datos de cuatro bits 3 . Seleccione el canal de entrada en el registro
BF = 1 Durante operación interna del módulo ADCONO.
■ 0 Finalizada la operación interna 4 . S e le c c io n e e l re lo j d e la c o n v e r s ió n en
AD CO N O .
C o lo car R/W en bajo, porque se trata de un 5. E ncienda el convertidor {bit A D O N del re­
ciclo de escritura gistro AD CO N O ) para que se tom e la m ues­
C olocar E en alto para preparar la habilitación tra de la señal análoga
Colocar el dato 00000001 binario en el bus y 6. Si se va a utilizar la interrupción del converti­
mantenerlo hasta cuando se habilite para escribir d o r se debe borrar el b it A D IF del registro
Colocar E en bajo. Este paso es el que finalm en­ AD CO N O y poner “1” en el b it AD IE y el bit
te borra la pantalla que era lo que se pretendía GIE del registro IN T C O N .
C o n tr o l y d a t o S e ñ a l de D A T O /D IR E C C IO N
c o n tr o l D E S C R IP C IO N

IN S T R U C C IO N E S RS RW D7 D6 D5 D4 D3 D2 D1 DO
Lim pia to d o e l display y retom a el cursor a la posición de inicio
B o rra r p a n ta lla 0 0 0 0 0 0 0 0 0 1 (dirección 0)

Retorna e l cursor a la posición de inicio (ere cció n 0). También retom a


0 0
* el display. desplazándolo a la posición original. Los contenidos de la
C u rs o r a c a s a 0 0 0 0 0 0 1
RAM DD perm anecen sin cam bio.
-
Configura la dirección de m ovim iento del cursor y si se desplaza o no
S e le c c io n a r m o d o 0 0 el display. Esta operación es realizada durante operaciones de lectura
0 0 0 0 0 1 1/D 0
y escritura.

0 0 0 0 0 0 1 D C B Configura el estado 0N /0FF de todo el display (D). el cursor (C) y el parpadeo


E n c e n d e r/a p a g a r p a n ta lla
d e l carácter en la posición del cursor.

Mueve e l cu rso r y desplaza e l display sin ca m bia r los contenidos d e la


• •
D e s p la z a r C u rs o r/P a n ta lla 0 0 0 0 0 1 S /C R /L RAM DD.

* • Configura e l ta m a ñ o de la interfaz (DL). e l núm ero de lineas del display (N) y la


A c tiv a r fu n c ió n 0 0 0 0 1 D /L N F
fuente del carácter (F). N = 0 , 1 linea N = 1 , 2 lineas

Ajusta la dirección d e l generador de caracteres. El dato CG RAM es enviado y recibido


CG RAM 0 0 0 1 D ire c c ió n g e n e ra d o r d e RAM después de este ajuste.

A justa la dirección de la RAM DD. La dire cció n es enviada y recibida después de este
D D RAM 0 0 1 D ire c c ió n e s d e d a to s RAM ajuste.

Lectura de la bandera Busy Flag. indicando que operaciones internas son realizadas, y
B a n d e ra d e o c u p a d o 0 0 BF AC
lectura de los contenidos d e l contador de direcciones.

1 0 Escribe datos en la RAM DD o en la RAM CG.


E s c ritu ra CG R A M /D D RAM E s c ritu ra d e D a to

LECTURA C G R A M /D D R A M L e c tu ra d e D a to Lectura de datos desde la RAM DD o la RAM CG


1 l 1

F igura 3 3 .1 0 Conjunto de instrucciones del m ódulo LCD

Curso práctico sobre Microcontroladores m iKSIIT.


Configurar puertos
INICIO
\ /
I I •

Iniciar display a 4 bits

Ubicar “TEMPERATURA"
BUS DATOS ^ V A L ID O en la primera linea

RS
/ 1 ns Ubicar “ HUMEDAD" en
la segunda línea

R /w 4 5 0 n s — ►" ~ ¿ _________________
140ns

E Configurar el convertidor
z y seleccionar canal 0

BU S DATOS
x V Á L ID O
K Activar convertidor y
F igura 33.11 Diagram as de tiem po para lectura y escritura de
tom ar la lectura
datos en un LCD

7. Luego de in iciar el convertidor se hace un


Convertir lectura a
pequeño retardo (para el muestreo)
formato decim al y
8 . Se debe in iciar la conversión m edian te el b it visualizar en LCD en la
1a línea
G O /D O N E del registro AD CO N O .
9. Esperar a que se term ine la conversión proban­
do el estado del bit GO/DONE o esperar el
Configurar el convertidor
cambio en la bandera de interrupción, es decir, y seleccionar canal 1
probando el b it ADIF del registro ADCONO.
10. El resultado se debe leer en el registro AD RES
11. Borrar el b it A D IF Activar convertidor y
tom ar la lectura

En la figura 3 3 .1 2 observam os el d iagram a


de flujo del program a. H agam os un breve a n áli­
Convertir lectura a
sis de sus partes.
formato decim al y
visualizar en LCD en la
2a línea
En el p rim er bloque del program a (etiqueta
IN IC IO ), adem ás de configurar los puertos, se
p ro g ra m a n los p in es RAO/ANO y RAI/ANO
Retornar a MIDE
com o entradas análogas. El bloque qu e in icia con
la etiq u eta BEG IN se encarga de ubicar en la
p an talla el m ensaje de tem peratura en la prim era F igura 33.12 Diagram a de flu jo del program a
lín ea y el de h um ed ad en la segun da línea.
p o n er el b it A D IF en “0 ” y d e p o n e r el b it
La p arte d el p ro g ra m a q u e in ic ia co n la A D O N d el registro A D C O N O en “ 1”, antes
e tiq u e ta M ID E se en carg a de c o n fig u ra r la ve­ de em p ez ar la conversión; luego se hace un re­
lo c id a d del c o n v e rtid o r an álo g o a d ig ita l, de tardo. El trabajo del convertidor se inicia cuando

€ E M ttT. Curso práctico sobre Microcontroladores


Proyectos

el b it A D C O N O ,G O se p o n e en “ 1”, n u e v a ­
PARA SABER MÁS:
m e n te se hace u n p e q u e ñ o retardo. P ara saber
La h u m ed ad relativa
si el c o n v e rtid o r ha te rm in a d o , se p ru eb a el
La humedad en el aire es una medida de la can­
estad o d el b it lla m a d o A D C O N O ,A D IF.
tidad de vapor de agua que éste contiene. A
cualquier temperatura el aire se mantendrá ab­
U na vez qu e se está seguro de tener el dato
sorbiendo agua hasta que toda se haya evapo­
d ig ital qu e resulta de la conversión, éste se p u e­
rado o hasta que el aire llegue a su estado de
de leer del registro A D R E S y se debe dup licar
saturación.
antes de enviarlo a la p an talla. C o m o este nú­
mero se encuentra en hexadecim al, se debe u tili­
Que el aire se encuentre saturado significa que
zar una ru tin a qu e se en cargue de convertirlo a
no se llevará a cabo más evaporación debido a
su equivalen te decim al. Esto se hace m edian te la
que está copada su capacidad de agua, a me­
ru tin a D E C IM A L , la cual devuelve el valor o b ­
nos que se eleve la temperatura.
tenido en los registros C E N T E N A , D E C E N A
y U N ID A D . A estos datos se les su m a el valor
H u m ed ad re la tiv a
3 0 H para convertirlos en su equivalen te ASCII
La humedad relativa es una forma muy apro­
antes de enviarlos a la p an talla. Este proceso se
piada de expresar la cantidad de vapor de agua
repite para cada un o de los canales, los cuales se
contenida en un volumen de aire. Se define
seleccio nan m ed ian te registros; en las figuras
como el porcentaje de masa de vapor de agua
3 3 . 1 3 y 3 3 . 1 4 se m u e s t r a n lo s r e g is tr o s
presente en al aire respecto a la masa requeri­
AD CO N O y A D C O N l. En la figura 3 3 .1 5 se
da para producir saturación a la misma tempe­
m uestra el código fuente del program a.
ratura. Cuando el aire está saturado la hume­
dad relativa es del 100%.
C o n este proyecto dam os por finalizada la
sección de proyectos de este curso. Esperamos
Para que el ser humano se encuentre climáti­
haber cu m p lid o con sus expectativas y haber de­
camente cómodo en un sitio determinado, la
sarrollado proyectos qu e les sean'de m u ch a u tili­
humedad relativa allí debe estar en el intervalo
dad en sus actividades profesionales. El aspecto
entre 45 y 6 5 % . Por eso la medición de la hu­
m ás sobresaliente de estos productos es qu e el
medad es una variable que debe ser controla­
lector m ism o los puede co n struir debido a que
da tanto en edificios industriales como en sitios
los códigos fuentes se en cuentran a disposición
de trabajo.
de todos nuestros lectores y alum nos.

7 6 5 4 3 2 1 PCFGO
ADCONO
(Para el PIC16C711)
Registro
ADC0N1
ADON: 1 Convertidor opera
0 Convertidor no opera
B its de configuración
ADIF: Bandera que indica fin del conversor A/D
de conversión

GO/DONE: Bit de estado de PC FG <1:0> RAO RA1 RA2 RA3 REF


ADVS1: ADCSO: Selección del reloj
la conversión
0 0: F0SC/2
Si AD0N1: 00 A A A A V dd
0 1: FOSC/8
1 0: FOSC/32 1: conversión en progreso 01 A A A V ref RA3
1 1: Frc (derivado del oscilador RC)
0: conversión no está en 10 A A D D V dd
progreso
11 D D D D V dd
CHS1: CHS1: Selección del canal
0 0: canal 0 (RA0/AN0)
0 1: canal 1 (RA1/AN1)
1 0: canal 2 (RA2/AN2)
1 1: canal 3 (RA3/AN3)
F ig u ra 3 3 .1 3 Registro ADCONO F igura 33.14 Registro ADCON1

Curso práctico sobre Microcontroladores


V’ m >. \V.;
Yl
Medidor de humedad y tem peratura

CURSO P R A C T IC O SOBRE M ICRO CO NTRO LADO RES

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * PROYECTO M E D ID O R DE HUMEDAD Y TEM P E R A TU R A
U T I L I Z A UN MÓDULO LCD DE 2 L Í N E A S 1 6 CARACTERES

****** ********
p ic l6 F 7 1 1
****** *******
wdt = o ff
****** *******
ose = x t
****** ******
c p = on

* * * * * * * d e fin ic io n e s ********
in d f equ 0h ;p a ra d ire c c io n a m ie n to in d ire c to
tm ro equ lh ; c o n ta d o r de tie m p o r e al
PC equ 2h ; c o n ta d o r de p ro g ra m a
s ta tu s equ Bh ; r e g is t r o de e s ta d o s y b its de c o n tro l
fs r equ 4h js e le c c c ió n de bancos d e m e m o ria y r e g i s t r o s
p to a equ 5h ;p u e rto s
p to b equ 6h
adcon0 equ 8h ; re g is tro s del c o n v e rtid o r a /d
adconl equ 88h
a d re s equ 9h
tris a equ 85h ; p ro g ra m a c ió n de lo s re g is tro s
tris b equ 86h
r0 c equ 0ch
r0 d equ 0dh
r0 e equ 0eh
u n id a d equ 10h
decena equ llh
c e n te n a equ 12h
rl4 equ 14h
rlb equ lb h
ju a n equ lc h

» ----------- b it s espe
;b its d e l r e g is tr o s ta tu s
rp 0 equ 5h ; s e le c c ió n de p á g in a
z equ 2h ; b a nd e ra de c e ro
c equ 0h ; b a nd e ra de c a r r y

w equ 0h ;p a ra a lm a c e n a r en w
r equ lh ;p a ra a lm a c e n a r e n e l m is m o r e g i s t r o
p c fg 0 equ 0 ;b its d e l re g is tro adconl
p c fg l equ 1
a d if equ lh ;b its del re g is tro adconQ
go equ 2h

; p in e s d e l p u e rto a
e equ lh
rs equ 0h

****** ************
t
9 p ro g ra m a p r in c ip a l

o rg 00 ;v e c to r de re s e t
g o to in ic io ;v a a i n i c i a r p ro g ra m a p r in c ip a l
o rg 05h

re ta rd o m o v lw 0 ffh
m ovwf rlb
d e cre d e c fs z rlb ,r
g o to d e cre
re tlw 0

re ta r2 m o v lw 0 ffh
m ovwf rl4
d e cr2 c a li re ta rd o
c a li re ta rd o
d e c fs z rl4 , r
g o to d e cr2
re tlw 0

. * * * * * * * * * * * * * * * * * * * * ru £
d e c im a l c lrf decena ; b o rra r r e g is tr o s de tr a b a jo
c lrf c e n te n a
m o v lw d ’ 100'

4 % ¿Si ¥ f

Curso práctico sobre Microcontroladores


Proyectos

o tra subwf u n id a d ,r ; r e s ta r 100 a l v a lo r i n i c i a l


b tfs s s ta tu s ,c ;v e r ific a e l ca rry
g o to su m ; s i es c e ro d e ja de r e s t a r 100
in c f c e n te n a ; s i es 1 in c re m e n ta c e n te n a
g o to o tra ;v o lv e r a re s ta r
sum addwf u n id a d ; s u m a rle 100
m o v lw d ’ 10*
re p ite subwf u n id a d ; r e s ta r 10 a l v a lo r
b tfs s s ta tu s ,c ¿ v e rific a e l c a rry
g o to sum í ; s i es 0 d e ja de r e s ta r
in c f decena ; s i es 1 in c re m e n ta decena
g o to re p ite
sumí addwf u n id a d ¿ s u m a rle 10 a l v a l o r
re tlw 0 ¿el v a l o r de l a c o n v e r s ió n b i n a r i o a d e c im a l
¿ se d e v u e l v e e n l o s r e g i s t r o s c e n t e n a ,
¿decena y u n id a d
; * * * * * * * * * * * * * * * * * * * * * r u t i n a d e c o n t r o l d e l ************************************************
bcf p to b ,rs ¿ e s ta r u t i n a g e n e ra l a s s e ñ a le s de c o n t r o l
g o to d a to ¿ ¿para e s c r i b i r en e l m o d u lo l e d y
d a to bsf p to b ,rs ¿ e n tre g a e l d a to que v a a s e r m o s tra d o en l a
¿ p a n ta lla
d a to 2 bsf p to b ,e ¿ u tiliz a la in te rfa z a 4 b its
m ovwf r0e
m o v lw 0 fh
andwf p to b , r
m ovf r0 e ,w
a n d lw 0 f0 h
io rw f p to b , r
c a li re ta rd o
bcf p to b ,e
c a li re ta rd o

bsf p to b ,e
m o v lw 0 fh
andwf p to b , r
swapf r0 e ,w
a n d lw 0 f0 h
io rw f p to b , r
c a li re ta rd o
bcf p to b ,e
c a li re ta rd o
re tlw 0
. * * * * * * * * * * * * * * * * ** ** ** ** ** ** ** e n e s t a t a b l a
* * * * * * * * *
addwf
re tlw
re tlw
uu
p c ,r

“ H”
s e a lm a c e n a n l o s c a r a c t e r e s q u e s e m u e s tr a n e n e l t C D * * * * * * * * * *
; m e n s a je que se m u e s tra

re tlw “ U”
re tlw “ M”
re tlw
re tlw “ D”
re tlw “ A”
« D»
re tlw
re tlw
re tlw
re tlw
« «
u
ii
u
ii
ii ii
re tlw
ii ii
re tlw
re tlw
re tlw « ii
U ii
re tlw
¿ m e n s a je d e l a segunda lín e a

re tlw
re tlw i€£99
re tlw “ M”
re tlw « p»
re tlw «£*»
re tlw “ R”
re tlw “ A”
re tlw ay»
re tlw “ U”
re tlw
re tlw
re tlw
re tlw
“ R”
“ A”
(C
«
uu
re tlw (( ii

C urso p rá c tic o so b re M ic ro co n tro la d o re s 5 .A .


Medidor de humedad y temperatura

« U
re tlw
re tlw UC"
re tlw 0
. * * * * * * * * * * * * * * * * * * * * * p r 0 g ram a p r i n c i p a l * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

inicio bsf s ta tu s ,rp 0 s e le c c io n a r p á g in a 1


m o v lw 0 ffh c o n f i g u r a p t o a com o e n t r a d a s
m ovwf tris a
bef a d c o n l,p c fg l c o n fig u ra r a 3 com o v o l t a j e d e r e f e r e n c i a
bef a d c o n l,p c fg 0 y ra 0 -ra 2 como e n t r a d a s a n á lo g a s
m o v lw 0ch c o n fig u ra p to b
m ovwf tris b
bef s ta tu s ,rp 0 v u e lv e a p á g in a 0

b e g in m o v lw 02h ;in ic ia d is p la y a 4 b it s
c a li c o n tro l
m o v lw 28h ¡d is p la y a 4 b it s y 2 lin e a s
c a li c o n tro l
m o v lw 0ch ;a c tiv a d is p la y y d e s a c tiv a cu rso r
c a li c o n tro l
m o v lw 06h ; s e le c c io n a e l modo de d e s p la z a m ie n to
c a li c o n tro l

b la n k m o v lw 01h ¡b o rra d is p la y y c u rs o r a casa


c a li c o n tro l
m o v lw 0 ; in ic ia c o n ta d o r de c a ra c te re s
m ovwf r0 c
c ic lo m ovf r0 c ,w ;h a c e b a r r id o de l a ta b la l
c a li ta b la
c a li d a to
m o v lw 0 5 fh ¡re ta rd o e n tre c a ra c te re s
m ovwf r0 d
re ta l c a li re ta rd o
d e c fs z r0 d ,r
g o to re ta l
in c f r0 c ,r ¡s ig u e con la ta b la
m o v lw 10h
subwf r0 c ,w ¡p re g u n ta s i e s tá m o s tra n d o e l m e n s a je de l a
b tfs s s ta tu s ,c ¡segunda lin e a
g o to c ic lo

m o v lw 10h p re g u n ta s i es l a p rim e ra ve z que e n tr a


xo rw f r0 c ,w a la segunda lin e a p a ra i r a i n i c i a r
b tfs s s ta tu s ,z e l p u n t e r o d e l a ram d e l m ó d u lo l e d
g o to lin e 2

lin e a 2 m o v lw 0c0h ¡ u b i c a p u n t e r o d e l a ram d e l m ó d u lo l e d


c a li c o n tro l ¡e n l a segunda lin e a
lin e 2 m o v lw 20h ¡p re g u n ta s i te rm in ó l a segunda lín e a
xo rw f r0 c ,w ¡ p a r a i r a i n i c i a r de n u e v o e l m e n s a je o
b tfs s s ta tu s ,z ¡ p a r a c o n t i n u a r en l a s e g u n d a p a r t e d e l m e n s a je
g o to c ic lo

m id e m o v lw 080h ¡ u b i c a p u n t e r o d e l a ram d e l m ó d u lo l e d
c a li c o n tro l ¡e n l a segunda lin e a
¡s e h ace l a c o n v e rs ió n a n á lo g o a d i g i t a l
m o v lw b *01000000* ¡ c o n fig u r a e l c o n v e r tid o r , s e le c c io n a c a n a l 0
m ovwf adcon0 ¡ v e lo c id a d de c o n v e rs ió n y a c tiv a e l c o n v e r tid o r
¡ a d if= 0 a n te s de em pezar l a c o n v e rs ió n

bsf a d c o n 0 ,0

m o v lw 0 fh
m ovwf rlb
dec d e c fs z rlb ,r
g o to dec
bsf a d c o n 0 ,g o ¡em pezar l a c o n v e rs ió n
m o v lw 0 fh
m ovwf rlb
de2 d e c fs z rlb , r
g o to de2
consu nop *

b tfs s a d c o n 0 ,a d if ¡p re g u n ta fin de c o n v e rs ió n

¥
é& C / T . Curso práctico sobre Microcontroladores
Proyectos

g o to consu ;si no ha te rm in a d o s ig u e e sp e ra n d o
bcf a d c o n 0 ,0
bcf a d c o n 0 ,a d if ja p a g a e l c o n v e r t i d o r
m o v lw b *00111001' ;e n l a c a l i b r a c i ó n se d ebem o d if ic a r e s t e * * * * * * * * * * *
m ovwf ju a n ; v a l o r . V e r n o ta f i n a l d e le n s a m b la je . ***********
m ovf a d re s ,w ; s i te rm in ó de c o n v e r t ir debep a sa r
subwf ju a n ,l
m ovf ju a n ,w
m ovwf u n id a d
addwf u n id a d ,r jd u p lic a r e l v a lo r le id o
c a li d e c im a l ; c o n v e r t i r e l d a t o b i n a r i o ad e c im a l
m o v lw 8ah ; u b ic o p u n t e r o d e ram d o n d e v a e l n ú m e ro le id o
c a li c o n tro l
m ovf c e n te n a ,w jp rim e r d ig it o = c e n te n a s
a d d lw 30h
c a li d a to
m o v lw 8bh ; u b ic o p u n te ro d e ram d o n d e v a e l n ú m ero le id o
c a li c o n tro l
m ovf d e c e n a ,w ; segundo d í g it o = decenas
a d d lw 30h
c a li d a to
m o v lw 8ch ; u b i c o p u n t e r o d e ram d o n d e v a e l n úm ero le id o
c a li c o n tro l
m ovf u n id a d ,w ; segundo d íg ito = u n id a d e s
a d d lw 30h
c a li d a to
c a li re ta r2
c lrf a d re s
NOP
NOP
m o v lw 0c0h ; u b ic a p u n t e r o d e l a ram d e l m ó d u lo l e d
c a li c o n tro l ;e n l a segunda lí n e a
;s e h a ce l a c o n v e r s ió n a n á lo g o a d i g i t a l
m o v lw b ’ 01001000' ; c o n fig u ra e l c o n v e r tid o r , s e le c c io n a c a n a l
m ovwf adcon0 ; v e lo c id a d de c o n v e rs ió n y a c t iv a e l c o n v e rtid o r
;a d if= 0 a n te s de em pezar l a c o n v e rs ió n
bsf a d c o n 0 ,0
m o v lw 0 fh
m ovwf rlb
dec2 d e c fs z rlb ,r
g o to dec2
bsf a d c o n 0 ,g o ; em pezar la c o n v e rs ió n
m o v lw 0 fh
m ovwf rlb
de22 d e c fs z rlb ,r
g o to de22
cónsul nop ;
b tfs s a d c o n 0 ,a d if ;p re g u n ta f i n de c o n v e rs ió n
g o to cónsul ; s i no ha te rm in a d o s ig u e e s p e ra n d o
bcf a d c o n 0 ,0
bcf a d c o n 0 ,a d if ;a p a g a e l c o n v e r t id o r
m ovf a d re s ,w ; s i te rm in ó de c o n v e r t ir , debe pasar
m ovwf u n id a d
addwf u n id a d ,r jd u p lic a r e l v a lo r le id o
c a li d e c im a l ; c o n v e r t i r e l d a to b i n a r i o ad e c im a l
m o v lw 0cch ; u b i c o p u n t e r o d e ram d o n d e v a e l n úm ero l e i d o
c a li c o n tro l
m ovf c e n te n a ,w jp rim e r d í g it o = c e n te n a s
a d d lw 30h
c a li d a to
m o v lw 0cdh ju b ic o p u n te ro de ram d o n d e v a el n úm ero l e i d o
c a li c o n tro l
m ovf d e c e n a ,w ; segundo d íg ito = decenas
a d d lw 30h
c a li d a to
m o v lw 0ceh ; u b ic o p u n te ro de ram d o n d e v a el n úm ero l e i d o
c a li c o n tro l
m ovf u n id a d ,w js e g u n d o d í g i t o = u n id a d e s
a d d lw 30h
c a li d a to
c a li re ta r2
c lrf a d re s
g o to m id e jte rm in a
end

F igura 3 3 .1 5 Código fuente d e l program a

á *
Curso práctico sobre Microcontroladores é e n /n 31
Medidor de humedad y temperatura

Ensamblaje del proyecto LISTA DE MATERIALES


C ant Referencia Descripción
F ig u ra 33.16 1 IC1 C irc u ito in te g ra d o te m p o n z a d o r 5 5 5
C onjunto de 1 IC 2 C irc u ito in te g ra d o L M 2 9 1 7 N
1 IC 3 C irc u ito in te g ra d o s e n s o r d e te m p e ra tu ra L M 3 5
com ponentes 1 IC 4 C irc u ito in te g ra d o a m p lific a d o r o p e ra c io n a l L M 3 5 8
electrónicos y los 1 IC 5 M ic ro c o n tro la d o r P IC 1 6 C 7 1 1 , p ro g ra m a d o
1 REG1 R e g u la d o r fijo d e + 5 V , 7 8 0 5
accesorios que se P u e n te r e c tific a d o r c ir c u la r d e 1 A . W 0 4 M
D is p la y d e c r is ta l liq u id o d e 2 fila s X 2 0 c a ra c te re s
requieren para S e n s o r c a p a c itiv o d e h u m e d a d
ensam blar el C o n d e n s a d o re s c e rá m ic o s d e 0 ,1 u F - 5 0 V
C o n d e n s a d o r c e r á m ic o d e 0 ,0 0 1 u F - 5 0 V
m edidor de hum edad C o n d e n s a d o r e le c tr o lític o d e 1 u F - 1 6 V
C o n d e n s a d o r e le c tr o lític o d e 1 0 0 u F - 2 5 V
y tem peratura, CEKIT C o n d e n s a d o re s c e rá m ic o s d e 2 2 p F - 5 0 V
K-340. C o n d e n s a d o r e le c tr o lític o d e 4 7 0 u F - 2 5 V
C o n d e n s a d o r e le c tr o lític o d e 1 0 u F - 2 5 V
C n s ta l d e c u a r z o d e 4 M H z
D1 D io d o r e c tific a d o r rá p id o 1 N 4 1 4 8
El conocim iento de la hum edad y la tem peratura determ inan en R1 y R2 R e s is te n c ia s d e 1 M - 1 /4 W
R3 R e s is te n c ia d e 4 7 0 - 1 /4 W
m uchos casos las condiciones de trabajo en recintos, salones, R4 R e s is te n c ia d e 1 0 k - 1 /4 W
R5 R e s is te n c ia d e 8 2 k - 1 /4 W
invernaderos y en algunos procesos industríales de secado y R6 R e s is te n c ia d e 4 7 k - 1 /4 W
R7
em paque. Por medio del m edidor de temperatura y humedad K-340 R e s is te n c ia d e 1 k - 1 /4 W
P1 T n m m e r re s is tiv o d e 1 0 0 k
se pueden m e d ir y visualizar, con buena precisión estas dos P2 R e o s ta to d e 5k
S1 P u ls a d o r p e q u e ñ o d e 4 p in e s p a ra c irc u ito im p re s o
m agnitudes físicas. Para e l ensamblaje de la tarjeta tenga en J1 C o n e c to r d e a lim e n ta c ió n C A /C C
cuenta los siguientes pasos: J2 C o n e c to r e n lín e a d e 1 4 p in e s M /H
K -3 4 0 C ir c u ito im p r e s o C E K IT
B a s e s p a ra c irc u ito s in te g ra d o s d e 8 p in e s
B a s e p a ra c ir c u ito in te g r a d o d e 14 p in e s
B a s e p a ra c ir c u ito in te g r a d o d e 18 p in e s
C a b le p la n o rib b o n d e 14 h ilo s (3 0 c m )

Paso 4
Paso 1 Aspecto final de la tarjeta princip al
Instale y suelde los puentes de con sus circuitos integrados, luego de
alam bre, las resistencias (R1 a R7) y instalar y soldar los condensadores
e l diodo 1N4148(D1). electrolíticos, e l crista l de cuarzo, el
F ig u ra 33.17 conector del LCD y los sensores de
hum edad y tem peratura.
F ig u ra 33.20

Paso 2 Paso 5
Luego instale y suelde las bases para Aspecto fin al del circuito m edidor de hum edad y tem peratura,
los circuitos integrados, e l puente conectado con el display de crista l líquido.
rectificador circu la r BR1 y el F ig u ra 33.21
regulador de voltaje integrado 7805.
F ig u ra 33.18

Paso 3
Instale y suelde los condensadores
cerám icos, e ltrim m e r(P I), el Paso 6. Pruebas finales
reóstato P2, e l pulsador del reset S1 Para calibrar la tem peratura leída utilice un term óm etro
y e l conector de alim entación J1. convencional com o patrón y ajuste la lectura m ediante e l trim m er
(P1). La lectura de la hum edad debe calibrarse con un higróm etro
F ig u ra 33.19
y ajustarse m ediante e l program a, m odificando e l registro ju a n
(ver código del pro gram a)."

Curso práctico sobre Microcontroladores


Proyectos

INDICE GENERAL

INTRODUCCIÓN...........................................................................................................1 9 P r o g r a m a d o r “ In c ir c u it ” d e m i c r o c o n t r o l a d o r e s P I C 75
P roy ectos c o n m i c r o c o n t r o l a d o r e s ....................................................... 1 C a r a c t e r í s t i c a s ................................................................................................ 7 6
M e t o d o l o g í a .................................................................................................... 2 In sta la c ió n del so ftw a re y g u ía r á p id a d e p r o g r a m a c i ó n 79
R e c o m e n d a c ió n i m p o r t a n t e ................................................................... 4 S e le c c io n a r el tip o d e P I C ....................................................................... 8 0
N o t a para los a lu m n o s q u e se inician en el t e m a ........................... 4 L eer P I C ........................................................................................................... 8 0
S e le c c ió n d e l tip o d e m i c r o c o n t r o l a d o r ............................................. 8 M o strar b u ffe r ......................................................................................... 81
1 L e c t o r b in a r io d e 4 b its ................................................................................. 9 P r o g ra m a c ió n del m i c r o c o n t r o l a d o r ................................................... 81
F u n c i o n a m i e n t o ............................................................................................ 10 Panel d e p r u e b a s d e l h a r d w a r e ............................................................... 8 4
M e m o r ia R A M ............................................................................................. 12 E n s a m b la je del p r o y e c t o ............................................................................ 88
D e sc r ip c ió n del p r o g r a m a ........................................................................ 12 10 P u n ta l ó g i c a .................................................................................................... 8 9
E n sa m b la je del p r o y e c t o ............................................................................ 16 F u n c io n a m ie n t o g e n e r a l ........................................................................... 9 0
2 C o n t a d o r d e c i m a l d e p u l s o s .......................................................................1 7 D ia g r a m a e s q u e m á t i c o .............................................................................. 91
F u n c i o n a m i e n t o ............................................................................................ 18 D e s c r ip c ió n del p r o g r a m a ....................................................................... 9 2
C ir c u it o d e r e l o j ............................................................................................ 19 R u tin a d e i n t e r r u p c ió n .............................................................................. 95
E l d e c o d if ic a d o r d e siete s e g m e n t o s ..................................................... 2 0 E n s a m b l a je del p r o y e c t o ............................................................................ 9 6
El c irc u ito e lim in a d o r d e r e b o t e s ........................................................... 2 0 11 P r o g r a m a d o r d e m e m o r i a s s e r i a l e s ................................................... 9 7
D e sc r ip c ió n del p r o g r a m a ........................................................................ 2 0 D e sc r ip c ió n d e las m e m o r ia s seriales E E P R O M .......................... 9 8
L a s u b r u t in a d e r e t a r d o ............................................................................. 2 3 S e c u e n c ia d e o p e r a c ió n d e las m e m o r i a s ........................................... 9 9
E n s a m b la je del p r o y e c t o ............................................................................ 2 4 D e s c r ip c ió n del c i r c u i t o ............................................................................ 99
3 S e c u e n c i a d o r d e 8 c a n a l e s ......................................................................... 2 5 R u tin a s p a ra la p r o g r a m a c ió n y le ctu ra desde
F u n c io n a m ie n t o ...............................................................................................2 6 la c o m p u t a d o r a (en le n g u a je C ) ........................................................... 100
C o n f ig u r a c ió n del s i s t e m a ........................................................................ 2 7 S tart y stop d e la m e m o r ia 2 4 L C X X .................................................... 1 0 0
D e sc r ip c ió n d e l p r o g r a m a ........................................................................ 2 7 R e c o n o c im ie n t o en las m e m o r ia s 2 4 X X .......................................... 101
E l byte d e p o t e n c i a ....................................................................................... 31 L e c tu r a y e scritu ra d e lo s d a t o s en fo r m a s e r i a l ............................. 103
E n s a m b la je del p r o y e c t o ............................................................................ 3 2 L e c tu ra d e d a t o s en m e m o r ia 2 4 X X ................................................... 1 0 3
4 A la r m a p a r a el h o g a r .................................................................................... 3 3 E n s a m b la je del p r o y e c t o ........................................................................... 104
F u n c i o n a m i e n t o ............................................................................................ 3 4 12 G e n e r a d o r d e m e l o d í a s ............................................................................. 1 0 5
S e ñ a liz a c ió n d e l s is te m a ............................................................................ 3 5 F u n c i o n a m i e n t o ............................................................................................ 1 0 6
El m i c r o c o n t r o l a d o r .................................................................................... 3 6 D e s c r ip c ió n del p r o g r a m a ....................................................................... 1 0 7
A r q u ite c tu r a in tern a del 6 8 H C 9 0 8 J K 3 y m o d e lo E n s a m b la je del p r o y e c t o ............................................................................ 1 12
d e p r o g r a m a c i ó n ........................................................................................... 3 6 13 R elo j d ig it a l c o n P I C .................................................................................... 1 1 3
M a p a d e m e m o r i a ........................................................................................ 3 7 D e sc r ip c ió n del c i r c u i t o ........................................................................... 1 14
D e sc r ip c ió n del p r o g r a m a ........................................................................ 3 7 F u n c i o n a m i e n t o ............................................................................................ 116
L a r u tin a d e re ta rd o .................................................................................... 3 9 D e s c r ip c ió n del p r o g r a m a ....................................................................... 117
E n s a m b l a je del p r o y e c t o ............................................................................ 4 0 E n s a m b la je del p r o y e c t o ........................................................................... 120
5 A v iso lu m in o s o c o n d io d o s L E D .............................................................. 41 14 M i c r o t e m p o r i z a d o r ...................................................................................... 1 2 1
F u n c i o n a m i e n t o ............................................................................................ 4 2 D e s c r ip c ió n del c i r c u i t o ............................................................................ 122
E fe c to s g r á f i c o s ............................................................................................. 4 3 E t a p a d e sa lid a d e p o t e n c i a ...................................................................... 122
D e s c r ip c ió n del p r o g r a m a ..........................................................................4 4 E t a p a d e e n t r a d a s ......................................................................................... 122
L a r u tin a D isplay D i b u j o .......................................................................... 4 6 B a se d e t i e m p o ............................................................................................... 122
R e c o m e n d a c io n e s p a ra el m o n t a j e ....................................................... 4 6 D e s p lie g u e d e i n f o r m a c i ó n ...................................................................... 122
E n s a m b la je del p r o y e c t o ............................................................................ 4 8 F u n c i o n a m i e n t o ............................................................................................ 122
6 C o n t a d o r d e e v e n t o s ..................................................................................... 4 9 D e s c r ip c ió n del p r o g r a m a ....................................................................... 124
F u n c i o n a m i e n t o ............................................................................................ 5 0 E n s a m b la je del p r o y e c t o ........................................................................... 1 28
M a n e jo d e displays d e siete s e g m e n t o s ............................................... 51 15 C ontrol d e a p a r a t o s v ía t e l e f ó n i c a ...................................................... 1 2 9
D e sc r ip c ió n del p r o g r a m a . C o n c e p t o d e m a c r o ............................ 5 2 El s is te m a d e se ñ alizació n D T M F ....................................................... 130
E n sa m b la je del p r o y e c t o ............................................................................ 5 6 D e s c r ip c ió n d e l c i r c u i t o ............................................................................ 131
7 D e c o d if ic a d o r d e t e c l a d o h e x a d e c i m a l ................................................5 7 El d e c o d if ic a d o r d e to n o s M T 8 8 L 7 0 ................................................ 131
F u n c i o n a m i e n t o ............................................................................................ 5 8 F u n c i o n a m i e n t o ............................................................................................ 132
M a n e jo d e te c la d o s ..................................................................................... 58 O p e r a c i ó n ........................................................................................................ 134
E x p lic a c ió n d e l p r o g r a m a ......................................................................... 6 0 D e sc r ip c ió n del p r o g r a m a ....................................................................... 135
E n s a m b la je del p r o y e c t o ............................................................................ 6 4 E n s a m b la je del p r o y e c t o ........................................................................... 1 3 6
8 S is te m a d e d e sa rro llo p ara m icro co n tro lad o res 16 A n a liz a d o r ló g ic o c o n P C .......................................................................... 1 3 7
M o to ro la M C 6 8 H C 9 0 8 J K 3 / J K 1 .................................................................6 5 F u n c i o n a m i e n t o ............................................................................................ 138
F u n c i o n a m i e n t o ............................................................................................ 6 6 D e s c r ip c ió n del c i r c u i t o ........................................................................... 139
P ru eb as in iciales d e la t a r j e t a .................................................................. 6 8 C o n s t r u c c i ó n ................................................................................................. 141
Software d e d e s a r r o l l o ................................................................................... 6 8 P r o g r a m a ......................................................................................................... 142
P ro g ram a e j e m p l o ........................................................................................ 7 0 P ru eb as fin ales d e la t a r je t a ...................................................................... 142
E n s a m b la je del p r o y e c t o ............................................................................ 7 4 E n s a m b l a je del p r o y e c t o ............................................................................ 144

C urso p rá c tic o so b re M ic ro co n tro la d o re s S .A .


17 C o n t r o l d i g i t a l d e t e m p e r a t u r a .....................................................................1 4 5 26 R e g i s t r a d o r d e d a t o s en 1 2 b it s .............................................................241
F u n c i o n a m i e n t o .................................................................................................... 1 4 9 F u n c i o n a m i e n t o ............................................................................................ 2 4 2
E n s a m b l a j e ................................................................................................................ 1 5 2 D e s c r ip c ió n del c i r c u i t o ............................................................................ 2 4 2
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 1 5 5 O p e r a c ió n del s i s t e m a ................................................................................ 2 4 5
18 F r e c u e n c í m e t r o d i g i t a l ....................................................................................... 1 5 7 O p e r a c ió n d e l A D S 7 8 1 2 .......................................................................... 2 4 6
F u n c i o n a m i e n t o .................................................................................................... 1 5 8 E n s a m b l a je d e l p r o y e c t o .................................................... 248
L e c t u r a d e lo s d isp la ys ........................................................................................ 158 27 L u c e s r í t m i c a s ................................................................................................. 2 4 9
D e s c r i p c i ó n d e l c i r c u i t o .................................................................................. 1 5 8 F u n c i o n a m i e n t o ............................................................................................ 2 5 0
D e s c r i p c i ó n d e l p r o g r a m a .............................................................................. 161 D e sc r ip c ió n del c i r c u i t o ............................................................................ 2 5 0
P r u e b a s d e l a t a r j e t a ................................................................................. 163 E t a p a d e p r e a m p l i f i c a c i ó n ........................................................................ 2 5 0
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 1 6 8 D e s c r ip c ió n del p r o g r a m a ........................................................................ 2 5 3
19 T e c l a d o 4 x 4 c o n s a l i d a s e r i a l ........................................................................1 6 9 E n s a m b l a je del p r o y e c t o ............................................................................ 2 5 6
A p l i c a c i o n e s ............................................................................................................. 1 7 0 28 H e r r a m ie n t a s d e d e s a r r o l lo p a r a B A SIC S t a m p 1...........................2 5 7
F u n c i o n a m i e n t o ................................................................................................... 171 T a rje ta p a ra d e sa rro llo d e p r o t o t ip o s para B A S I C
P r o g r a m a d e l m i c r o c o n t r o l a d o r .................................................................. 1 7 2 S t a m p I. C E K I T K - 1 8 9 .......................................................................... 2 5 8
P r o g r a m a d e p r u e b a c o n u n a c o m p u t a d o r a ....................................... 1 7 5 E x p e r im e n t a n d o c o n la tarjeta d e p r o t o t i p o s ................................. 2 5 8
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 1 7 6 E n s a m b la je del p r o y e c t o ............................................................................ 2 6 0
20 A l a r m a p a r a e l a u t o m ó v i l ................................................................................ 1 7 7 E n s a m b la je d e u n e je rc ic io en la ta rje ta d e p r o t o t i p o s ................ 261
F u n c i o n a m i e n t o .................................................................................................... 1 7 8 E n t r e n a d o r p a ra B A S I C S t a m p I. C E K I T K - 1 9 0 ...................... 2 6 2
D e s c r i p c i ó n d e l c i r c u i t o .................................................................................. 1 8 0 29 T a r je ta p a r a p r o t o t ip o s c o n B A SIC S t a m p I I ....................................2 6 5
D e s c r i p c i ó n d e l p r o g r a m a .............................................................................. 1 8 0 D e sc r ip c ió n g e n e r a l ..................................................................................... 2 6 6
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 1 8 4 C a r a c t e r í s t i c a s ................................................................................................ 2 6 6
21 C o n t r o l I/O d e p o t e n c i a p o r e l p u e r t o s e r i a l .......................................1 8 5 E n s a m b l a je ....................................................................................................... 2 6 6
C a r a c t e r í s t i c a s d e l p r o g r a m a ......................................................................... 1 8 6 P ru eb as d e p r o g r a m a c i ó n ......................................................................... 2 6 8
E l s i s t e m a c o n s t a d e : .......................................................................................... 1 8 6 E n s a m b la je d e la tarjeta d e p r o t o t i p o s ............................................... 2 6 8
F u n c i o n a m i e n t o .................................................................................................... 1 8 6 E n t r e n a d o r p a ra m ic r o c n tro la d o r e s B A S I C S t a m p I I ................. 2 6 8
P r o g r a m a d e l m i c r o c o n t r o l a d o r .................................................................. 1 9 0 E n s a m b la je del p r o y e c t o ............................................................................ 2 6 9
P r o g r a m a s e n la c o m p u t a d o r a ..................................................................... 1 9 0 30 M in iro bo t c o n el BASIC S t a m p I I ........................................................... 2 7 3
E s t a b l e c i m i e n t o d e la c o m u n i c a c i ó n ........................................................ 1 9 0 E str u c tu r a s eléctrica y m e c á n ic a del r o b o t ....................................... 2 7 4
P r o g r a m a c i ó n d e la s s e c u e n c i a s a u t o m á t i c a s ...................................... 191 L o s se r v o m o to r e s ......................................................................................... 2 7 4
O p e r a c i o n e s ............................................................................................................. 191 E n s a m b la je del p r o y e c t o ............................................................................ 2 7 6
V a r i a b l e s .................................................................................................................... 191 E n s a m b la je m e c á n ic o y c o n e x i o n e s .................................................... 2 7 8
E s t r u c t u r a d e u n p r o g r a m a ............................................................................ 1 9 4 Interconexión d e los elementos externos a la tarjeta d e control ...... 2 8 0
E n s a m b l a j e d e la t a r j e t a e l e c t r ó n i c a ......................................................... 1 9 5 P ru e b a inicial d e la t a r j e t a ........................................................................ 2 8 0
E n s a m b l a j e d e l p r o y e c t o c o m p l e t o ........................................................... 1 9 7 P r o g r a m a c ió n d e l r o b o t ............................................................................. 2 8 0
F o r m a d e c o n e c t a r s e n s o r e s y a c t u a d o r e s ............................................. 1 9 7 31 T e r m ó m e tr o d ig ita l ju m b o ........................................................................ 281
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 1 9 8 A p l i c a c i o n e s .................................................................................................... 2 8 2
22 A l a r m a p a r a m o t o c i c l e t a ..................................................................................2 0 1 D e scrip ció n .................................................................................. 2 8 2
f u n c i o n a m i e n t o .................................................................................................... 2 0 2 F u n c i o n a m i e n t o ............................................................................................ 2 8 2
S e n s o r d e m o v i m i e n t o ....................................................................................... 2 0 2 S e n so r d e t e m p e r a t u r a ................................................................................ 2 8 2
D e s c r i p c i ó n d e l c i r c u i t o .......................................................................... 204 C ir c u it o d e c o n t r o l ....................................................................................... 2 8 5
C i r c u i t o d e s a l i d a c o n r e le v o ........................................................................ 2 0 4 F u e n te d e a l i m e n t a c i ó n ............................................................................. 2 8 5
C i r c u i t o i m p r e s o d e l p r o y e c t o ..................................................................... 2 0 5 V is u a l i z a c i ó n ................................................................................................... 2 8 6
P r o g r a m a d e l m i c r o c o n t r o l a d o r .................................................................. 2 0 5 E n s a m b l a j e ....................................................................................................... 2 8 6
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 2 0 8 E n s a m b la je del p r o y e c t o ............................................................................ 2 8 8
23 C o n v e r t i d o r p a r a l e l o s e r i a l ............................................................................. 2 0 9 32 P r o g r a m a d o r p a r a m i c r o c o n t r o l a d o r e s A T M E L ............................. 2 8 9
F u n c i o n a m i e n t o d e l c i r c u i t o ....................................................................... 2 1 1 I m p o r t a n c ia d e lo s d isp o sitiv o s p r o g r a m a d o r e s ............................. 2 9 0
D e s c r i p c i ó n d e l p r o g r a m a .............................................................................. 2 1 2 P r o g r a m a d o r p o r el p u e rto p a r a l e l o .................................................... 2 9 0
P r u e b a s d e l s i s t e m a ............................................................................................ 2 1 4 In terfaz s e n c i l l a ............................................................................................. 2 9 0
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 2 1 6 E l software p r o g r a m a d o r ............................................................................ 2 9 2
24 A d q u i s i c i ó n d e d a t o s p o r e l p u e r t o s e r i a l .............................................2 1 7 H e r r a m ie n t a s d e d e sarro llo a d i c i o n a le s .............................................. 2 9 7
M ó d u l o c o n v e r s o r a n á l o g o - d i g i t a l ............................................................ 2 1 9 A V R S t u d i o ........................................................................................................3 0 0
M ó d u l o U S A R T .................................................................................................. 2 2 1 L a v e n ta n a del c ó d ig o f u e n t e .................................................................. 3 0 0
T r a n s m i s i ó n p o r la U S A R T ........................................................................... 2 2 2 V en tan a del p r o c e s a d o r ............................................................................. 301
M o n t a j e d e l p r o y e c t o ........................................................................................ 2 2 2 V en tan a I / O .................................................................................................... 3 0 1
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 2 2 4 V e n ta n a d e m e m o r i a .................................................................................. 3 0 3
25 C e r r a d u r a e l e c t r ó n i c a .........................................................................................2 2 5 V e n ta n a d e v a r i a b l e s .................................................................................... 3 0 3
F u n c i o n a m i e n t o .................................................................................................... 2 2 6 E n s a m b la je del p r o y e c t o ............................................................................ 3 0 4
C i r c u i t o d e p o t e n c i a ........................................................................................... 2 2 8 33 M e d id o r d e h u m e d a d y t e m p e r a t u r a ....................................................3 0 5
C i r c u i t o l ó g i c o ....................................................................................................... 2 2 9 F u n c io n a m ie n t o ............................................................................................ 3 0 6
E n s a m b l a j e ................................................................................................................ 2 3 1 D e s c r ip c ió n del c i r c u i t o ............................................................................ 3 0 6
I n t r o d u c c i ó n d e la c l a v e .................................................................................. 2 3 1 S e n so re s ............................................................................................................ 3 0 6
C a m b i o d e c l a v e ................................................................................................... 2 3 1 E t a p a d e p ro c e sa m ie n to ............................................................................ 3 0 8
I n s t a l a c i ó n ................................................................................................................ 2 3 2 E t a p a d e v i s u a l i z a c i ó n ................................................................................ 3 0 8
D e s c r i p c i ó n d e l p r o g r a m a .............................................................................. 2 3 3 D e s c r ip c ió n del p r o g r a m a ....................................................................... 3 1 1
E n s a m b l a j e d e l p r o y e c t o .................................................................................. 2 3 8 E n s a m b la je del p r o y e c t o ............................................................................ 3 1 8

¥
ffá H IÍs a Curso práctico sobre Microcontroladores

Вам также может понравиться