12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #pragma once
- #ifndef _CLOCK_H
- #define _CLOCK_H
- /* Includes */
- #include "main.h"
- /* type defs */
- typedef union {
- uint64_t u64;
- uint32_t u32[2];
- uint8_t u8[8];
- struct {
- uint8_t DayHour;
- uint8_t NightHour;
- uint8_t DayBright;
- uint8_t NightBright;
- uint8_t DayMode;
- uint8_t NightMode;
- uint8_t DayColour;
- uint8_t NightColour;
- } name;
- } flash_data_t;
- typedef enum {
- light_Off = 0x0,
- light_Rainbow = 0x1,
- light_Colour = 0x2
- } light_mode_t;
- /* macro */
- #define FADE_START 0
- #define FADE_STOP 15
- #define FADE_STEP 1
- // Day/Night mode
- #define MORNING_HOUR 0x06
- #define EVENING_HOUR 0x22
- #define DAY_BR_LVL 11
- #define NIGHT_BR_LVL 5
- #define MAX_BRIGHT_LVL 15
- #define MAX_LIGHT_MODE 2
- #define MAX_COLOR_VAL 59
- // Color HUE angle
- #define COLOUR_RED 0
- #define COLOUR_GREEN 20
- #define COLOUR_BLUE 40
- #define COLOUR_NIXIE 1
- /* time constant in ms */
- #define BTN_SCAN_PERIOD 10
- #define BTN_SCAN_PAUSE 200
- #define BTN_TIME_PRESSED 30
- #define BTN_TIME_HOLDED 500
- #define BTN_TIME_REPEATED 50
- /* Display timeout, sec */
- #define DISP_WDT_TIME 15
- /* variables */
- extern rtc_t Clock;
- /* function prototypes */
- void Clock_Init(void);
- void btnProcess(void);
- void new_Second(void);
- #endif /* _CLOCK_H */
|