Está en la página 1de 3

Tarea: Uso del Teclado (Keypad). 3.

1 Introduccin Otro de los perifricos especiales que se utilizan en los proyectos con microcontroladores es el teclado matricial. Vienen generalmente en dos presentaciones: 3x4 y 4x4. onde el primer n!mero indica las cantidades de columnas y el segundo las cantidades de filas. "or e#emplo 3x4 significa 3 columnas por 4 filas$ para un total de 1% teclas.

5eclado 3x4

5eclado 4x4

&sta es una conexin t'pica entre un teclado y un microcontrolador:

(in em)argo si se acti*an las resistencias pull+ups del puerto , no se -ace necesario la conexin de las resistencias en el circuito anterior. .os microcontroladores "I/s -an dispuesto de una interrupcin por cam)io de ni*el en cualquiera de los pines 0,4 a 0,1$ lo cual resulta ideal para conectarse con un teclado matricial$ ya que se puede preparar una funcin 2su)rutina3 de interrupcin por esta causa. &l compilador de / posee el dri*er 4, .c para mane#ar un teclado 3x4. .as funciones que incorporan son las siguientes: kbd_init ( ) Inicializa el sistema para mane#o del teclado. e)e ser la primera funcin en el programa. kbd_getc ( ) e*uel*e el *alor de la tecla pulsada en funcin de la ta)la que tiene programada.

3.% esarrollo. a3 0ealice la siguiente simulacin con el cdigo propuesto de una cerradura electrnica. 6include 7189:11;.-< 6fuses =5$>O? 5$>O"0O5&/5$>O.V" 6use delay2cloc@A 4BBBBBB3 6define ./ 6define ./ 6define ./ 6define ./ 6define ./ 6define ./ 6define ./ C&>;,.&C"I> "I>C,B C0(C"I> "I>C,1 C0?C"I> "I>C,% C ;5;4 "I>C,4 C ;5;D "I>C,D C ;5;8 "I>C,8 C ;5;1 "I>C,1

6include 7lcd.c< 6include 7@)d.c< 6rom Bx%1BBAEF1F$F%F$F3FG *oid main23 E c-ar @H int iH c-ar dataI3J$ cla*eI3JH lcdCinit23H @)dCinit23H portC)Cpullups250K&3H L-ile 250K&3 E iABH printf2lcdCputc$MNfpulsar tecla 1NnM3H L-ile2i7A%3E @A@)dCgetc23H if 2@OAB3 EdataIiJA@H iPPH printf2lcdCputc$MNfpulsar tecla QuNnM$iP13H G G for 2iABHi7A%HiPP3 E cla*eIiJAreadCeeprom2i3H G if 22dataIBJAAcla*eIBJ3RR2dataI1JAAcla*eI1J3RR2dataI%JAAcla*eI%J33 E printf2lcdCputc$MNf"uerta ;)iertaM3H outputC-ig-2"I>C;B3H delayCms2DBB3H outputCloL2"I>C;B3HG else printf2lcdCputc$MNf"uerta /erradaM3H delayCms21BBB3H G G

)3 /@to a simular con el cdigo anterior.


LCD1
L 016L

VSS VDD VEE

RS RW E 4 5 6

1 2 3

13 14 2 3 4 5 6 7 8 9 10 1

OSC1/CLKIN OSC2/CLKOUT

RA0/AN0 RA1/AN1 RA2/AN2/VREF-/CVREF RA3/AN3/VREF" RA4/T0CKI/C1OUT RA5/AN4/SS/C2OUT RC0/T1OSO/T1CKI RE0/AN5/RD RC1/T1OSI/CCP2 RE1/AN6/WR RC2/CCP1 RE2/AN7/CS RC3/SCK/SCL RC4/SDI/SDA CLR/V##/T$V RC5/SDO RC6/T!/CK RC7/R!/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 PIC16F877A

RB0/INT RB1 RB2 RB3/PG RB4 RB5 RB6/PGC RB7/PGD

33 34 35 36 37 38 39 40 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30

1 4 7

2 5 8 0

3 6 9 #

RL1
12V

BAT1 R1
1%

&1
BD135

12V

c3 /omente el programa anterior para conocer cmo funciona de acuerdo al circuito. d3 S/uTl es la funcin de la circuiter'a que se encuentra en la parte inferiorU e3 Vodifique el programa anterior para -acer uso de un teclado 4x4 y cam)ie la contraseWa de acceso. f3 In*estigue como modificar el teclado 4x4 que *iene por defecto en el "roteus para que se parezca a un teclado -exadecimal como se muestra en la figura superior. 3.3 5ra)a#o a &ntregar a3 Vodificar el e#ercicio anterior de la cerradura para que el usuario pueda modificar la contraseWa por defecto$ es decir que pueda so)reescri)ir en la memoria &&"0OV del Vicrocontrolador. )3 Vodificar el cdigo para poder usar un teclado 4x4 y asi poder usar una contraseWa mas comple#a. >ota: "ara poder -acer esto tienen que modificar la li)rer'a @cd.c que se encuentra u)icada en la carpeta donde se encuentra instalado el //(. &n*iar las simulaciones al correo con los correspondientes cdigos fuentes )ien comentados.

U1

7 8 9 10 11 12 13 14

D0 D1 D2 D3 D4 D5 D6 D7

También podría gustarte