00001 #ifndef _MODES_H_ 00002 #define _MODES_H_ 00003 00004 #define FADETIME 128 //<! Transition time for xfading digits, in tmr0 overflow-counts 00005 00006 #define FADETIME_S 256 //<! Slow transition time 00007 00010 enum _fademode { 00011 FADE_OFF = 0, 00012 FADE_ON, 00013 FADE_SLOW 00014 }; 00015 00016 extern volatile uint16_t fadetime_full; 00017 extern volatile uint16_t fadetime_quart; 00018 00019 void fade_set(uint8_t mode); 00020 enum _fademode fade_get(); 00021 00023 enum _dotmode { 00024 DOT_BLINK = 0, 00025 DOT_ON, 00026 DOT_OFF 00027 }; 00028 00029 extern volatile uint8_t dotmode; 00030 00031 void dotmode_set(uint8_t mode); 00032 00034 #define NDISPLAYMODES 3 00035 enum _displaymode { 00036 HHMM = 0, 00037 MMSS, 00038 VOLTAGE 00039 }; 00040 00041 void mode_next(); 00042 inline uint8_t mode_get(); 00043 00045 enum _blinkmode { 00046 BLINK_NONE = 0, 00047 BLINK_HH = 1, 00048 BLINK_MM = 2, 00049 BLINK_ALL = 3, 00050 BLINK_SUPPRESS = 0200, 00051 }; 00052 00053 00054 void blinkmode_set(uint8_t mode); 00055 00056 uint8_t blinkmode_get(); 00057 00059 enum _savinmode { 00060 WASTE = 0, 00061 SAVE, 00062 SAVENIGHT, 00063 }; 00064 00065 void savingmode_set(uint8_t s); 00066 uint8_t savingmode_get(); 00067 void savingmode_next(); 00068 00069 00070 00071 #endif