Jeftina mikrokontrolerska ploča Raspberry Pi Pico nudi veliku fleksibilnost za entuzijaste da istražuju projekte kako bi povećali svoje tehničko znanje. Učenje osnova pružit će vam solidnu bazu znanja za samouvjeren rad prema složenijim zadacima.
Ovdje ćemo istražiti kako možete kontrolirati svaki dio sedmosegmentnog zaslona s Raspberry Pi Pico i nekim MicroPython kodom.
Što će vam trebati?
Sljedeće stavke su uključene u Kitronik Inventor's Kit za Raspberry Pi Pico. Ipak, ako ste gomila elektronike, vrlo je vjerojatno da ćete ove dijelove imati skrivene kod kuće.
- Zaslon sa sedam segmenata
- 7x 220Ω otpornika
- 9x muško-muški kratkospojnici
- Breadboard
Trebat će vam Pico s priključenim GPIO zaglavljima pinova. Ako to već niste učinili, saznajte kako zalemiti pinove zaglavlja na Raspberry Pi Pico.
Spajanje hardvera
Ožičenje za ovaj projekt nije složeno; međutim, uz pregršt otpornika i premosnih žica u igri, ovo će zahtijevati da ostanete oprezni kako biste bili sigurni da su svi dijelovi spojeni na ispravne pinove. Imajući to na umu, zaronimo u to kako su komponente povezane između vašeg Raspberry Pi Pico i matične ploče.
Prvo provucite žicu od GND igle na Pico i stavite drugi kraj u bilo koju rupu duž negativne tračnice matične ploče. Preostali priključci spojit će se na dijelove matične ploče oko sedmosegmentnog zaslona i otpornika.
Premosne žice koje se usmjeravaju iz GP16, GP17, i GP18 spojit će se na desnu stranu zaslona i u liniji s otpornicima koji se nalaze iznad zaslona.
Na lijevoj strani sedmosegmentnog zaslona morat ćete provesti drugu stranu žica koje idu od GP15, GP14, GP13, i GP12 na veze matične ploče. Opet, pazite da spojite žice u skladu s ispravnim otpornicima.
Postoji manja premosna žica koju treba spojiti duž negativne tračnice matične ploče. Druga strana ove veze ići će između dva otpornika točno iznad zaslona. Svakako potvrdite da su trake vašeg otpornika crvene, crvene, smeđe i zlatne (za 220 ohma).
Imate problema? Razmislite o testiranju otpornika (posebno ako ste neko vrijeme gomilali elektroničke komponente). Pogledajte naš vodič na kako izmjeriti otpor multimetrom za testiranje koraka.
Istraživanje koda
Imat ćete priliku kontrolirati svaki od sedam segmenata zaslona koristeći Thonny IDE. Pogledajte naš vodič o tome kako započnite s MicroPythonom na Raspberry Pi Pico za više detalja. Možete preuzeti 7segment.py kodnu datoteku iz MUO GitHub repozitorij.
Jedan ključni dio koda je dodjeljivanje sedam segmenata zaslona Pico pinovima GP12 kroz GP18, svaki s imenom varijable (segA do segG).
segA = stroj. Pin (18, stroj. Pin. OUT)
segB = stroj. Pin (17, stroj. Pin. OUT)
segC = stroj. Pin (16, stroj. Pin. OUT)
segD = stroj. Pin (15, stroj. Pin. OUT)
segE = stroj. Pin (14, stroj. Pin. OUT)
segF = stroj. Pin (13, stroj. Pin. OUT)
segG = stroj. Pin (12, stroj. Pin. OUT)
Popis, tzv igle, drži ove varijable u istom redoslijedu. Ugniježđeni popis (aka "popis popisa"), tzv brojevima, zatim se koristi za određivanje segmenta koji trebaju svijetliti za svaku znamenku; svaki redak predstavlja znamenku od 0 do 9, plus posljednji redak bez znamenke. "1" na popisu označava da bi segment trebao biti osvijetljen; "0" znači da ne bi trebalo.
The displayNumber pozivat će se funkcija s kojom znamenkom treba biti prikazana; za prikaz te znamenke, relevantni redak brojevima popis se koristi za određivanje koji segmenti trebaju biti osvijetljeni, aktiviranjem dodijeljenih GPIO izlaznih pinova.
Konačno, a dok je istina: infiniteloop će više puta pozvati funkciju displayNumber da broji od 0 do 9, a zatim obrnutim redoslijedom. Kada se to završi, zaslon će se nakratko izbrisati. Odatle će proces započeti iznova.
dokPravi:
za i u rasponu (10):
prikazni broj (i)
vrijeme.sleep_ms(600)
za i u rasponu (9, -1, -1):
prikazni broj (i)
vrijeme.sleep_ms(600)
Ako već niste pogodili, ova petlja se neće zaustaviti. Kod će vašem Raspberry Pi Pico dati upute da broji u beskonačnoj petlji. Dakle, kada nestane novost vašeg postignuća, morat ćete pritisnuti gumb za zaustavljanje u Thonnyju.
Što ćete sljedeće eksperimentirati?
Inspirira li vas ovaj projekt da izradite digitalni sat koristeći svoj Raspberry Pi Pico i dodatne zaslone sa sedam segmenata? Još bolje, uveličajte se s Raspberry Pi računalom pune veličine i konfigurirajte cron planer za reprodukciju pjesme svako jutro u 7:00. Gumb za odgodu može se dodati zaustavljanjem glazbe i puštanjem zvuka deset minuta kasnije. Kad pritisnete gumb tri puta, glazba se može postaviti da se isključi do sutra.