2 způsoby, jak přidat tlačítko do projektu Raspberry Pi

  • Joseph Goodman
  • 0
  • 1146
  • 194
reklama

Naučit se používat kolíky GPIO na Raspberry Pi otevírá celý svět možností. Základní principy získané prostřednictvím projektů pro začátečníky připravují cestu k užitečným znalostem elektroniky pro kutily i programování.

Tento tutoriál vám ukáže dva způsoby, jak přidat tlačítko do projektu Raspberry Pi. Tlačítko se použije k ovládání LED. Pod videem jsou k dispozici písemné pokyny.

Budete potřebovat

Nejprve se ujistěte, že máte následující součásti:

  • 1 x Raspberry Pi (Každý, kdo to udělá, v tomto tutoriálu se používá model 3B)
  • 1 x tlačítko
  • 1 x LED
  • 1 x 220 Ohmový rezistor (Vyšší hodnoty jsou v pořádku, vaše LED bude jen stmívatelnější)
  • 1 x prkénko
  • Zapojte dráty

Po shromáždění byste měli mít komponenty, které vypadají asi takto:

Budete také potřebovat SD kartu s nainstalovaným operačním systémem Raspbian. Nejrychlejším způsobem, jak toho dosáhnout, je obrázek NOOBS (New Out of the Box Software). Pokyny k tomu jsou k dispozici v tomto videu:

Nastavení obvodu

K vytvoření okruhu budete používat kolíky GPIO na Pi a pokud s nimi neznáte, pomůže vám průvodce k pinům GPIO pro Raspberry Pi. Okruh je zde téměř stejný jako v našem předchozím projektu Raspberry Pi LED, s přidáním tlačítka, které budete dnes používat.

Nastavte svůj obvod podle tohoto schématu:

  • 5v a GND kolíky se připojují na napájecí kolejnice prkénku.
  • Pin 12 (GPIO 18) připojuje se k pozitivnímu úseku LED.
  • Jedna noha odpor připevňuje se k zápornému ramenu LED a druhá noha se připevňuje k zemní kolejnici prkénku.
  • Pin 16 (GPIO 23) připevňuje se k jedné straně tlačítka, druhá strana se připevňuje k zemní kolejnici prkénko.

Jakmile je nastaveno, mělo by to vypadat takto:

Zkontrolujte obvod a ujistěte se, že je správný, a poté zapněte Raspberry Pi.

Metoda 1: Knihovna RPi.GPIO

Jakmile se systém Pi zavede, přejděte do nabídky a vyberte možnost Programování> Thonny Python IDE. Otevře se nový skript Pythonu. Pokud jste v Pythonu úplně nováčkem, je to skvělý jazyk pro začátečníky a existuje mnoho skvělých míst, kde se dozvíte více o Pythonu, až budete hotovi s tímto tutoriálem!

Začněte importem knihovny RPi.GPIO a nastavením režimu desky.

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

Nyní deklarujte proměnné pro čísla LED a čísel pinů tlačítek.

ledPin = 12 buttonPin = 16 

Všimněte si, že protože máme režim desky nastaven na PRKNO používáme spíše čísla pinů než čísla GPIO. Pokud je to pro vás matoucí, může vám to vysvětlit graf Raspberry Pi.

Nastavení tlačítka

Je čas nastavit kolíky GPIO. Nastavte pin LED na výstup a knoflík tlačítka na vstup s pull-up rezistorem

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

Text za GPIO.IN odkazuje na vnitřní pull-up rezistor Raspberry Pi. Musíte to povolit, abyste získali čisté čtení z tlačítka. Protože tlačítko jde na uzemňovací kolík, potřebujeme pull-up rezistor, který drží vstupní kolík VYSOKÉ, dokud jej nestisknete.

Než budeme pokračovat, pojďme se podívat na pull-up a pull-down resistors.

Přerušení: Vytáhněte / zatáhněte rezistory

Když nakonfigurujete pin GPIO na vstup, přečte tento pin, aby určil jeho stav. V tomto obvodu musíte přečíst, zda je pin VYSOKÝ nebo NÍZKÝ pro spuštění LED při stisknutí tlačítka. To by bylo jednoduché, kdyby to byly jediné státy, které může mít špendlík, ale bohužel existuje třetí stát: PLOVOUCÍ.

Plovoucí kolík má hodnotu mezi vysokou a nízkou, což způsobuje, že vstup nepředvídatelně působí. Odpory tahem nahoru / dolů se to vyřeší.

Výše uvedený obrázek je zjednodušený diagram tlačítka a Raspberry Pi. Kolík GPIO se pomocí tlačítka spojí se zemí. Interní pull-up rezistor připojuje pin GPIO k internímu zdroji napájení Pi. Tento proud teče a kolík je bezpečně vytažen na VYSOKÝ.

