Taula de continguts:

Ús d’un teclat 4x4 amb CircuitPython: 4 passos
Ús d’un teclat 4x4 amb CircuitPython: 4 passos

Vídeo: Ús d’un teclat 4x4 amb CircuitPython: 4 passos

Vídeo: Ús d’un teclat 4x4 amb CircuitPython: 4 passos
Vídeo: JOHN PARK'S WORKSHOP LIVE Pico Mech Keyboard 18.02.21 @adafruit @johnedgarpark #adafruit 2024, Desembre
Anonim
Ús d’un teclat 4x4 amb CircuitPython
Ús d’un teclat 4x4 amb CircuitPython

Aquest teclat econòmic ofereix un mètode senzill d’entrada numèrica als vostres projectes de CircuitPython. L’utilitzaré amb un Adafruit ItsyBitsy M0 express.

Necessitarà:

  • Teclat: el meu és 4x4
  • Tauler ItsyBitsy M0 Express o similar
  • Mu Editor instal·lat a l'ordinador
  • Cable USB per fer flaixar el codi

Pas 1: Com funciona el teclat

Com funciona el teclat
Com funciona el teclat

El teclat té 16 commutadors de bombolles d’acció senzilla i lenta disposats en una quadrícula de 4 amb 8 connexions a la part inferior. Si numerem per l'esquerra de 0 a 7, les connexions 0 a 3 estan connectades a cadascuna de les files. Connexió 0 a la fila superior i connexió 3 a la fila inferior. Les connexions 4 a 7 es connecten a les columnes amb la connexió 4 a la columna esquerra i la connexió 7 a la columna dreta. Cadascun dels 16 commutadors fa una unió entre una combinació de fila / columna diferent. Si premem la tecla7, la tercera fila s'uneix a la columna esquerra. Podem intuir si es prem la tecla 5 si la seva fila s'eleva HIGH i podem llegir un HIGH a la seva columna. Per fer això, SORTIM a les files i INPUT de les columnes.

Hem de configurar cada fila HIGH al seu torn, mentre que les altres files són BAIXES, llegiu cada columna al seu torn fins que obtinguem una entrada HIGH. Això es gestiona fàcilment amb bucles imbricats.

Hem de tenir en compte el fet que aquests interruptors de bombolles tenen una acció molt lenta i s’han de prémer força per fer-los tancar. Escanejar els 16 commutadors d’aquesta manera es pot fer molt ràpidament, però hem d’escanejar repetidament per prémer una tecla. També hem de "rebutjar" amb un retard breu perquè no repeteixin tecles cada vegada que premem.

Com que els commutadors són bastant "esgarrifosos", necessitem algunes opinions a l'usuari per indicar que s'ha pres una tecla. El LED incorporat parpelleja cada vegada que es percep una tecla.

Pas 2: connexions físiques

Connexions físiques
Connexions físiques

Connexions d’esquerra a dreta a KeyPad0 1 2 3 4 5 6 7

D7 D9 D10 D11 A5 A4 A3 A2 a ItsyBitsy

D7 a D11 s’estableixen com a SORTIDES mentre que A5 a A2 es configuren com a ENTRADES amb PULLDOWN.

El codi té molts comentaris i ha de ser molt fàcil de seguir.

Pas 3: Com funciona Getkey ()

Com funciona Getkey ()
Com funciona Getkey ()

Aquesta funció analitza el teclat si es prem una sola tecla. Ràpidament comprova cadascuna de les tecles al seu torn un màxim de 10 vegades per veure si un interruptor de clau està tancat. Si es prem una tecla, retorna el valor de la tecla, comptant d'esquerra a dreta de dalt a baix (0 … 15) Tingueu en compte els valors de la fila inferior: 14, 0, 15, 13 (Hex E, 0, F, D). Si no es va prémer cap tecla, retorna -999 com a codi d'error que es pot recollir fàcilment al programa principal. El LED integrat parpelleja si es prem una tecla com a resposta dels usuaris. Això s'executa bastant ràpidament i l'espera de rebot de 0,2 segons només s'utilitza quan es prem una tecla.

Pas 4: Getvalue (dígits)

Getvalue (dígits)
Getvalue (dígits)

Aquesta rutina proporciona un valor de n dígits a partir de les tecles numèriques. Ignora les tecles vermelles.

Aquest codi Python es pot convertir fàcilment per executar-se en un altre dispositiu, com ara un Raspberry Pi, probablement només hàgiu de canviar les línies de configuració de pins a la part superior de l'script.

Si us plau, feu-me saber si trobeu útil el codi.

Estigueu segurs i divertiu-vos!

Recomanat: