[LUGOS-PROG] Dostop do serijskega porta
Gregor Berginc
gregor.berginc at gmail.com
Mon Jun 27 12:08:33 CEST 2005
Pozdravljeni,
zadnjih par dni se mucim s komunikacijo racunalnika s pan-tilt enoto preko
serijskega porta. Ko se nanjo priklopim preko minicoma ji brez problema
posiljam ukaze. Ko pa se nanjo priklopim z lastnim programom, v katerem
serijski port nastavim enako, enota vsake toliko casa zacne sprejemati
neumnosti in zacne postopek kalibracije.
Najprej sem enoti posiljal ukaze preko:
write(this->fd, _cmd, strlen(_cmd));
Kasneje sem ugotovil, da je problem v "hitrosti" posiljanja; med vsakim
posameznim znakom ukaza _cmd, sem izvedel sleep(1). In to je delalo. Zato
sem kopiral ukaz (npr. "pp1000 ") in ga kopiral v minicom. Srec se je sedaj
tudi tu zataknilo. Poskusil sem tudi s pySerial; isti rezultat. Na koncu sem
znizal baud na 4800 (namesto 9600), vendar ni pomagalo (kdo bi si mislil).
Se vecji problem je v tem, da, ko se to zgodi, pan-tilt sprejema ukaze v
nedogled. Pomaga sele reboot masine.
Zanima me naslednje:
1. Kako vi posiljate ukaze preko serijskega porta (mimogrede, koda je
povzeta po "serial port programming howto")?
2. Ali obstaja kak nacin za flush serijskega porta iz konzole?
lp,
Gregor
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://liste2.lugos.si/pipermail/lugos-prog/attachments/20050627/ff406e89/attachment.htm
More information about the lugos-prog
mailing list