#ifndef __LED_H #define __LED_H #include "stdint.h" #include "main.h" #define LED_MAX_NUM 4 // 回调需要这个参数,控制时开关还是闪烁,闪烁快慢 enum led_state{ LED_STATE_ON, LED_STATE_FLICKER_SLOW, LED_STATE_FLICKER_MEDIUM, LED_STATE_FLICKER_QUICK, LED_STATE_OFF }; // 标准库的 GPIO_TypeDef, 改为HAL库 struct led { enum led_state state; GPIO_TypeDef *gpio; uint16_t pin; uint16_t level_on; }; // 依据GPIO 信息注册 int led_register(struct led *led, GPIO_TypeDef *gpio, uint16_t pin, enum led_state state, uint16_t level_on ); // 初始化状态 int led_set_state(struct led *led,enum led_state state); // 执行 -- 由状态决定 void led_callback(void); #endif