#ifndef __OZONE_WORK_H__ #define __OZONE_WORK_H__ #include //¶¨Òå²¼¶û #include #include #include "port.h" #include "timer.h" #include "systick.h" #include "adc.h" #define LED_INIT(_bool, _port_led_set) \ { .set_led_state = _bool, .port_led_set = _port_led_set } typedef void (*port_led_set_t)(bool state); typedef struct { bool set_led_state; port_led_set_t port_led_set; } led_t,rgb_t; static led_t s_leds[] = { LED_INIT(false, port_led0_set), LED_INIT(false, port_led1_set), LED_INIT(false, port_led2_set), LED_INIT(false, port_led3_set), }; static rgb_t s_rgb[] = { LED_INIT(false, port_led_r_set), LED_INIT(false, port_led_g_set), LED_INIT(false, port_led_b_set), }; void gears_led_on(uint8_t led_number); void timing_led_on(uint8_t led_number); void set_ozen_gears(int ozen_gears); void ozone_work_mode(int mode); void set_ozone_work_time(void); void timing_ozone_work_over(void); void is_ozone_work_time_over(void); void is_ozone_interva_time_over(void); void set_interval_time(void); static void ozone_interval_begin(void); static void close_ozone_work(void); bool get_ozone_starting_up_state(void); void process_switch_key(void); void power_on_ozone_work_state(void); void process_voltage_abnormal(void); #endif