Cuprins:
- Pasul 1: Cum funcționează tastatura
- Pasul 2: Conexiuni fizice
- Pasul 3: Cum funcționează Getkey ()
- Pasul 4: Getvalue (cifre)
Video: Utilizarea unui KeyPad 4x4 cu CircuitPython: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Această tastatură ieftină oferă o metodă simplă de introducere numerică pentru proiectele dvs. CircuitPython. Îl voi folosi cu un Adafruit ItsyBitsy M0 express.
Vei avea nevoie:
- Tastatura - a mea este 4x4
- ItsyBitsy M0 Express sau placa similară
- Mu Editor instalat pe computer
- Cablu USB pentru a bloca codul
Pasul 1: Cum funcționează tastatura
Tastatura are 16 comutatoare cu bule simple, cu acțiune lentă, dispuse într-o rețea cu 4 rețele, cu 8 conexiuni în partea de jos. Dacă numerotăm de la stânga de la 0 la 7, conexiunile 0 la 3 sunt conectate la fiecare dintre rânduri. Conexiunea 0 la rândul de sus și conexiunea 3 la rândul de jos. Conexiunile 4 la 7 sunt conectate la coloane cu conexiunea 4 pe coloana din stânga și conexiunea 7 la coloana din dreapta. Fiecare dintre cele 16 comutatoare face o îmbinare între o combinație diferită de rânduri / coloane. Dacă apăsăm tasta 7 al treilea rând este unit cu coloana din stânga. Putem simți dacă tasta 5 este apăsată dacă rândul său este ridicat HIGH și putem citi un HIGH pe coloana sa. Pentru a face acest lucru, ieșim pe rânduri și intrăm din coloane.
Trebuie să setăm fiecare rând HIGH pe rând, în timp ce celelalte rânduri sunt LOW, citiți fiecare coloană pe rând până când obținem o intrare HIGH. Acest lucru este ușor de gestionat cu imbricate pentru bucle.
Trebuie să ținem cont de faptul că aceste comutatoare cu bule acționează destul de lent și trebuie apăsate destul de greu pentru a le face aproape. Scanarea tuturor celor 16 comutatoare în acest mod se poate face foarte repede, dar trebuie să scanăm în mod repetat pentru a prelua apăsarea unei taste. De asemenea, trebuie să „dezabonim” cu o întârziere scurtă, astfel încât să nu primim taste care se repetă de fiecare dată când apăsăm.
Deoarece comutatoarele sunt destul de „strâmbe”, avem nevoie de feedback către utilizator pentru a indica faptul că a fost citită o apăsare de tastă. LED-ul încorporat este intermitent de fiecare dată când se apasă o tastă.
Pasul 2: Conexiuni fizice
Conexiuni de la stânga la dreapta pe KeyPad0 1 2 3 4 5 6 7
D7 D9 D10 D11 A5 A4 A3 A2 pe ItsyBitsy
D7 până la D11 sunt stabilite ca OUTPUT-uri, în timp ce A5-A2 sunt configurate ca INPUT-uri cu PULLDOWN.
Codul conține o mulțime de comentarii și ar trebui să fie destul de ușor de urmat.
Pasul 3: Cum funcționează Getkey ()
Această funcție scanează tastatura pentru a apăsa o singură tastă. Verifică rapid fiecare tastă la rândul său de maximum 10 ori pentru a vedea dacă un comutator de chei este închis. Dacă este apăsată o tastă, returnează valoarea tastei, numărând de la stânga la dreapta de sus în jos (0 … 15) Observați valorile pentru rândul de jos: 14, 0, 15, 13 (Hex E, 0, F, D). Dacă nu a fost apăsată nicio tastă, returnează -999 ca un cod de eroare care poate fi preluat cu ușurință în programul principal. LED-ul încorporat clipește dacă este apăsată o tastă ca feedback al utilizatorului. Acest lucru se execută destul de repede și așteptarea de respingere de 0,2 secunde este utilizată numai atunci când este apăsată o tastă.
Pasul 4: Getvalue (cifre)
Această rutină furnizează o valoare de n cifre din tastele numerice. Acesta ignoră tastele roșii.
Acest cod Python poate fi ușor convertit pentru a rula pe un alt dispozitiv, cum ar fi un Raspberry Pi, probabil că trebuie doar să schimbați liniile de configurare a pinului din partea de sus a scriptului.
Vă rog să-mi spuneți dacă vi se pare util codul.
Rămâi în siguranță și distrează-te!
Recomandat:
Utilizarea unui radio pentru a detecta fulgerul: 4 pași
Utilizarea unui radio pentru a detecta fulgerul: aparatele de radio mici pot fi folosite pentru mai mult decât ascultarea de muzică sau sport. Toate aparatele de radio (chiar și aparatele de radio AM ieftine) pot fi utilizate pentru a detecta fulgerele și alte fenomene atmosferice. Cu o ureche antrenată, se poate stabili chiar dacă fulgerul se mișcă până la
Utilizarea unui LED pentru a ilumina un mesaj: 7 pași
Folosirea unui LED pentru a ilumina un mesaj: A face lucrurile să se lumineze se simte ca magie și nu există un loc mai bun pentru magie decât în clasa mea. Construirea circuitelor pentru prima dată necesită rezolvarea problemelor și persistența. Am început această lecție împrumutând un ghid de construcție de circuite de la Mak
Utilizarea unui afișaj cu 4 cifre și 7 segmente, cu Arduino: 7 pași
Utilizarea unui afișaj cu 4 cifre și 7 segmente, cu Arduino: În acest tutorial vă voi arăta cum să utilizați un afișaj pe 7 segmente cu 4 cifre folosind arduino. Unele lucruri de bază pe care aș dori să le subliniez este că acest lucru ocupă aproape toate pinii digitali de pe arduino uno, leonardo, plăcile cu 13 digi
Utilizarea temporizatorului 556 pentru acționarea unui motor pas cu pas: 5 pași
Utilizarea temporizatorului 556 pentru a acționa un motor pas cu pas: Acest manual explică modul în care un temporizator 556 poate conduce un motor pas cu pas. Nu este necesar cod pentru acest circuit
Neopixel Ws2812 Rainbow LED Glow Cu M5stick-C - Rularea Rainbow pe Neopixel Ws2812 Utilizarea M5stack M5stick C Utilizarea Arduino IDE: 5 pași
Neopixel Ws2812 Rainbow LED Glow Cu M5stick-C | Rularea Rainbow pe Neopixel Ws2812 Utilizarea M5stack M5stick C Utilizarea Arduino IDE: Bună băieți, în acest instructables vom învăța cum să utilizați LED-uri neopixel ws2812 sau benzi LED sau matrice LED sau inel cu LED cu placa de dezvoltare m5stack m5stick-C cu Arduino IDE și vom face un model curcubeu cu el