Pozdrav ljudi,
Ovo je primer kako mozete da upravljate 7 segmentni displey sa PIC-om. Ovo je primer brojaca koji je totalno programiran, znaci samo PIC i displey.
U arhivi se nalazi KOD pisan u C programskom jeziku i ASM kod. Kod je kompajliran sa MikroC kompajlerom.
Program se sastoji iz tri osnovne funkcije PrikaziBroj, Broji i BrisiDispley.
Pocecemo od prve, PrikaziBroj funkcija je dizajnirana tako da kad joj se dostavi neka vrednost tj. broj.
Ona proveri da li je broj u granicama od 0 do 9 ukoliko nije onda se displey samo obrise tj. nista se ne
prikazuje na 7 segmentnom displeju. Ukoliko je neki od brojeva npr. 5 na PORTB se salje vrednost za prikazivanje broja 5 a to je definisano u varijabli br5 koja ima vrednost 109 decimalno. Sada kad posaljemo taj broj na PORTB mi automatski imamo zeljeni broj na 7 segmentnom displeju. Taj broj 109 nam predstavlja kombinaciju bitova koje sacinjavaju broj 5 na katnodnom 7 segmentnom displeju.
Funkcija Broji ima tri parametra a to su ceo broj (integer) Od, Do i brzinaUms. Ta tri parametra su dovoljna da bi program brojao od zeljene vrednosti zadatoj u varijabli Od, do zeljene vrednosti zadate u varijabli Do, dok ovaj zadnji parametrar nam predstavlja vreme koje ce program da saceka (u milisekundama) dok se ne pojavi druga brojka na 7 segmentnom displeju.U Toj funkciji je jedna for petlja koja broji od te dve zadate vrednsti. A kod za izvrsavanje se dobija iz arraya(niza) koji je popunjen sa istim ovim vrednostima koje su potrebne za prikazivanje brojke na 7 segmentni displej. Znaci kada preuzmemo vrednost iz niza mi je posaljemo na PORTB tj. jednostavno receno listamo niz vrednosti. To je sto se tice te funkcije, a preostala nam je samo jos BrisiDispley funkcija koja ne mora da se objasnjava jer joj samo ime kaze namenu.
Jos nesto nisam bas razumeo kako da resim MCLR problem pa je resen opet na slican nacin samo sto sam stavio jedan PULLUP otpornik i momentalnu sklopku, koja se vraca na prvobitno stanje. Nisam siguran da li treba da stavim otpornike izmedju nozica displeya i PIC-a.
Moram da priznam da jos uvek ucim i vezbam i nisam bas neki expert sto se tice programiranja PIC-ova i elektronike, ali mogu da uradim ono sto naumim i sto mi je potrebno.
Tako da to je nesto sto se tice toga, malo sam objasnio postupak rada programa itd.
Primer brojaca sa 7 segmentnim displey-om i PIC-16F628A
Moderators: pedja089, stojke369, [eDo], trax
Re: Primer brojaca sa 7 segmentnim displey-om i PIC-16F628A
Zaboravio sam da dodam arhivu sa fajlovima. Zato evo sada sam je dodao! 

- Attachments
-
- 7SD.zip
- Arhiva sa fajlovima
- (94 KiB) Downloaded 272 times
Re: Primer brojaca sa 7 segmentnim displey-om i PIC-16F628A
Vidim da si poslušao Peđine i moje savjete i tako izradio novu shemu. Svaka ti čast na trudu, volji i radu.
Bravo, samo tako dalje!
Bravo, samo tako dalje!
Ne vjeruj u čuda - računaj na njih!
Re: Primer brojaca sa 7 segmentnim displey-om i PIC-16F628A
Sema opet ne valja.
Otpornik je uvek vezan od MCLR-a do Vcc. A taster se samo dodaje od MCLR-a do mase. Kondezator se spaja paralelno tasteru. Taster je cesto nepotreban ali kondezator je pozeljan.
EDIT:
Evo primer sa kursa za pbp
http://www.elektronika.ba/forum/uploadz ... int_63.GIF" onclick="window.open(this.href);return false;
Kondezator ide paralelno tasteru.
Otpornik je uvek vezan od MCLR-a do Vcc. A taster se samo dodaje od MCLR-a do mase. Kondezator se spaja paralelno tasteru. Taster je cesto nepotreban ali kondezator je pozeljan.
EDIT:
Evo primer sa kursa za pbp
http://www.elektronika.ba/forum/uploadz ... int_63.GIF" onclick="window.open(this.href);return false;
Kondezator ide paralelno tasteru.
Re: Primer brojaca sa 7 segmentnim displey-om i PIC-16F628A
On kondenzator nije ni spajao, a ovo kako kako je spojio radi, isto je dali ima ovakav ili klasični SPST prekidač...
Ne vjeruj u čuda - računaj na njih!
Re: Primer brojaca sa 7 segmentnim displey-om i PIC-16F628A
Radi ali se to nikako ne preporucuje
Jer u trenutku preklopa napon na MCLR lako moze da skoci na 13V ukoliko je vod u blizini, ili ima statickog naelektrisanja, i ode program u zaborav. Pin trosi svega 10uA, tako da se veze onako kako sam rekao. Stvari koje prolaze u simulaciji cesto ne prolaze u realnom svetu, a i obrnuto.

Jer u trenutku preklopa napon na MCLR lako moze da skoci na 13V ukoliko je vod u blizini, ili ima statickog naelektrisanja, i ode program u zaborav. Pin trosi svega 10uA, tako da se veze onako kako sam rekao. Stvari koje prolaze u simulaciji cesto ne prolaze u realnom svetu, a i obrnuto.