Sadržaj:

Vodič za upotrebu Raspberry Pi s jednom tipkovnicom: 9 koraka
Vodič za upotrebu Raspberry Pi s jednom tipkovnicom: 9 koraka

Video: Vodič za upotrebu Raspberry Pi s jednom tipkovnicom: 9 koraka

Video: Vodič za upotrebu Raspberry Pi s jednom tipkovnicom: 9 koraka
Video: Автоматический календарь-планировщик смен в Excel 2024, Juli
Anonim
Vodič za upotrebu Raspberry Pi s jednom tipkovnicom
Vodič za upotrebu Raspberry Pi s jednom tipkovnicom

ODRICANJE OD ODGOVORNOSTI: Ovo je VODIČ ZA UPOTREBU PROIZVODA OTVORENOG IZVORA: JEDNOSTAVNA TASTATURA. Ovo nije DIY projekt. AKO ŽELITE SAMI UREDITI ODBORE, ORLOVNE DATOTEKE SE MOGU NAĆI NA KRAJU VODIČA

Šta je tastatura sa jednim pinom?

Tastatura sa jednim pinom čini upotrebu matrične tastature mnogo lakšom i omogućava vam da rezervišete svoje dragocjene U/I pinove za druge svrhe. Matrična tastatura sa 16 tastera obično zahteva 8 digitalnih ulaza na mikrokontroleru ili računaru sa jednim računarom. Najpopularniji Arduinos ograničava vas na samo 14 digitalnih pinova, pa vam tastatura sa 16 tastera ostavlja samo 6 pinova za ostatak vašeg projekta. Ovaj nedostatak resursa može dovesti do skupog dizajna kompromisa ili skuplje nadogradnje mikrokontrolera. Modul tipkovnice s jednim pinom eliminira potrebu za svim ovim digitalnim ulazima. Kao što mu naziv govori, One Pin Keypad koristi samo jedan pin (analogni ulaz) plus GND i VCC veze, tako da je ožičenje vaše tastature jednostavno! Za korisnike Raspberry Pi -a (ciljna publika ovog vodiča) također je potreban ADS1115 analogno -digitalni pretvarač, koji je zaista jednostavan za povezivanje. Python paket sa jednom pin tastaturom (uključen) takođe pojednostavljuje programiranje potrebno za obradu unosa sa tastature, štedeći vam više vremena i truda.

Za Vodič za upotrebu Arduina kliknite ovdje.

Korak 1: Skupite sve dijelove

Skupite sve delove!
Skupite sve delove!

Za početak korištenja ploče sa jednom pin tastaturom trebat će vam:

  • Ploča sa tastaturom sa jednim pinom
  • Arduino neke arome (u ovom slučaju korišten je Arduino Nano)
  • 3 kratkospojna kabela M/Ž,
  • 4 M/M ILI još 4 M/F kratkospojna kabela, ovisno o vrsti zaglavlja na vašem Raspberry Pi
  • Membranska tastatura sa 16 tastera
  • Oglasna ploča (ovdje se koristi zaista mala)
  • Modul ADS1115 (iz Adafruit -a ili klona)
  • Raspberry Pi s internetskom vezom i Raspbian OS (koristio sam Stretch)
  • Raspberry Pi dodaci (HDMI kabel, izvor napajanja, ključevi, monitor itd. Ovisi o okusu vašeg Raspberry Pi)

Korak 2: Ožičenje

Ožičenje!
Ožičenje!
Ožičenje!
Ožičenje!

Povežite tastaturu s jednim pinom prema dijagramu Fritzing, fotografiji ili objema, kako god želite.

Napomena: napomena na dijagramu Fritzing predstavlja tipkovnicu s jednim pinom (a kratice GND VCC i AOUT označavaju raspoznavanje ploče s jednom pinom tipkovnice)

Korak 3: Instalacija Python paketa

Instalacija Python paketa!
Instalacija Python paketa!
Instalacija Python paketa!
Instalacija Python paketa!

Otvorite prozor terminala i upišite sljedeće naredbe:

sudo apt-get update

zatim

pip3 instalirajte Progetto-One-Pin-Keypad

za instaliranje paketa i njegovih potrebnih ovisnosti

Korak 4: Instaliranje primjera

Instaliranje primjera
Instaliranje primjera

Kreirao sam dev fasciklu za smještaj spremišta pod home/pi ako želite učiniti isto (potpuno je neobavezno), pokrenite ovu naredbu:

mkdir dev

zatim za navigaciju u mapu upišite:

cd dev

Na kraju, da biste klonirali spremište, unesite sljedeću naredbu:

git clone

Korak 5: Omogućavanje I2C

Omogućavanje I2C
Omogućavanje I2C
Omogućavanje I2C
Omogućavanje I2C
Omogućavanje I2C
Omogućavanje I2C

ADS1115 ADC (analogno-digitalni pretvarač) oslanja se na I2C (Inter-Integrated Circuit) protokol za komunikaciju s Raspberry Pi, prema zadanim postavkama I2C sabirnica je onemogućena, da biste je omogućili, upišite:

sudo raspi-config

koji će vas odvesti u plavi prozor za konfiguraciju, odande, pomoću tipki sa strelicama i tipke enter, odaberite

  1. Opcije povezivanja
  2. I2C
  3. Zatim siđite na

