|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 9 ![]() |
salut les gens,
Je post car j'ai un probleme qui me ronge ... Voilaj'ai installé une carte pci multiport RS422, apres avoir modifié un peu le driver la carte semble marcher au poil. Pas de probleme quand j'écris sur le port a partir d'une console avec une redirection je lis parfaitement les données avec mon programme. Mais lorsque j'écris a partir de mon programme je ne lis rien Mais les données sont envoyées : la fonction me renvoie le bon nombre de caracteres envoyés Les stat. des ports (/proc/tty/driver/serial) m'indiquent les bons nombres de caracteres emis et recus sur chacun des ports et enfin si j'ecris N caractéres depuis mon programme et que ensuite j'ecris M caracteres depuis une console je lis N+M caractere sur mon port destinataire dont les N premiers caracteres sont du nimporte quoi ... Bref, le compteur de caractere seble s'incrementer mais il n'y a pas d'evenement "caractere dispo" la fonction select me renvoie 0 = timeout J'ai fais plein d'essais avec des option d'ouverture de fichier (/dev/ttySx) différentes J'ai plus d'inspiration, pitié donnez un petit qqchose |
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 546 ![]() |
puisque la carte marche, je penserai un probleme protocolaire....
ou de bit de fin ce genre de choses ... comment causes ton programme au port serie ? |
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 9 ![]() |
d abord merci pour ton aide
je cause au port comme a un fichier : Code :
Un probleme protocolaire ... et bien c'est possible mais je ne sais pas ou chercher car "\r\n" soit 0x0d et 0x0a me semblait suffir s'il faut mettre autre chose quoi par exemple ?? et comment savoir quoi mettre ?? il y a t il une config a lire qque part ? sinon j'ai fais des essais avec minicom : le port qui aura été ouvert (puis fermé ou pas) par minicom recoit par le programme le bon nombre de caractere mais pas les bons enfin si le probleme vient du driver je ne sais comment le resoudre j'ai du changer l'io_region prevu a la base (2) en le forcant à 0, sinon le driver ne marché par correctement mais j'avais les memes problemes avant cette modif merci pour ton attention et n'hésite pas a repondre toute piste m'intéresse |
||
|
|
00
|
|
|
#4 |
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 546 ![]() |
bon désolé, mais j'aurai fait comme toi.... en l'utilisant comme "fichier"
![]() ducoup je sais pas quoi te conseiller d'autre. |
|
|
00
|
|
|
#5 | ||||
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 9 ![]() |
méa culpa
ct une coquille dans la fonction d'émission j'envoyé un pointeur sur un QString et donc je recevais nimporte quoi et je n'avais pas le caractere de fin de trame d'ou toute cette merde pour info : ancienne fonction : Code :
Code :
je suis pas trtés fier sur ce coup la j'ai perdu du temps mais j'ai appri plein de truc en fouillant nimporte ou !! encore merci |
||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com