ioPAC RTU Controllers
C/C++ Sample Code Programming Guide
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Functions
di.c File Reference
#include "libmoxa_rtu.h"

Functions

int main (int argc, char *argv[])
 

Function Documentation

int main ( int  argc,
char *  argv[] 
)
/*******************************************************************************
* Copyright Moxa Inc.
*
* DI Sample code
*
* Date Author Comment
* 02-17-2014 TJ Tai Created.
******************************************************************************/
#include "libmoxa_rtu.h"
/*******************************************************************************
*
* Sample code for TAG E-mail Alarm Service
*
*******************************************************************************/
int main(int argc, char * argv[])
{
int rc;
TAG_ERR_CODE retval = 0;
char szFileName[80] = "/etc/RTU/config.rtu";
int isNameSet = 0;
char szTagName[TAG_MAX_NAME_SIZE];
int isValueSet = 0;
char szTagValue[TAG_MAX_NAME_SIZE];
TAG_INFO tagInfo;
int i;
char ch;
char *tagName[] = {"S0_DI0_DIValue",
"S0_DI1_DIValue",
"S0_DI2_DIValue",
"S0_DI3_DIValue",
"S0_DI4_DIValue",
"S0_DI5_DIValue",
"S0_DI6_DIValue",
"S0_DI7_DIValue",
"S0_DIO0_DOValue",
"S0_DIO1_DOValue",
"S0_DIO2_DOValue",
"S0_DIO3_DOValue",
"S0_DIO4_DOValue",
"S0_DIO5_DOValue",
"S0_DIO6_DOValue",
"S0_DIO7_DOValue"};
const int tagAmount = sizeof(tagName) / sizeof(char *);
retval = MX_RTU_Tag_Init();
if (retval != TAG_ERR_OK) {
printf("MX_RTU_Tag_Init(), return code = %d.\n", retval);
return 0;
}
// SetDO
//printf("tagName[0] = %s\n", tagName[0]);
// GetDI
while (1) {
UINT8 bitVal = 0;
for (i = 0; i < tagAmount/2; i++) {
retval = MX_RTU_Tag_Read(tagName[i], &bitVal, sizeof(bitVal), NULL, NULL);
printf("DI[%d] = %d\n", i, bitVal);
if (retval != TAG_ERR_OK) {
printf("MX_RTU_Tag_Read(%s) = %d\n", tagName[i], retval);
}
}
printf("==========================\n");
sleep(2);
}
retval = MX_RTU_Tag_Uninit();
if (retval != TAG_ERR_OK) {
printf("MX_RTU_Tag_Uninit(), return code = %d\n", retval);
}
return 0;
}