mirror of
https://github.com/goldenfishs/MRobot.git
synced 2025-09-14 12:54:33 +08:00
led修改
This commit is contained in:
parent
f449b15fe2
commit
3062fbbef0
@ -12,31 +12,22 @@
|
|||||||
/* Private macro ------------------------------------------------------------ */
|
/* Private macro ------------------------------------------------------------ */
|
||||||
/* Private typedef ---------------------------------------------------------- */
|
/* Private typedef ---------------------------------------------------------- */
|
||||||
|
|
||||||
DEVICE_LED_t LED_Map={
|
|
||||||
BSP_GPIO_BLUE,
|
|
||||||
BSP_PWM_TIM5_CH1,
|
|
||||||
};
|
|
||||||
|
|
||||||
int8_t BSP_LED_Set(char sign,DEVICE_LED_t ch,bool value,float duty_cycle)
|
int8_t LED_PWMSet(BSP_PWM_Channel_t channel,float duty_cycle)
|
||||||
{
|
{
|
||||||
switch(sign){
|
|
||||||
case 'p':
|
|
||||||
case 'P':
|
|
||||||
if (duty_cycle < 0.0f || duty_cycle > 1.0f) {
|
if (duty_cycle < 0.0f || duty_cycle > 1.0f) {
|
||||||
return DEVICE_ERR_NULL; // 错误:占空比超出范围
|
return DEVICE_ERR_NULL; // 错误:占空比超出范围
|
||||||
}
|
}
|
||||||
uint16_t pulse = (uint16_t)(duty_cycle * (float)UINT16_MAX);
|
uint16_t pulse = (uint16_t)(duty_cycle * (float)UINT16_MAX);
|
||||||
BSP_PWM_Start(LED_Map.channel);
|
BSP_PWM_Start(channel);
|
||||||
BSP_PWM_SetComp(LED_Map.channel, pulse);
|
BSP_PWM_SetComp(channel, pulse);
|
||||||
break;
|
return DEVICE_OK;
|
||||||
|
}
|
||||||
case 'g':
|
|
||||||
case 'G':
|
int8_t LED_GPIOSet(BSP_GPIO_t gpio,bool value)
|
||||||
BSP_GPIO_WritePin(LED_Map.gpio,value);
|
{
|
||||||
break;
|
BSP_GPIO_WritePin(gpio,value);
|
||||||
default:
|
|
||||||
return DEVICE_ERR_INITED; // 错误:无效的控制方式
|
|
||||||
}
|
|
||||||
return DEVICE_OK;
|
return DEVICE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,19 +14,14 @@ extern "C" {
|
|||||||
/* Exported macro ----------------------------------------------------------- */
|
/* Exported macro ----------------------------------------------------------- */
|
||||||
/* Exported types ----------------------------------------------------------- */
|
/* Exported types ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
|
||||||
/* LED ??? */
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
BSP_GPIO_t gpio;
|
BSP_GPIO_t gpio;
|
||||||
BSP_PWM_Channel_t channel;
|
BSP_PWM_Channel_t channel;
|
||||||
} DEVICE_LED_t;
|
} DEVICE_LED_t;
|
||||||
|
|
||||||
|
|
||||||
extern DEVICE_LED_t LED_Map;
|
|
||||||
/* Exported functions prototypes -------------------------------------------- */
|
/* Exported functions prototypes -------------------------------------------- */
|
||||||
|
int8_t LED_PWMSet(BSP_PWM_Channel_t channel,float duty_cycle);
|
||||||
|
int8_t LED_GPIOSet(BSP_GPIO_t gpio,bool value);
|
||||||
int8_t BSP_LED_Set(char sign,DEVICE_LED_t ch,bool value,float duty_cycle);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user