H P S P I N E l e t r ô n i c a D i g i t a l e P r o g r a m a ç ã o d e M i c r o c o n t r o l a d o r e s P I C |
HOME PROJETOS PROGRAMAÇÃO |
![]() TECLADO MATRICIAL SIMPLESA melhor opção para entrar com dados numéricos em projetos que usam microcontroladores é o teclado matricial, cujos tipos mais comuns são os de 12 (3x4) e 16 (4x4) teclas, sendo o de 12 teclas uma matriz de 3 linhas por 4 colunas e o de 16 teclas uma matriz de 4 linhas por 4 colunas. Vários tipos de teclados podem ser encontrados no mercado, como os teclados de botões e os de membrana mas, independente do tipo, todos funcionam da mesma maneira, ou seja, todos eles têm um cabo com 8 fios onde os fios de 1 a 4 são a linhas e os fios de 5 a 8 são as colunas. Para conectarmos o teclado ao microcontrolador, devemos reservar uma porta completa como, por exemplo, o PORTB. As linhas L1, L2, L3 e L4 do teclado deverão ser conectadas aos pinos RB0, RB1, RB2 e RB3 do PORTB e configuradas como saídas. As colunas C1, C2, C3 e C4 do teclado deverão ser conectadas aos pinos RB7, RB6, RB5 e RB4 do PORTB e configuradas como entradas. Para testar o que estamos falando, baixe o programa exemplo, descomprima o arquivo "keyboardmatrixleds.zip", entre na pasta "KEYBOARD_MATRIX_LEDS" e dê dois clics no arquivo "kbdmaleds.mcp" para abrir o projeto desenvolvido no MPLAB. Se você possui o PROTEUS e desejar simular o projeto nele, entre na pasta "Simulacao_Proteus" e dê dois clics no arquivo "kbd4x4.DSN" para abrir a simulação. Se você desejar montar o projeto em Protoboard ou construir um PCB, monte o circuito mostrado no esquema elétrico abaixo e grave o arquivo "kbdmaleds.hex" diretamente num microcontrolador PIC18F4520, inicialmente sem fazer alterações no código que funcionará sem problemas. Depois, se desejar, altere o programa para adaptá-lo às suas necessidades. O esquema elétrico abaixo mostra o circuito completo para operação de um teclado matricial com 16 teclas que será usado neste projeto. O funcionamento do programa é muito simples. Ao pressionar uma tecla, o valor ASCII do caracter será mostrado em em 8 LEDs conectados ao PORTC. Por exemplo, se a tecla "2" for pressionada, os LEDs mostrarão a sequência "0 0 1 1 0 0 1 0" cujo código ASCII é 0x32. Os zeros "0" representam LEDs apagados e os "1" representam LEDs acesos. |
A estratégia de leitura do teclado é feita com o seguinte ciclo:
Índice dos circuitos |
![]() |
H P S P I N Desde 04 de Março de 2010 Atualização: 26 de Apr de 2025 |
![]() |