TODOPIC

Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: Mauro75 en 23 de Julio de 2009, 16:10:47

Título: Pido ayuda con teclado matrical que estoy construyendo
Publicado por: Mauro75 en 23 de Julio de 2009, 16:10:47
Hola a todos este es mi primer post en el foro para pedir si alguien me puede ayudar con un problema que tengo.
Estoy construyendo un teclado matrical 4x3  que esta acoplado a una alarma
(http://img21.imageshack.us/img21/6223/picalarma.th.png) (http://img21.imageshack.us/i/picalarma.png/)

El sistema tiene dos contraseñas una para los sensores mecanicos y otra para el infrarrojo. La duda mia es como hago para poner las contraseñas y tambien como comparar los datos que ingreso
Título: Re: Pido ayuda con teclado matrical que estoy construyendo
Publicado por: jhozate en 23 de Julio de 2009, 16:15:18
En que lenguaje programas? C o ASM?
Título: Re: Pido ayuda con teclado matrical que estoy construyendo
Publicado por: Mauro75 en 23 de Julio de 2009, 16:20:49
en assembler
Título: Re: Pido ayuda con teclado matrical que estoy construyendo
Publicado por: mtristan en 24 de Julio de 2009, 16:48:22
Primero guardas una cadena de números en la eeprom terminando con el número FF (que será el "fin de string", por ej). Recuerda que a la eeprom le puedes grabar los datos que quieras durante el grabado del pic (el el ic-prog, por ej, la ventana se divide en 2 mitades: en la de arriba va en programa del pic y en la de abajo podés escribir la cadena de datos necesarios en la eeprom). Ahosa puedes ir guardando en varios registros los números que la persona va ingresando al teclado. Luego vas a la eeprom y lees el primer número de la contraseña, si el usuario acertó, pasas a leer el siguiente número; sino, que se active la alarma (o por lo menos que no se desactive). Así, una vez leídos llegado al final de
Título: Re: Pido ayuda con teclado matrical que estoy construyendo
Publicado por: mtristan en 24 de Julio de 2009, 16:51:53
.

Primero guardas una cadena de números en la eeprom terminando con el número FF (que será el "fin de string", por ej). Recuerda que a la eeprom le puedes grabar los datos que quieras durante el grabado del pic (el el ic-prog, por ej, la ventana se divide en 2 mitades: en la de arriba va en programa del pic y en la de abajo podés escribir la cadena de datos necesarios en la eeprom). Ahosa puedes ir guardando en varios registros los números que la persona va ingresando al teclado. Luego vas a la eeprom y lees el primer número de la contraseña, si el usuario acertó, pasas a leer el siguiente número; sino, que se active la alarma (o por lo menos que no se desactive). Así, una vez que lees el número FF en la eeprom sabrás que el usuario sabía la contraseña (o tuvo mucha suerte) y por lo tanto lo dejarás actuar desactivando la alarma o queriendo cambiar la contraseña inicial.

(Creo que pulsé publicar sin querer a mitad del mensaje, disculpas).

Espero que salga algo. Si no se entendió, volvé a preguntar.
Saludos.
Título: Re: Pido ayuda con teclado matrical que estoy construyendo
Publicado por: Mauro75 en 24 de Julio de 2009, 18:48:45
Gracias pero me podrias poner un ejemplo de programacion porque no entendi bien
Título: Re: Pido ayuda con teclado matrical que estoy construyendo
Publicado por: mtristan en 26 de Julio de 2009, 17:26:57
.

Esto debería servir para la lectura de la eeprom:

Código: [Seleccionar]
BCF STATUS,RP0
MOVLW 0xXX ; EL PRIMER NUMERO DE LA CONTRASEÑA ESTA EN LA DIRECCION XX DE LA EEPROM.
MOVWF EEADR

password_control
BSF STATUS,RP0 ;
BSF EECON1,RD ; RUTINA DE LECTURA.
BCF STATUS,RP0 ;
MOVLW 0xFF
XORWF EEDATA,W ; SI LOS REGISTOS SON IGUALES, EL RESULTADO ES 00
BTFSC STATUS,Z
GOTO password_confirmado ; SI EL USUSRIO LLEGO A ESTE PUNTO, YA INGRESO TODOS LOS NUMEROS DE LA CONTRASEÑA.
CALL leer_teclado ; ESTA RUTINA DEBERIA DEVOLVER EN EL REGISTRO W EL NUMERO PRESIONADO.
XORWF EEDATA,W
BTFSS STATUS,Z
GOTO error ; SI NO SON IGUALES, SALTA AL ERROR.
INCF EEADR,F
GOTO password_control

Y aquí encontrarás la parte del teclado:
Rutina del teclado (http://micropic.wordpress.com/2007/06/13/teclado-matricial-4x4/)

En las etiquetas password_confirmado y error, tu sabrás qué hacer.
Saludos.