temporizador ajedrez.docx

11
INFORME. MATERIAL UTILIZADO. Resistencias. Es un material formado por carbón y otros elementos resistivos para disminuir la corriente que pasa. Se opone al paso de la corriente. La corriente máxima en un resistor viene condicionada por la máxima potencia que pueda disipar su cuerpo. Capacitor o Condensador Es un dispositivo pasivo, utilizado en electricidad y electrónica, capaz de almacenar energía sustentando un campo eléctrico. Está formado por un par de superficies conductoras, generalmente en forma de láminas o placas. El condensador almacena carga eléctrica, debido a la presencia de un campo eléctrico en su interior, cuando aumenta la diferencia de potencial en sus terminales, devolviéndola cuando ésta disminuye. Integrados. Pic16F84A .- es un microcontrolador de la familia PIC, fabricada por la empresa Microchip. Se trata de uno de los microcontroladores más populares del mercado actual, ideal para principiantes, Este microcontrolador se basa en la Arquitectura Harvard, en la cual el programa y los datos se pueden trabajar desde memorias separadas, lo que posibilita que las instrucciones y los datos posean longitudes diferentes. Esta misma estructura es la que permite la superposición de los ciclos de búsqueda y ejecución de las instrucciones, lo cual se ve reflejado en una mayor velocidad del microcontrolador. Decodificador de 7 segmentos .- Es un decodificador de BCD a 7 segmentos. Recibe como entradas 4 bits que forman un dígito codificado en binario (BCD, Binary Coded Digit) y da como salida el mismo número (dígito), pero listo para ser presentado en un display de 7 segmentos. Transistores. El transistor es un dispositivo electrónico semiconductor que cumple funciones de amplificador, oscilador, conmutador o rectificador. El término «transistor» es la contracción en inglés de transfer resistor («resistencia 1

Upload: walter

Post on 11-Apr-2015

12 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Temporizador Ajedrez.docx

INFORME.

MATERIAL UTILIZADO.

Resistencias.Es un material formado por carbón y otros elementos resistivos para disminuir la corriente que pasa. Se opone al paso de la corriente. La corriente máxima en un resistor viene condicionada por la máxima potencia que pueda disipar su cuerpo.

Capacitor o CondensadorEs un dispositivo pasivo, utilizado en electricidad y electrónica, capaz de almacenar energía sustentando un campo eléctrico. Está formado por un par de superficies conductoras, generalmente en forma de láminas o

placas.El condensador almacena carga eléctrica, debido a la presencia de un campo eléctrico en su interior, cuando aumenta la diferencia de potencial en sus terminales, devolviéndola cuando ésta disminuye.

Integrados.Pic16F84A .- es un microcontrolador de la familia PIC, fabricada por la empresa Microchip. Se trata de uno de los microcontroladores más populares del mercado actual, ideal para principiantes, Este microcontrolador se basa en la Arquitectura Harvard, en la cual el

programa y los datos se pueden trabajar desde memorias separadas, lo que posibilita que las instrucciones y los datos posean longitudes diferentes. Esta misma estructura es la que permite la superposición de los ciclos de búsqueda y ejecución de las instrucciones, lo cual se ve reflejado en una mayor velocidad del microcontrolador.

Decodificador de 7 segmentos .- Es un decodificador de BCD a 7 segmentos. Recibe como entradas 4 bits que forman un dígito codificado en binario (BCD, Binary Coded Digit) y da como salida el mismo número (dígito), pero listo para ser presentado en un display de 7 segmentos.

Transistores.El transistor es un dispositivo electrónico semiconductor que cumple funciones de amplificador, oscilador, conmutador o rectificador. El término «transistor» es la contracción en inglés de transfer resistor

(«resistencia de transferencia»). Actualmente se encuentran prácticamente en todos los aparatos electrónicos de uso diario

Visualizador de 7 segmentos .- (llamado también display) es una forma de representar números en equipos eléctronicos. Está compuesto de siete segmentos que se pueden encender o apagar individualmente. Cada segmento tiene la forma de una pequeña línea. Es un componente que se

utiliza para la representación de números en muchos dispositivos electrónicos debido en gran medida a su simplicidad. Aunque externamente su forma difiere considerablemente de un diodo LED (diodos emisores de luz) típico, internamente están constituidos por una serie de diodos LED con unas determinadas conexiones internas, estratégicamente ubicados de tal forma que forme un número 8.

1

Page 2: Temporizador Ajedrez.docx

Pulsadores .- son interruptores que al presionarlos activan sus contactos y al soltarlos se vuelven a desactivar.

Cristal .- Dispositivo electrónico conformado por una capa de cuarzo envuelta en una estructura generalmente de material semiconductor, la cual ocasiona un efecto piezo-eléctrico, con este característica de cristal se puede utilizar en generadores de frecuencia para suministrar bases de tiempo a diversos dispositivos como micro controladores.

FUNCIÓN.En el integrado pic16f84a se encuentra la línea de código utilizado para ejecutar con este circuito.Configurado el Puerto A cono salida, llevando tranfiriendo al decodificador, para que de esta manera se pueda visualizar en nuestros display. El Puerto B esta configurado también como salida conectado a los transistores que de acuerdo a la señal recibida del pulsador habilita que display activar.Los pulsadores están conectados a uno de los pines del Puerto A. al presionar uno de los pulsadores se cierra el circuito enviado de regreso una instrucción requerida al pic.

IMÁGENES.

Impresión en papel del modelo de circuito

Quemado, grabado del circuito a la placa. Inicio de colocación de componentes

2

Page 3: Temporizador Ajedrez.docx

Revisión de Contactos

Parte visual terminada

3

Page 4: Temporizador Ajedrez.docx

Línea de código del programa.

INCLUDE "P16F84.INC"LIST P=16F84

; DECLARACION DE VARIABLES EN POSICIONES DE MEMORIAPC EQU 02HSTATUS EQU 03HPTOA EQU 05HPTOB EQU 06HTECLA EQU 0CHLOOP EQU 0AHLOOP2 EQU 0EHROTA EQU 0FHTECLA2 EQU 10HTRISA EQU 85HTRISB EQU 86H

Z EQU 02HC EQU 00HW EQU 00H

DIS1 EQU 21HDIS2 EQU 22HDIS3 EQU 23HDIS4 EQU 24HDIS5 EQU 25HDIS6 EQU 26HDIS7 EQU 27HDIS8 EQU 28H

AUX EQU 29HAUX1 EQU 2AHAUX2 EQU 2BHAUX3 EQU 2CHRESET ORG 0

GOTO INICIOORG 5

;RUTINA DE RETARDO, TIEMPO DE ACTIVACION DE LOS TRANSISTORES

RETARDO MOVLW D'2'MOVWF LOOP

TOP2 MOVLW D'100'MOVWF LOOP2

TOP NOP

NOPNOP

NOPNOPNOPDECFSZ LOOP2GOTO TOPDECFSZ LOOPGOTO TOP2RETLW 0

;RUTINA DE RETARDO, ANTIREBOTES EN LOS PULSADORES

RETARD1 MOVLW D'250'MOVWF LOOP

TO2 MOVLW D'250'MOVWF LOOP2

TO NOPNOPNOP

;NOPNOPNOPDECFSZ LOOP2GOTO TODECFSZ LOOPGOTO TO2RETLW0

;RUTIA DE RETARDO, TIEMPO DE APAGADO DEL TRANSISTORESRETARD2 MOVLW D'1'

MOVWF LOOPTO3 MOVLW D'100'

MOVWF LOOP2TO4 NOP

NOPNOPNOPNOPNOPDECFSZ LOOP2GOTO TO4DECFSZ LOOPGOTO TO3RETLW0

;RUTINA DE DECREMENTO DEL RELOJ DEL JUGADOR 1

4

Page 5: Temporizador Ajedrez.docx

JUGA1 DECFSZ TECLARETLW0MOVLW D'46'MOVWF TECLA

MOVF DIS5,WXORLW D'0'BTFSS STATUS,ZCALL ARRAY

MOVF DIS6,WXORLW D'0'BTFSS STATUS,ZCALL ARRAY1

MOVF DIS7,WXORLW D'0'BTFSS W,ZCALL ARRAY2

MOVF DIS8,WBCF STATUS,ZXORLW D'0'BTFSS STATUS,ZCALL ARRAY3MOVLW D'0'MOVWF ROTAGOTO PRI1

;SUB RUTINAS "ARRAYS", PARA CONTROL DE TIEMPO JUGADOR UNO... VIENE DE JUGA1

ARRAY3 MOVLW D'9'MOVWF DIS5MOVWF DIS7MOVLW D'5'MOVWF DIS6DECFSZ DIS8GOTO PRI1GOTO PRI1

ARRAY2 MOVLW D'9'MOVWF DIS5MOVLW D'5'MOVWF DIS6DECFSZ DIS7GOTO PRI1GOTO PRI1

ARRAY1 MOVLW D'9'MOVWF DIS5DECFSZ DIS6GOTO PRI1GOTO PRI1

ARRAYDECFSZ DIS5GOTO PRI1GOTO PRI1

;RUTINA DE DECREMENTO DEL RELOJ DEL JUGADOR 2

JUGA2 DECFSZ TECLA2RETLW0MOVLW D'46'MOVWF TECLA2

MOVF DIS1,WXORLW D'0'BTFSS STATUS,ZCALL ARRAY4

;MOVF DIS2,WXORLW D'0'BTFSS STATUS,ZCALL ARRAY5

MOVF DIS3,WXORLW D'0'BTFSS STATUS,ZCALL ARRAY6

MOVF DIS4,WBCF STATUS,ZXORLW D'0'BTFSS STATUS,ZCALL ARRAY7

MOVLW D'0'MOVWF ROTAGOTO PRI1

;SUB RUTINAS "ARRAYS", PARA CONTROL DE TIEMPO JUGADOR DOS... VIENE DE JUGA2

ARRAY7 MOVLW D'9'MOVWF DIS3MOVWF DIS1MOVLW D'5'MOVWF DIS2DECFSZ DIS4GOTO PRI1GOTO PRI1

ARRAY6 MOVLW D'9'MOVWF DIS1MOVLW D'5'MOVWF DIS2DECFSZ DIS3GOTO PRI1GOTO PRI1

ARRAY5 MOVLW D'9'MOVWF DIS1DECFSZ DIS2GOTO PRI1GOTO PRI1

5

Page 6: Temporizador Ajedrez.docx

ARRAY4 DECFSZ DIS1GOTO PRI1GOTO PRI1

CARGAR MOVLW D'0'MOVWF DIS3MOVWF DIS7RETLW0

CARGAR2 MOVLW D'0'MOVWF DIS4MOVWF DIS8RETLW0

; RUTINA MANEJO CONTROL DE ASIGNACION DE TIEMPO A CADA JUGADOR AL PULSAR MINUTO UNIDAD

SALIR CALL RETARD1CALL RETARD1MOVF ROTA,WXORLW D'0'BTFSS STATUS,ZGOTO VOYINCF DIS3INCF DIS7MOVF DIS3,WXORLW D'10'BTFSC STATUS,ZCALL CARGARMOVLW D'0'MOVWF ROTA

VOY RETLW0

;RUTINA MANEJO CONTROL DE ASIGNACION DE TIEMPO A CADA JUGADOR AL PULSAR MINUTOS DECIMAL

SALIR1 CALL RETARD1CALL RETARD1MOVF ROTA,WXORLW D'0'BTFSS STATUS,ZGOTO VOY1

INCF DIS4INCF DIS8MOVF DIS4,WXORLW D'10'BTFSC STATUS,ZCALL CARGAR2MOVLW D'0'MOVWF ROTA

VOY1 RETLW0;; PULSADOR SEGUNDO JUGADOR "SALIR2", MANIPULANDO ROTA DETIENE EL RELOJ Y PONE ANDAR EL DEL CONTRARIO;MANIPULANDO ROTA EN 1

SALIR2 CALL RETARD1MOVF ROTA,WXORLW D'1'BTFSC STATUS,ZGOTO VAMOS

MOVLW D'1'MOVWF ROTAMOVF DIS4,WXORLW D'0'BTFSS STATUS,ZGOTO VAMOS

MOVF DIS3,WXORLW D'0'BTFSS STATUS,ZGOTO VAMOSCALL INTRE

VAMOS RETLW0

;SUBRUTINA DEL PULSADOR DEL JUEZ, PARA LOS DOS RELOJES.. MANIPULANDO ROTA EN 0

SALIR3 CALL RETARD1MOVLW D'0'MOVWF ROTARETLW0

; PULSADOR PRIMER JUGADOR "SALIR4";MANIPULANDO ROTA EN 2

SALIR4 CALL RETARD1MOVF ROTA,WXORLW D'2'BTFSC STATUS,ZGOTO VAMOS1

MOVLW D'2'MOVWF ROTAMOVF DIS8,WXORLW D'0'BTFSS STATUS,ZGOTO VAMOS1

MOVF DIS7,WXORLW D'0'BTFSS STATUS,ZGOTO VAMOS1

CALL INTRE1VAMOS1 RETLW0

;***RUTINA PARA INCREMENTO CUANDO VA MENOS DE 1 MINUTO PRIMER JUGADOR

INTRE MOVF DIS2,WXORLW D'0'

6

Page 7: Temporizador Ajedrez.docx

BTFSS STATUS,ZGOTO HA

AJA MOVF DIS1,WADDLW D'5'MOVWF AUXMOVLW D'10'SUBWFAUX,0BTFSC STATUS,CCALL CORREMOVF AUX,WMOVWF DIS1

CHAO RETLW0

HA MOVF DIS1,WXORLW D'0'BTFSS STATUS,ZGOTO AJA

GOTO CHAO

CORRE MOVWF DIS1MOVF DIS2,WADDLW D'1'MOVWF AUX1XORLW D'6'BTFSS STATUS,ZCALL CAM

MOVLW D'0'MOVWF DIS2MOVLW D'1'MOVWF DIS3GOTO VENGO

CAM MOVF AUX1,WMOVWF DIS2GOTO VENGO

;***;**RUTINA PARA INCREMENTO CUANDO VA MENOS DE 1 MINUTO SEGUNDO JUGADOR

INTRE1MOVF DIS6,WXORLW D'0'BTFSC STATUS,ZGOTO HA1

AJA1 MOVF DIS5,WADDLW D'5'MOVWF AUX2MOVLW D'10'SUBWFAUX2,0BTFSC STATUS,CCALL CORRE1MOVF AUX2,WMOVWF DIS5

CHAO1 RETLW0

HA1 MOVF DIS5,WXORLW D'0'

BTFSS STATUS,ZGOTO AJA1

GOTO CHAO1

CORRE1 MOVWF DIS5MOVF DIS6,WADDLW D'1'MOVWF AUX3XORLW D'6'BTFSS STATUS,ZCALL CAM1

MOVLW D'0'MOVWF DIS6MOVLW D'1'MOVWF DIS7GOTO VENGO1

CAM1 MOVF AUX3,WMOVWF DIS6GOTO VENGO1

;**;PROGRAMA PRINCIPAL ... DONDE SE HACE EL BARRIDO PARA EL CONTROL DEL DISPLAY; Y LECTURA DEL LOS PULSADORES

INICIO MOVLW D'0'MOVWF DIS1MOVWF DIS2MOVWF DIS3MOVWF DIS4MOVWF DIS5MOVWF DIS6MOVWF DIS7MOVWF DIS8MOVLW D'46'MOVWF TECLAMOVWF TECLA2BSF STATUS,5MOVLW 1F0HMOVWF TRISAMOVLW 00HMOVWF TRISBBCF STATUS,5

;HASTA AQUI CONFIGURTACION DEL PUERTOPRI1 MOVLW 0FFH

MOVWF PTOBMOVF DIS1,WMOVWF PTOACALL RETARD2

MOVLW 0FEHMOVWF PTOBCALL RETARDO

;HASTA AQUI MUESTRA EL DATO POR DISPLAY 1MOVF PTOA,W

7

Page 8: Temporizador Ajedrez.docx

ANDLW D'16'XORLW B'10000'BTFSS STATUS,ZCALL SALIR

;PREGUNTO POR PULSADOR 1MOVLW 0FFHMOVWF PTOBMOVF DIS2,WMOVWF PTOACALL RETARD2MOVLW 0FDHMOVWF PTOBCALL RETARDO

;HASTA AQUI MUESTRA EL DATO POR DISPLAY 2MOVF PTOA,WANDLW D'16'XORLW B'10000'BTFSS STATUS,ZCALL SALIR1

;PREGUNTO POR PULSADOR 2MOVLW 0FFHMOVWF PTOBMOVF DIS3,WMOVWF PTOACALL RETARD2

MOVLW 0FBHMOVWF PTOBCALL RETARDO

;HASTA AQUI MUESTRA EL DATO POR DISPLAY 3MOVF PTOA,WANDLW D'16'XORLW B'10000'BTFSS STATUS,ZCALL SALIR2

;PREGUNTO PULSADOR 3VENGOMOVLW 0FFH

MOVWF PTOBMOVF DIS4,WMOVWF PTOACALL RETARD2

MOVLW 0F7HMOVWF PTOBCALL RETARDO

;HASTA AQUI MUESTRA EL DATO POR DISPLAY 4MOVF PTOA,WANDLW D'16'XORLW B'10000'BTFSS STATUS,ZCALL SALIR3

;PREGUNTO PULSADOR 4

MOVLW 0FFHMOVWF PTOBMOVF DIS5,WMOVWF PTOACALL RETARD2MOVLW 0EFHMOVWF PTOBCALL RETARDO

;HASTA AQUI MUESTRA EL DATO POR DISPLAY 5MOVF PTOA,WANDLW D'16'XORLW B'10000'BTFSS STATUS,ZCALL SALIR4

;PREGUNTO PULSADOR 5VENGO1 MOVLW 0FFH

MOVWF PTOBMOVF DIS6,WMOVWF PTOACALL RETARD2MOVLW 0DFHMOVWF PTOBCALL RETARDO

;HASTA AQUI MUESTRA EL DATO POR DISPLAY 6MOVLW 0FFHMOVWF PTOBMOVF DIS7,WMOVWF PTOACALL RETARD2

MOVLW 0BFHMOVWF PTOBCALL RETARDO

;HASTA AQUI MUESTRA EL DATO POR DISPLAY 7MOVLW 0FFHMOVWF PTOBMOVF DIS8,WMOVWF PTOACALL RETARD2

MOVLW 07FHMOVWF PTOBCALL RETARDO

;HASTA AQUI MUESTRA EL DATO POR DISPLAY 8;LAS SIGUIENTES LINEAS ME PREGUNTO POR EL ESTADO DEL JUEGO;ES DECIR, ESTA JUGANDO PLAYER 1 O PLAYER 2;ADEMAS CONTROL EL TIEMPO EN SEGUNDOS POR TECLA Y TECLA2;ROTA ES LA VARIABLE QUE ME CONTROLA QUE JUGADOR JUEGA, O SI NO HA EMPEZADO EL JUEGO.

8

Page 9: Temporizador Ajedrez.docx

MOVF ROTA,WXORLW D'0'BTFSC STATUS,ZGOTO PRI1MOVF ROTA,WXORLW D'1'BTFSC STATUS,ZCALL JUGA1

MOVF ROTA,WXORLW D'2'BTFSC STATUS,ZCALL JUGA2

GOTO PRI1END

9