Removed clock with BG colour. Reduced frame time for longer strip
This commit is contained in:
parent
256ea53a2f
commit
2c6865643e
@ -22,7 +22,7 @@
|
|||||||
#define LED0_MS 500
|
#define LED0_MS 500
|
||||||
#define LED1_MS 500
|
#define LED1_MS 500
|
||||||
#define LED2_MS 500
|
#define LED2_MS 500
|
||||||
#define LED3_MS 500
|
#define LED3_MS 400
|
||||||
|
|
||||||
// ms offset
|
// ms offset
|
||||||
#define LED0_MS_OFFSET 0
|
#define LED0_MS_OFFSET 0
|
||||||
@ -99,14 +99,13 @@ void draw_digit(uint8_t pos, uint8_t digit);
|
|||||||
|
|
||||||
// Call function to show a frame and prepare idx for next frame
|
// Call function to show a frame and prepare idx for next frame
|
||||||
void sun_and_moon(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
void sun_and_moon(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
||||||
void clock_bg(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
|
||||||
void clock_no_bg(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
void clock_no_bg(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
||||||
void loading(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
void loading(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
||||||
void off(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
void off(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led);
|
||||||
|
|
||||||
void (*func_list[5])(uint8_t, uint8_t*, uint8_t, uint8_t) =
|
void (*func_list[5])(uint8_t, uint8_t*, uint8_t, uint8_t) =
|
||||||
{
|
{
|
||||||
sun_and_moon, clock_bg, clock_no_bg, loading, off
|
sun_and_moon, clock_no_bg, loading, off
|
||||||
};
|
};
|
||||||
|
|
||||||
void (*send_ptr[4])(uint8_t) =
|
void (*send_ptr[4])(uint8_t) =
|
||||||
@ -117,8 +116,6 @@ void (*send_ptr[4])(uint8_t) =
|
|||||||
enum states
|
enum states
|
||||||
{
|
{
|
||||||
STATE_SUN_MOON = 0,
|
STATE_SUN_MOON = 0,
|
||||||
STATE_CLOCK_BG1,
|
|
||||||
STATE_CLOCK_BG2,
|
|
||||||
STATE_CLOCK_NO1,
|
STATE_CLOCK_NO1,
|
||||||
STATE_CLOCK_NO2,
|
STATE_CLOCK_NO2,
|
||||||
STATE_LOADING,
|
STATE_LOADING,
|
||||||
@ -195,17 +192,6 @@ while(1)
|
|||||||
{
|
{
|
||||||
case STATE_SUN_MOON:
|
case STATE_SUN_MOON:
|
||||||
func_idx = 1;
|
func_idx = 1;
|
||||||
colour_state = STATE_CLOCK_BG1;
|
|
||||||
colour = 0;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case STATE_CLOCK_BG1:
|
|
||||||
colour_state = STATE_CLOCK_BG2;
|
|
||||||
colour = 1;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case STATE_CLOCK_BG2:
|
|
||||||
func_idx = 2;
|
|
||||||
colour_state = STATE_CLOCK_NO1;
|
colour_state = STATE_CLOCK_NO1;
|
||||||
colour = 0;
|
colour = 0;
|
||||||
break;
|
break;
|
||||||
@ -216,13 +202,13 @@ while(1)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case STATE_CLOCK_NO2:
|
case STATE_CLOCK_NO2:
|
||||||
func_idx = 3;
|
func_idx = 2;
|
||||||
colour_state = STATE_LOADING;
|
colour_state = STATE_LOADING;
|
||||||
colour = 0;
|
colour = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case STATE_LOADING:
|
case STATE_LOADING:
|
||||||
func_idx = 4;
|
func_idx = 3;
|
||||||
PORTA ^= 0x20;
|
PORTA ^= 0x20;
|
||||||
colour_state = STATE_PC;
|
colour_state = STATE_PC;
|
||||||
break;
|
break;
|
||||||
@ -513,45 +499,6 @@ void sun_and_moon(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led)
|
|||||||
(*idx) %= count;
|
(*idx) %= count;
|
||||||
}
|
}
|
||||||
|
|
||||||
void clock_bg(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led)
|
|
||||||
{
|
|
||||||
uint8_t i;
|
|
||||||
uint8_t colour1[3] = {0xFF, 0x80, 0x00};
|
|
||||||
uint8_t colour2[3] = {0x00, 0x80, 0xFF};
|
|
||||||
|
|
||||||
if (colour == 0)
|
|
||||||
{
|
|
||||||
for (i = 0; i < count; ++i)
|
|
||||||
{
|
|
||||||
if (i == *idx)
|
|
||||||
{
|
|
||||||
send_pixel(colour1[0], colour1[1], colour1[2], led);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
send_pixel(colour2[0], colour2[1], colour2[2], led);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
for (i = 0; i < count; ++i)
|
|
||||||
{
|
|
||||||
if (i == *idx)
|
|
||||||
{
|
|
||||||
send_pixel(colour2[0], colour2[1], colour2[2], led);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
send_pixel(colour1[0], colour1[1], colour1[2], led);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
(*idx)++;
|
|
||||||
(*idx) %= count;
|
|
||||||
}
|
|
||||||
|
|
||||||
void clock_no_bg(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led)
|
void clock_no_bg(uint8_t count, uint8_t* idx, uint8_t colour, uint8_t led)
|
||||||
{
|
{
|
||||||
uint8_t i;
|
uint8_t i;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user