void oled_default_mode() { #define OFFSET 0 static bool flag = false; calendar temp_time = get_standard_time(); OLED_ShowNum(OFFSET, 0, temp_time.hour, 2, 32); if(temp_time.hour < 10) OLED_ShowNum(OFFSET, 0, 0, 1, 32); OLED_ShowChar(OFFSET+8*2, 0, ':', 32, 1); OLED_ShowNum(OFFSET+8*3, 0, temp_time.minute, 2, 32); if(temp_time.minute < 10) OLED_ShowNum(OFFSET+8*3, 0, 0, 1, 32); OLED_ShowChar(OFFSET+8*5, 0, ':', 32, 1); OLED_ShowNum(OFFSET+8*6, 0, temp_time.second, 2, 32); if(temp_time.second < 10) OLED_ShowNum(OFFSET+8*6, 0, 0, 1, 32); if(get_time_mode() == MINUTE_MODE) { if(flag) { OLED_ShowChar(OFFSET+8*5, 0, ' ', 32, 1); flag = false; } else { OLED_ShowChar(OFFSET+8*5, 0, ':', 32, 1); flag = true; } } if(get_time_mode() == HOUR_MODE) { if(flag) { OLED_ShowChar(OFFSET+8*2, 0, ' ', 32, 1); flag = false; } else { OLED_ShowChar(OFFSET+8*2, 0, ':', 32, 1); flag = true; } } OLED_Refresh_Gram(); }
void toggle_time_mode(void) { switch (get_time_mode()) { case NORMAL_MODE: set_time_mode(DECIMAL_MODE); break; case DECIMAL_MODE: set_time_mode(NORMAL_MODE); break; default: Q_ASSERT( 0 ); } }