- fifo ommit memcpy

- volatilize

git-svn-id: http://moon:8086/svn/projects/HendiControl@35 fda53097-d464-4ada-af97-ba876c37ca34
This commit is contained in:
2019-03-02 13:31:52 +00:00
parent f5391f55e9
commit a94413670a
5 changed files with 32 additions and 26 deletions
+16 -18
View File
@@ -66,7 +66,7 @@ typedef enum _ePower
void setPower(uint16_t power)
{
printf("Set Power to %d\n", power);
printf("Set Power to %u\n", power);
uint8_t dac_cmd[] = {0x00, 0x00}; // 6.2 Write Volatile Memory (C2:C0 = 010)
size_t res = MCP47x6_write_volatile_dac(power, dac_cmd, sizeof(dac_cmd));
i2c_send(0x60, I2C_WRITE, dac_cmd, res);
@@ -133,22 +133,23 @@ int main(void)
{
// Process Uart message
cmdStr[cmdStrSize] = 0;
if (cmdStrSize < sizeof(cmdStr))
{
char c = msg.data;
char c = msg.data;
if (state != StateNormal && state != StateRemote)
// Command finished with CR/LF
if (c == 0x0A || c == 0x0D)
{
PRINT_PROMPT;
if (cmdStrSize < 2)
{
break;
}
// Command finished with CR/LF
if (c == 0x0A || c == 0x0D)
if (state == StateNormal || state == StateRemote)
{
// Power Control
if (toupper(cmdStr[0]) == 'P')
{
uint16_t arg = atol(cmdStr+1);
uint16_t arg = (uint16_t)strtol(cmdStr+1, (char **)NULL, 10);
setPower(arg);
timer_start(TIMER_TIMEOUT, TIMER_SW_DELAY_MS(5000));
state_next = StateRemote;
@@ -157,24 +158,21 @@ int main(void)
// Switch Control
if (toupper(cmdStr[0]) == 'S')
{
uint16_t arg = atol(cmdStr+1);
uint16_t arg = (uint16_t)strtol(cmdStr+1, (char **)NULL, 10);
setSwitch(arg);
timer_start(TIMER_TIMEOUT, TIMER_SW_DELAY_MS(5000));
state_next = StateRemote;
}
cmdStrSize = 0;
PRINT_PROMPT;
}
else
{
cmdStr[cmdStrSize++] = c;
printf("%c", c);
}
cmdStrSize = 0;
}
else
{
printf("Invalid command : %s\n", cmdStr);
cmdStrSize = 0;
if (cmdStrSize < (sizeof(cmdStr)-1))
{
printf("%c", c);
cmdStr[cmdStrSize++] = c;
}
}
}
break;