-
Communication avec RS232
Bonjour,
alors voila, je vous explique mon problème, je dois communiquer avec une carte d'entrées sorties relié avec un câble RS232.
Pour cela, j'utilise VB, dans mon application, j'ai un bouton qui permet d"ouvrir le port, un autre pour fermer le port et deux autres pour envoyer et pour recevoir.
J'ai configuré le port COM1 de mon ordinateur pour qu'il puisse dialoguer avec la carte. Je connecte ensuite la carte au pc via RS232.
J'arrive à ouvrir le port et à le fermer mais je n'arrive pas à lire et envoyer des commandes.
La carte d'entrées/sorties est programmable en Basic ou en turbo C. Ma première question, la voici :
Est ce qu'on peut directement envoyer les commandes en Basic en utilisant VB ? Par exemple lorsque j'appuie sur tel bouton, j'envoie tel commande.
Je voulais savoir également si je pouvais envoyer des commandes directement avec l'hyperterminal de windows.
J'ai cherché quelques commandes dans la notice de la carte et j'ai essayé de configurer par exemple le port B de la carte en sortie ou de lire ce même port mais la carte ne montre aucun signe de vie. (je précise que je l'alimente comme il se doit).
J'voulais savoir ou se situe le probleme, si c'est la carte ou si c'est un probleme de liaison RS232.
Merci d'avance pour votre aide
-
As-tu un bout de code ???
-
Sans code effectivement ca va etre dur de voir d'ou vient le probleme mais ca peut aussi venir du cable.
Tu peux nous donner la reference exacte de ce que tu interfaces en RS232 ?
Dans le principe, oui tu peux envoyer des commandes via HyperTerminal, mais la encore ca depend du style de peripherique qui est connecte.
-
Finalement j'ai résolu mon problème, c'était une mauvaise manip' au niveau des instructions que j'envoyais, merci quand même d'être intervenu ^^
Par contre j'aimerai une petite explication sur le role du carriage return (retour charriot).
Lorsque j'envoie une instruction, cela donne ci.
MSComm1.Output = "CPB00000000" + Chr(13)
Voila je me demandais juste à quoi servait le Chr(13) et pourquoi on envoyait pas seulement la configuration du port B.
-
Tout simplement parce que ton peripherique comprend le CR comme caractere de fin de message, tres souvent c'est "Carriage Return" ou "Carriage Return (13) + Line Feed (10)"