salut,
j'ai une question sur la gestion du port série
pouvez-vous m'expliquer ce que signifie SetCommTimeouts ,GetCommTimeouts , COMMTIMEOUTS
merci de m'aider
salut,
j'ai une question sur la gestion du port série
pouvez-vous m'expliquer ce que signifie SetCommTimeouts ,GetCommTimeouts , COMMTIMEOUTS
merci de m'aider
> SetCommTimeouts ,GetCommTimeouts , COMMTIMEOUTS
Les deux premiers permettent de définir (Set) ou de connaître (Get) le delai à l'issue duquel une tentative de communication avec le port (read ou write) échoue et rend la main. COMMTIMEOUTS est une structure qui sert de paramètres aux deux APIs
Que tu poses la question seulement maintenant après avoir dit que tu as finit ton hyper terminal pour ce qui est de la communication avec le port... ça donne le vertige.
Cela dit, Microsoft recommande de ne pas utiliser ces APIs.... mais plutôt d'utiliser des object de synchronisation Windows et d'attendre leur changement d'état avec WaitForSingleObject ou WaitForMultipleObjects, APIs qui permettent de spécifier un timeout. (je te renvoie à la doc Microsoft) D'après Microsoft, un programme de communication série qui ne procède pas comme ça est garanti ne pas marcher ou marcher mal, et finalement perdre des octets dans la transmission à un moment ou à un autre. Va sur le site http://msdn.microsoft.com et fait des recherches dans la base de connaissance, tu verras.
Désolé de te parler comme ça. Ce n'est pas de ta faute, c'était à ton maître de stage de t'expliquer ça dès le départ :x
merci pour tes réponses
on m'a aider pour ce programme c'est pour cela que je ne comprend pas certaines fonctions
dans mon programme tout les paramètres de cette fonction sont à 0
, est ce que cette fonction est utlisé sachant que les paramètres sont à 0
est ce que cette fonction est important pour un bon fonctionnment , je pose cette question car j' ai du mal à cerné ce qu'elle fait réellement
j'avais déja été voir sur le net mais ça ne m'a pas apporté plus
merci bcp de ton aide
> dans mon programme tout les paramètres de cette fonction sont à 0
> , est ce que cette fonction est utlisé sachant que les paramètres sont à
> 0
> est ce que cette fonction est important pour un bon fonctionnment , je
> pose cette question car j' ai du mal à cerné ce qu'elle fait réellement
Je te réponds, mais comme je n'ai pas vu le code, je ne te garantis pas que ma réponse soit fiable à 100%
En principe si tout est à zéro comme tu dis, cela veut dire qu'il n'y a pas de timeout, ou qu'il est infini, c'est pareil, et qu'un accès au port ne rend la main que si une opératon est faite. Par exemple si tu appelles Read, elle ne rend pas la main tant qu'un octet n'est pas lu s'il ny a pas de timeout. Si la valeur n'était pas 0 mais N millisecondes et si aucun octet n'arrive sur le port, Read rendrait la main apèrs N millisecondes.
> j'avais déja été voir sur le net mais ça ne m'a pas apporté plus
Pour le port série, deux références seulement:
1) La base de connaissance de Microsoft
2) mes articles dans Programmez! :wink:
merci pour ton aide