From 59eca43bd94de2fc23cff584306cdd666a1598e2 Mon Sep 17 00:00:00 2001 From: "Jan \"Yenya\" Kasprzak" Date: Wed, 14 Nov 2012 01:11:36 +0100 Subject: [PATCH] pattern.c: make patterns accessible from other modules --- firmware/lights.h | 10 ++++++++++ firmware/pattern.c | 11 +++++------ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/firmware/lights.h b/firmware/lights.h index 243700f..9fe2ceb 100644 --- a/firmware/lights.h +++ b/firmware/lights.h @@ -57,9 +57,19 @@ extern volatile unsigned char ambient_zone; void ambient_adc(uint16_t adc_val); /* pattern.c */ +typedef struct { + unsigned char mode: 3; + unsigned char duration: 5; +} pattern_t; + +#define PATTERN_END { 0, 0 } +extern pattern_t off_pattern[]; +extern pattern_t on_pattern[]; + void pattern_init(); void patterns_next_tick(); void led_set_status(unsigned char status); +void led_set_pattern(unsigned char led, pattern_t *pattern); /* buttons.c */ void init_buttons(); diff --git a/firmware/pattern.c b/firmware/pattern.c index 78f9880..2e06b67 100644 --- a/firmware/pattern.c +++ b/firmware/pattern.c @@ -2,20 +2,19 @@ #include "lights.h" -typedef struct { - unsigned char mode: 3; - unsigned char duration: 5; -} pattern_t; - static unsigned char led_counters[N_LEDS]; static pattern_t *led_patterns[N_LEDS]; -#define PATTERN_END { 0, 0 } pattern_t off_pattern[] = { { 0, 0x1F }, PATTERN_END }; +pattern_t on_pattern[] = { + { 1, 0x1F }, + PATTERN_END +}; + pattern_t blink_pattern[] = { { 1, 0x4 }, { 0, 0x8 }, -- 2.39.3