Bonjour,
J'en vois déjà qui vont me dire: "voir les posts sur le sujet car c'est un sujet récurrent!"
Je veux juste que l'on me prouve que la liason série sur Pocket PC est une liaison "fiable"..... car après qq jours d'essais, je doute vraiment!
Pour situer: j'ai un pocket PC I PAQ 3950 que je synchronise par port USB et j'utilise les visual embedded Basic et C++. La communication entre PC et pocket PC se fait bien, et les programmes crées se téléchargent bien. Le port série n'est pas activé dans activeSync car je fais les tests en questions.
Je pense que la majorité des programmeurs qui ont essayé visual basic embedded se sont aperçus que le port "comm control" est buggé dans le sens ou l'émission de données se passent bien, mais pour la réception, c'est le bide!
Maintenant pour visual C++ embedded, j'ai utilisé le programme exemple (examples.exe) du livre "Windows CE 3.0" pour tester cette fameuse liaison série:
l'application a fonctionné en émission et réception uniquement à une vitesse de 19200 bds (9600 bds pas bon!) et en utilisant RTS et DTR (câble d'origine):
dcb.BaudRate = CBR_19200; // set baud
dcb.fOutxCtsFlow = TRUE;
dcb.fRtsControl = RTS_CONTROL_HANDSHAKE;
dcb.fDtrControl = DTR_CONTROL_ENABLE;
dcb.fOutxDsrFlow = FALSE;
dcb.fDsrSensitivity = FALSE;
dcb.fOutX = FALSE; // no XON/XOFF control
dcb.fInX = FALSE;
dcb.ByteSize = 8;
dcb.Parity = NOPARITY;
dcb.StopBits = ONESTOPBIT;
A ce sujet, quand j'ai branché la première fois, le pocket PC se connectait (synchronisait ??? car une fenêtre est apparu indiquant le branchement ) par défaut à 19200 bauds sans que je lui demande quoi que ce soit et n'a pas bronché par la suite quand j'ai ouvert le port comm
Si je modifie:
dcb.fOutxCtsFlow = FALSE;
ou bien :
dcb.BaudRate = CBR_9600;
La réception ne marche plus.
Maintenant, ça serait sympa d'avoir votre avis ou votre expérience sur ce sujet...... En fait, je voudrai que mon pocket PC puisse dialoguer avec des automates de mon cru, mais uniquement avec 3 fils (sans RTS / DTR, CTS, DSR) TXD, RXD et masse.
Pour l'émission, même visual basic embedded le fait bien, mais pour la réception........ comme si windows CE ne gérait pas l'évènement EV_RXCHAR seul (sans tenir compte de RTS,...).
Vous pouvez toujours me dire que je me suis planté qq part et me faire tourner en rond, je ne vous demande qu'une chose: que celui qui veuille bien m'aider essaye de faire communiquer son pocket PC et PC avec 3 fils (TXD, RXD et masse) de sa RS232.
Et si ça marche, ce serait encore mieux d'avoir le source pour voir où ma vigilance ;-) est passé à côté.
Encore merci d'avoir eu la patience de me lire et peut être de me répondre.
Bonne journée.