touchscreen + seriovy port + ztraceny byte (long)

David Sauer xsauer na fel.cvut.cz
Pondělí Duben 20 13:08:47 CEST 1998


Zdravim vsechny,
 mam maly problem - pouzivam touchscreen pripojeny k pocitaci pres 
seriovy port, 9600 baud, 8bit, 1stop bit, bez parity, pripojen na /dev/ttyS1.
Pokusil jsem se nastavit linkovou disciplinu prislusneho zarizeni na tyto 
hodnoty:

(pozn.: vsechna nastaveni)
[david na atlantis touch]$ stty -a < /dev/ttyS1
speed 9600 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <nedefinováno>;
eol2 = <nedefinováno>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 hupcl -cstopb cread clocal -crtscts
ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl ixon
-ixoff
-iuclc -ixany -imaxbel
-opost -olcuc -ocrnl -onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0
vt0
ff0
-isig -icanon -iexten -echo -echoe -echok -echonl -noflsh -xcase -tostop
-echoprt -echoctl -echoke

(pozn.: nastaveni rozdilna od "sane")
[david na atlantis touch]$ stty < /dev/ttyS1
speed 9600 baud; line = 0;
min = 1; time = 0;
ignbrk -brkint -icrnl -imaxbel
-opost -onlcr
-isig -icanon -iexten -echo -echoe -echok -echoctl -echoke

Pak tento testovaci priklad vypisuje nasledujici hodnoty (paket ma 10 
byte(hex): 55 54 (byte)status (word)x (word)y (word)z (byte)checksum ). 

[david na atlantis touch]$ cat < /dev/ttyS1|od -An --format x1 -w10 -v
 55 54 82 30 0e fe 06 ff 00 16
 55 54 82 30 0e f0 06 ff 00 08
 55 54 82 30 0e e4 06 ff 00 fc
 55 54 82 30 0e fb 06 ff 00 55 
                            ;; tady je ten problem ... dojde ke ztrate 1 
znaku
 54 82 30 0e e7 06 ff 00 ff 55
 54 82 30 0e fc 06 ff 00 14 55
 
Dany problem ( ztrata byte ) se vyskytuje asi 1x na 1000 byte)
Touchscreen je pripojen 2m kabelem, nemate nekdo podobny problem se 
zratou znaku ? Pripadne - je nastaveni terminalove linky pro tuto 
komunikaci spravne ?
                              dekuji
--
* David Sauer, student of Czech Technical University, Prague, Czech republic
* electronic mail: xsauer na fel.cvut.cz         
* world wide web: http://cs.felk.cvut.cz/~xsauer           (only in czech)




Další informace o konferenci Linux