Sadržaj:

Korištenje tipkovnice 4x4 s CircuitPythonom: 4 koraka
Korištenje tipkovnice 4x4 s CircuitPythonom: 4 koraka

Video: Korištenje tipkovnice 4x4 s CircuitPythonom: 4 koraka

Video: Korištenje tipkovnice 4x4 s CircuitPythonom: 4 koraka
Video: Автодом за 1,3 МЛН: душ, туалет и две кровати! 2024, Srpanj
Anonim
Korištenje tipkovnice 4x4 s CircuitPythonom
Korištenje tipkovnice 4x4 s CircuitPythonom

Ova jeftina tipkovnica nudi jednostavan način numeričkog unosa za vaše CircuitPython projekte. Koristit ću ga s Adafruit ItsyBitsy M0 expressom.

Trebat će vam:

  • Tipkovnica - moja je 4x4
  • ItsyBitsy M0 Express ili slična ploča
  • Mu Editor instaliran na vašem računalu
  • USB kabel za bljeskanje koda

Korak 1: Kako funkcionira tipkovnica

Kako funkcionira tipkovnica
Kako funkcionira tipkovnica

Njihova tipkovnica ima 16 jednostavnih, sporo djelujućih mjehuričastih prekidača raspoređenih u mrežu 4 po 8 s 8 priključaka na dnu. Ako s lijeve strane numeriramo od 0 do 7, veze 0 do 3 su spojene na svaki od redova. Priključak 0 u gornji red i priključak 3 u donji red. Priključci 4 do 7 spojeni su na stupove s priključkom 4 na lijevom stupcu, a priključak 7 na desni stupac. Svaki od 16 prekidača spaja različitu kombinaciju redaka/stupca. Ako pritisnemo tipku7, treći redak se pridružuje lijevom stupcu. Možemo osjetiti pritisne li se tipka 5 ako je njezin red povišen HIGH i možemo pročitati HIGH u stupcu. Da bismo to učinili, IZLAZIMO na retke i ULAZIMO iz stupaca.

Moramo redom postaviti HIGH svaki red, dok su drugi retci LOW, čitati svaki stupac redom dok ne dobijemo HIGH input. To se lako upravlja pomoću ugniježđenih for petlji.

Moramo uzeti u obzir činjenicu da ti prekidači s mjehurićima djeluju prilično sporo i da ih je potrebno pritisnuti prilično jako kako bi se zatvorili. Skeniranje svih 16 prekidača na ovaj način može se obaviti vrlo brzo, ali moramo više puta skenirati da bismo pritisnuli tipku. Također se moramo 'debouncetirati' s kratkim vremenskim kašnjenjem kako ne bismo dobili tipke koje se ponavljaju svaki put kada pritisnemo.

Budući da su prekidači prilično „škripavi“, potrebna nam je povratna informacija od korisnika kako bismo naznačili da je pritisnut tipku. Ugrađena LED dioda treperi svaki put kada se pritisne tipka.

Korak 2: Fizičke veze

Fizičke veze
Fizičke veze

Priključci slijeva nadesno na tipkovnici Keypad 0 1 2 3 4 5 6 7

D7 D9 D10 D11 A5 A4 A3 A2 na ItyBitsyju

D7 do D11 postavljeni su kao IZLAZI dok su A5 do A2 postavljeni kao ULAZI sa PULLDOWN.

Kôd ima mnogo komentara i trebalo bi ga biti prilično lako slijediti.

Korak 3: Kako Getkey () radi

Kako Getkey () radi
Kako Getkey () radi

Ova funkcija skenira tipkovnicu za jedan pritisak tipke. Brzo provjerava svaki od ključeva zauzvrat najviše 10 puta kako bi provjerio je li ključni prekidač zatvoren. Ako je tipka pritisnuta, vraća vrijednost ključa, računajući slijeva nadesno od vrha do dna (0… 15) Obratite pažnju na vrijednosti za donji red: 14, 0, 15, 13 (Hex E, 0, F, D). Ako nijedna tipka nije pritisnuta, vraća -999 kao kôd pogreške koji se može lako pokupiti u glavnom programu. Ugrađena LED lampica treperi ako se pritisne tipka kao povratna informacija korisnika. Ovo radi prilično brzo, a čekanje odbijanja od 0,2 sekunde koristi se samo kada se pritisne tipka.

Korak 4: Getvalue (znamenke)

Getvalue (znamenke)
Getvalue (znamenke)

Ova rutina daje numeričku tipku vrijednost n znamenki. Zanemaruje crvene tipke.

Ovaj Python kôd može se lako pretvoriti za rad na drugom uređaju, poput Raspberry Pi, vjerojatno samo trebate promijeniti linije za postavljanje pin -a pri vrhu skripte.

Javite mi ako vam je kod koristan.

Čuvajte se i zabavite se!

Preporučeni: