Índice:

Exemplo de armário com teclado de matriz Arduino 4x4: 6 etapas
Exemplo de armário com teclado de matriz Arduino 4x4: 6 etapas

Vídeo: Exemplo de armário com teclado de matriz Arduino 4x4: 6 etapas

Vídeo: Exemplo de armário com teclado de matriz Arduino 4x4: 6 etapas
Vídeo: 🔴 TECLADO MATRICIAL ARDUINO ⌨ [CON y SIN Librería muy FÁCIL] # 021 2024, Julho
Anonim
Exemplo de armário com teclado de matriz Arduino 4x4
Exemplo de armário com teclado de matriz Arduino 4x4

2 maneiras de gerenciar um teclado de 16 botões com um mínimo de pinos.

Etapa 1: introdução

Recentemente, trabalhei em uma maneira de gerenciar uma matriz de teclado de toque 4x4 conectada a um clone do Arduino. Os pontos de ajuste foram:

- usar apenas 4 + 1 pinos em vez de 8 pinos no atmega328p

- para adicionar um link CHAR 4x20 Display LCD via I2C (2 pinos)

-para controlar saídas digitais e analógicas.

Portanto, ter um monte de coisas para controlar com uma quantidade de I / O pecado.

Etapa 2: Coisas para usar:

Coisas para usar
Coisas para usar

Comprei um display LCD de 4x20 caracteres e um adaptador de módulo I2C para conectar o display com pinos SDA (A4) e SCL (A5) no meu clone Arduino.

Eu uso o famoso e agora obsoleto MM74C922N: um conversor de 8 a 4 vias que se encaixa no teclado de matriz 4x4.

Criei um clone do arduino baseado no atmega328p e programei através de um conector HE10 (barramento SPI) e um cabo USBasp.

Etapa 3: Esquema e o quadro:

Esquema e o quadro
Esquema e o quadro
Esquema e o quadro
Esquema e o quadro

O tabuleiro é feito de:

- o teclado LCD só usa com Arduino IDE, não é possível com LDmicro (programação Ladder)

- a placa MM74C922N: 16 botões codificados em 16 valores binários em DCBA de 4 bits. Quando um botão é pressionado: o led azul acende e um valor aparece no DCBA (A é o LSB). Quando um botão é solto: o led azul se apaga e o valor é zerado no DCBA.

-a placa de clone Arduino atmega238p.

Etapa 4: Usando LDmicro com programação Ladder:

Usando LDmicro com programação Ladder
Usando LDmicro com programação Ladder
Usando LDmicro com programação Ladder
Usando LDmicro com programação Ladder
Usando LDmicro com programação Ladder
Usando LDmicro com programação Ladder

O código a ser inserido é composto de 4 valores entre 16 valores pressionados por chave, portanto, combinações de 16x16x16x16.

Depois de desenhar o SFC, você deve traduzi-lo para o LADDER com o método fornecido em um dos meus

instructables:

www.instructables.com/id/Arduino-tomation-…

Depois de digitado, compile-o como xxxx.hex e faça o download com o downloader KHAZAMA.

O display LCD não pode ser programado no LDmicro.

Eu forneço o zip LDmicro com o esboço SERRURE.id nele e o downloader KHAZAMA.

Etapa 5: Usando Arduino IDE 1.8.x com Mightycore e SMlib:

Usando Arduino IDE 1.8.x com Mightycore e SMlib
Usando Arduino IDE 1.8.x com Mightycore e SMlib

Eu traduzo o SFC em uma máquina de estado. Então usei o IDE Arduino com a biblioteca Mightycore e SM dentro.

Eu exibo mensagem como: ERROR, WAITING, UNLOCK, state alcançado, valor da tecla pressionada no display LCD.

Eu lhe dou o esboço e a biblioteca SM. Para Mightycore, olhe para isto:

www.instructables.com/id/Arduino-18x-Clone…

Etapa 6: para concluir:

Essas são duas maneiras de gerenciar o teclado 16 e demorei várias horas para encontrar a sequência correta, mas agora funciona bem. Você deve respeitar estas etapas:

-1 detecta uma tecla pressionada em uma borda ascendente do pino DA

-2 leia o valor gerado no DCBA e compare com o bom

A menos que certamente não funcione.

Obrigado a todos os tutoriais interessantes na rede.

Recomendado: