Raspberry Pi je plošča na osnovi procesorja ARM, zasnovana za elektronske inženirje in ljubitelje. PI je zdaj ena najbolj zaupanja vrednih platform za razvoj projektov. Z večjo hitrostjo procesorja in 1 GB RAM-a se PI lahko uporablja za številne odmevne projekte, kot sta obdelava slik in Internet stvari.
Za izvajanje katerega koli od pomembnih projektov je treba razumeti osnovne funkcije PI. V teh vadnicah bomo obravnavali vse osnovne funkcije Raspberry Pi. V vsaki vaji bomo obravnavali eno od funkcij PI. Do konca te vadnice Raspberry Pi boste lahko sami izvajali odmevne projekte. Pojdite skozi spodnje vaje:
- Uvod v Raspberry Pi
- Konfiguracija Raspberry Pi
- LED utripa
- Vmesnik gumba Raspberry Pi
- Generacija Raspberry Pi PWM
- Nadzor enosmernega motorja z uporabo Raspberry Pi
- Nadzor koračnega motorja z Raspberry Pi
V tej vadnici o premiknem registru Raspberry Pi bomo povezali Shift Register s Pi. PI ima 26 zatičev GPIO, toda ko delamo projekte, kot je 3D tiskalnik, izhodni zatiči, ki jih zagotavlja PI, niso dovolj. Torej potrebujemo več izhodnih zatičev, za dodajanje več izhodnih zatičev v PI dodamo Shift Register Chip. Čip Shift Register zaporedno zajema podatke s plošče PI in daje vzporedni izhod. Čip je 8-bitni, zato čip zaporedno vzame 8-bitni PI in nato 8-bitni logični izhod zagotavlja skozi 8 izhodnih zatičev.
Za 8-bitni register premika bomo uporabili IC 74HC595. To je 16 PIN čip. Konfiguracija čipov čipa je razložena pozneje v tej vadnici.
V tej vadnici bomo uporabili tri PI-jeve GPIO nožice, da dobimo osem izhodov iz Shift Register Chip. Tu ne pozabite, da so PIN-ji čipa namenjeni samo za izhod, zato na izhod čipa ne moremo priključiti senzorjev in pričakujemo, da jih bo PI prebral. Na izhodu čipa so priključene LED, da vidijo 8-bitne podatke, poslane iz PI.
Pred nadaljevanjem se bomo pogovorili o Raspberry Pi GPIO Pins,
V Raspberry Pi 2 je 40 izhodnih zatičev GPIO. Toda od 40 je mogoče programirati le 26 zatičev GPIO (GPIO2 do GPIO27). Nekateri od teh zatičev opravljajo nekatere posebne funkcije. Ob posebnem GPIO, ki je na strani, imamo le še 17 GPIO. Vsak od teh 17 GPIO zatičev lahko odda največ 15 mA toka. In vsota tokov iz vseh GPIO zatičev ne sme presegati 50 mA. Če želite izvedeti več o zatičih GPIO, pojdite skozi: LED utripa z Raspberry Pi
Potrebne komponente:
Tu uporabljamo model Raspberry Pi 2 Model B z OS Raspbian Jessie. Vse osnovne zahteve glede strojne in programske opreme so že obravnavane, poglejte jih v uvodu Raspberry Pi, razen tistega, ki ga potrebujemo:
- Povezovalni zatiči
- Upor 220Ω ali 1KΩ (6)
- LED (8)
- 0,01µF kondenzator
- 74HC595 IC
- Odbor za kruh
Shema vezja:
Shift Register IC 74HC595:
Pogovorimo se o PINIH SHIFT REGISTER, ki jih bomo uporabili tukaj.
Pripnite ime |
Opis |
Q0 - Q7 |
So izhodni zatiči (rdeči pravokotnik), kjer dobimo 8-bitne podatke vzporedno. Na njih bomo povezali osem LED, da si bomo ogledali vzporedni izhod. |
Podatkovni zatič (DS) |
Prvi podatki se pošljejo bit za bitom temu zatiču. Za pošiljanje 1 povlečemo DATA pin visoko, za pošiljanje 0 pa DATA pin. |
Zatič ure (SHCP) |
Vsak impulz na tem zatiču prisili registre, da prevzamejo en bit podatkov iz zatiča DATA in jih shranijo. |
Shift izhod (STCP) |
Po prejemu 8 bitov omogočimo impulz tega zatiča, da vidimo izhod. |
Potek dela:
Sledili bomo diagramu poteka in v programu PYTHON napisali program za decimalno števce. Ko zaženemo program, opazimo štetje LED z uporabo Shift Register v Raspberry Pi.
Razlaga programiranja:
Ko je vse povezano po shemi vezja, lahko vklopimo PI in napišemo program v PYHTON.
Govorili bomo o nekaj ukazih, ki jih bomo uporabili v programu PYHTON, Datoteko GPIO bomo uvozili iz knjižnice, spodnja funkcija nam omogoča programiranje GPIO nožic PI. Prav tako preimenujemo »GPIO« v »IO«, zato bomo v programu, kadar se želimo sklicevati na zatiče GPIO, uporabili besedo »IO«.
uvozi RPi.GPIO kot IO
Včasih, ko zatiči GPIO, ki jih poskušamo uporabiti, morda opravljajo nekatere druge funkcije. V tem primeru bomo med izvajanjem programa prejeli opozorila. Spodaj ukaz PI-ju sporoči, naj prezre opozorila in nadaljuje s programom.
IO.setwarnings (False)
Zatiče GPIO PI lahko označimo bodisi s številko zatiča na krovu bodisi s številko njihove funkcije. Tako kot »PIN 29« na plošči je »GPIO5«. Torej tukaj povemo, ali bomo tu zastopali pin z '29' ali '5'.
IO.setmode (IO.BCM)
Kot izhod nastavljamo nožice GPIO4, GPIO5 in GPIO6
IO.setup (4, IO.OUT) IO.setup (5, IO.OUT) IO.setup (6, IO.OUT)
Ta ukaz izvede zanko 8-krat.
za y v območju (8):
Medtem ko 1: se uporablja za neskončnost zanke. S tem ukazom se bodo stavki znotraj te zanke izvajali neprekinjeno.
Dodatna razlaga programa je podana v spodnjem razdelku kode. Imamo vsa navodila, potrebna za pošiljanje podatkov v SHIFT REGISTER zdaj.