idk
This commit is contained in:
parent
118ce9b99c
commit
95f4b78eb2
@ -9,7 +9,8 @@
|
|||||||
|
|
||||||
static unsigned long cur_time;
|
static unsigned long cur_time;
|
||||||
static unsigned long prev_time;
|
static unsigned long prev_time;
|
||||||
static enum {GREEN, RED, BLUE} stage;
|
enum color_pin {GREEN, RED, BLUE};
|
||||||
|
enum color_pin pin;
|
||||||
static int lamp_idx;
|
static int lamp_idx;
|
||||||
static int n_loops;
|
static int n_loops;
|
||||||
static int wait;
|
static int wait;
|
||||||
@ -21,7 +22,7 @@ void PrgInit
|
|||||||
)
|
)
|
||||||
{
|
{
|
||||||
prev_time = 0;
|
prev_time = 0;
|
||||||
stage = GREEN;
|
pin = GREEN;
|
||||||
lamp_idx = BEG_LAMP_IDX;
|
lamp_idx = BEG_LAMP_IDX;
|
||||||
n_loops = 10;
|
n_loops = 10;
|
||||||
wait = 1000;
|
wait = 1000;
|
||||||
@ -46,30 +47,31 @@ int PrgTic
|
|||||||
if(cur_time-prev_time>=wait)
|
if(cur_time-prev_time>=wait)
|
||||||
{
|
{
|
||||||
prev_time = cur_time;
|
prev_time = cur_time;
|
||||||
p_ta->output.duty[stage-1] = LIGHT_OFF;
|
|
||||||
p_ta->output.duty[stage] = LIGHT_MAX;
|
|
||||||
p_ta->hook_table.DisplayMsg(p_ta, NULL);
|
p_ta->hook_table.DisplayMsg(p_ta, NULL);
|
||||||
|
|
||||||
switch(stage)
|
switch(pin)
|
||||||
{
|
{
|
||||||
case GREEN:
|
case GREEN:
|
||||||
p_ta->hook_table.DisplayMsg(p_ta, "GREEN");
|
p_ta->hook_table.DisplayMsg(p_ta, "GREEN");
|
||||||
|
p_ta->output.duty[BLUE] = LIGHT_OFF;
|
||||||
|
p_ta->output.duty[GREEN] = LIGHT_MAX;
|
||||||
break;
|
break;
|
||||||
case RED:
|
case RED:
|
||||||
p_ta->hook_table.DisplayMsg(p_ta, "RED");
|
p_ta->hook_table.DisplayMsg(p_ta, "RED");
|
||||||
|
p_ta->output.duty[GREEN] = LIGHT_OFF;
|
||||||
|
p_ta->output.duty[RED] = LIGHT_MAX;
|
||||||
break;
|
break;
|
||||||
case BLUE:
|
case BLUE:
|
||||||
p_ta->hook_table.DisplayMsg(p_ta, "BLUE");
|
p_ta->hook_table.DisplayMsg(p_ta, "BLUE");
|
||||||
break;
|
p_ta->output.duty[RED] = LIGHT_OFF;
|
||||||
|
p_ta->output.duty[BLUE] = LIGHT_MAX;
|
||||||
default:
|
default:
|
||||||
p_ta->hook_table.DisplayMsg(p_ta, NULL);
|
p_ta->hook_table.DisplayMsg(p_ta, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(++stage>END_LAMP_IDX)
|
if(++pin>END_LAMP_IDX)
|
||||||
{
|
{
|
||||||
stage = 0;
|
pin = GREEN;
|
||||||
p_ta->output.duty[END_LAMP_IDX] = LIGHT_OFF;
|
|
||||||
// p_ta->output.duty[lamp_idx] = LIGHT_MAX;
|
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user