Merenje periode pomocu pic basica

Rasprava o PIC mikrokontrolerima, PIC projekti i drugo vezano za PIC-eve...

Moderators: pedja089, stojke369, [eDo], trax

Post Reply
MIKI73
Napredujem
Napredujem
Posts: 107
Joined: 01-11-2014, 16:57

Merenje periode pomocu pic basica

Post by MIKI73 »

Pozdrav svima.Interesuje me kako da napisem program pomocu kog bih mogao da merim trajanje periode.Ako moze neko kratko objasnjenje ili neki primer.Vidjao sam u drugim jezicima ali nesnalazim se jer od jezika poznajem nesto malo picbasic
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Merenje periode pomocu pic basica

Post by pedja089 »

Na uzlaznoj ivici pokrenes tajmer, na silaznoj iskljucis. Ili obrnuto. NEki picevi imaju i Timer gate control ili tako nesto. Tako da sve zavisi od pica koji koristis. Isto dosa zavisi od periode, koliko traje. Nije isto meriti periodu od 1nS i od 1 godine.
MIKI73
Napredujem
Napredujem
Posts: 107
Joined: 01-11-2014, 16:57

Re: Merenje periode pomocu pic basica

Post by MIKI73 »

e sto volim kad ljudi misle da ja mnogo znam a ja .... Pedja hvala ti na odgovoru,zamolio bih te samo ako ima neki primer ili adresa gde ima.Znam nasta mislis kako to uraditi ali neverujem da ja to mogu mada pokusacu.
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Merenje periode pomocu pic basica

Post by pedja089 »

Nemam link. To je ovako iz glave. Mozes to uraditi, nije puno tesko.
Bitno je vreme trajanja periode i izbor pic-a i kako ga povezati.
Zato aj od pocetka da krenemo, sta meris, jos bolje ako mozes da kazes zasto meris. Koji pic hoces ili koji picevi dolaze u izbor?
MIKI73
Napredujem
Napredujem
Posts: 107
Joined: 01-11-2014, 16:57

Re: Merenje periode pomocu pic basica

Post by MIKI73 »

hteo sam neko merenje PWM signala pa sad trajanje log1 i trajanje log0 a pic neki kao 16f628 ili 16f88,svejedno.Probao sam nesto bez upotrebe tajmera ali nije islo.Evo sta ovako nabrzinu:

trisa=%00000001
DEFINE LCD_BITS 4
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 2
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 0
DEFINE LCD_RWREG PORTB
DEFINE LCD_RWBIT 3
DEFINE LCD_LINES 2
pause 100


broj var word
milan var word

pocetak:

while porta.0=0
milan=milan+1

wend

broj=milan

lcdout $FE, $80, "BROJ=", dec4 broj

goto pocetak:
end

Ovo ce da broji u mikrosekundama koje cu lako da izdelim da mi na displeju sve lepo pise ali meri samo prvu log1 a svaku slidecu sabira sa prvom,neznam kako kad izmeri i pokaze na displeju da posle vrati "milan" na nulu pa da meri ponovo sledecu log1
MIKI73
Napredujem
Napredujem
Posts: 107
Joined: 01-11-2014, 16:57

Re: Merenje periode pomocu pic basica

Post by MIKI73 »

Mozda je glupo ovako sto sam probao ali mislim da bih imao rezoluciju jednu uS i sad na displeju bih video koliko je uS pin porta.0 bio nna log1 sto bih lako sveo da rezultat bude prikazan i u mS i sek. ali neznam kako obrisati trajanje prve log1 pa prikazati drugu i td...
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Merenje periode pomocu pic basica

Post by pedja089 »

Ima tu propusta...
Prvo pre pocetka mrrenja moras cekati silaznu ivicu signala
Sto ce reci

Code: Select all

Pocetak
milan=0
While porta.0=1
Milan=milan+1
If milan>65000 then goto nemaPrvepoluperiode
Wend
Milan=0
While pota.0=0
Milan=milan+1
If milan>65000 then goto predugapoluperioda
Wend
Obde u promenljivoj milan imas rezultat sa kojim radis sta hoces
Moras dodati i ova dva podprograma koji ce raditi nesto kada nema signala. U ovom slucaju kad ne koristis tajmere vreme izvrsavanja nije jedna us pri taktu 4mhz. To je tacno za asemblerske instrukcije. A jedna instrukcija u visem jeziku moze da ima nekoliko stotina asm instrukcija. Odlican primer za to ti je lcdout.
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Merenje periode pomocu pic basica

Post by pedja089 »

Na lcdout stavi dec5 jer je toliko cifara potrebno da mozes prikazati 65000.
Post Reply