2 načina za dodavanje gumba vašem Raspberry Pi projektu

  • Mark Lucas
  • 0
  • 4853
  • 771
Oglas

Naučite koristiti GPIO igle na vašem Raspberry Pi otvara čitav svijet mogućnosti. Osnovni principi naučeni kroz početničke projekte probijaju put do korisnog znanja kako od samih elektronika, tako i od programiranja.

Ovaj će vam vodič pokazati dva načina dodavanja gumba vašem Raspberry Pi projektu. Gumb će se koristiti za upravljanje LED. Pismene upute dostupne su ispod videozapisa.

Trebat će vam

Za početak provjerite da imate sljedeće komponente:

  • 1 x Raspberry Pi (Bilo što učiniti, model 3B se koristi u ovom vodiču)
  • 1 x tipka
  • 1 x LED
  • Otpornik 1 x 220 Ohm (veće vrijednosti su u redu, LED će vam biti samo svjetliji)
  • 1 x krušna ploča
  • Priključite žice

Kad se jednom okupe, trebali biste imati sastavne dijelove koji izgledaju ovako:

Trebat će vam i SD kartica s instaliranim Raspbian operativnim sustavom. Najbrži način za to je slika NOOBS (New Out Of Box Software). Upute za to su dostupne u ovom videu:

Postavljanje kruga

Koristite GPIO igle Pi za izradu kruga, a ako niste upoznati s njima, pomoći će vam naš vodič za Raspberry Pi GPIO igle. Ovdje je krug gotovo isti kao u našem prethodnom Raspberry Pi LED projektu, uz dodatak gumba koji ćete koristiti danas.

Postavite svoj krug prema ovom dijagramu:

  • 5v i GND igle se spajaju na šine napajanja ploče.
  • Pin 12 (GPIO 18) spaja na pozitivnu nogu LED.
  • Jedna noga otpornik pričvršćuje se na negativnu nogu LED-a, a druga noga se pričvršćuje na uzemljenje šine.
  • Pin 16 (GPIO 23) pričvršćuje se s jedne strane gumba, druga strana se pričvršćuje na uzemljenje šine.

Jednom kada je postavljen, evo kako to treba izgledati:

Provjerite svoj krug i provjerite je li ispravan, a zatim uključite Raspberry Pi.

1. metoda: Biblioteka RPi.GPIO

Nakon što se Pi digne, idite na izbornik i odaberite Programiranje> IDE Thonny Python. Otvorit će se nova Python skripta. Ako ste potpuno novi u Pythonu, to je sjajan jezik za početnike i postoji mnogo sjajnih mjesta za naučiti više o Python-u nakon što završite s ovim vodičem.!

Započnite uvozom RPi.GPIO biblioteke i postavljanjem načina ploče.

uveze RPi.GPIO kao GPIO GPIO.setmode (GPIO.BOARD) 

Sada deklarirajte varijable za brojeve pinova LED i gumba.

ledPin = 12 buttonPin = 16 

Imajte na umu da, budući da je postavljen način rada ploče ODBOR mi koristimo pin brojeve a ne GPIO brojeve. Ako vas to zbunjuje, rascjepna karta Raspberry Pi može vam pomoći u uklanjanju istih.

Postavljanje gumba

Vrijeme je za postavljanje GPIO pinova. Podesite LED pin na izlaz, a pin gumba na ulaz s podizačem otpornika

GPIO.setup (ledPin, GPIO.OUT) GPIO.setup (buttonPin, GPIO.IN, pull_up_down = GPIO.PUD_UP) 

Tekst nakon GPIO.IN odnosi se na unutarnji vučni otpornik Raspberry Pi. To morate omogućiti da biste s gumba očistili čistu čitanost. Budući da gumb ide na uzemljenje, potreban nam je potisni otpornik da bi ulazni pin bio HIGH dok ne pritisnete.

Prije nego što nastavimo, pogledajmo otporne i otporne otpornike.

Intermit: Povucite / spustite otpornike

Kad konfigurirate GPIO pin za unos, čita ga da bi odredio njegovo stanje. U ovom krugu trebate pročitati da li je igla HIGH ili LOW za aktiviranje LED-a kada se gumb pritisne. To bi bilo jednostavno kada bi to bile jedine države koje pin može imati, ali nažalost, postoji i treće stanje: PLUTAJUĆI.

Plutajući pin ima vrijednost između visokog i niskog, zbog čega ulaz djeluje nepredvidivo. Povlačenje / spuštanje otpornika to rješava.

Gornja slika je pojednostavljeni dijagram gumba i Raspberry Pi. GPIO pin se preko gumba povezuje s masom. Unutarnji povlačni otpornik pričvršćuje GPIO pin na unutarnje Pi napajanje. Ta struja teče i osovinica se sigurno povuče do VISOKOG.

Kada pritisnete tipku, GPIO pin se spaja izravno na uzemljenje, a gumb se čita na niskom.

