Comment pouvons-nous aider ?
Envoi et réception de caractères ASCII via le port série de l’IHM
Dans certains cas, nous avons besoin d’utiliser l’IHM pour une communication directe avec un dispositif spécifique (carte électronique, dispositif électronique,…) Cet exemple montre comment envoyer et recevoir des caractères ASCII à travers le port série de l’IHM. Téléchargez cet exemple pour tester cette fonctionnalité.
Voir comment cela fonctionne dans la section macros du logiciel HMI-Tool.
Les 2 macros de l’IHM sont les suivantes
Pour la réception de données
#include "MacroInit.h"
#include
void Macro_main(IN *p)
{
MarcoInit
//ToDo
unsigned char ch
int length = 0 ;
int PortID = 0 ; //com1:0 com2:1
if(LocalBit
retour ;
memset(ch , 0 , 512) ;
length = GETCHARS(PortID,ch) ; //Réception des données
if(length > 2) //La condition de réception des données est établie, le premier octet n'est pas affiché et le dernier octet est affiché
{
LocalBit
memset(&LocalWord
memcpy((unsigned char *)(&LocalWord
CLEARBUFFER(PortID) ; //vidange
}
}
Pour l’envoi de données
#include "MacroInit.h"
#include
// BOUTON D'ENVOI
void Macro_main(IN *p)
{
MarcoInit
//ToDo
unsigned char ch
unsigned char * data = (unsigned char *)(&LocalWord
int PortID = 0 ; //com1:0 com2:1
memset(ch , 0 , 512) ;
ch
memcpy(&ch
ch[strlen(data) 1] = ' !
PUTCHARS(PortID,ch,strlen(data) 2) ;
LocalBit
}