Innehållsförteckning:

Stoppur Använd Pic18f4520 i Proteus med 7 segment: 6 steg
Stoppur Använd Pic18f4520 i Proteus med 7 segment: 6 steg

Video: Stoppur Använd Pic18f4520 i Proteus med 7 segment: 6 steg

Video: Stoppur Använd Pic18f4520 i Proteus med 7 segment: 6 steg
Video: När du slutar - använd Google Transfer 2024, Juli
Anonim
Stoppur Använd Pic18f4520 i Proteus med 7 segment
Stoppur Använd Pic18f4520 i Proteus med 7 segment

Jag började precis arbeta med bildkontroll, en av min vän bad mig att bygga ett stoppur från den. Så jag har ingen hårdvarubild att dela, jag har skrivit kod och simulerat den på Proteus -programvara.

här har jag delat schemat för detsamma.

tre variabla millisekunder, sekunder, minuter definieras

här har vi använt timeravbrott på 10 ms, för varje 1000 millisekunder kommer sekunders variabel att öka, för varje 60 sekunders minut kommer variabeln att öka.

Steg 1: Saker som krävs

1 pic18f4520 kontroller

2 skärmar med sju segment

3 bc547 transistorer

4 omkopplare för start/stopp/återställning

5 motstånd 330E, 10K, 1K

6 ladda ner mikroC för pic

7 ladda ner proteus

Steg 2: Kodlogik och display

Kodlogik och display
Kodlogik och display
Kodlogik och display
Kodlogik och display

En sjusegmentskärm (SSD) är en av de vanligaste, billigaste och lättanvända skärmarna. Det ser ut som ovan.

här måste vi använda vanlig katodtyp av 7 segmentdisplayer - I den vanliga katodtypen SSD är -ve -terminalen för alla lysdioder vanligtvis ansluten till "COM" -stiftet. Ett segment kan tändas när '1' ges till respektive LED -segment och marken är ansluten till det gemensamma. De inre delarna visas i figur 2.

Steg 3: Körskärm med mikrokontroller

Kördisplay med mikrokontroller
Kördisplay med mikrokontroller

I min krets har jag använt NPN BC547 -transistorn.

För enkel användning av en BJT som omkopplare blir emitter-kollektorövergångarna kortslutna när det finns en insignal vid basterminalen, annars förblir den avstängd. Ingången bör ges genom ett lämpligt motstånd.

Steg 4: Varför multiplexing?

Ofta behöver vi använda två, tre eller flera SSD -enheter och det också med endast en enda MCU, men ett problem som vi står inför är bristen på I/O -stift i MCU, eftersom en SSD skulle ta 8 stift, och så tre SSD: er skulle ta 24 stift. På bild 18 har vi bara 48 I/O -stift. Så vad är lösningen?

En möjlighet är att vi använder en större MCU med fler I/O -stift. Men då är vi fortfarande begränsade till endast högst 3 SSD: er som kan användas. En annan mycket bättre och rekommenderad lösning på detta problem är att multiplexera de sju segmentdisplayerna.

Wikipedia säger I telekommunikation och datornät är multiplexing (även känd som muxing) en metod genom vilken flera analoga meddelandesignaler eller digitala dataströmmar kombineras till en signal över ett delat medium. Målet är att dela en dyr resurs.’Vad vi menar med multiplexering av sjusegmentsdisplay är att vi bara kommer att använda 7 utgångsportar för att ge skärmen på alla SSD-enheter.

Steg 5: Hur uppnår man detta?

Här kommer vi att använda 'Persistence of Vision'. Nu måste du ha över denna term redan tidigare. Ja, det här är samma teknik som används inom kinematografi (visa bilder så snabbt att vår hjärna inte kan skilja någon eftersläpning mellan två på varandra följande bilder). På samma sätt, när vi mux mer än en SSD, visar vi bara en SSD i taget, och vi växlar mellan dem så snabbt att vår hjärna inte kan skilja mellan dem.

Låt oss säga att varje bildskärm bara är aktiv i 5 millisekunder åt gången, det vill säga att den tänds 1/0,0045 gånger i sekunder, vilket är ungefär lika med 222 gånger/sekund. Våra ögon kan inte känna en förändring så snabbt, och det vi ser är därför att alla skärmar fungerar samtidigt. Vad som faktiskt händer i hårdvaran är att MCU ger '1' till stiftet (kom ihåg att ge '1' till basen på en BJT -kortslutare Collector and emitter junction?), Som är ansluten till basen på transistorn på respektive displayer, håller porten "PÅ" i 5 millisekunder och stänger sedan av den igen. Denna procedur sätts i en oändlig slinga, så att vi ser displayen kontinuerligt.

Steg 6: Multiplexeringsalgoritm

Multiplexeringsalgoritm
Multiplexeringsalgoritm

Definiera två portar i kod, en för segmentdataport och segmentkontrollport.

trick här är att du visar data på alla 7 segment. och aktivera den ena kontrollnålen som du måste visa dessa data på. ändra data och växla kontrollnål.

här i denna instruerbara har vi använt 6 -siffrig multiplexering, gå bara igenom den bifogade c -filen så får du bort den.

Rekommenderad: