seriova komunikace v C
Dalibor Straka
dast na panelnet.cz
Sobota Prosinec 13 02:11:06 CET 2003
Dobry den,
On Sat, Dec 13, 2003 at 12:31:43AM +0100, marek cervenka wrote:
>
> zdravim,
>
> narazil jsem na takovy problem u teplotniho cidla
> http://www.papouch.com/tm.html
>
> pro ovladani pouzivam malinko upraveny
> http://www.papouch.com/soft/tm.c
>
> u pocitacu s vykonem na urovni 486ky cidlo reaguje velmi pomalu, nebo
> dokonce vubec
>
> snazil jsem se prolouskat ten zdrojak, ale nedari se mne najit pricinu
> muze mne nekdo osvetlit jake jsou rozdily pri komunikaci se seriovym
> portem u ruzne rychlych pocitacu, popr. jak se to resi?
>
Nehodlam cist ten zdrojak protoze spravny teplomer pripojeny na port ma
zobrazovat teplotu takto*):
$ cat /dev/ttyS0
Ten samy vyrobek a program na rychlem pocitaci funguje zcela spravne?
Jaky je load nebo cpu aktivita na te 486? Kdyztak upravte zdrojak. No
nedalo mi to a podival jsem se na tm.c, je psan pro hp-ux. Zkontrolujte
poradne ten kod - api, datove struktury, parametry seriove linky.
Ve zdrojacku je take spousta empirickych hodnot! Typu:
/* nastavim timout, pro jistotu dost velky */
tv.tv_sec = 12;
/* za 1 sekundu shozeneho napajeni by mel teplomer urcite chcipnout */
/* (aby pak hned po nahozeni napajeni poslal teplotu a nemuselo se */
/* pripadne cekat 10 vterin */
sleep(1);
Zkusil bych dopsat nejaky sleep po /*zapnu teplomer*/ power_on();
Hezky vikend,
-- Dalibor Straka
*) Nedavno jsem takovy teplomer napsal pro 51. No je proste lepsi nez
ten strahovackej.
Další informace o konferenci Linux