Controler completement le port série

Signaler
Messages postés
17
Date d'inscription
vendredi 5 décembre 2008
Statut
Membre
Dernière intervention
30 octobre 2010
-
Messages postés
17
Date d'inscription
vendredi 5 décembre 2008
Statut
Membre
Dernière intervention
30 octobre 2010
-
Bonjour,
J'ai réalisé un montage électronique avec un pic, et j'ai besoin de le piloter par mon pc. J'utilise donc le port série, le problème c'est que je n'arrive pas avec visual basic express 2008 à gérer le port.

Enfaite avec VB il gére toute la communication rs232 mais justement je voudrais pas qu'il le fasse car je dois utiliser mon propre protocole de communication. Pourquoi? car j'utilise un module radio pour transmettre entre mon pc et mon pic et que pour pas capter toute les ondes des alentours je dois coder mon signal. Mon objectif est donc au final de simplement mettre à 1 (niveau logique) la sortie TX durant un certain temps puis à 0 (logique) pendant un certain temps, sans utiliser les broches de réponse et tout (DTR, DSR,.....)

Je sais pas si j'ai étais vraiment clair, au final ma question serait : peut on commander nous même chaque broche du port série de façon indépendante? choisir quelle broche est à 1 ou 0 et pendant combien de temps?

merci

4 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
En fait, le signal Tx n'est pas un signal tout-ou-rien comme peuvent l'être DTR ou DSR, il transmet les données.
Si tu envoies une donnée sur le port, il enverra une série de bits (état 0 ou 1), mais une fois qu'il a terminé, il n'envoie plus rien.
La durée dépend de la vitesse de comm. Si tu règles en 150 Bds, cela durera beaucoup plus longtemps qu'en 19200 Bds, logique.
Donc, si tu veux mettre à 1 le signal Tx, il envoyer FF (*) en permanence dans le buffer.
(*) FF hexa ou 255 décimal ou Chr$(255) ascii, au choix, selon ton format d'écriture

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
143
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
6 septembre 2011

Hello CPPTSI



La réponse a la question est non.




<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 






Raison exemple pour lettre A = 41hex   ou   01000001b




 il y a une start bit  0 puis  01000001 pour A et une stop bit 0.



Donc voila la réponse. Donc meme avec FFh ou 11111111b li siganal tombe a zero.




 






A plus



42wawa42
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Oui, il tombe à zéro, mais globalement, il reste plus souvent à 1 qu'à 0.
Comme il semble s'agir de récupérer cette info pour un circuit électronique, un petit condo suffira pour éviter les microcoupures dûes à ces zéros.
Messages postés
17
Date d'inscription
vendredi 5 décembre 2008
Statut
Membre
Dernière intervention
30 octobre 2010

Merci pour vos réponses, niveau fonctionnement réel du port série il y a pas de soucis en électronique je m'en sert souvent, mais je savais pas si on pouvait sans servir comme une simple sortie comme sur les microcontroleurs, mais vous m'avez donné la réponse
Par contre vous auriez une autre solution pour faire cela ? par le port USB ou parallèle(en utilisant qu'une seul broche). Car je peux pas utiliser une communication RS232 (explication sur le codage: http://lewebelectronique.free.fr/dossiers/433mhz.htm#coder paragraphe "Encoder les informations à transmettre" vers le milieu de page).