- refactored variables

git-svn-id: http://moon:8086/svn/projects/HendiControl@176 fda53097-d464-4ada-af97-ba876c37ca34
This commit is contained in:
2019-03-30 13:29:55 +00:00
parent 3d567d783e
commit 2e57afa19a
+31 -22
View File
@@ -42,14 +42,23 @@
FILE uart_file = FDEV_SETUP_STREAM(uart_putchar, NULL, _FDEV_SETUP_WRITE);
int16_t adc_poti = 0;
int16_t adc_swin = 0;
int sw_in_last = 0;
size_t cmdStrSize = 0;
Fifo messageFifo;
uint16_t g_power = 0;
int g_debug = 0;
int g_switch = 0;
// Switch IN
int16_t g_switch_in_digits = 0;
int g_switch_in = 0;
int g_switch_in_last = 0;
// Switch OUT
int g_switch_out = 0;
// Poti IN
uint16_t g_poti_in_digits = 0;
// Poti OUT
uint16_t g_poti_out_digits = 0;
typedef enum _eState_t
{
@@ -72,7 +81,7 @@ typedef enum _eSwitch
void setSwitch(int on)
{
g_switch = on;
g_switch_out = on;
const char *sw_str[2] = {"OFF", "ON"};
PRINT_DEBUG("Set switch to %s\n", sw_str[on != 0]);
portSet(PwrSwitch_out, on != 0);
@@ -84,12 +93,12 @@ typedef enum _ePower
PowerMax = 0
} Power;
void setPower(uint16_t power)
void setPower(uint16_t digits)
{
g_power = power;
PRINT_DEBUG("Set Power to %u\n", power);
g_poti_out_digits = digits;
PRINT_DEBUG("Set Power to %u digits\n", digits);
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));
size_t res = MCP47x6_write_volatile_dac(digits, dac_cmd, sizeof(dac_cmd));
i2c_send(0x60, I2C_WRITE, dac_cmd, res);
}
@@ -157,7 +166,7 @@ int main(void)
if ((*pArgs) == '?')
{
pArgs++;
PRINT_ANSWER("OK:%04u", g_power);
PRINT_ANSWER("OK:%04u", g_poti_out_digits);
}
else
{
@@ -169,7 +178,7 @@ int main(void)
if (state == StateRemote)
{
setPower(arg);
PRINT_ANSWER("OK:%04u", g_power);
PRINT_ANSWER("OK:%04u", g_poti_out_digits);
}
}
}
@@ -181,7 +190,7 @@ int main(void)
if ((*pArgs) == '?')
{
pArgs++;
PRINT_ANSWER("OK:%u", g_switch);
PRINT_ANSWER("OK:%u", g_switch_out);
}
else
{
@@ -194,7 +203,7 @@ int main(void)
if (state == StateRemote)
{
setSwitch(arg);
PRINT_ANSWER("OK:%u", g_switch);
PRINT_ANSWER("OK:%u", g_switch_out);
}
}
}
@@ -308,18 +317,19 @@ int main(void)
int16_t adc_curr = (int16_t)msg.m.adc.data;
if (adc_ch == 0)
{
if (((adc_curr - adc_poti) <= -(int16_t)POTI_HSYTERSE) || ((adc_curr - adc_poti) >= (int16_t)POTI_HSYTERSE))
if (((adc_curr - (int16_t)g_poti_in_digits) <= -(int16_t)POTI_HSYTERSE) || ((adc_curr - (int16_t)g_poti_in_digits) >= (int16_t)POTI_HSYTERSE))
{
if (state == StateNormal)
{
setPower(adc_curr << 2);
}
adc_poti = adc_curr;
g_poti_in_digits = (uint16_t)adc_curr;
}
}
if (adc_ch == 2)
{
adc_swin = adc_curr;
g_switch_in_digits = adc_curr;
g_switch_in = (int)(g_switch_in_digits > 512);
}
}
break;
@@ -365,11 +375,10 @@ int main(void)
case TIMER_ADC:
{
timer_start(timer_id, TIMER_SW_DELAY_MS(50));
int sw_in = adc_swin > 512;
if (sw_in != sw_in_last)
if (g_switch_in != g_switch_in_last)
{
PRINT_DEBUG ("PwrSwitch_in = %d\n", sw_in);
if (sw_in == 0)
PRINT_DEBUG ("PwrSwitch_in = %d\n", g_switch_in);
if (g_switch_in == 0)
{
if (state == StateError || state == StateRemote)
{
@@ -378,7 +387,7 @@ int main(void)
}
}
}
sw_in_last = sw_in;
g_switch_in_last = g_switch_in;
adc_enqueue_conversion(0);
adc_enqueue_conversion(2);
}