基质喷涂
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

84 lines
3.4 KiB

//
// Created by iflyt on 2025/2/27.
//
#ifndef BSP_LED_H
#define BSP_LED_H
#ifdef __cplusplus
extern "C" {
#endif
// LED_KEY
#define LED_KEY_Pin GPIO_PIN_11
#define LED_KEY_GPIO_Port GPIOF
#define LED_KEY_OFF HAL_GPIO_WritePin(LED_KEY_GPIO_Port, LED_KEY_Pin, GPIO_PIN_SET)
#define LED_KEY_ON HAL_GPIO_WritePin(LED_KEY_GPIO_Port, LED_KEY_Pin, GPIO_PIN_RESET)
#define LED_KEY_TOGGLE do{ HAL_GPIO_TogglePin(LED_KEY_GPIO_Port, LED_KEY_Pin); }while(0)
// LED_GREEN(高电平点亮,低电平熄灭)
#define LED_GREEN_Pin GPIO_PIN_8
#define LED_GREEN_GPIO_Port GPIOE
#define LED_GREEN_ON HAL_GPIO_WritePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin, GPIO_PIN_SET) // SET=高电平=ON
#define LED_GREEN_OFF HAL_GPIO_WritePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin, GPIO_PIN_RESET) // RESET=低电平=OFF
#define LED_GREEN_TOGGLE do { HAL_GPIO_TogglePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin); } while(0)
// LED_RED(高电平点亮,低电平熄灭)
#define LED_RED_Pin GPIO_PIN_9
#define LED_RED_GPIO_Port GPIOE
#define LED_RED_ON HAL_GPIO_WritePin(LED_RED_GPIO_Port, LED_RED_Pin, GPIO_PIN_SET)
#define LED_RED_OFF HAL_GPIO_WritePin(LED_RED_GPIO_Port, LED_RED_Pin, GPIO_PIN_RESET)
#define LED_RED_TOGGLE do { HAL_GPIO_TogglePin(LED_RED_GPIO_Port, LED_RED_Pin); } while(0)
// LED_BLUE(高电平点亮,低电平熄灭)
#define LED_BLUE_Pin GPIO_PIN_10
#define LED_BLUE_GPIO_Port GPIOE
#define LED_BLUE_ON HAL_GPIO_WritePin(LED_BLUE_GPIO_Port, LED_BLUE_Pin, GPIO_PIN_SET)
#define LED_BLUE_OFF HAL_GPIO_WritePin(LED_BLUE_GPIO_Port, LED_BLUE_Pin, GPIO_PIN_RESET)
#define LED_BLUE_TOGGLE do { HAL_GPIO_TogglePin(LED_BLUE_GPIO_Port, LED_BLUE_Pin); } while(0)
// BEPPER_ALARM
#define BEPPER_ALARM_Pin GPIO_PIN_11
#define BEPPER_ALARM_GPIO_Port GPIOE
#define BEPPER_ALARM_OFF HAL_GPIO_WritePin(BEPPER_ALARM_GPIO_Port, BEPPER_ALARM_Pin, GPIO_PIN_SET)
#define BEPPER_ALARM_ON HAL_GPIO_WritePin(BEPPER_ALARM_GPIO_Port, BEPPER_ALARM_Pin, GPIO_PIN_RESET)
#define BEPPER_ALARM_TOGGLE do{ HAL_GPIO_TogglePin(BEPPER_ALARM_GPIO_Port, BEPPER_ALARM_Pin); }while(0)
#if 1
// LIGHT_FLOOD 照明灯
#define LIGHT_FLOOD_Pin GPIO_PIN_6
#define LIGHT_FLOOD_GPIO_Port GPIOE
#define LIGHT_FLOOD_OFF HAL_GPIO_WritePin(LIGHT_FLOOD_GPIO_Port, LIGHT_FLOOD_Pin, GPIO_PIN_SET)
#define LIGHT_FLOOD_ON HAL_GPIO_WritePin(LIGHT_FLOOD_GPIO_Port, LIGHT_FLOOD_Pin, GPIO_PIN_RESET)
#define LIGHT_FLOOD_TOGGLE do{ HAL_GPIO_TogglePin(LIGHT_FLOOD_GPIO_Port, LIGHT_FLOOD_Pin); }while(0)
#else
#define LIGHT_FLOOD_Pin GPIO_PIN_11
#define LIGHT_FLOOD_GPIO_Port GPIOI
#define LIGHT_FLOOD_OFF HAL_GPIO_WritePin(LIGHT_FLOOD_GPIO_Port, LIGHT_FLOOD_Pin, GPIO_PIN_SET)
#define LIGHT_FLOOD_ON HAL_GPIO_WritePin(LIGHT_FLOOD_GPIO_Port, LIGHT_FLOOD_Pin, GPIO_PIN_RESET)
#define LIGHT_FLOOD_TOGGLE do{ HAL_GPIO_TogglePin(LIGHT_FLOOD_GPIO_Port, LIGHT_FLOOD_Pin); }while(0)
#endif
// RK3588_POWER 电源控制
#define RK3588_POWER_Pin GPIO_PIN_11
#define RK3588_POWER_GPIO_Port GPIOI
#define RK3588_POWER_OFF HAL_GPIO_WritePin(RK3588_POWER_GPIO_Port, RK3588_POWER_Pin, GPIO_PIN_SET)
#define RK3588_POWER_ON HAL_GPIO_WritePin(RK3588_POWER_GPIO_Port, RK3588_POWER_Pin, GPIO_PIN_RESET)
#define RK3588_POWER_TOGGLE do{ HAL_GPIO_TogglePin(RK3588_POWER_GPIO_Port, RK3588_POWER_Pin); }while(0)
typedef enum {
COLOR_GREEN,
COLOR_BLUE,
COLOR_RED,
COLOR_OFF
} LightColor;
void LED_Init(void);
void tri_color_light(const LightColor color);
#ifdef __cplusplus
}
#endif
#endif //BSP_LED_H