TEMA: MARCADOR ELECTRONICO PARA COMPETENCIAS DEPORTIVAS. OBJETIVOS: OBJETIVO GENERAL:
Aplicar los conocimientos adquiridos en clases adquiridos en la materia de Sistemas Microprocesados, para diseñar e implementar un tablero electrónico digital. OBJETIVOS ESPECIFICOS
Diseñar un marcador electrónico deportivo utilizando un Microcontrolador ATMEGA 164P. Implementar en hardware el tablero deportivo para comprobar su correcto funcionamiento
INTRODUCCION:
Este tipo de software (empotrado) nos brindará lo posibilidad de observar el nombre de cada equipo, el resultado que se va dando en tiempo real, y además de poder controlar el tiempo (incluyendo adicionales) del partido. Este dispositivo (tablero) que lastimosamente no se lo puede encontrar en todos los escenarios deportivos se debe a los elevados costos de sus precios de venta además de que consumen una gran cantidad de potencia eléctrica. Lo que buscamos buscamos conseguir con los conocimientos adquiridos es desarrollar e implementar una tecnología propia, en este caso un tablero electrónico deportivo donde se podrá observar observar en una pantalla GLCD el marcador nombres y tiempo del partido que se esté jugando. Consideramos conveniente aplicar los conocimientos de Sistemas Microprocesados recibidos este semestre con una aplicación que sea innovadora, la cual no haya sido realizada con mucha frecuencia en nuestro país, enfocándonos a desarrollar un prototipo de software de calidad ya que este en la actualidad tiene una demanda en ascenso, y al cual nosotros como estudiantes y diseñadores debemos responder de manera oportuna y eficiente. Esto se debe al análisis del campo de desarrollo de software (en nuestra aplicación un Software Empotrado) y como las potencias mundiales tienen este recurso como una de sus principales entradas financieras consiguiendo disminuir la importación de tecnología en nuestro país.
Diseño del circuito a implementar i mplementar
R2
R3
R4
R5
R6
1k
4.7k
4.7k
4.7k
4.7k
arriba
abajo
derecha
izquierda
ENTER
LCD1 LGM12641BS1R
arriba
derecha
arriba abajo derecha izquierda ENTER
izquierda t u T 7 6 5 4 3 2 1 0 C D 2 1 o S B B B B B B B B / W I 0 C N S S V - R D D D D D D D D E R D V V G C C
abajo
8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 1 1 1 1 1 1 1 1 1
U1
up_1 up_2
37 36 35 34 33 32 31 30 19 20 21 22 23 24 25 26
R1 4.7k
8 7
PA0/ADC0/PCINT0 PA1/ADC1/PCINT1 PA2/ADC2/PCINT2 PA3/ADC3/PCINT3 PA4/ADC4/PCINT4 PA5/ADC5/PCINT5 PA6/ADC6/PCINT6 PA7/ADC7/PCINT7 PC0/SCL/PCINT16 PC1/SDA/PCINT17 PC2/TCK/PCINT18 PC3/TMS/PCINT19 PC4/TDO/PCINT20 PC5/TDI/PCINT21 PC6/TOSC1/PCINT22 PC7/TOSC2/PCINT23
PB0/XCK0/T0/PCINT8 PB1/T1/CLKO/PCINT9 PB2/AIN0/INT2/PCINT10 PB3/AIN1/OC0A/PCINT11 PB4/SS/OC0B/PCINT12 PB5/MOSI/PCINT13 PB6/MISO/PCINT14 PB7/SCK/PCINT15 PD0/RXD0/PCINT24 PD1/TXD0/PCINT25 PD2/INT0/RXD1/PCINT26 PD3/INT1/TXD1/PCINT27 PD4/OC1B/XCK1/PCINT28 PD5/OC1A/PCINT29 PD6/ICP/OC2B/PCINT30 PD7/OC2A/PCINT31
XTAL1 XTAL2
AREF AVCC RESET
40 41 42 43 44 1 2 3 9 10 11 12 13 14 15 16 29 27 4
ATMEGA164P
up_1
up_2
Descripcion:
1. Ingresar por teclado de las 3 primeras letras del nombre de cada equipo 2. Se indica el marcador de cada equipo en un tiempo determinado por 3 y 4. 3. Tiempo que durara el partido y de acuerdo a este se podrá o no seguir o no aumentando el marcador, este tiempo deberá ser ingresado al inicio del partido por el usuario. usuario. 4. Tiempo adicional a cada uno de los medios tiempos y también es ingresado por el usuario. En este tablero electrónico deportivos futbol se podrá ingresar cuanto durara el partido al inicio del partido y el tiempo adicional que en este se aumente, y el marcador podrá ser ingresado puede ser por pulsadores hasta que se cumpla el tiempo total más el tiempo adicional.
Todas estas facilidades para programar nuestro marcador electrónico deportivo brindaran una mayor flexibilidad y facilidad de uso del mismo y una manera más rápida de uso. MATERIALES:
GLCD Microcontrolador ATMEGA 164p Quemador del Circuito Integrado Pulsadores Resistencias
CODIGO DEL PROGRAMA:
/* * MARCADOR.ASM * * AUTORES: * CARDENAS ROBERTO * GARCIA SANTIAGO * SANTOS ANDRÉS * */ ; .NOLIST .INCLUDE "M164PDEF.INC" .LIST .EQU P_EQUIPOA = 8 .EQU P_EQUIPOB = 13 .EQU P_TIEMPO1 = 26 .EQU P_TIEMPO2 = 27 .EQU P_TIEMPOE1 = 29 .EQU P_TIEMPOE2 = 30 .EQU PIN_RS=0 .EQU PIN_RW=1 .EQU PIN_E=2 .EQU PIN_CS1=3 .EQU PIN_CS2=4 .EQU PIN_RST=5 .EQU EQA1 = 0X100 .EQU EQA2 = 0X101 .EQU EQA3 = 0X102
.EQU .EQU .EQU .EQU .EQU .EQU .EQU .EQU .EQU .EQU ; .DEF .DEF .DEF .DEF .DEF .DEF .DEF .DEF ; ; .ORG 0X00
EQB1 = 0X103 EQB2 = 0X104 EQB3 = 0X105 T1 = 0X106 T2 = 0X107 TE1 = 0X108 TE2 = 0X109 MARCADORA = 0X10A MARCADORB = 0X10B POSICION_DATOS=0X200 AUX1 = R16 ; REGISTRO AUX1ILIAR1 AUX2 = R17 ; REGISTRO AUX1ILIAR2 AUX3 = R18 ; REGISTRO AUX1ILIAR3 AUX4 = R19 ; REGISTRO AUX1ILIAR4 AUX5 = R20 ; REGISTRO AUX1ILIAR5 AUX6 = R21 ; REGISTRO AUX1ILIAR6 PCURSOR= R22 TECLAS = R23
RJMP .ORG 0X0008 RJMP .ORG 0X3E RESET: LDI LDI OUT OUT ; CLR OUT SER OUT OUT OUT OUT ;
RESET INT_BOTONES
AUX1, LOW(RAMEND) AUX2, HIGH(RAMEND) SPH, AUX2 SPL, AUX1 AUX1 DDRA, AUX1 AUX1 DDRC, AUX1 DDRB, AUX1 DDRD, AUX1 PORTA, AUX1
SBI CLR CLR LDI ; RETARDO_INICIO: DEC BRNE DEC BRNE DEC BRNE ; LDI RCALL RCALL ; LDI LDI RCALL RCALL ; LDI STS STS STS ; STS STS STS ; LDI STS STS LDI STS STS ; CLR STS
PORTB, PIN_RST AUX1 AUX2 AUX3, 1
AUX1 RETARDO_INICIO AUX2 RETARDO_INICIO AUX3 RETARDO_INICIO AUX1, 0B00111111 WCMDD WCMDI ZL,LOW(ORDEN1<<1) ZH,HIGH(ORDEN1<<1) LAZO_MOV SERIE AUX1, 20 EQA1 , AUX1 EQA2, AUX1 EQA3 , AUX1 EQB1 , AUX1 EQB2, AUX1 EQB3 , AUX1 AUX1, 0 T1 , AUX1 T2, AUX1 AUX1, 10 TE1 , AUX1 TE2, AUX1 AUX1 MARCADORA, AUX1
STS
MARCADORB, AUX1
CLR RCALL LDI LDI RCALL
PCURSOR HUB_DATOS ZL,LOW(ORDEN1<<1) ZH,HIGH(ORDEN1<<1) SERIE
LDI STS LDI STS SEI
R16, 0B00000001 PCICR, R16 R16, 0B01111111 PCMSK0, R16
RCALL LDI LDI RCALL RCALL
HUB_DATOS ZL,LOW(ORDEN1<<1) ZH,HIGH(ORDEN1<<1) SERIE RETARDO
RCALL LDI LDI RCALL RCALL
POSICION ZL,LOW(ORDEN1<<1) ZH,HIGH(ORDEN1<<1) SERIE RETARDO
RJMP
INICIO
CLR STS STS
AUX1 MARCADORA, AUX1 MARCADORB, AUX1
;
;
; INICIO:
;
; ; START:
; LAZO_START: RCALL RCALL LDI LDI RCALL
OPERACIONES HUB_DATOS ZL,LOW(ORDEN1<<1) ZH,HIGH(ORDEN1<<1) SERIE
RCALL
RETARDO
RCALL RCALL RCALL
RETARDO RETARDO RETARDO
RJMP
LAZO_START
;
; ; OPERACIONES: LDS LDS CPI BREQ DEC STS RET ; MIN: CPI BREQ DEC LDI STS STS RET ; FIN_TIEMPO: LDS LDS CPI BREQ DEC STS RET ; MINE: CPI BREQ DEC LDI
AUX1, T1 AUX2, T2 AUX2, 0 MIN AUX2 T2, AUX2
AUX1, 0 FIN_TIEMPO AUX1 AUX2, 9 T1, AUX1 T2, AUX2
AUX1, TE1 AUX2, TE2 AUX2, 10 MINE AUX2 TE2, AUX2
AUX1, 10 FIN_TIEMPOE AUX1 AUX2, 19
STS STS RET ; FIN_TIEMPOE: LAZO_INF: LDI STS LDI STS LDI STS LDI STS LDI STS LDI STS LDI STS LDI STS ; LDI LDI RCALL RCALL ; LDI STS STS STS STS STS STS STS STS LDI LDI RCALL
TE1, AUX1 TE2, AUX2
AUX1, 26 POSICION_DATOS+24, AUX1 AUX1, 20 POSICION_DATOS+25, AUX1 AUX1, 33 POSICION_DATOS+26, AUX1 AUX1, 24 POSICION_DATOS+27, AUX1 AUX1, 35 POSICION_DATOS+28, AUX1 AUX1, 42 POSICION_DATOS+29, AUX1 AUX1, 24 POSICION_DATOS+30, AUX1 AUX1,38 POSICION_DATOS+31, AUX1 ZL,LOW(ORDEN1<<1) ZH,HIGH(ORDEN1<<1) SERIE RETARDO AUX1, 47 POSICION_DATOS+24, AUX1 POSICION_DATOS+25, AUX1 POSICION_DATOS+26, AUX1 POSICION_DATOS+27, AUX1 POSICION_DATOS+28, AUX1 POSICION_DATOS+29, AUX1 POSICION_DATOS+30, AUX1 POSICION_DATOS+31, AUX1 ZL,LOW(ORDEN1<<1) ZH,HIGH(ORDEN1<<1) SERIE
RCALL
RETARDO
; RJMP LAZO_INF ;**************************** BOTONES: RCALL BUTTON ST X, AUX1 RET ; BUTTON: LDI XH, HIGH(EQA1) LDI XL, LOW(EQA1) ADD XL, PCURSOR LD AUX1, X ; CPI TECLAS, 1 BREQ ARRIBA CPI TECLAS, 2 BREQ ABAJO CPI TECLAS, 4 BREQ DERECHA CPI TECLAS, 8 BREQ IZQUIERDA ; CPI TECLAS, 16 BREQ SSTART ; CPI TECLAS, 32 BREQ INC_PLAYER1 CPI TECLAS, 64 BREQ INC_PLAYER2 RET SSTART: SEI RJMP START ARRIBA: INC AUX1 RET ABAJO: DEC AUX1
RET DERECHA: CPI BRSH INC RET IZQUIERDA: CPI BREQ DEC RET INC_PLAYER1: LDS INC STS RET INC_PLAYER2: LDS INC STS RET HUB_DATOS: LDS RCALL LDS RCALL LDS RCALL ; LDS RCALL LDS RCALL LDS RCALL ; LDS RCALL LDS RCALL
PCURSOR, 9 PC+2 PCURSOR
PCURSOR, 0 PC+2 PCURSOR
AUX2, MARCADORA AUX2 MARCADORA, AUX2
AUX2, MARCADORB AUX2 MARCADORB, AUX2
AUX1, EQA1 POS1 AUX1, EQA2 POS2 AUX1, EQA3 POS3 AUX1, EQB1 POS4 AUX1, EQB2 POS5 AUX1, EQB3 POS6 AUX1, T1 POS7 AUX1, T2 POS8
; LDS RCALL LDS RCALL
AUX1, TE1 POS9 AUX1, TE2 POS10
LDS STS LDS STS RET
AUX1, MARCADORA POSICION_DATOS +17, AUX1 AUX1, MARCADORB POSICION_DATOS +22, AUX1
LDI CPI BREQ CPI BREQ CPI BREQ
AUX1, 47 PCURSOR, 0 POS1 PCURSOR, 1 POS2 PCURSOR, 2 POS3
CPI BREQ CPI BREQ CPI BREQ
PCURSOR, 3 POS4 PCURSOR, 4 POS5 PCURSOR, 5 POS6
CPI BREQ CPI BREQ
PCURSOR, 6 POS7 PCURSOR, 7 POS8
CPI BREQ CPI BREQ RET
PCURSOR, 8 POS9 PCURSOR, 9 POS10
STS RET
POSICION_DATOS+P_EQUIPOA , AUX1
;
POSICION:
;
;
;
POS1:
POS2: STS RET
POSICION_DATOS+P_EQUIPOA+1 , AUX1
STS RET
POSICION_DATOS+P_EQUIPOA+2 , AUX1
STS RET
POSICION_DATOS+P_EQUIPOB , AUX1
STS RET
POSICION_DATOS+P_EQUIPOB+1 , AUX1
STS RET
POSICION_DATOS+P_EQUIPOB+2 , AUX1
STS RET
POSICION_DATOS+P_TIEMPO1 , AUX1
STS RET
POSICION_DATOS+P_TIEMPO2 , AUX1
STS RET
POSICION_DATOS+P_TIEMPOE1 , AUX1
POS3:
POS4:
POS5:
POS6:
POS7:
POS8:
POS9:
POS10: STS RET LAZO_MOV: LDI LDI LDI LAZO1: LPM ST DEC BRNE RET ; WDATI: LDI
POSICION_DATOS+P_TIEMPOE2 , AUX1
XL, LOW(POSICION_DATOS) XH, HIGH(POSICION_DATOS) AUX2, 32 AUX1,Z+ X+, AUX1 AUX2 LAZO1
AUX6, (1<
OUT NOP NOP OUT NOP NOP SBI NOP CBI RET
PORTB, AUX6
PORTD, AUX1
PORTB, PIN_E PORTB, PIN_E
WDATD: LDI OUT NOP NOP OUT NOP SBI NOP CBI RET
AUX6, (1<
PORTD, AUX1 PORTB, PIN_E PORTB, PIN_E
WCMDI: OUT NOP NOP LDI OUT NOP NOP NOP SBI CBI RET
PORTD, AUX1
AUX6,(1<
PORTB, PIN_E PORTB, PIN_E
WCMDD: OUT NOP NOP LDI OUT NOP
PORTD, AUX1
AUX6,(1<
NOP NOP SBI CBI RET
PORTB, PIN_E PORTB, PIN_E
; ; SUBRUTINA PARA ESCRIBIR VENTANAS DE 16X16 WWIN: CPI AUX5,32 BRCC WWIN7 MOV AUX2,AUX5 ANDI AUX2,0B00011000 LSR AUX2 LSR AUX2 LDI AUX1,0XB8 ADD AUX1,AUX2 RCALL WCMDI RCALL WCMDD MOV AUX3,AUX5 ANDI AUX3,0B00000011 SWAP AUX3 LDI AUX1,0X40 ADD AUX1,AUX3 RCALL WCMDI RCALL WCMDD LDI AUX4,16 WWIN1: LPM AUX1,Z+ SBRC AUX5,2 RJMP WWIN2 RCALL WDATI RJMP WWIN3 WWIN2: RCALL WDATD WWIN3: DEC AUX4 BRNE WWIN1 INC AUX2 LDI AUX1,0XB8 ADD AUX1,AUX2 RCALL WCMDI
RCALL LDI ADD RCALL RCALL LDI
WCMDD AUX1,0X40 AUX1,AUX3 WCMDI WCMDD AUX4,16
LPM SBRC RJMP RCALL RJMP
AUX1,Z+ AUX5,2 WWIN5 WDATI WWIN6
RCALL
WDATD
DEC BRNE
AUX4 WWIN4
WWIN4:
WWIN5: WWIN6:
WWIN7: RET SERIE: LDI LDI LDI
AUX5,0 XL,LOW(POSICION_DATOS) XH,HIGH(POSICION_DATOS)
; SERIE1: LD MOVW DE LA SERIE LDI LDI SERIE2: LPM LPM CPI BREQ DEC RJMP SERIE3: MOVW RCALL
AUX3,X+ Y,Z ZL,LOW(DIRVEN<<1) ZH,HIGH(DIRVEN<<1) AUX1,Z+ AUX2,Z+ AUX3,0 SERIE3 AUX3 SERIE2 Z,AUX1 WWIN
; SALVAR EL PUNTERO
MOVW INC CPI BRNE RET
Z,Y AUX5 AUX5,32 SERIE1
CLR LDI LDI
AUX6 AUX5, 231 AUX4, 1
DEC NOP BRNE DEC
AUX6
BRNE DEC BRNE RET
LAZO_RET AUX4 LAZO_RET
; RETARDO:
LAZO_RET:
LAZO_RET AUX5
;
; INT_BOTONES: PUSH PUSH PUSH IN CLR LDI LAZO_REBOTE: DEC BRNE DEC BRNE ; ANDI ORI COM CPI BREQ MOV
AUX1 AUX2 AUX3 AUX1, PINA AUX2 AUX3, 5 AUX2 LAZO_REBOTE AUX3 LAZO_REBOTE AUX1, 0B01111111 AUX1, 0B10000000 AUX1 AUX1, 0 FIN_INTERRUPCION TECLAS,AUX1
; PUSH XH PUSH XL PUSH AUX2 RCALL BOTONES POP AUX2 POP XL POP XH SET FIN_INTERRUPCION: POP AUX3 POP AUX2 POP AUX1 RETI ; DIRVEN: .DW _0<<1,_1<<1,_2<<1,_3<<1,_4<<1,_5<<1,_6<<1 .DW _7<<1,_8<<1,_9<<1 .DW M0<<1,M1<<1,M2<<1,M3<<1,M4<<1,M5<<1,M6<<1 .DW M7<<1,M8<<1,M9<<1 .DW _A<<1,_B<<1,_C<<1,_D<<1,_E<<1,_F<<1,_G<<1,_H<<1,_G<<1,_I<<1 .DW _J<<1,_K<<1,_L<<1,_M<<1,_N<<1,_O<<1,_P<<1,_Q<<1,_R<<1,_S<<1 .DW _T<<1,_U<<1,_V<<1,_W<<1,_X<<1,_Y<<1,_Z<<1,_<<1 ; ; ORDEN1: .DB 24,37,47,42,39,47,24,37 .DB 44,44,44,47,47,44,44,44 .DB 47,47,47,47,47,47,47,47 .DB 47,47,00,00,47,10,10,47 ; _: .DB 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 .DB 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 .DB 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 .DB 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 _A: .DB 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XC0 , 0X38 .DB 0XC0 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 .DB 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3E , 0X25 , 0X04
.DB _B: .DB .DB .DB .DB _C: .DB .DB .DB .DB _D: .DB .DB .DB .DB _E: .DB .DB .DB .DB _F: .DB .DB .DB .DB _G: .DB .DB .DB .DB _H: .DB .DB .DB .DB _I: .DB .DB .DB
0X25 , 0X3E , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X08 0X08 , 0X08 , 0XF0 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F , 0X21 0X21 , 0X21 , 0X1E , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XE0 , 0X10 , 0X08 0X08 , 0X18 , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X0F , 0X10 , 0X20 0X20 , 0X20 , 0X10 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X08 0X08 , 0X10 , 0XE0 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F , 0X20 0X20 , 0X10 , 0X0F , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X08 0X08 , 0X88 , 0X10 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F , 0X21 0X21 , 0X23 , 0X10 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X08 0X08 , 0X88 , 0X10 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F , 0X21 0X01 , 0X03 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XE0 , 0X10 , 0X08 0X08 , 0X18 , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X0F , 0X10 , 0X20 0X11 , 0X3F , 0X01 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XE0 , 0X10 , 0X08 0X08 , 0X18 , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X0F , 0X10 , 0X20 0X11 , 0X3F , 0X01 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F
.DB _J: .DB .DB .DB .DB _K: .DB .DB .DB .DB _L: .DB .DB .DB .DB _M: .DB .DB .DB .DB _N: .DB .DB .DB .DB _O: .DB .DB .DB .DB _P: .DB .DB .DB .DB _Q: .DB .DB .DB
0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 0XF8 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X10 , 0X20 , 0X20 0X1F , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X88 0X60 , 0X18 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F , 0X21 0X02 , 0X2C , 0X30 , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F 0X20 , 0X20 , 0X30 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0XC0 , 0X00 0XC0 , 0XF8 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F , 0X21 , 0X0E 0X21 , 0X3F , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X60 , 0X80 0X08 , 0XF8 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F , 0X20 , 0X01 0X06 , 0X3F , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XE0 , 0X10 , 0X08 0X08 , 0X10 , 0XE0 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X0F , 0X10 , 0X20 0X20 , 0X10 , 0X0F , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 0X08 , 0X08 , 0X08 , 0XF0 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F 0X21 , 0X01 , 0X01 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XE0 , 0X10 0X08 , 0X08 , 0X10 , 0XE0 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X0F , 0X10
.DB _R: .DB .DB .DB .DB _S: .DB .DB .DB .DB _T: .DB .DB .DB .DB _U: .DB .DB .DB .DB _V: .DB .DB .DB .DB _W: .DB .DB .DB .DB _X: .DB .DB .DB .DB _Y: .DB .DB .DB
0X28 , 0X28 , 0X30 , 0X4F , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X08 0X08 , 0X90 , 0X60 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F , 0X21 0X03 , 0X2C , 0X30 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X70 , 0X88 0X08 , 0X10 , 0X38 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X38 , 0X10 0X21 , 0X22 , 0X1C , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X18 , 0X08 , 0XF8 0X08 , 0X18 , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X08 , 0X00 0X08 , 0XF8 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X1F , 0X20 , 0X20 0X20 , 0X1F , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X08 , 0X00 0X08 , 0XF8 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X07 , 0X38 0X07 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0XF8 , 0X08 , 0XC0 0X08 , 0XF8 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X03 , 0X3C , 0X03 0X3C , 0X03 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0X38 , 0XC8 , 0X00 0XC8 , 0X38 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X38 , 0X26 , 0X01 0X26 , 0X38 , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0X38 , 0XC8 , 0X00 0XC8 , 0X38 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F
.DB _Z: .DB .DB .DB .DB ; _0: .DB .DB .DB .DB _1: .DB .DB .DB .DB _2: .DB .DB .DB .DB _3: .DB .DB .DB .DB _4: .DB .DB .DB .DB _5: .DB .DB .DB .DB _6: .DB .DB
0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X18 , 0X88 0X68 , 0X18 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X38 , 0X26 , 0X21 0X30 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00
0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XF0 , 0X08 , 0X08 0XE8 , 0X18 , 0XF0 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X1F , 0X30 , 0X2F 0X20 , 0X20 , 0X1F , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X10 , 0XF8 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X3F 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X60 , 0X10 , 0X08 0X08 , 0X90 , 0X60 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X38 , 0X24 , 0X22 0X21 , 0X30 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X60 , 0X10 , 0X08 0X08 , 0X90 , 0X60 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X0C , 0X10 , 0X21 0X21 , 0X12 , 0X0C , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XC0 0X30 , 0XF8 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X04 , 0X07 , 0X04 0X24 , 0X3F , 0X24 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XF8 , 0X88 , 0X88 0X88 , 0X08 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X09 , 0X10 , 0X20 0X20 , 0X11 , 0X0E , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XE0 , 0X10 , 0X88 0X88 , 0X10 , 0X20 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00
.DB .DB _7: .DB .DB .DB .DB _8: .DB .DB .DB .DB _9: .DB .DB .DB .DB ; M0: .DB .DB .DB .DB M1: .DB .DB .DB .DB M2: .DB .DB .DB .DB M3: .DB .DB .DB .DB M4: .DB
0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X0F , 0X11 , 0X20 0X20 , 0X11 , 0X0E , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X18 , 0X08 0X08 , 0XC8 , 0X38 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X3C 0X03 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X60 , 0X90 , 0X08 0X08 , 0X90 , 0X60 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X0C , 0X12 , 0X21 0X21 , 0X12 , 0X0C , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XE0 , 0X10 , 0X08 0X08 , 0X10 , 0XE0 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X08 , 0X11 , 0X22 0X22 , 0X11 , 0X0F , 0X00 , 0X00 , 0X00 , 0X00 , 0X00
0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X80 , 0X40 , 0X40 0XC0 , 0X80 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X3F , 0X60 , 0X5F 0X40 , 0X3F , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X80 , 0X80 0XC0 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X40 , 0X40 0X7F , 0X40 , 0X40 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X80 , 0X40 0X40 , 0X40 , 0X80 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X60 , 0X50 0X48 , 0X44 , 0X63 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X80 , 0X40 0X40 , 0X40 , 0X80 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X20 , 0X44 0X44 , 0X44 , 0X3B , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00
.DB .DB .DB M5: .DB .DB .DB .DB M6: .DB .DB .DB .DB M7: .DB .DB .DB .DB M8: .DB .DB .DB .DB M9: .DB .DB .DB .DB
0X80 , 0XC0 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X18 , 0X16 0X51 , 0X7F , 0X50 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XC0 0X40 , 0X40 , 0X40 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X23 0X42 , 0X42 , 0X42 , 0X3C , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X80 0X40 , 0X40 , 0X40 , 0X80 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X3F 0X42 , 0X42 , 0X42 , 0X3C , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0XC0 0X40 , 0X40 , 0X40 , 0XC0 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X70 , 0X0E , 0X01 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X80 0X40 , 0X40 , 0X40 , 0X80 , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X3B 0X44 , 0X44 , 0X44 , 0X3B , 0X00 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X80 , 0X40 , 0X40 , 0X40 , 0X80 , 0X00 , 0X00 , 0X00 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 , 0X00 0X23 , 0X44 , 0X44 , 0X44 , 0X3F , 0X00 , 0X00 , 0X00
CONCLUSIONES Y RECOMENDACIONES
Aplicando conocimientos adquiridos en la materia de sistemas Microprocesados podemos conseguir grandes aplicaciones que nos pueden servir en nuestra vida cotidiana como es el caso del proyecto presentado. Para la conexión he implementación de la pantalla LCD usada es recomendable usar el manual del equipo y buscar ayuda en personas conocedoras del tema para evitar daños al equipo. Si bien el proyecto presentado no involucra conocimientos avanzados sobre la materia de sistemas microprocesados; la aplicación presentada es de gran ayuda para las personas que asistan a un evento deportivo. Es decir aplicando conocimientos básicos de la materia más conocimientos adicionales que permitan manejar dispositivos electrónicos podemos conseguir aplicaciones muy importantes. Debemos conocer la forma de programar la pantalla LCD de manera que podamos presentar la información al usuario de forma agradable y teniendo en cuenta que a un evento deportivo asistirán desde niños asta ancianos. Se puede usar este principio para crear un marcador electrónico mas grande simplemente cambiara la parte de programación y configuración de acuerdo a la pantalla que se baya a usar.
Bibliografía:
http://www.atmel.com/devices/atmega164p.aspx
http://www.matrixmultimedia.com/resources/files/datasheets/EB005-30-3-ES.pdf