Hoe kunnen we helpen?
Historische gegevensverzamelaar van ASCII-gegevens van seriële poort
Het volgende voorbeeld illustreert de toepassing van het Historische gegevensverzamelaar met een macro om ASCII-strings van de seriële poort op te nemen.
De gegevens worden automatisch opgenomen als de lokale bit LB1 is ingesteld. LB1 wordt ingesteld in macro nr. 0 wanneer gegevens binnenkomen op COM
U kunt:
-
-
- Alle historische gegevens wissen
- gegevens back-uppen op een USB-schijf (geformatteerd FAT32) die op de HMI is aangesloten
- Een schermafbeelding maken van het scherm van de HMI op de USB-schijf
- Gegevens bekijken die van de COM-poort komen
- Gegevens verzenden via de COM-poort
-
Download dit eenvoudige voorbeeld (HMI-project) : Historische gegevensverzamelaar van ASCII-gegevens van seriële poort

Nadat u op de knop [>USB] hebt gedrukt, vindt u het .csv-bestand op de USB-schijf

De 2 macro’s in de HMI zijn als volgt
Voor gegevens verzenden
#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
terugkeren;
memset(ch , 0 , 512);
length = GETCHARS(PortID,ch); /Ontvangst van gegevens
if(length > 2) /De ontvangstconditie van de gegevens is ingesteld, de eerste byte wordt niet weergegeven einde de laatste byte
{
LocalBit
memset(&LocalWord
memcpy((unsigned char *)(&LocalWord
CLEARBUFFER(PortID); //leegmaken
}
}
Voor het ontvangen van gegevens
#include "MacroInit.h"
#include
// KNOP VERZENDEN
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
}