Tartalomjegyzék:

4x4 -es KeyPad használata CircuitPython segítségével: 4 lépés
4x4 -es KeyPad használata CircuitPython segítségével: 4 lépés

Videó: 4x4 -es KeyPad használata CircuitPython segítségével: 4 lépés

Videó: 4x4 -es KeyPad használata CircuitPython segítségével: 4 lépés
Videó: Lecture 29: Assembly language program to interface 4x4 Matrix Keyboard with 8051| matrix keyboard 2024, November
Anonim
4x4 -es KeyPad használata CircuitPython -szal
4x4 -es KeyPad használata CircuitPython -szal

Ez az olcsó billentyűzet egyszerű módszert kínál a numerikus bevitelhez a CircuitPython projektekhez. Adafruit ItsyBitsy M0 expresszel fogom használni.

Szükséged lesz:

  • Billentyűzet - az enyém 4x4 -es
  • ItsyBitsy M0 Express vagy hasonló kártya
  • A Mu Editor telepítve van a számítógépére
  • USB kábel a kód villogásához

1. lépés: A billentyűzet működése

A billentyűzet működése
A billentyűzet működése

A billentyűzeten 16 egyszerű, lassú működésű buborékkapcsoló található, 4 -es rácsban, 8 csatlakozóval az alján. Ha balról 0 -tól 7 -ig számolunk, akkor a 0 és 3 közötti kapcsolatok mindegyik sorhoz kapcsolódnak. Csatlakozás 0 a felső sorhoz és 3 csatlakozás az alsó sorhoz. A 4-7 csatlakozók a bal oldali oszlop 4 csatlakozójával, a 7 csatlakozó pedig a jobb oldali oszlophoz vannak csatlakoztatva az oszlopokhoz. A 16 kapcsoló mindegyike összekapcsol egy másik sor/oszlop kombinációt. Ha megnyomjuk a 7 billentyűt, a harmadik sor a bal oszlophoz kapcsolódik. Érzékelhetjük, ha megnyomjuk -e az 5 -ös gombot, ha sora HIGH -ra van emelve, és olvashatunk egy HIGH -ot az oszlopán. Ehhez KIMENNÜNK a sorokhoz, és INPUT az oszlopokból.

Minden sort sorban HIGH -ra kell állítanunk, míg a többi sor LOW, olvassa el az egyes oszlopokat, amíg HIGH bemenetet nem kapunk. Ez könnyen kezelhető beágyazott hurkokhoz.

Figyelembe kell vennünk azt a tényt, hogy ezek a buborékkapcsolók meglehetősen lassan működnek, és elég erősen kell nyomni őket, hogy bezárják őket. Mind a 16 kapcsoló ilyen módon történő beolvasása nagyon gyorsan elvégezhető, de többször le kell lapoznunk, hogy megnyomjuk a gombot. Rövid késleltetéssel is „le kell kapcsolnunk”, hogy ne érjük el, hogy a gombok minden egyes megnyomáskor ismétlődjenek.

Mivel a kapcsolók meglehetősen „piszkosak”, visszajelzést kell kérnünk a felhasználótól annak jelzésére, hogy a gombnyomást elolvasták. A beépített LED minden egyes gombnyomásra felvillan.

2. lépés: Fizikai kapcsolatok

Fizikai kapcsolatok
Fizikai kapcsolatok

Csatlakozások balról jobbra a KeyPad -on 0 1 2 3 4 5 6 7

D7 D9 D10 D11 A5 A4 A3 A2 az ItsyBitsy -n

A D7 - D11 kimenetek, míg az A5 - A2 bemenetek a PULLDOWN funkcióval vannak beállítva.

A kód rengeteg megjegyzést tartalmaz, és könnyen követhetőnek kell lennie.

3. lépés: A Getkey () működése

Hogyan működik a Getkey ()?
Hogyan működik a Getkey ()?

Ez a funkció egyetlen billentyűlenyomásra beolvassa a billentyűzetet. Gyorsan, maximum 10 -szer ellenőrzi az egyes kulcsokat, hogy a kulcsos kapcsoló zárva van -e. Ha megnyom egy gombot, visszaadja a kulcsértéket, balról jobbra számolva felülről lefelé (0… 15) Vegye figyelembe az alsó sor értékeit: 14, 0, 15, 13 (Hex E, 0, F, D). Ha egyetlen gombot sem nyomtak meg, akkor -999 értéket ad vissza hibakódként, amely könnyen lekérhető a főprogramban. A beépített LED villog, ha gombnyomást vesz fel felhasználói visszajelzésként. Ez meglehetősen gyorsan fut, és a 0,2 másodperces visszapattanási várakozás csak egy gomb megnyomásakor használható.

4. lépés: Érték (számjegyek)

Getvalue (számjegy)
Getvalue (számjegy)

Ez a rutin egy számjegyű értéket szolgáltat a számbillentyűkből. Figyelmen kívül hagyja a piros gombokat.

Ez a Python -kód könnyen konvertálható más eszközön való futtatásra, például Raspberry Pi -re, valószínűleg csak a szkript tetején lévő pin -beállítási sorokat kell megváltoztatnia.

Kérjük, tudassa velem, ha hasznosnak találja a kódot.

Maradjon biztonságban és érezze jól magát!

Ajánlott: