Turinys:

Chronometras naudojant „Pic18f4520“„Proteus“su 7 segmentais: 6 žingsniai
Chronometras naudojant „Pic18f4520“„Proteus“su 7 segmentais: 6 žingsniai

Video: Chronometras naudojant „Pic18f4520“„Proteus“su 7 segmentais: 6 žingsniai

Video: Chronometras naudojant „Pic18f4520“„Proteus“su 7 segmentais: 6 žingsniai
Video: Sharp WF-939 (1988 г.в.) самый последний настоящий sharp? 2024, Lapkritis
Anonim
Chronometras naudojant „Pic18f4520“„Proteus“su 7 segmentais
Chronometras naudojant „Pic18f4520“„Proteus“su 7 segmentais

Aš ką tik pradėjau dirbti su vaizdo valdikliu, vienas mano draugas paprašė manęs iš jo sukurti chronometrą. Taigi aš neturiu bendrinti aparatinės įrangos vaizdo, aš parašiau kodą ir imitavau jį „Proteus“programinėje įrangoje.

čia aš pasidalinau to paties schema.

apibrėžtos trys kintamos milisekundės, sekundės, minutės

čia mes panaudojome 10 ms laikmačio pertraukimą, kas 1000 milisekundžių sekundžių kintamasis padidės, o kas 60 sekundžių - kintamasis.

1 žingsnis: reikalingi dalykai

1 pic18f4520 valdiklis

2 septynių segmentų ekranai

3 bc547 tranzistoriai

4 jungikliai paleidimui/sustabdymui/atstatymui

5 rezistoriai 330E, 10K, 1K

6 Atsisiųskite „mikroC“paveikslėliui

7 parsisiųsti proteus

2 žingsnis: kodo logika ir ekranas

Kodo logika ir ekranas
Kodo logika ir ekranas
Kodo logika ir ekranas
Kodo logika ir ekranas

Kas yra septynių segmentų ekranas? Septynių segmentų ekranas (SSD) yra vienas iš labiausiai paplitusių, pigių ir paprastai naudojamų ekranų. Tai atrodo kaip aukščiau.

čia mes turime naudoti įprastą 7 segmentų ekrano katodo tipą - įprasto katodo tipo SSD visų šviesos diodų -ve terminalas paprastai yra prijungtas prie „COM“kaiščio. Segmentas gali užsidegti, kai atitinkamam LED segmentui suteikiamas „1“ir įžeminimas prijungtas prie bendros. Vidiniai elementai pateikti 2 paveiksle.

3 veiksmas: vairavimo ekranas naudojant mikrovaldiklį

Važiavimo ekranas su mikrovaldikliu
Važiavimo ekranas su mikrovaldikliu

Savo grandinėje naudojau NPN BC547 tranzistorių.

Norint paprasčiausiai naudoti BJT kaip jungiklį, emiterio ir kolektoriaus jungtys sutrumpėja, kai pagrindiniame terminale yra įvesties signalas, kitaip jis lieka išjungtas. Įėjimas turėtų būti atliekamas per tinkamą rezistorių.

4 žingsnis: Kodėl reikia multipleksuoti?

Dažnai mums reikia naudoti du, tris ar daugiau SSD, taip pat naudojant tik vieną MCU, tačiau viena problema, su kuria susiduriame, yra įvesties/išvesties kaiščių trūkumas MCU, nes vienam SSD prireiktų 8 kontaktų, taigi ir trims SSD prireiktų 24 kaiščių. 18 paveiksle turime tik 48 įvesties/išvesties kaiščius. Taigi koks yra sprendimas?

Viena galimybė yra tai, kad mes naudojame didesnį MCU su daugiau įvesties/išvesties kaiščių. Bet tada mes vis dar apsiribojame tik 3 SSD diskais, kuriuos galima naudoti. Kitas daug geresnis ir rekomenduojamas šios problemos sprendimas yra septynių segmentų ekranų multipleksavimas.

Vikipedija sako: „Telekomunikacijų ir kompiuterių tinkluose multipleksavimas (taip pat žinomas kaip„ muxing “) yra metodas, kuriuo keli analoginiai pranešimų signalai arba skaitmeniniai duomenų srautai sujungiami į vieną signalą bendroje laikmenoje. Tikslas yra pasidalyti brangiais ištekliais. „Mes turime omenyje septynių segmentų ekrano multipleksavimą, nes mes naudosime tik 7 išvesties prievadus, kad būtų rodomas visų SSD diskas.

5 žingsnis: kaip tai pasiekti?

Čia naudosime „regėjimo atkaklumą“. Dabar šį terminą turite turėti jau anksčiau. Taip, tai yra ta pati technika, kuri naudojama kinematografijoje (atvaizduoja vaizdus taip greitai, kad mūsų smegenys negali atskirti dviejų vaizdų iš eilės). Panašiai, kai mes maišome daugiau nei vieną SSD, vienu metu rodome tik vieną SSD diską ir perjungiame juos taip greitai, kad mūsų smegenys negali jų atskirti.

Tarkime, kad kiekvienas ekranas vienu metu yra aktyvus tik 5 milisekundes, t. Y. Jis apšviečiamas 1/0,0045 karto per sekundę, tai yra maždaug 222 kartus per sekundę. Mūsų akys negali jausti pokyčių taip greitai, todėl matome, kad visi ekranai veikia vienu metu. Iš tikrųjų aparatinėje įrangoje MCU duoda „1“kaiščiui (nepamirškite, kad „BJT“šortų pagrindui „Kolektoriaus ir emiterio sandūra“suteikiamas „1“), kuris yra prijungtas prie tranzistoriaus pagrindo. atitinkamas ekranas, 5 milisekundžių laiko prievadą „ĮJUNGTAS“ir vėl jį išjungia. Ši procedūra yra įtraukta į begalinę kilpą, kad ekraną matytume nuolat.

6 žingsnis: multipleksavimo algoritmas

Multipleksavimo algoritmas
Multipleksavimo algoritmas

Apibrėžkite du kodo prievadus, vieną segmento duomenų prievadui ir segmento valdymo prievadą.

gudrybė yra tai, kad rodote visų 7 segmentų duomenis. ir suaktyvinkite vieną valdymo kaištį, kuriame turite rodyti tuos duomenis. pakeisti duomenis ir perjungti valdymo kaištį.

čia šioje instrukcijoje mes naudojome 6 skaitmenų multipleksavimą, tiesiog eikite per pridėtą c failą ir jį pašalinsite.

Rekomenduojamas: