mirror of
https://github.com/DashyFox/StackSport.git
synced 2025-05-04 15:20:16 +00:00
69 lines
1.3 KiB
C
69 lines
1.3 KiB
C
/*
|
|
* Indicator.h
|
|
*
|
|
* Created on: Sep 26, 2024
|
|
* Author: DashyFox
|
|
*/
|
|
|
|
#ifndef INC_INDICATOR_H_
|
|
#define INC_INDICATOR_H_
|
|
#include "ShiftReg.h"
|
|
/********* led map: *********
|
|
* - [2] 0b01000000
|
|
* - [2] 0b00100000
|
|
* - [2] 0b00010000
|
|
* - [2] 0b00001000
|
|
* - [2] 0b00000100
|
|
* - [2] 0b00000010
|
|
* - [2] 0b00000001
|
|
*
|
|
* = [1] 0b00010000
|
|
* = [1] 0b00100000
|
|
* = [1] 0b01000000
|
|
*
|
|
*
|
|
*
|
|
* = [1] 0b00000100
|
|
* = [1] 0b00000010
|
|
* = [1] 0b00000001
|
|
*
|
|
* - [0] 0b00000001
|
|
* - [0] 0b00000010
|
|
* - [0] 0b00000100
|
|
* - [0] 0b00001000
|
|
* - [0] 0b00010000
|
|
* - [0] 0b00100000
|
|
* - [0] 0b01000000
|
|
*
|
|
**/
|
|
|
|
#define INDICATORS_COUNT 2
|
|
|
|
typedef struct LedMap_element {
|
|
uint8_t byteIndx;
|
|
uint8_t offsetMask;
|
|
} LedMap_element;
|
|
|
|
typedef struct LedMap {
|
|
LedMap_element ALL[NUMLEDS * INDICATORS_COUNT];
|
|
LedMap_element UP[NUMLEDS];
|
|
LedMap_element DOWN[NUMLEDS];
|
|
LedMap_element RED[6];
|
|
}LedMap;
|
|
|
|
extern const LedMap ledMap;
|
|
|
|
void led_init();
|
|
|
|
void led_show();
|
|
void led_tick();
|
|
|
|
void led_writeMirror(uint8_t number, uint8_t state);
|
|
void led_write(LedMap_element led, uint8_t state);
|
|
void led_blink(LedMap_element led, uint16_t period, uint16_t count);
|
|
void led_blink_num(uint8_t ledNum, uint16_t period, uint16_t count);
|
|
uint8_t led_getState(LedMap_element led);
|
|
void led_clear();
|
|
|
|
#endif /* INC_INDICATOR_H_ */
|