summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2013-02-06 03:59:50 +0000
committerChristian Pointner <equinox@spreadspace.org>2013-02-06 03:59:50 +0000
commit053da2327db61b22426a225d6c1db14f67a45f93 (patch)
tree767947b93c75696aaa0ca683e4ceaa0cedd4f620
parentfirst working version for ledmatrix modes (diff)
blink slower
git-svn-id: https://svn.spreadspace.org/avr/trunk@130 aa12f405-d877-488e-9caf-2d797e2a1cc7
-rw-r--r--usb-i2c-sl018/ledmatrix.c20
1 files changed, 17 insertions, 3 deletions
diff --git a/usb-i2c-sl018/ledmatrix.c b/usb-i2c-sl018/ledmatrix.c
index 78a70a1..cc0abd2 100644
--- a/usb-i2c-sl018/ledmatrix.c
+++ b/usb-i2c-sl018/ledmatrix.c
@@ -32,9 +32,11 @@
#define LEDMATRIX_GREEN 7
#define LEDMATRIX_NUM_LEDS 6
#define LEDMATRIX_MASK 0x3F
+#define BLINK_DELAY 3
ledmatrix_mode_t mode = off;
uint8_t moving_cnt = 0;
+uint8_t wait_cnt = 0;
void ledmatrix_start_timer(void)
{
@@ -83,13 +85,17 @@ void ledmatrix_red_moving_handle(void)
void ledmatrix_red_blink_init(void)
{
+ wait_cnt = 0;
ledmatrix_red_init();
ledmatrix_start_timer();
}
void ledmatrix_red_blink_handle(void)
{
- LEDMATRIX_PORT ^= 1<<LEDMATRIX_RED;
+ if(++wait_cnt >= BLINK_DELAY) {
+ LEDMATRIX_PORT ^= 1<<LEDMATRIX_RED;
+ wait_cnt = 0;
+ }
}
@@ -118,13 +124,17 @@ void ledmatrix_green_moving_handle(void)
void ledmatrix_green_blink_init(void)
{
+ wait_cnt = 0;
ledmatrix_green_init();
ledmatrix_start_timer();
}
void ledmatrix_green_blink_handle(void)
{
- LEDMATRIX_PORT ^= 1<<LEDMATRIX_GREEN;
+ if(++wait_cnt >= BLINK_DELAY) {
+ LEDMATRIX_PORT ^= 1<<LEDMATRIX_GREEN;
+ wait_cnt = 0;
+ }
}
@@ -152,13 +162,17 @@ void ledmatrix_rg_moving_handle(void)
void ledmatrix_rg_blink_init(void)
{
+ wait_cnt = 0;
ledmatrix_red_init();
ledmatrix_start_timer();
}
void ledmatrix_rg_blink_handle(void)
{
- LEDMATRIX_PORT ^= ~(LEDMATRIX_MASK);
+ if(++wait_cnt >= BLINK_DELAY) {
+ LEDMATRIX_PORT ^= ~(LEDMATRIX_MASK);
+ wait_cnt = 0;
+ }
}