Integrate Register Level Programming and add counter source selection
r1196 | dcl | 2006-10-26 13:09:31 +1000 (Thu, 26 Oct 2006) | 2 lines
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
#define CMD_RANGE_MODE 12
|
||||
#define CMD_OUTPUT 13
|
||||
#define CMD_SYNC 14
|
||||
#define CMD_SOURCE 15
|
||||
|
||||
#define TXT_DIRECTION "DIRECTION"
|
||||
#define TXT_SCAN "SCAN"
|
||||
@@ -32,6 +33,7 @@
|
||||
#define TXT_RANGE_MODE "RANGE_MODE"
|
||||
#define TXT_OUTPUT "OUTPUT"
|
||||
#define TXT_SYNC "SYNC"
|
||||
#define TXT_SOURCE "SOURCE"
|
||||
|
||||
static struct param_command_t {
|
||||
int cmd;
|
||||
@@ -51,6 +53,7 @@ static struct param_command_t {
|
||||
{CMD_RANGE_MODE, TXT_RANGE_MODE},
|
||||
{CMD_OUTPUT, TXT_OUTPUT},
|
||||
{CMD_SYNC, TXT_SYNC},
|
||||
{CMD_SOURCE, TXT_SOURCE},
|
||||
{0, NULL}
|
||||
};
|
||||
#define NUM_CMDS ((int) (sizeof(param_command)/sizeof(param_command[0])))
|
||||
@@ -158,6 +161,16 @@ bool param_set(pPARAMETERS pp, char* name, char* value)
|
||||
pp->range_low = 0.0;
|
||||
dbg_printf(0, "=>%g\n", pp->range_low);
|
||||
break;
|
||||
case CMD_SAMPLE:
|
||||
result = true;
|
||||
dbg_printf(0, "Sample=%d", pp->sample_period);
|
||||
pp->sample_period = strtol(value, NULL, 10);
|
||||
if (pp->sample_period < 1)
|
||||
pp->sample_period = 1;
|
||||
else if (pp->sample_period > 1000)
|
||||
pp->sample_period = 1000;
|
||||
dbg_printf(0, "=>%d\n", pp->sample_period);
|
||||
break;
|
||||
case CMD_SCAN:
|
||||
result = true;
|
||||
dbg_printf(0, "Scan=%d", pp->poll_period);
|
||||
@@ -168,15 +181,15 @@ bool param_set(pPARAMETERS pp, char* name, char* value)
|
||||
pp->poll_period = 1000;
|
||||
dbg_printf(0, "=>%d\n", pp->poll_period);
|
||||
break;
|
||||
case CMD_SAMPLE:
|
||||
case CMD_SOURCE:
|
||||
result = true;
|
||||
dbg_printf(0, "Sample=%d", pp->sample_period);
|
||||
pp->sample_period = strtol(value, NULL, 10);
|
||||
if (pp->sample_period < 1)
|
||||
pp->sample_period = 1;
|
||||
else if (pp->sample_period > 1000)
|
||||
pp->sample_period = 1000;
|
||||
dbg_printf(0, "=>%d\n", pp->sample_period);
|
||||
dbg_printf(0, "Source=%d", pp->source);
|
||||
pp->source = strtol(value, NULL, 10);
|
||||
if (pp->source < 1)
|
||||
pp->source = 0;
|
||||
else if (pp->source > 1000)
|
||||
pp->source = 0;
|
||||
dbg_printf(0, "=>%d\n", pp->source);
|
||||
break;
|
||||
case CMD_SYNC:
|
||||
result = true;
|
||||
@@ -189,7 +202,7 @@ bool param_set(pPARAMETERS pp, char* name, char* value)
|
||||
break;
|
||||
case CMD_TERMINAL:
|
||||
result = true;
|
||||
dbg_printf(0, "Sample=%llu", pp->terminal_count);
|
||||
dbg_printf(0, "Terminal=%llu", pp->terminal_count);
|
||||
pp->terminal_count = strtoull(value, NULL, 10);
|
||||
dbg_printf(0, "=>%llu\n", pp->terminal_count);
|
||||
break;
|
||||
@@ -328,17 +341,29 @@ bool param_get_cmd(pPARAMETERS pp, char* cmd, int n)
|
||||
"GET %s=%g", name,
|
||||
pp->range_low);
|
||||
break;
|
||||
case CMD_SAMPLE:
|
||||
result = true;
|
||||
snprintf(buffer.body, sizeof(buffer.body),
|
||||
"GET %s=%d", name,
|
||||
pp->sample_period);
|
||||
break;
|
||||
case CMD_SCAN:
|
||||
result = true;
|
||||
snprintf(buffer.body, sizeof(buffer.body),
|
||||
"GET %s=%d", name,
|
||||
pp->poll_period);
|
||||
break;
|
||||
case CMD_SAMPLE:
|
||||
case CMD_SOURCE:
|
||||
result = true;
|
||||
snprintf(buffer.body, sizeof(buffer.body),
|
||||
"GET %s=%d", name,
|
||||
pp->sample_period);
|
||||
pp->source);
|
||||
break;
|
||||
case CMD_SYNC:
|
||||
result = true;
|
||||
snprintf(buffer.body, sizeof(buffer.body),
|
||||
"GET %s=%s", name,
|
||||
pp->sync ? "External" : "Internal");
|
||||
break;
|
||||
case CMD_TERMINAL:
|
||||
result = true;
|
||||
|
||||
Reference in New Issue
Block a user