Otporni otpornici postoje kada je prekidač spojen na utikač. Ovog puta, unutrašnji otpornik pričvršćuje GPIO pin na zemlju, držeći NISKO dok ne pritisnete gumb.

Teorija povlačenja i spuštanja otpornika na prvi je pogled zbunjujuća, ali važno je znanje koje treba imati pri radu s mikrokontrolerima. Za sada, ako ga baš i ne razumijete, ne brinite!

Nastavimo tamo gdje smo stali.

Programska petlja

Zatim postavite petlju programa:

dok je True: buttonState = GPIO.input (buttonPin) ako buttonState == False: GPIO.output (ledPin, GPIO.HIGH) else: GPIO.output (ledPin, GPIO.LOW) 

dok Istina petlja kontinuirano pokreće kod unutar nje dok ne okončamo program. Svaki put kada se zatvori, ažurira buttonState čitanjem ulaza iz buttonPin. Dok se ne pritisne gumb, ostaje HIGH.

Jednom kada pritisnete gumb, buttonState postaje LOW. To pokreće ako izjava, od lažan isto je kao LOW, a LED se pali. drugo izjava isključuje LED kad god gumbPin nije lažan.

Spremite i pokrenite svoju skriptu

Spremite svoju skriptu klikom Datoteka> Spremi kao i odabir naziva datoteke. Skicu možete pokrenuti klikom na zeleno igra gumba na alatnoj traci Thonny.

Sada pritisnite gumb i LED vam mora svijetliti! Pritisnite crvenu Stop bilo kada zaustaviti program

Ako imate poteškoća, provjerite ima li koda i kruga postavljanje pogrešaka i pokušajte ponovo.

2. metoda: GPIO Zero knjižnica

Knjižnica RPi.GPIO je fantastična, ali na bloku je novo dijete. GPIO Zero Library stvorio je menadžer zajednice Raspberry Pi Ben Nuttall s namjerom da kôd pojednostavi i olakša čitanje i pisanje.

Da biste isprobali novu knjižnicu, otvorite novu datoteku Thonny i uvezite biblioteku.

s LED za uvoz gpiozero, gumb iz pauze za uvoz signala 

Primijetit ćete da niste uvezli cijelu knjižnicu. Budući da koristite samo LED i tipku, potrebni su vam samo oni moduli u skripti. Također uvozimo Pauza iz biblioteke signala, koja je Python knjižnica za upravljanje događajima.

Postavljanje igara je puno lakše uz GPIO Zero:

led = LED (18) tipka = gumb (23) 

Budući da biblioteka GPIO Zero ima module za LED i gumb, ne morate postavljati ulaze i izlaze kao prije. Primijetit ćete da iako se igle nisu promijenile, ovdje su brojevi različiti od gore. To je zato što GPIO Zero koristi samo GPIO PIN-ove brojeve (poznate i kao Broadcom ili BCM brojevi).

Ostatak skripte čine samo tri retka:

button.when_pression = led.on button.when_released = led.off pause () 

pauza() poziv ovdje jednostavno sprečava da skripta izlazi kad dosegne dno. Događaji s dva gumba pokreću se svaki put kada se gumb pritisne i otpusti. Spremite i pokrenite svoju skriptu i vidjet ćete isti rezultat kao i prije!

Dva načina za dodavanje gumba na Raspberry Pi

Iz dva načina postavljanja gumba, čini se da je metoda GPIO Zero najjednostavnija. Još uvijek vrijedi učiti o RPi.GPIO biblioteci jer je većina početnika Raspberry Pi projekata koristi. Koliko je ovaj projekt jednostavan, znanje se može upotrijebiti za brojne stvari.

Korištenje GPIO igle odličan je način da naučite i izmislite vlastite uređaje, ali to je daleko od svega što možete učiniti s Pi-om. Naš neslužbeni vodič za Raspberry Pi Raspberry Pi: Neslužbeni vodič Raspberry Pi: Neslužbeni vodič Bez obzira jeste li trenutni vlasnik Pi-a koji želi saznati više ili ste potencijalni vlasnik ovog uređaja veličine veličine kreditne kartice, ovo nije vodič želite propustiti. prepun je kreativnih ideja i tutorijala koje možete isprobati sami! Za drugi udžbenik poput ovog, pogledajte kako napraviti gumb za povezivanje s Wi-Fi-om Kako napraviti svoj vlastiti gumb za povezivanje s Wi-Fi-jem s ESP8266 Kako napraviti svoj vlastiti gumb za povezivanje s Wi-Fi-jem s ESP8266 U ovom ćete vodiču naučiti kako za izradu gumba s omogućenom Wi-Fi mrežom pomoću NodeMCU i IFTTT. .




Još ne komentari

O modernoj tehnologiji, jednostavnoj i pristupačnoj.
Vaš vodič u svijetu moderne tehnologije. Naučite kako koristiti tehnologije i uređaje koji nas okružuju svaki dan i naučite kako otkriti zanimljivosti na Internetu.