Lekce 2: Červené tlačítko LED

Objektivní

Použijte Grove - tlačítko s červenou LED pro ovládání blikání LED a umožnění bzučáku generovat různé zvukové efekty.

Hardwarový požadavek

Připravit:

  • kabel microUSB
  • Raspberry Pi 3 Model B
  • Počítač

Součástí sady

  • Grove Base Hat
  • Grove kabel
  • Grove - tlačítko s červenou LED
  • Grove - bzučák

Hardwarové připojení

Krok 1. Pomocí kabelu Grove připojte Grove - Buzzer k portu PWM a červené tlačítko LED Grove - D5 na Base Hat a nasaďte kryt na Raspberry Pi.

Krok 2. Připojte Raspberry Pi ke zdroji napájení pomocí kabelu microUSB.

programování

Krok 1 : Zadejte níže uvedené příkazy a vytvořte soubor Pythonu

 cd grove.py
nano lesson_2.py

Krok 2 : Zkopírujte níže uvedený kód

 #! / usr / bin / env python

čas importu
z importu mraa getGpioLookup
z upm import pyupm_buzzer jako upmBuzzer

z tlačítka importu grove.button
z importu Grove.grove_ryb_led_button GroveLedButton

def main ():
    # Grove - LED tlačítko připojené k portu D5
    tlačítko = GroveLedButton (5)

    # Grove - bzučák připojený k portu PWM
    bzučák = upmBuzzer.Buzzer (getGpioLookup ('GPIO12'))

    def on_event (index, událost, tm):
        if event & Button.EV_SINGLE_CLICK:
            tisk („jedno kliknutí“)
            button.led.light (True)
            buzzer.playSound (upmBuzzer.BUZZER_DO, 500000)

        událost elif a tlačítko. EV_LONG_PRESS:
            tisk („dlouhé stisknutí“)
            button.led.light (False)
            buzzer.playSound (upmBuzzer.BUZZER_DO, 10 000 000)

    button.on_event = on_event

    zatímco je pravda:
        time.sleep (1)

pokud __name__ == '__main__':
    hlavní ()

Krok 3 : Spusťte program

 sudo chmod + x lesson_2.py
sudo ./lesson_2.py

Úspěch

Pokud vše půjde dobře, zjistíte, že po dlouhém podržení tlačítka LED zhasne a bzučák vydá dlouhý zvuk „Do“. Po jednom stisknutí se však LED rozsvítí a bzučák vydá krátký zvuk „Do“.

 pi @ raspberrypi: ~ / grove.py $ sudo ./lesson_2.py
jediným kliknutím
jediným kliknutím
jediným kliknutím
dlouhé stisknutí
jediným kliknutím
dlouhé stisknutí
dlouhé stisknutí
Traceback (poslední hovor poslední):
  Soubor "./lesson2.py", řádek 34, v
    hlavní ()
  Soubor "./lesson2.py", řádek 31, hlavní
    time.sleep (1)
Přerušení klávesnice
^ Cpi @ raspberrypi: ~ / grove.py $ 

Obsah

zveme vás ke spolupráci!