Raspberry Pi je ploča zasnovana na ARM arhitekturi zasnovana za elektroničke inženjere i hobiste. PI je jedna od trenutno najpouzdanijih platformi za razvoj projekata. S većom brzinom procesora i 1 GB RAM-a, PI se može koristiti za mnoge projekte visokog profila poput obrade slika i Interneta stvari.
Za izvođenje bilo kojeg od projekata visokog profila treba razumjeti osnovne funkcije PI-a. Zbog toga smo ovdje, pokrivat ćemo sve osnovne funkcionalnosti Raspberry Pi-a u ovim vodičima. U svakoj nastavnoj seriji razgovarat ćemo o jednoj od funkcija PI-a. Na kraju tutorijala moći ćete sami izvoditi projekte visokog profila. Provjerite ih za Početak rada s Raspberry Pi i Raspberry Pi konfiguracijom.
Uspostavljanje komunikacije između PI i korisnika vrlo je važno za dizajniranje projekata na PI. Za komunikaciju, PI mora uzimati ulaze od korisnika. U ovom drugom uputstvu iz serije PI povezati ćemo gumb na Raspberry Pi kako bismo od korisnika preuzeli ULAZE.
Ovdje ćemo spojiti gumb na jedan GPIO pin, a LED na drugi GPIO pin Raspberry Pi. Napisat ćemo program u PYTHON-u, kako bi neprekidno treptao LED, pritiskom na gumb od strane korisnika. LED će treptati uključivanjem i isključivanjem GPIO.
Prije nego što krenemo u programiranje, porazgovarajmo malo o LINUX-u i PYHTON-u.
LINUX:
LINUX je operativni sustav poput Windows-a. Izvršava sve osnovne funkcije koje Windows OS može raditi. Glavna razlika između njih je što je Linux softver otvorenog koda tamo gdje Windows nije. U osnovi to znači da je Linux besplatan, dok Windows nije. Linux OS možete preuzeti i upravljati besplatno, ali za preuzimanje izvornog Windows OS-a morate platiti novac.
Još jedna glavna razlika među njima je Linux OS koji se može 'modificirati' ulaganjem u kod, ali Windows OS ne može se mijenjati, što će dovesti do pravnih komplikacija. Dakle, svatko može uzeti Linux OS i može ga prilagoditi svojim zahtjevima kako bi stvorio vlastiti OS. Ali to ne možemo učiniti u sustavu Windows, OS Windows ima ograničenja koja vas sprečavaju u uređivanju OS-a.
Ovdje govorimo o Linuxu, jer, JESSIE LITE (Raspberry Pi OS) je OS zasnovan na LINUX-u, koji smo instalirali u uvodnom dijelu Raspberry Pi-a. PI OS je generiran na osnovi LINUX-a, tako da moramo znati nešto o naredbama za rad LINUX-a. O tim naredbama Linuxa razgovarat ćemo u sljedećim vodičima.
PITON:
Za razliku od LINUX-a, PYTHON je programski jezik poput C, C ++ i JAVA itd. Ti se jezici koriste za razvoj aplikacija. Sjetite se programskih jezika koji se izvode na operacijskom sustavu. Programski jezik ne možete pokrenuti bez OS-a. Dakle, OS je neovisan dok programski jezici ovise. Možete pokrenuti PYTHON, C, C ++ i JAVA na Linuxu i Windowsu.
Aplikacije koje razvijaju ovi programski jezici mogu biti igre, preglednici, aplikacije itd. Mi ćemo koristiti programski jezik PYTHON na našem PI-u, za dizajniranje projekata i manipulaciju GPIO-ima.
Razmotrit ćemo malo o PI GPIO prije nego što nastavimo dalje,
GPIO pribadače:


Kao što je prikazano na gornjoj slici, postoji 40 izlaznih pinova za PI. Ali kad pogledate drugu sliku, možete vidjeti da se svih 40 pin pin-a ne može programirati za našu upotrebu. Ovo je samo 26 GPIO pinova koje je moguće programirati. Te igle idu od GPIO2 do GPIO27.
Ovih 26 GPIO pinova može se programirati prema potrebi. Neke od ovih pribadača također obavljaju neke posebne funkcije, o tome ćemo kasnije. Uz poseban GPIO po strani, preostaje nam 17 GPIO (svijetlozeleni Cirl).
Svaki od ovih 17 GPIO pinova može isporučiti najviše 15 mA struje. A zbroj struja iz svih GPIO ne može premašiti 50mA. Tako iz svakog od ovih GPIO pinova možemo u prosjeku izvući najviše 3 mA. Stoga se ne treba petljati u te stvari ako ne znate što radite.

Potrebne komponente:
Ovdje koristimo Raspberry Pi 2 Model B s Raspbian Jessie OS. Svi osnovni hardverski i softverski zahtjevi su prethodno raspravljeni, možete ih potražiti u Uvodu o Raspberry Pi, osim onoga što nam treba:
- Spojne igle
- Otpornik od 220Ω ili 1KΩ
- LED
- Dugme
- Daska za kruh
Objašnjenje sklopa:

Kao što je prikazano na shemi spojeva, spojit ćemo LED na PIN35 (GPIO19) i gumb na PIN37 (GPIO26). Kao što je ranije rečeno, ne možemo izvući više od 15 mA ni iz jednog od ovih pinova, pa kako bismo ograničili struju, LED-om serijski priključujemo otpor od 220Ω ili 1KΩ.
Radno objašnjenje:
Kad se sve poveže, možemo UKLJUČITI Raspberry Pi da napišemo program u PYHTON-u i izvršimo ga. (Da biste znali kako koristiti PYTHON, idite na PI BLINKY).
Razgovarat ćemo o nekoliko naredbi koje ćemo koristiti u programu PYHTON.
Uvest ćemo GPIO datoteku iz knjižnice, donja funkcija omogućuje nam programiranje GPIO pinova PI. Također smo preimenovali "GPIO" u "IO", pa ćemo u programu kad god se želimo pozvati na GPIO pinove upotrijebiti riječ "IO".
uvezi RPi.GPIO kao IO
Ponekad, kada GPIO pinovi, koje pokušavamo koristiti, možda rade neke druge funkcije. U tom ćemo slučaju primiti upozorenja tijekom izvršavanja programa. Ispod naredba govori PI-u da zanemari upozorenja i nastavi s programom.
IO.setwarnings (False)
GPIO pinove PI možemo uputiti bilo brojem pina na ploči ili brojem njihove funkcije. U pin dijagramu možete vidjeti 'PIN 37' na ploči je 'GPIO26'. Dakle, ovdje kažemo ili ćemo ovdje predstavljati pin s '37' ili '26'.
IO.setmode (IO.BCM)
Kao ulazni pin postavljamo GPIO26 (ili PIN37). Pritiskom tipke prepoznat ćemo ovaj pin.
IO.setup (26, IO.IN)
Dok se 1: koristi za beskonačnu petlju. Pomoću ove naredbe naredbe unutar ove petlje kontinuirano će se izvršavati.
Jednom kad se program izvrši, LED koja je spojena na GPIO19 (PIN35) trepće kad god se pritisne tipka. Nakon otpuštanja LED-a, ponovno će se isključiti.
