SISTEMAS DE MICROPROCESADORES ING. OMAR ROSAS ALMNO.: FABIO AYALA COD.: C2421-X
RELOJ DIGITAL OBJETIVO GENERAL: Diseñar e implementar un reloj digital que muestre la hora y minutos utilizando el microcontrolador ATMEGA16 y DISPLAYS.
OBJETIVOS ESPECÍFICOS:
Realizar un programa en AVR STUDIO que realice la función de un reloj donde muestre las horas y los minutos de 00:00 hrs. A 23:59 hrs. Realizar la simulación del circuito en el software ISIS DE PROTEUS para verificar si cumple con los requisitos planteados en el objetivo general. Realizar el armado del circuito con los componentes electrónicos necesarios.
MARCO TEÓRICO: Un reloj digital representa la hora en un display digital en numeración decimal, presentando la hora del día en la forma: HH:MM, o HH:MM:SS, según el reloj tenga o no segundero. Para cada uno de estos casos hay dos formatos: 24 o 12 horas. En el formato de 24 horas, el día se divide en 24 horas comenzando a las cero horas, y finalizando a las veinticuatro horas. En el formato de doce horas el día se divide en mañana ( AM) y tarde (PM), que a su vez se dividen en 12 horas.
Reloj digital en formato de 24 horas: El formato de 24 horas asigna de forma correlativa un valor del 0 al 24 a cada hora individual. La hora más avanzada que este sistema puede marcar 23:59:59. Nunca llega a marcar las 24:00 porque el minuto siguiente corresponde a las 00:00 del día posterior, cambiando de fecha. El minutero hace el recorrido de 0 a 59 minutos; el minuto próximo al 59 es el 0 de la hora posterior, por lo que nunca marca 60 en los dígitos de los minutos. Los dígitos de los segundos funcionan igual que los minutos.
CARACTERÍSTICAS CARACTE RÍSTICAS GENERALES DEL ATMEGA16/16L Microcontrolador AVR de 8 bit de alto rendimiento y bajo consumo. Arquitectura RISC avanzada. - 131 instrucciones. La mayoría de un simple ciclo de clock de ejecución. - 32 x 8 registros de trabajo de propósito general. - Capacidad de procesamiento de unos 16 MIPS a 16 MHz. - Funcionamiento estático total. - Multiplicador On-Chip de 2 ciclos Memorias de programa y de datos no volátiles. - 16K bytes de FLASH autoprogramable en sistema. Resistencia: 1.000 ciclos de escritura / borrado. - Sección de código añadida opcional con bits de bloqueo independientes. Programación en sistema con el programa añadido On-Chip. Operación de lectura durante la escritura. - 512 bytes de EEPROM. Resistencia: 100.000 ciclos de escritura / borrado. - 1K bytes de SRAM interna. - Bloqueo (cerradura) programable para la seguridad del software.
LABORATORIO # 2
Página 1
SISTEMAS DE MICROPROCESADORES ING. OMAR ROSAS ALMNO.: FABIO AYALA COD.: C2421-X
Interface JTAG. - Mantenimiento de eliminación de errores On-Chip. - Programación de FLASH, EEPROM, fusibles y bits de bloqueo a través de la interface JTAG. - Capacidades de Boundary Scan de acuerdo con el Standard (norma) JTAG. Características de los periféricos. - Dos Timer/Contadores de 8 bits con prescaler separado y modo comparación. - Un Timer/Contador de 16 bits con prescaler separado, modo comparación y modo de captura. - Comparador analógico On-Chip. - Timer watchdog programable con oscilador separado On-Chip. - Interface serie SPI maestro/esclavo. - USART serie programable. - Contador en tiempo real con oscilador separado. - ADC de 10 bit y 8 canales. 8 canales de terminación simple 7 canales diferenciales sólo en el encapsulado TQFP. 2 canales diferenciales con ganancia programable a 1x, 10x o 200x. - 4 canales de PWM. - Interface serie de dos hilos orientada a byte. Características especiales del microcontrolador. - Reset de Power-on y detección de Brown-out programable. - Oscilador RC interno calibrado. - Fuentes de interrupción externas e internas. - 6 modos de descanso: Idle, reducción de ruido ADC, Power-save, Power-down, Standby y Standby extendido. I/O y encapsulados - 32 líneas de I/O programables. - PDIP de 40 pines, TQFP y MLF de 44 pines. Tensiones de funcionamiento. - 2.7 - 5.5V (ATmega16L). - 4.5 - 5.5V (ATmega16). Niveles de velocidad. - 0 - 8 MHz (ATmega16L). - 0 - 16 MHz (ATmega16).
LABORATORIO # 2
Página 2
SISTEMAS DE MICROPROCESADORES ING. OMAR ROSAS ALMNO.: FABIO AYALA COD.: C2421-X
DISPLAYS DE 7 SEGMENTOS Muchos equipos electrónicos proporcionan información al usuario mediante la utilización de señales luminosas, como la emisora sintonizada en un equipo de radio o la lectura de tensión en un voltímetro digital. Para representar las cifras numéricas se agrupan siete diodos en de segmentos. Estos diodos tienen conectados entre sí todos los ánodos. Un Display de este tipo está compuesto por siet e u ocho leds de diferentes form as especiales y dispuestas sobre una base de manera que puedan representarse todos los símbolos numéricos y algunas letras. Los primeros siete segmentos son los encargados de formar el símbolo y con el octavo podemos encender y apagar el punto decimal. Esquema Anteriormente se ha comentado que el displa y que se va a estudiar es de cátodo común, esto significa que todos los cátodos de los leds están conectados, alimentaremos cada led por separado por su correspondiente ánodo. También existen displays de ánodo común, éstos son similares a los que vamos a utilizar en nuestro montaje con la salvedad de que las conexiones a alimentación y masa serían al revés. La correspondencia de los pines y cada uno de los leds del display puede verse en la siguiente figura:
Los pines 3 y 8 corresponden con el cátodo de los leds (son los situados en el centro de las dos filas de pines), para el resto se sigue el criterio mostrado en la tabla. Por ejemplo, si alimentamos el Display por el pin 2 (utilizando una de las resistencias comentadas) y unimos el pin 3 o el 8 a masa, se encenderá el segmento inferior (marcado como d en la figura). Si alimentamos por el pin 5 lo que encenderemos será el punto decimal indicado como en la figura DP (del inglés Dot Point).
LABORATORIO # 2
Página 3
SISTEMAS DE MICROPROCESADORES ING. OMAR ROSAS ALMNO.: FABIO AYALA COD.: C2421-X
MARCO PRÁCTICO DIAGRAMA DEL CIRCUITO:
MATERIAL Y EQUIPO UTILIZADO: 1 C.I.: ATMEGA16 4 DISPLAYS DE 7 SEGMENTOS CÁTODO COMÚN 1 FUENTE DE ALIMENTACIÓN DE CORRIENTE CONTINUA
CÓDIGO DEL PROGRAMA: #include
#include #define sal PORTA //SALIDA A LOS DISPLAYS #define ctr PORTB //HABILITA A LOS DISPLAYS #define ck _delay_ms(10) //RETARDO DE CAMBIO DE ESTADO int main(void) { DDRA=0xFF; DDRB=0xFF;
//PORTA SALIDA //PORTA SALIDA
unsigned char um=0, dm=0, uh=0, dh=0, BCD[]={63,6,91,79,102,109,124,7,127,103}; while(1) { for (int i=0;i<24;i++) {
//TIEMPO EN HORAS for (int j=0;j<60;j++) //TIEMPO EN MINUTOS { for (int k=0;k<10;k++) //CANTIDAD DE VUELTAS { uh=i%10; //RESIDUO DE 24/10 dh=i/10; //DIVISION DE 24/10 um=j%10; //RESIDUO DE 60/10 dm=j/10; //DIVISION DE 60/10 sal=BCD[um]; //MUESTRA EL # DE LA UNI. DE MIN. ctr=14; //ON DISPLAY UNI. MIN. ck; //RETARDO DE CAMBIO DE ESTADO ctr=15; //OFF LOS DISPLAYS sal=BCD[dm]; //MUESTRA EL # DE LA DEC. DE MIN.
LABORATORIO # 2
Página 4
SISTEMAS DE MICROPROCESADORES ING. OMAR ROSAS ALMNO.: FABIO AYALA COD.: C2421-X
ctr=13; ck; ctr=15; sal=BCD[uh]; ctr=11; ck; ctr=15; sal=BCD[dh]; ctr=7; ck; ctr=15;
//ON DISPLAY DEC. MIN. //RETARDO DE CAMBIO DE ESTADO //OFF LOS DISPLAYS //MUESTRA EL # DE LA UNI. DE HRS. //ON DISPLAY UNI. DE HRS. //RETARDO DE CAMBIO DE ESTADO //OFF LOS DISPLAYS //MUESTRA EL # DE LA DEC. DE HRS. //ON DISPLAY DEC. DE HRS. //RETARDO DE CAMBIO DE ESTADO //OFF LOS DISPLAYS
} } } } return(0); }
CONCLUSIONES: Tras haber realizado paso a paso los objetivos específicos planteados, se ha llegado a concluir este laboratorio de forma exitosa sin ningún tipo de inconveniente.
RECOMENDACIONES: Hay que tener mucho cuidado al momento de manipular el microcontrolador ATMEGA16 ya que es un circuito integrado sensible a corrientes y voltajes altos. Hay que brindarle la corriente y el voltaje necesario a los displays para que no sufran ningún tipo de daño.
BIBLIOGRAFÍA Y PAGINAS WEBS: http://es.wikipedia.org/wiki/Reloj_digital http://www.sc.ehu.es/sbweb/webcentro/automatica/web_avr/archivos/Otros%20AVRs/ATmega/ATmega16.htm http://www.nxtorm.es/digitales/sd-n-display.html
LABORATORIO # 2
Página 5