Když stisknete tlačítko, připojí se pin GPIO přímo k uzemňovacímu kolíku a tlačítko bude číst nízko.

Pokud je spínač připojen k napájecímu kolíku, jsou k dispozici tahové odpory. Tentokrát interní rezistor připojí pin GPIO k zemi a drží v LOW, dokud nestisknete tlačítko.

Teorie tahu nahoru a dolů tahem je na první pohled matoucí, ale důležité znalosti, které musíte mít při práci s mikrokontroléry. Prozatím, pokud tomu úplně nerozumíte, nebojte se!

Pokračujme tam, kde jsme skončili.

Programová smyčka

Dále nastavte programovou smyčku:

zatímco True: buttonState = GPIO.input (buttonPin), pokud buttonState == False: GPIO.output (ledPin, GPIO.HIGH) jinde: GPIO.output (ledPin, GPIO.LOW) 

zatímco je pravda loop v něm neustále spouští kód, dokud program neukončíme. Pokaždé, když to smyčky aktualizuje buttonState čtením vstupu z buttonPin. Zatímco tlačítko není stisknuté, zůstane VYSOKÝ.

Po stisknutí tlačítka, buttonState se stává NÍZKÝ. Tím se spustí pokud prohlášení, od té doby Nepravdivé je stejné jako NÍZKÝ, a LED se rozsvítí. jiný příkaz vypne LED, kdykoli buttonPin není False.

Uložte a spusťte skript

Skript uložte kliknutím Soubor> Uložit jako a výběr názvu souboru. Skicu můžete spustit kliknutím na zelenou Hrát si na panelu nástrojů Thonny.

Nyní stiskněte tlačítko a vaše LED by se měla rozsvítit! Stiskněte červenou Stop kdykoli program zastavíte

Pokud máte potíže, pečlivě zkontrolujte chyby v nastavení kódu a obvodu a zkuste to znovu.

Metoda 2: GPIO Zero Library

Knihovna RPi.GPIO je fantastická, ale v bloku je nové dítě. Knihovnu GPIO Zero vytvořil komunitní manažer Raspberry Pi Ben Nuttall s cílem zjednodušit kód a usnadnit jeho čtení a zápis..

Chcete-li vyzkoušet novou knihovnu, otevřete nový soubor Thonny a importujte knihovnu.

z gpiozero import LED, tlačítko z pauzy importu signálu 

Všimnete si, že jste neimportovali celou knihovnu. Protože používáte pouze LED a tlačítko, potřebujete pouze ty moduly ve skriptu. Také dovážíme Pauza z knihovny signálů, což je knihovna Python pro správu událostí.

Nastavení čepů je s GPIO Zero mnohem snazší:

led = tlačítko LED (18) = tlačítko (23) 

Protože knihovna GPIO Zero má moduly pro LED a tlačítko, nemusíte nastavovat vstupy a výstupy jako dříve. Všimnete si, že ačkoli se kolíky nezměnily, čísla zde jsou jiná než výše. Je to proto, že GPIO Zero používá pouze čísla pinů GPIO (také známá jako Broadcom nebo BCM čísla)..

Zbytek skriptu jsou pouze tři řádky:

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

pauza() volání zde jednoduše zastaví ukončení skriptu, když dosáhne dna. Události dvou tlačítek se spustí vždy, když je tlačítko stisknuto a uvolněno. Uložte a spusťte skript a uvidíte stejný výsledek jako dříve!

Dva způsoby, jak přidat tlačítko Raspberry Pi

Z těchto dvou způsobů nastavení tlačítka se zdá být nejjednodušší metoda GPIO Zero. Stále stojí za to se dozvědět o knihovně RPi.GPIO, protože ji používá většina začátečníků projektů Raspberry Pi. Tak jednoduché, jak je tento projekt, znalosti lze použít pro řadu věcí.

Použití pinů GPIO je skvělý způsob, jak se učit a vymýšlet svá vlastní zařízení, ale je to daleko od všeho, co můžete udělat s Pi. Náš neoficiální průvodce Raspberry Pi Raspberry Pi: Neoficiální výuka Raspberry Pi: Neoficiální výuka Ať už jste současným majitelem Pi, který se chce dozvědět více, nebo potenciálním vlastníkem tohoto zařízení velikosti kreditní karty, nejedná se o průvodce chceš minout. se prolíná s kreativními nápady a návody, které můžete vyzkoušet sami! U jiného tutoriálu, jako je tento, se podívejte, jak si vyrobit tlačítko připojené k Wi-Fi Jak si vytvořit vlastní tlačítko připojené k Wi-Fi pomocí ESP8266 Jak si vytvořit své vlastní tlačítko připojené k Wi-Fi pomocí ESP8266 V tomto tutoriálu se naučíte, jak vytvořit tlačítko s podporou Wi-Fi pomocí NodeMCU a IFTTT. .




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.