49 #include <iothinx/iothinxio.h> 52 int main(
int argc,
char **
const argv)
56 uint8_t ai_channel_start = 0;
57 uint8_t ai_channel_count = 8;
61 uint8_t ai_statuss[8];
65 while (-1 != (rc = getopt(argc, argv,
"c:n:hs:")))
70 ai_slot = atoi(optarg);
73 ai_channel_start = atoi(optarg);
76 ai_channel_count = atoi(optarg);
80 printf(
"AI sample program.\n\n");
81 printf(
"Usage: ./ai [OPTIONS]\n\n");
83 printf(
"\t%-8s Slot of AI module. Default slot = %d\n",
"-s", ai_slot);
84 printf(
"\t%-8s AI start channel. Default channel = %d\n",
"-c", ai_channel_start);
85 printf(
"\t%-8s AI channel count. Default count = %d\n",
"-n", ai_channel_count);
91 printf(
"AI slot = %lu\n", ai_slot);
92 printf(
"AI start channel = %u\n", ai_channel_start);
93 printf(
"AI channel count = %u\n", ai_channel_count);
99 printf(
"ioThinx_IO_Client_Init() = %d\n", rc);
104 for (i = 0; i < ai_channel_count; i++)
111 printf(
"ioThinx_AI_Config_SetRanges() = %d\n", rc);
113 for (i = 0; i < ai_channel_count; i++)
115 ai_burnouts[i] = 2.0f;
120 printf(
"ioThinx_AI_Config_SetBurnoutValues() = %d\n", rc);
127 printf(
"ioThinx_IO_Config_Reload() = %d\n", rc);
136 printf(
"ioThinx_AI_GetEngs() = %d\n", rc);
142 printf(
"ioThinx_AI_GetStatuss() = %d\n", rc);
145 for (i = 0; i < ai_channel_count; i++)
147 printf(
"[%lu:%u] eng = %.3f, status = %d\n", ai_slot, ai_channel_start+i, ai_engs[i], ai_statuss[i]);
#define AI_RANGE_4_20mA_BURNOUT
int main(int argc, char **const argv)
IOTHINX_ERR ioThinx_AI_GetEngs(uint32_t slot, uint8_t start, uint8_t count, float buf[])
IOTHINX_ERR ioThinx_IO_Config_Reload(void)
IOTHINX_ERR ioThinx_AI_Config_SetBurnoutValues(uint32_t slot, uint8_t start, uint8_t count, float buf[])
IOTHINX_ERR ioThinx_AI_Config_SetRanges(uint32_t slot, uint8_t start, uint8_t count, uint8_t buf[])
IOTHINX_ERR ioThinx_IO_Client_Init(void)
IOTHINX_ERR ioThinx_AI_GetStatuss(uint32_t slot, uint8_t start, uint8_t count, uint8_t buf[])