Tādi lasītāji kā jūs palīdz atbalstīt MUO. Veicot pirkumu, izmantojot saites mūsu vietnē, mēs varam nopelnīt filiāles komisiju. Lasīt vairāk.

Zemo izmaksu Raspberry Pi Pico mikrokontrollera plate piedāvā lielu elastību entuziastiem, lai izpētītu projektus, lai palielinātu savas tehniskās zināšanas. Pamatu apgūšana nodrošinās jums stabilu zināšanu bāzi, lai pārliecinoši strādātu pie sarežģītākiem uzdevumiem.

Šeit mēs izpētīsim, kā jūs varat kontrolēt katru septiņu segmentu displeja daļu, izmantojot Raspberry Pi Pico un kādu MicroPython kodu.

Kas jums būs nepieciešams?

Tālāk norādītās preces ir iekļautas komplektā Kitronik izgudrotāju komplekts Raspberry Pi Pico. Tomēr, ja esat elektronikas krātājs, visticamāk, šīs daļas jums būs paslēptas mājās.

  • Septiņu segmentu displejs
  • 7x 220Ω rezistori
  • 9x vīriešu-vīriešu džemperu vadi
  • Maizes dēlis

Jums būs nepieciešams Pico ar pievienotām GPIO tapu galvenēm. Ja vēl neesat to izdarījis, uzziniet kā lodēt Raspberry Pi Pico galvenes tapas.

Aparatūras pievienošana

instagram viewer

Šī projekta elektroinstalācija nav sarežģīta; tomēr, ja spēlē nedaudz rezistoru un džemperu vadu, jums būs jābūt modram, lai nodrošinātu, ka visas detaļas ir savienotas ar pareizajām tapām. Paturot to prātā, pievērsīsimies tam, kā komponenti tiek savienoti starp jūsu Raspberry Pi Pico un maizes dēli.

Vispirms izvelciet vadu no Pico GND tapas un ievietojiet otru galu jebkurā caurumā gar negatīvo maizes paneļa sliedi. Atlikušie savienotāji tiks savienoti ar maizes paneļa daļām ap septiņu segmentu displeju un rezistoriem.

Jumper vadi tiek novadīti no GP16, GP17, un GP18 savienosies ar displeja labo pusi un vienā līnijā ar rezistoriem, kas atrodas virs displeja.

Septiņu segmentu displeja kreisajā pusē jums būs jāievada otra vadu puse, kas darbojas no GP15, GP14, GP13, un GP12 uz maizes dēļu savienojumiem. Atkal noteikti pievienojiet vadus atbilstoši pareizajiem rezistoriem.

Ir mazāks džempera vads, kas būs jāpievieno gar maizes dēļa negatīvo sliedi. Šī savienojuma otra puse būs starp diviem rezistoriem tieši virs displeja. Noteikti pārbaudiet, vai jūsu rezistoru joslas ir sarkanas, sarkanas, brūnas un zeltainas (220 omi).

Vai radušās problēmas? Apsveriet iespēju pārbaudīt rezistorus (īpaši, ja kādu laiku esat uzkrājis elektronikas komponentus). Skatiet mūsu ceļvedi kā izmērīt pretestību ar multimetru testēšanas soļiem.

Kodeksa izpēte

Jums būs iespēja kontrolēt katru no septiņiem displeja segmentiem, izmantojot Thonny IDE. Apskatiet mūsu ceļvedi, kā to izdarīt sāciet darbu ar MicroPython vietnē Raspberry Pi Pico lai iegūtu sīkāku informāciju. Jūs varat lejupielādēt 7segment.py koda fails no MUO GitHub repozitorijs.

Viens no svarīgākajiem koda elementiem ir septiņu displeja segmentu piešķiršana Pico tapām GP12 cauri GP18, katram ir mainīgs nosaukums (segA uz segG).

segA = mašīna. Pin (18, mašīna. Piespraust. OUT)
segB = mašīna. Pin (17, mašīna. Piespraust. OUT)
segC = mašīna. Pin (16, mašīna. Piespraust. OUT)
segD = mašīna. Pin (15, mašīna. Piespraust. OUT)
segE = mašīna. Pin (14, mašīna. Piespraust. OUT)
segF = mašīna. Pin (13, mašīna. Piespraust. OUT)
segG = mašīna. Pin (12, mašīna. Piespraust. OUT)

Saraksts, sauc tapas, satur šos mainīgos tādā pašā secībā. Ligzdots saraksts (pazīstams arī kā "sarakstu saraksts"), ko sauc cipariem, pēc tam tiek izmantots, lai noteiktu, kuriem segmentiem jāiedegas katram ciparam; katra rinda apzīmē ciparu no 0 līdz 9, kā arī pēdējo rindiņu bez cipara. "1" sarakstā norāda, ka segmentam jābūt iedegtam; "0" nozīmē, ka tā nedrīkst.

The displayNumber tiks izsaukta funkcija, ar kuru cipars jāparāda; lai parādītu šo ciparu, atbilstošo rindiņu cipariem saraksts tiek izmantots, lai noteiktu, kuri segmenti ir jāiedegas, aktivizējot piešķirtos GPIO izvades tapas.

Visbeidzot, a kamēr patiesība: Infiniteloop atkārtoti izsauks funkciju displayNumber, lai skaitītu no 0 līdz 9 un pēc tam apgrieztā secībā. Kad tas ir pabeigts, displejs uz īsu laiku tiks notīrīts. No turienes process sāksies no jauna.

kamērTaisnība:
i diapazonā (10):
displayNumber (i)
laiks.sleep_ms(600)

i diapazonā (9, -1, -1):
displayNumber (i)
laiks.sleep_ms(600)

Ja vēl neesat uzminējis, šī cilpa neapstāsies. Kods liks jūsu Raspberry Pi Pico skaitīt bezgalīgā ciklā. Tātad, kad jūsu sasnieguma jaunums ir noguris, jums būs jānospiež apturēšanas poga Thonny.

Ar ko jūs eksperimentēsit tālāk?

Vai šis projekts iedvesmo jūs izveidot digitālo pulksteni, izmantojot jūsu Raspberry Pi Pico un papildu septiņu segmentu displejus? Vēl labāk, strādājiet ar pilna izmēra Raspberry Pi datoru un konfigurējiet cron plānotāju, lai atskaņotu dziesmu katru rītu pulksten 7:00. Atlikšanas pogu var pievienot, pārtraucot mūzikas atskaņošanu un pēc tam desmit minūtes atskaņojot audio. Trīs reizes nospiežot pogu, mūziku var iestatīt, lai tā izslēgtos līdz rītdienai.