Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
DISCLAIMER: Acesta este un ghid de utilizare pentru un produs cu sursă deschisă: tastatura cu un singur PIN. ACEST NU ESTE UN PROIECT DIY. DACĂ DORIȚI SĂ VĂ FACEAȚI PLĂCILE, FIȘIERELE EAGLE POATE FI GĂSITE LA FINALUL TUTORIALULUI
Ce este tastatura One Pin?
O tastatură cu un singur pin face ca utilizarea tastaturii cu matrice să fie mult mai ușoară și vă permite să vă rezervați prețioșii pin I / O pentru alte scopuri. O tastatură matricială cu 16 butoane necesită în mod obișnuit 8 intrări digitale pe un microcontroler sau un singur computer de bord. Cele mai populare Arduinos vă limitează la doar 14 pini digitali, astfel încât o tastatură cu 16 butoane vă lasă doar 6 pini pentru restul proiectului. Această lipsă de resurse poate duce la un compromis costisitor al designului sau la o actualizare mai costisitoare a microcontrolerelor. Modulul One Pin Keypad elimină necesitatea tuturor acestor intrări digitale. După cum sugerează și numele său, tastatura cu un singur pin utilizează un singur pin (o intrare analogică) plus conexiuni GND și VCC, astfel încât cablarea tastaturii dvs. este rapidă! Pentru utilizatorii Raspberry Pi (publicul țintă pentru acest tutorial) necesită, de asemenea, un convertor analogic digital ADS1115, care este foarte ușor de conectat. Pachetul Python Keypad One Pin (inclus) simplifică, de asemenea, programarea necesară procesării intrărilor tastaturii, economisindu-vă mai mult timp și efort.
Pentru Ghidul de utilizare Arduino, faceți clic aici.
Pasul 1: Adunați toate părțile
Pentru a începe cu placa One Pin Keypad, veți avea nevoie de:
- O placă de tastatură cu un singur pin
- Un Arduino cu o anumită aromă (în acest caz s-a folosit un Arduino Nano)
- 3 cabluri jumper M / F,
- 4 M / M SAU încă 4 cabluri jumper M / F, în funcție de tipul de anteturi de pe Raspberry Pi
- O tastatură cu membrană cu 16 butoane
- Breadboard (Aici este foarte mică)
- Un modul ADS1115 (de la Adafruit sau o clonă)
- Un Raspberry Pi cu conexiune la internet și Raspbian OS (am folosit Stretch)
- Accesorii Raspberry Pi (un cablu HDMI, o sursă de alimentare, dongle, monitor etc. depinde de aroma Raspberry Pi)
Pasul 2: Cablare
Conectați tastatura One Pin conform diagramei Fritzing, a fotografiei sau a ambelor, indiferent de preferință.
Vă rugăm să rețineți: nota de pe diagrama Fritzing reprezintă tastatura One Pin (iar abrevierile GND VCC și AOUT desemnează pinout-urile plăcii One Pin Keyboard)
Pasul 3: Instalarea pachetului Python
Deschideți o fereastră terminal și tastați următoarele comenzi:
sudo apt-get update
atunci
pip3 instalează Progetto-One-Pin-Keypad
pentru a instala pachetul și dependențele sale necesare
Pasul 4: Instalarea exemplelor
Am creat un folder dev pentru a găzdui depozitul sub home / pi dacă doriți să faceți același lucru (este complet opțional), rulați această comandă:
mkdir dev
apoi, pentru a naviga în dosar, tastați:
cd dev
În cele din urmă, pentru a clona depozitul, introduceți următoarea comandă:
git clone
Pasul 5: Activarea I2C
ADS1115 ADC (analogic la convertor digital) se bazează pe protocolul I2C (circuit integrat) pentru a comunica cu Raspberry Pi, în mod implicit magistrala I2C este dezactivată, pentru a o activa, tastați:
sudo raspi-config
care vă va duce la o fereastră de configurare albastră, de acolo, utilizând tastele săgeată și tasta Enter, alegeți
- Opțiuni de interfață
- I2C
- Apoi coboară la
Sfat: Referirea la capturile de ecran de mai sus poate ajuta puțin! Dacă ești încă blocat, nu te teme! Consultați acest mod uimitor de la Sparkfun!
Pasul 6: Rulați Calibratethress
Navigați la depozit dacă nu ați făcut-o deja și mergeți la folderul de exemple folosind aceste comenzi:
Sfat: tastați „cd Prog”, apoi apăsați Tab, ar trebui să completeze automat numele depozitului!
cd Progetto_One_Pin_Keypad_Python_Package
apoi tastați:
exemple cd
apoi, rulați exemplul calibratethresholds folosind această comandă:
python3 calibrează pragurile
și urmați instrucțiunile afișate pe consolă pentru a vă calibra placa. După ce calibrarea parcurge toate butoanele, testați noile valori analogice pentru a vedea dacă funcționează apăsând unele butoane când vi se solicită „Începeți”. Dacă noile valori se dovedesc a fi inexacte, utilizați Ctrl C pentru a ucide programul și rulați-l din nou.
Exemplul de calibrare ar trebui să vă ofere 2 linii de cod de care aveți nevoie în exemplul următor, asigurați-vă că păstrați consola deschisă și / sau copiați-le pe amândouă!
Pasul 7: Modificați și executați Readkeypadwithtimeout
Acum, când tastatura One Pin este calibrată, este timpul să o folosiți. Deși ați putea face acest lucru din linia de comandă folosind vi, personal prefer să folosesc un IDE precum IDLE.
Deschideți IDLE (veți dori versiunea python3) și modificați următoarele linii:
Vă amintiți acea matrice de valori analogice pe care ați copiat-o? Înlocuiți linia 13 (a se vedea mai jos) cu valorile analogice nou calibrate.
# ex: my_thresholds = [valorile calibrate ar fi aici]
se înlocuiește cu aceasta:
pragurile mele = [225, 2116, 3904, 5200, 6300, 7350, 8450, 9325, 10000, 10750, 11500, 12100, 12550, 13100, 13800, 14250]
Apoi, adăugați următoarea linie de cod după linia 23, (a se vedea mai jos):
keypad.useCalibratedThresholds (my_thresholds)
se adaugă după rândul 23:
# ex: keypad.use_calibrated_thresholds (numele matricei)
făcând ca liniile 22-24 să arate astfel în cele din urmă:
# Dacă se utilizează valori calibrate, use_calibrated_thresholds mai jos:
# ex: keypad.use_calibrated_thresholds (numele matricei dvs.)
keypad.use_calibrated_thresholds (my_thresholds)
După ce ați terminat, rulați codul și testați-l apăsând câteva butoane! Simțiți-vă liber să adaptați schița de exemplu la proiectele dvs.! Amintiți-vă că read_keypad_with_timeout returnează butonul apăsat ca un caracter și timpul de expirare este setat în milisecunde! Dacă nu doriți un timeout, utilizați constanta tastaturii. NO_TIMEOUT.
Pasul 8: Cum funcționează tastatura One Pin
O mare parte din designul tastaturii One Pin se bazează pe implementarea de către Hari Wiguna a unui divizor de tensiune pentru a obține o valoare analogică unică pentru fiecare tastă dintr-o tastatură cu 16 pini. Designul One Pin Keypad rămâne în mare parte același, cu câteva modificări. Dacă doriți un tutorial excelent despre modul în care funcționează tastatura One Pin, nu ezitați să vizionați minunatul videoclip al lui Hari Wiguna aici!
Pasul 9: Concluzie
În acest instructable, am prezentat cum să începeți cu placa dvs. cu un singur pin. Acum, curioșii dintre voi s-ar fi putut întreba de ce nu s-a folosit niciodată schița readKeypadInstantane, motivul este că nu este la fel de utilă, deoarece butonul trebuie apăsat atunci când este apelat, funcția readKeypadInstantaneous () este utilizată în primul rând pentru a simplifica readKeypadWithTimeout () în bibliotecă. Dacă vă atrage atenția, simțiți-vă liber să o luați la o răsucire. Hacking fericit!
Dacă aveți întrebări, lăsați un comentariu mai jos sau trimiteți-ne un e-mail la [email protected]. Toate cele bune, Progetto Company P. S. Așa cum am promis, un link către fișierele Eagle ale consiliului.