2 spôsoby, ako pridať tlačidlo do projektu Raspberry Pi

2 spôsoby, ako pridať tlačidlo do projektu Raspberry Pi

Naučiť sa používať piny GPIO na svojom Raspberry Pi otvára celý svet možností. Základné princípy získané prostredníctvom začiatočníckych projektov pripravujú cestu k užitočným znalostiam elektroniky a programovania pre domácich majstrov.





Tento tutoriál vám ukáže dva spôsoby, ako pridať tlačidlo do projektu Raspberry Pi. Toto tlačidlo bude slúžiť na ovládanie LED diódy. Písomné pokyny sú k dispozícii pod videom.





Budete potrebovať

Ak chcete začať, uistite sa, že máte nasledujúce komponenty:





  • 1 x Raspberry Pi (bude stačiť čokoľvek, v tomto návode sa používa model 3B)
  • 1 x tlačidlo
  • 1 x LED dióda
  • 1 x 220 ohmový odpor (Vyššie hodnoty sú v poriadku, vaša LED dióda bude iba slabšia)
  • 1 x Breadboard
  • Pripojte drôty

Po zhromaždení by ste mali mať komponenty, ktoré vyzerajú asi takto:

Budete tiež potrebovať kartu SD s nainštalovaným operačným systémom Raspbian. Najrýchlejší spôsob, ako to dosiahnuť, je obrázok NOOBS (New Out Of the Box Software). Pokyny, ako to urobiť, nájdete v tomto videu:



Nastavenie obvodu

Na obvodovanie budete používať GPIO piny Pi, a ak ich nepoznáte, naše sprievodca po GPIO pinoch Raspberry Pi pomôže. Okruh je tu takmer rovnaký ako v našom predchádzajúcom LED projekt Raspberry Pi , s pridaním tlačidla, ktoré budete používať dnes.

Nastavte svoj obvod podľa tohto diagramu:





  • The 5v a GND kolíky sa pripájajú k napájacím lištám nepájivého poľa.
  • Kolík 12 (GPIO 18) sa pripája k kladnému ramenu LED.
  • Jedna noha z odpor sa pripája k negatívnej nohe diódy LED a druhá noha sa pripevňuje k uzemňovacej lište nepájivej dosky.
  • Kolík 16 (GPIO 23) pripevňuje sa na jednu stranu gombíka, druhá strana sa pripevňuje k uzemňovacej lište nepájivej dosky.

Hneď po nastavení by mal vyzerať takto:

Skontrolujte obvod a uistite sa, že je správny, a potom zapnite Raspberry Pi.





Metóda 1: Knižnica RPi.GPIO

Akonáhle sa Pi naštartuje, prejdite do ponuky a zvoľte Programovanie> IDE Thonny Python . Otvorí sa nový skript Pythonu. Ak ste v Pythone úplní nováčikovia, je to skvelý jazyk pre začiatočníkov a existuje veľa skvelých miest, kde sa o Pythone môžete dozvedieť viac, až budete s týmto návodom hotoví!

Začnite importovaním knižnice RPi.GPIO a nastavením režimu dosky.

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)

Teraz deklarujte premenné pre čísla diód LED a tlačidiel.

ledPin = 12
buttonPin = 16

Všimnite si toho, pretože pretože máme režim dosky nastavený na DOSKA používame skôr čísla pinov než čísla GPIO. Ak je to pre vás mätúce, graf pinov Raspberry Pi vám môže pomôcť to objasniť.

Nastavenie tlačidla

Je čas nastaviť piny GPIO. Kolík LED nastavte na výstup a kolík tlačidla na vstup pomocou výsuvného odporu

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

Text za GPIO.IN odkazuje na súbor vnútorný výsuvný odpor z Raspberry Pi. Musíte to povoliť, aby ste z tlačidla získali čisté čítanie. Pretože tlačidlo smeruje k uzemňovaciemu kolíku, potrebujeme vysúvací odpor, ktorý by držal vstupný kolík HIGH, kým ho nestlačíte.

Predtým, ako pôjdeme ďalej, pozrime sa na výsuvné a sťahovacie odpory.

Prestávka: Vyťahovacie/sťahovacie odpory

Keď nakonfigurujete vstup GPIO PIN, tento pin načíta a určí jeho stav. V tomto obvode musíte prečítať, či je kolík VYSOKÉ alebo NÍZKE na spustenie LED diódy pri stlačení tlačidla. Bolo by to jednoduché, keby to boli jediné stavy, ktoré môže pin mať, ale bohužiaľ existuje tretí stav: PLÁVAJÚCE .

Plávajúci kolík má hodnotu medzi vysokým a nízkym, čo spôsobuje, že vstup funguje nepredvídateľne. Riešia to vyťahovacie/sťahovacie odpory.

Vyššie uvedený obrázok je zjednodušený diagram tlačidla a Raspberry Pi. Kolík GPIO sa pripája k zemi pomocou tlačidla. Vnútorný výsuvný odpor pripája kolík GPIO k vnútornému napájaniu Pi. Tento prúd tečie a kolík je bezpečne vytiahnutý až do VYSOKÉHO.

Keď stlačíte tlačidlo, kolík GPIO sa pripojí priamo k uzemňovaciemu kolíku a tlačidlo bude nízko.