Savjet: Pozivanje na gornje snimke ekrana moglo bi malo pomoći! Ako ste i dalje zaglavljeni, ne bojte se! Pogledajte ovo nevjerojatno uputstvo za Sparkfun!

Korak 6: Pokrenite Calibratethresholds

Pokrenite Calibratethresholds!
Pokrenite Calibratethresholds!

Idite do spremišta ako već niste i idite u mapu primjera pomoću ovih naredbi:

Savjet: upišite 'cd Prog', a zatim pritisnite Tab, trebao bi automatski dovršiti naziv spremišta!

cd Progetto_One_Pin_Keypad_Python_Package

zatim upišite:

cd primjeri

zatim pokrenite primjer calibratethresholds pomoću ove naredbe:

python3 kalibrira pragove

i slijedite upute prikazane na konzoli za kalibraciju ploče. Nakon što kalibracija prođe kroz sve tipke, isprobajte svoje nove analogne vrijednosti kako biste provjerili rade li pritiskom na neke tipke kada se od vas zatraži "Počni". Ako se nove vrijednosti pokažu netočnim, upotrijebite Ctrl C da biste ubili program i pokrenuli ga opet.

Primjer kalibracije trebao bi vam pružiti 2 retka koda koji će vam trebati u sljedećem primjeru, pazite da konzola ostane otvorena i/ili ih oboje kopirate!

Korak 7: Izmijenite, a zatim pokrenite Readkeypadwithtimeout

Izmijenite, a zatim pokrenite Readkeypadwithtimeout
Izmijenite, a zatim pokrenite Readkeypadwithtimeout
Izmijenite, a zatim pokrenite Readkeypadwithtimeout
Izmijenite, a zatim pokrenite Readkeypadwithtimeout
Izmijenite, a zatim pokrenite Readkeypadwithtimeout
Izmijenite, a zatim pokrenite Readkeypadwithtimeout

Sada kada je vaša tastatura s jednim pinom kalibrirana, vrijeme je da je upotrebite. Iako to možete učiniti iz komandne linije koristeći vi, ja lično više volim da koristim IDE poput IDLE.

Otvorite IDLE (htjet ćete verziju python3) i izmijenite sljedeće retke:

Sjećate se onog niza analognih vrijednosti koji ste kopirali? Zamijenite red 13 (pogledajte dolje) s tim novo kalibriranim analognim vrijednostima.

# ex: my_thresholds = [kalibrirane vrijednosti bi bile ovdje]

zamjenjuje se ovim:

moji_pragovi = [225, 2116, 3904, 5200, 6300, 7350, 8450, 9325, 10000, 10750, 11500, 12100, 12550, 13100, 13800, 14250]

Zatim dodajte sljedeći red koda poslije 23. reda (vidi dolje):

keypad.useCalibratedThresholds (my_thresholds)

dodaje se nakon 23. reda:

# ex: keypad.use_calibrated_thresholds (naziv vašeg niza)

čineći da redovi 22 do 24 na kraju izgledaju ovako:

# Ako se koriste kalibrirane vrijednosti, koristite_kalibrirane_pragove u nastavku:

# ex: keypad.use_calibrated_thresholds (naziv vašeg niza)

keypad.use_calibrated_thresholds (my_thresholds)

Nakon što to učinite, pokrenite kôd i isprobajte ga pritiskom na neke tipke! Slobodno prilagodite skicu primjera svojim projektima! Upamtite da read_keypad_with_timeout vraća dugme pritisnuto kao znak i vrijeme čekanja je postavljeno u milisekundama! Ako ne želite vremensko ograničenje, koristite tipkovnicu. NO_TIMEOUT konstanta.

Korak 8: Kako funkcionira tipkovnica s jednim pinom

Kako funkcioniše tastatura sa jednim pinom
Kako funkcioniše tastatura sa jednim pinom
Kako funkcioniše tastatura sa jednim pinom
Kako funkcioniše tastatura sa jednim pinom

Veći deo dizajna tastature sa jednim pinom zasnovan je na implementaciji delitelja napona Hari Wiguna -e za dobijanje jedinstvene analogne vrednosti za svaki taster na 16 -polnoj tastaturi. Dizajn jedne pin tastature ostaje uglavnom isti, sa nekoliko izmjena. Ako želite odličan vodič o tome kako funkcionira tipkovnica s jednim pinom, slobodno pogledajte odličan video Hari Wiguna ovdje!

Korak 9: Zaključak

Zaključak
Zaključak

U ovom uputstvu opisali smo kako započeti s vašom pločom One Pin Keypad. Sada, znatiželjnici među vama možda su se zapitali zašto primjer skeča readKeypadInstantanta nije nikada korišten, razlog je to što nije toliko koristan, jer se dugme mora pritisnuti kada se pozove, funkcija readKeypadInstantaneous () se koristi prvenstveno za pojednostavljenje readKeypadWithTimeout () u biblioteci. Ako vam upadne u oči, slobodno ga isprobajte. Happy Hacking!

Ako imate pitanja, ostavite komentar ispod ili nam pošaljite e -poruku na adresu [email protected]. Sve najbolje, Progetto Company P. S. Kao što je obećano, veza do Eagle Files -a odbora.

Preporučuje se: