- Prikaz u sedam segmenata:
- Potrebne komponente:
- Objašnjenje sklopa i rada:
- Objašnjenje programiranja:
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. Uz veću brzinu procesora i 1 GB RAM-a, PI se može koristiti za mnoge projekte visokog profila poput obrade slika i IoT.
Za izvođenje bilo kojeg od projekata visokog profila treba razumjeti osnovne funkcije PI-a. U ovim ćemo uputstvima pokriti sve osnovne funkcionalnosti Raspberry Pi-a. U svakom ćemo tutorialu raspravljati o jednoj od funkcija PI-a. Na kraju ove serije s vodičima za Raspberry Pi moći ćete naučiti Raspberry Pi i sami napraviti dobre projekte. Prođite kroz vodiče u nastavku:
- Početak rada s Raspberry Pi
- Konfiguracija Raspberry Pi
- LED žmigavac
- Sučelje gumba
- PWM generacija Raspberry Pi
- LCD povezivanje s Raspberry Pi
- Upravljanje istosmjernim motorom
- Upravljanje koračnim motorom
- Povezivanje registra smjena
- Vodič za ADC za Raspberry Pi
- Upravljanje servo motorom
- Kapacitivna dodirna pločica
U ovom uputstvu izradit ćemo povezivanje prikaza zaslona Raspberry Pi 7. Zasloni od sedam segmenata najjeftiniji su za prikaznu jedinicu. Nekoliko ovih segmenata složenih zajedno moglo bi se upotrijebiti za prikaz temperature, vrijednosti brojača itd. Povezati ćemo 7-segmentnu prikaznu jedinicu na GPIO od PI i kontrolirati ih da prikazuju znamenke u skladu s tim. Nakon toga napisat ćemo program u PYTHON-u za sedmosegmentni prikaz koji broji od 0-9 i vraća se na nulu.
Prikaz u sedam segmenata:
Postoje različite vrste i veličine 7 segmentnih zaslona. Ovdje smo detaljno obradili Sedam segmenata koji ovdje rade. U osnovi postoje dvije vrste tipa 7 segmenata, vrsta zajedničke anode (uobičajena pozitivna ili uobičajena VCC) i vrsta zajedničke katode (zajednička negativna ili zajednička zemlja).

Uobičajena anoda (CA): U tome su svi negativni terminali (katoda) svih 8 LED dioda povezani zajedno (vidi dijagram u nastavku), nazvani COM. I svi pozitivni terminali ostaju sami.
Zajednička katoda (CC): U tome su svi pozitivni terminali (anode) svih 8 LED dioda povezani zajedno, nazvani COM. I sve negativne termike ostaju same.

Ovi CC i CA sedmosegmentni zasloni vrlo su korisni tijekom multipleksiranja nekoliko ćelija zajedno. U našem uputstvu koristit ćemo CC ili sedmosegmentni prikaz zajedničke katode.
Već smo povezali 7 segment s 8051, s Arduinom i s AVR-om. Također smo koristili 7-segmentni prikaz u mnogim našim projektima.
Razgovarat ćemo o Raspberry Pi GPIO prije nego što nastavimo dalje, U Raspberry Pi 2 postoji 40 izlaznih pinova za GPIO. Ali od 40, može se programirati samo 26 GPIO pinova (GPIO2 do GPIO27), pogledajte donju sliku. Neki od ovih klinova izvršavaju neke posebne funkcije. Uz poseban GPIO po strani, preostaje nam 17 GPIO.

GPIO-ov signal (pin 1 ili 17) + 3,3 V dovoljan je za pogon 7-segmentnog zaslona. Da bismo osigurali ograničenje struje, upotrijebit ćemo otpor 1KΩ za svaki segment kao što je prikazano na dijagram kruga.
Da biste saznali više o GPIO pinovima i njihovim trenutnim izlazima, prođite kroz: LED koji trepće s Raspberry Pi
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
- Zaslon sa zajedničkom katodom 7 (LT543)
- Otpor 1KΩ (8 komada)
- Breadboard
Objašnjenje sklopa i rada:

Veze koje su izvedene za povezivanje 7-segmentnog zaslona s Raspberry Pi-om dane su u nastavku. Ovdje smo koristili segment Common Cathode 7:
PIN1 ili e ------------------ GPIO21
PIN2 ili d ------------------ GPIO20
PIN4 ili c ------------------ GPIO16
PIN5 ili h ili DP ---------- GPIO 12 // nije obvezan jer ne koristimo decimalnu zarez
PIN6 ili b ------------------ GPIO6
PIN7 ili ------------------ GPIO13
PIN9 ili f ------------------ GPIO19
PIN10 ili g ---------------- GPIO26
PIN3 ili PIN8 ------------- spojeni na masu
Dakle, koristit ćemo 8 GPIO pinova PI kao 8-bitni PORT. Ovdje je GPIO13 LSB (najmanje značajan bit), a GPIO 12 MSB (najznačajniji bit).
Sada, ako želimo prikazati broj „1”, trebamo snage segmentima B i C. Za napajanje segmenata B i C moramo napajati GPIO6 i GPIO16. Dakle, bajt za funkciju 'PORT' bit će 0b00000110, a heksadecimalna vrijednost 'PORT' bit će 0x06. S obje pinove visoke dobivamo na zaslonu "1".

Napisali smo vrijednosti za svaku znamenku koja će se prikazati i pohraniti te vrijednosti u niz znakova pod nazivom 'DISPLAY' (provjerite odjeljak koda u nastavku). Tada smo te vrijednosti pozvali jednu po jednu kako bismo prikazali odgovarajuću znamenku na zaslonu, pomoću funkcije 'PORT'.
Objašnjenje programiranja:
Nakon što se sve spoji prema shemi spojeva, možemo UKLJUČITI PI za pisanje programa u PYHTON.
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. Poput 'PIN 29' na ploči je 'GPIO5'. Dakle, ovdje kažemo ili ćemo ovdje predstavljati pin s '29' ili '5'.
IO.setmode (IO.BCM)
Postavljamo 8 GPIO pinova kao izlazne igle, za Data i Control pinove LCD-a.
IO.setup (13, IO.OUT) IO.setup (6, IO.OUT) IO.setup (16, IO.OUT) IO.setup (20, IO.OUT) IO.setup (21, IO.OUT) IO.setup (19, IO.OUT) IO.setup (26, IO.OUT) IO.setup (12, IO.OUT)
U slučaju da je uvjet u zagradama istinit, izrazi unutar petlje izvršit će se jednom. Dakle, ako je bit0 od 8-bitnog 'pin-a' istinit, PIN13 će biti VISOK, u suprotnom PIN13 će biti NISKO. Imamo osam "ako ne" uvjeta za bit0 do bit7, tako da se odgovarajuća LED dioda, unutar zaslona od 7 segmenata, može postaviti Visoka ili Niska, da prikaže odgovarajući broj.
if (pin & 0x01 == 0x01): IO.output (13,1) else: IO.output (13,0)
Ova naredba izvršava petlju 10 puta, x se uvećava od 0 do 9.
za x u rasponu (10):
Ispod se koristi naredba zauvijek, s ovom naredbom će se izrazi unutar ove petlje kontinuirano izvršavati.
Dok je 1:
Sve ostale funkcije i naredbe objašnjene su u nastavku odjeljka "Kod" uz pomoć "Komentari".
Nakon pisanja programa i njegovog izvođenja, Raspberry Pi aktivira odgovarajuće GPIO-ove kako bi prikazao znamenku na 7-segmentnom zaslonu. Program je napisan tako da zaslon neprekidno broji od 0 do 9.
