[ bciric @ 08.08.2007. 19:33 ] @
Zanima me da li je moguce i kako da timer ima korak mikrosekundu?

hvlala unapred
[ toxi_programer @ 08.08.2007. 23:18 ] @
Ja mislim da ne može toliko brzo da ide, bezobzora dal si ga postavio da "radi" na tolki interval...

Možeš da napraviš u novom thread-u neki loop pa da pozivaš to što hoćeš da pozivaš odatle ali opet bi morao da staviš neki minimalni sleep() da se ne bi opteretio procesor maksimalno...
[ bciric @ 09.08.2007. 01:02 ] @
Pa ajde ako imas konkretnu ideju ti postavi, HVALA
[ PeraKojovic @ 09.08.2007. 07:20 ] @
Pozdrav,
pod Windows-om je NEMOGUCE kontrolisati dogadjaje ispod 10-tak ms na jacim masinama,
ali, uz prelazak u drugi i treci krug windows-ove zastite memorije i resursa (ciraj: napraviti
drajver) je moguce dobiti i preciznije tajminge. Sto se tice otvaranja novog treda, loop-inga
u njemu i sleep-a, JAKO se gubi preciznost...


Pera
[ Prokleta_Nedelja @ 10.08.2007. 06:49 ] @
skoro offtopic ali zasto ti treba mikrosekunda?
[ bciric @ 13.08.2007. 10:31 ] @
Pa nije problem da bude i desetak mikrosekunde, treba mi da drajvujem koracni motor preko paralelnog porta, zbog brzine okretanja.


Hvala vam na savetima ali ja nista konkretno jos nisam procitao.

[Ovu poruku je menjao bciric dana 15.08.2007. u 01:11 GMT+1]
[ PeraKojovic @ 14.08.2007. 10:16 ] @
Pozdrav,
Napises program u C++ i imaces oko 10 do 20 milisekundi precizan tajmer.
Znaci, konkretno, odgovor na tvoje pitanje je: tesko (skoro nikako) mozes napraviti
tajmer na mikrosekundu u Windows OS-u, a relaivno lako mozes napraviti desetak
milisekundi uz podesavanje prioriteta izvrsavanja tvog programa/procesa!

Ali, pravo resenje je da preko paralelnog ili serijskog porta saljes komandu nekom
malom hardveru (mikrokontroleru) koji moze u mikrosekundama da kontrolise
step (koracni) motor.

Pera
[ bciric @ 15.08.2007. 00:13 ] @
pa upravo tako i radim, koristim pic16f84, ali mi sporo okrece motor zbog windows timer-a

da li moze nekako da se ubrza, i u kom jeziku postoje one naredbe wait (mikrosekunde)
[ PeraKojovic @ 15.08.2007. 08:27 ] @
Cekaj malo,
nesto je tu dosta pobrkano, ili ti ne znas da objasnis.

sa PC-ja posaljes komandu PIC-u tipa, okreni motor 100 koraka u jednom pravcu.
Za to slanje komande, slazes se, ne trebaju mikrosekunde. Pa onda PIC vozi motor po mikrosekundama
tih 100 koraka.
Dakle, povratna sprega (ako je uopste imas, a ne moras da je imas kod koracnih motora), je
na samom PIC mikrokontroleru. PC i njegov tajmer tu nemaju veze. Sve sto se odigrava, kao i
dogadjaji na koje motor eventualno treba da odreaguje, mora da se resi na PIC-u. PC je tu
samo kao komandni centar (nesto kao SCADA).
[ bciric @ 15.08.2007. 12:52 ] @
Udaljavamo se od teme,

Imam isprogramiran pic i njemu pomocu paralelnog porta saljem podatke:
npr:
pin2-enable
pin3-Direction
pin4-takt

i potrebno mi je da takt bude brzi nadam se da je sada jasno.