Envoi de données hexadecimale via un port sériel (communication sérielle)

cs_parrin Messages postés 1 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 26 novembre 2008 - 26 nov. 2008 à 14:16
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 26 nov. 2008 à 14:36
Salut tout le monde,
je suis entrain de programmer un logiciel pour un AS-Interface Master! Celon le constructeur pour communiquer avec le Master il faut envoyer un télegramm vers le port série (RS232) qui se compose de 3 byte, par exemple:
Byte 1: 6D (hexa)
Byte 2: 04 (hexa)
Byte 3: 6E (hexa)
alors ma question est: comment peut-on informer le port qu'il s'agit de 3 Bytes differents en hexadecimal en utilisant la fonction WriteFile(ComH, buffer, nbBytes,Byteswritten)
Merci Bocou en avance

FORZA ESS
RIEN N'EST TERMINÈ,IL Y A TJS DU TRAVAIL À FAIRE!

1 réponse

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
26 nov. 2008 à 14:36
Tu es certain que le port attend des chaines ???
en "hexadecimal", c'est seulement une représentation visuelle mais sur ton port c'est certainement la valeur qu'il convient d'envoyer.

typedef struct _TOSEND {
  BYTE a;
  BYTE b;
  BYTE c;
  BYTE d;
} TOSEND;


TOSEND v;
v.a = 109; // 0x6D idem
v.b = 4;
v.c = 110; // 0x6E idem
WriteFile(ComH, &v, 3, Byteswritten);

ciao...
BruNews, MVP VC++
Rejoignez-nous