Výsuvné odpory slúžia na pripojenie spínača k napájaciemu kolíku. Interný odpor tentoraz pripája kolík GPIO k zemi a drží ho LOW, kým nestlačíte tlačidlo.

Teória rezistorov vyťahovania a sťahovania nadol je na prvý pohľad mätúca, ale dôležité znalosti, ktoré by ste pri práci s mikrokontrolérmi mali mať. Ak tomu zatiaľ celkom nerozumiete, nebojte sa!

Pokračujme tam, kde sme skončili.

Programová slučka

Ďalej nastavte programovú slučku:

while True:
buttonState = GPIO.input(buttonPin)
if buttonState == False:
GPIO.output(ledPin, GPIO.HIGH)
else:
GPIO.output(ledPin, GPIO.LOW)

The kým Pravda loop nepretržite v ňom spúšťa kód, kým neukončíme program. Zakaždým, keď sa slučka zmení, aktualizuje buttonState prečítaním vstupu z buttonPin . Kým tlačidlo nie je stlačené, zostane VYSOKÉ .

Akonáhle je tlačidlo stlačené, buttonState sa stáva NÍZKE . Tým sa spustí ak vyhlásenie , pretože Falošné je to isté ako NÍZKE , a LED sa rozsvieti. The inak vyhlásenie vypne LED diódu vždy, keď buttonPin nie je False.

Uložte a spustite skript

Skript uložte kliknutím Súbor> Uložiť ako a výber názvu súboru. Náčrt môžete spustiť kliknutím na zelené hrať na paneli s nástrojmi Thonny.

Teraz stlačte tlačidlo a kontrolka LED by sa mala rozsvietiť! Stlačte červenú Prestaň program kedykoľvek zastavíte

Ak máte problémy, dôkladne skontrolujte chyby v nastavení kódu a obvodu a skúste to znova.

Metóda 2: Nulová knižnica GPIO

Knižnica RPi.GPIO je fantastická, ale v bloku je nové dieťa. Knižnica GPIO Zero bola vytvoril komunitný manažér Raspberry Pi Ben Nuttall s cieľom zjednodušiť kód a ľahšie ho čítať a písať.

Na vyskúšanie novej knižnice otvorte nový súbor Thonny a importujte knižnicu.

from gpiozero import LED, Button
from signal import pause

Všimnete si, že ste neimportovali celú knižnicu. Pretože používate iba diódu LED a tlačidlo, v skripte potrebujete iba tie moduly. Tiež dovážame Pauza zo signálnej knižnice, ktorá je knižnicou Pythonu na správu udalostí.

Nastavenie pinov je s GPIO Zero oveľa jednoduchšie:

led = LED(18)
button = Button(23)

Pretože knižnica GPIO Zero obsahuje moduly pre LED a tlačidlo, nemusíte nastavovať vstupy a výstupy ako predtým. Všimnite si, že aj keď sa kolíky nezmenili, čísla tu sú iné ako vyššie. Dôvodom je, že GPIO Zero používa iba čísla pinov GPIO (tiež známe ako čísla Broadcom alebo BCM).

ako získať google v roku

Zvyšok scenára sú iba tri riadky:

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

The pauza() call here jednoducho zastaví ukončenie skriptu, keď dosiahne dno. Udalosti s dvoma tlačidlami sa spustia vždy, keď je tlačidlo stlačené a uvoľnené. Uložte a spustite skript a uvidíte rovnaký výsledok ako predtým!

Dva spôsoby, ako pridať tlačidlo k Raspberry Pi

Z dvoch spôsobov nastavenia tlačidla sa zdá byť najľahšia metóda GPIO Zero. Stále stojí za to dozvedieť sa o knižnici RPi.GPIO as väčšina začiatočníckych projektov Raspberry Pi použi to. Tak jednoducho, ako je tento projekt, znalosti môžu byť použité na množstvo vecí.

Použitie pinov GPIO je úžasný spôsob, ako sa učiť a vymýšľať vlastné zariadenia, ale zďaleka to nie je všetko, čo môžete s Pi robiť. Náš neoficiálny sprievodca Raspberry Pi je plný kreatívnych nápadov a návodov, ktoré si môžete vyskúšať sami! Pozrite sa na ďalší takýto návod ako vytvoriť tlačidlo pripojené k sieti Wi-Fi .

zdieľam zdieľam Tweet E -mail 5 tipov, ako nabiť svoje počítače VirtualBox Linux

Ste unavení z nízkeho výkonu, ktorý ponúkajú virtuálne počítače? Tu je to, čo by ste mali urobiť, aby ste zvýšili výkon svojho VirtualBoxu.

Čítajte ďalej
Súvisiace témy
  • DIY
  • Malinový koláč
  • Python
  • GPIO
  • Návody na projekt DIY
O autorovi Ian Buckley(216 publikovaných článkov)

Ian Buckley je nezávislý novinár, hudobník, performer a producent videa žijúci v Berlíne v Nemecku. Keď práve nepíše alebo je na pódiu, pohráva si s elektronikou alebo kódom pre domácich majstrov v nádeji, že sa stane šialeným vedcom.

Viac od Iana Buckleyho

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné elektronické knihy a exkluzívne ponuky!

Kliknutím sem sa prihlásite na odber
Kategórie Diy