Raspberry Pi to płyta oparta na architekturze ARM przeznaczona dla elektroników i hobbystów. PI jest obecnie jedną z najbardziej zaufanych platform do tworzenia projektów. Dzięki większej szybkości procesora i 1 GB pamięci RAM PI może być używany w wielu ważnych projektach, takich jak przetwarzanie obrazu i Internet rzeczy.
Aby wykonać którykolwiek z ważnych projektów, należy zrozumieć podstawowe funkcje PI. W tych samouczkach omówimy wszystkie podstawowe funkcje Raspberry Pi. W każdym samouczku omówimy jedną z funkcji PI. Pod koniec tej serii samouczków Raspberry Pi będziesz mógł samodzielnie wykonywać ważne projekty. Przejdź przez poniższe samouczki:
- Pierwsze kroki z Raspberry Pi
- Konfiguracja Raspberry Pi
- Miga dioda LED
- Interfejs przycisków Raspberry Pi
- Generacja Raspberry Pi PWM
- Sterowanie silnikiem prądu stałego za pomocą Raspberry Pi
- Sterowanie silnikiem krokowym z Raspberry Pi
- Połączenie rejestru Shift z Raspberry Pi
W tym samouczku podłączymy pojemnościowy panel dotykowy do Raspberry Pi. Pojemnościowy touchpad ma 8 klawiszy od 1 do 8. Te klawisze nie są dokładnie klawiszami, są to Touch Sensitive Pads umieszczone na PCB. Kiedy dotykamy jednego z padów, następuje zmiana pojemności na ich powierzchni. Ta zmiana jest wychwytywana przez jednostkę sterującą, a jednostka sterująca w odpowiedzi wyciąga odpowiedni pin wysoko po stronie wyjściowej.
Dołączymy ten moduł czujnika pojemnościowego panelu dotykowego do Raspberry Pi, aby używać go jako urządzenia wejściowego dla PI.
Omówimy trochę o pinach GPIO Raspberry Pi, zanim przejdziemy dalej.
Piny GPIO:
Jak pokazano na powyższym rysunku, jest 40 pinów wyjściowych dla PI. Ale kiedy spojrzysz na drugi rysunek poniżej, zobaczysz, że nie wszystkie 40 pinów można zaprogramować do naszego użytku. To tylko 26 pinów GPIO, które można zaprogramować. Te piny przechodzą od GPIO2 do GPIO27.
Te 26 pinów GPIO można zaprogramować według potrzeb. Niektóre z tych pinów pełnią również pewne funkcje specjalne, o czym omówimy później. Po odłożeniu specjalnego GPIO pozostało 17 GPIO (kolor jasnozielony).
Każdy z tych 17 pinów GPIO może dostarczyć maksymalnie prąd 15 mA. A suma prądów ze wszystkich GPIO nie może przekroczyć 50mA. Możemy więc pobrać średnio maksymalnie 3 mA z każdego z tych pinów GPIO. Dlatego nie należy majstrować przy tych rzeczach, chyba że wiesz, co robisz.
Teraz kolejną ważną rzeczą jest to, że sterowanie logiką PI ma + 3,3 V, więc nie można podać więcej niż + 3,3 V logiki na pin GPIO PI. Jeśli podasz + 5V na którykolwiek pin GPIO PI, płytka zostanie uszkodzona. Musimy więc zasilać pojemnościowy panel dotykowy o + 3,3 V, aby uzyskać odpowiednie wyjścia logiczne dla PI.
Wymagane składniki:
Tutaj używamy Raspberry Pi 2 Model B z Raspbian Jessie OS. Wszystkie podstawowe wymagania sprzętowe i programowe zostały wcześniej omówione, możesz je sprawdzić we wprowadzeniu do Raspberry Pi, poza tym, czego potrzebujemy:
- Kołki łączące
- Pojemnościowy panel dotykowy
Schemat obwodu:
Połączenia, które są wykonane dla pojemnościowego interfejsu dotykowego, są pokazane na powyższym schemacie obwodu.
Objaśnienie działania i programowania:
Po podłączeniu wszystkiego zgodnie ze schematem obwodu, możemy włączyć PI, aby napisać program w PYHTON.
Porozmawiamy o kilku komendach, których będziemy używać w programie PYHTON, Zamierzamy zaimportować plik GPIO z biblioteki, poniższa funkcja umożliwia zaprogramowanie pinów GPIO PI. Zmieniamy również nazwę „GPIO” na „IO”, więc w programie zawsze, gdy będziemy chcieli odwołać się do pinów GPIO, użyjemy słowa „IO”.
importuj RPi.GPIO jako IO
Czasami, gdy piny GPIO, których próbujemy użyć, mogą wykonywać inne funkcje. W takim przypadku podczas wykonywania programu będziemy otrzymywać ostrzeżenia. Poniższe polecenie mówi PI, aby zignorował ostrzeżenia i kontynuował program.
IO.setwarnings (fałszywe)
Możemy odnosić się do pinów GPIO PI, albo przez numer pinu na płycie, albo przez numer ich funkcji. Tak jak „PIN 29” na płycie to „GPIO5”. Więc mówimy tutaj albo będziemy reprezentować pinezkę jako „29” lub „5”.
IO.setmode (IO.BCM)
Ustawiamy 8 pinów jako piny wejściowe. Wykryjemy 8 kluczowych wyjść z pojemnościowego panelu dotykowego.
IO.setup (21, IO.IN) IO.setup (20, IO.IN) IO.setup (16, IO.IN) IO.setup (12, IO.IN) IO.setup (25, IO.IN) IO.setup (24, IO.IN) IO.setup (23, IO.IN) IO.setup (18, IO.IN)
Jeśli warunek w nawiasach klamrowych jest prawdziwy, instrukcje wewnątrz pętli zostaną wykonane raz. Jeśli więc pin 21 GPIO przejdzie w stan wysoki, instrukcje wewnątrz pętli IF zostaną wykonane raz. Jeśli pin 21 GPIO nie przejdzie w stan wysoki, instrukcje wewnątrz pętli IF nie zostaną wykonane.
if (IO.input (21) == True):
Poniższe polecenie jest używane jako pętla wieczna, z tym poleceniem instrukcje wewnątrz tej pętli będą wykonywane w sposób ciągły.
Podczas gdy 1:
Po napisaniu poniższego programu w PYTHONIE i uruchomieniu go jesteśmy gotowi do pracy. Po dotknięciu pada moduł wyciąga odpowiedni kołek i ten wyzwalacz jest wykrywany przez PI. Po wykryciu PI drukuje odpowiedni klawisz na ekranie.
Stąd mamy interfejs pojemnościowy touchpad do PI.