Merge branch 'master' of gitee.com:hnuyuelurm/basic_framework
This commit is contained in:
commit
cff796dbff
4
Makefile
4
Makefile
|
@ -131,7 +131,8 @@ modules/imu/BMI088driver.c \
|
||||||
modules/imu/BMI088Middleware.c \
|
modules/imu/BMI088Middleware.c \
|
||||||
modules/imu/ins_task.c \
|
modules/imu/ins_task.c \
|
||||||
modules/ist8310/ist8310.c \
|
modules/ist8310/ist8310.c \
|
||||||
modules/led/led_task.c \
|
modules/led_task/led_task.c \
|
||||||
|
modules/led/led.c \
|
||||||
modules/master_machine/master_process.c \
|
modules/master_machine/master_process.c \
|
||||||
modules/master_machine/seasky_protocol.c \
|
modules/master_machine/seasky_protocol.c \
|
||||||
modules/motor/DJImotor/dji_motor.c \
|
modules/motor/DJImotor/dji_motor.c \
|
||||||
|
@ -252,6 +253,7 @@ C_INCLUDES = \
|
||||||
-Imodules/imu \
|
-Imodules/imu \
|
||||||
-Imodules/ist8310 \
|
-Imodules/ist8310 \
|
||||||
-Imodules/led \
|
-Imodules/led \
|
||||||
|
-Imodules/led_task \
|
||||||
-Imodules/master_machine \
|
-Imodules/master_machine \
|
||||||
-Imodules/motor/DJImotor \
|
-Imodules/motor/DJImotor \
|
||||||
-Imodules/motor/LKmotor \
|
-Imodules/motor/LKmotor \
|
||||||
|
|
|
@ -38,7 +38,7 @@ typedef struct
|
||||||
uint32_t channel; // 通道
|
uint32_t channel; // 通道
|
||||||
uint32_t period; // 周期
|
uint32_t period; // 周期
|
||||||
uint32_t pulse; // 脉宽
|
uint32_t pulse; // 脉宽
|
||||||
void (*callback)(struct pwm_ins_temp *); // DMA传输完成回调函数
|
void (*callback)(PWMInstance*); // DMA传输完成回调函数
|
||||||
void *id; // 实例ID
|
void *id; // 实例ID
|
||||||
} PWM_Init_Config_s;
|
} PWM_Init_Config_s;
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,44 @@
|
||||||
|
#include "led.h"
|
||||||
|
#include "stdlib.h"
|
||||||
|
#include "string.h"
|
||||||
|
#include "user_lib.h"
|
||||||
|
|
||||||
|
static uint8_t idx;
|
||||||
|
static LEDInstance* bsp_led_ins[LED_MAX_NUM] = {NULL};
|
||||||
|
|
||||||
|
LEDInstance *LEDRegister(LED_Init_Config_s *led_config)
|
||||||
|
{
|
||||||
|
LEDInstance *led_ins = (LEDInstance *)zero_malloc(sizeof(LEDInstance));
|
||||||
|
// 剩下的值暂时都被置零
|
||||||
|
led_ins->led_pwm=GPIORegister(&led_config->pwm_config);
|
||||||
|
led_ins->led_switch=led_config->init_swtich;
|
||||||
|
|
||||||
|
bsp_led_ins[idx++] = led_ins;
|
||||||
|
return led_ins;
|
||||||
|
}
|
||||||
|
|
||||||
|
void LEDSet(LEDInstance *_led,uint8_t alpha,uint8_t color_value,uint8_t brightness)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void LEDSwitch(LEDInstance *_led,uint8_t led_switch)
|
||||||
|
{
|
||||||
|
if(led_switch==1)
|
||||||
|
{
|
||||||
|
_led->led_switch=1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_led->led_switch=0;
|
||||||
|
// PWMSetPeriod(_led,0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void LEDShow()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
#ifndef _LED_H_
|
||||||
|
#define _LED_H_
|
||||||
|
|
||||||
|
#include "stdint.h"
|
||||||
|
#include "bsp_pwm.h"
|
||||||
|
|
||||||
|
#define LED_MAX_NUM 3
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
PWMInstance* led_pwm;
|
||||||
|
uint8_t led_alpha; // 透明度,通过pwm频率改变
|
||||||
|
uint8_t led_brightness; // 亮度,通过电压改变(如果可以,使用dac)
|
||||||
|
uint8_t led_color; // rgb value,0-255
|
||||||
|
uint8_t led_switch // 开关,on1 off0
|
||||||
|
// void (*action_callback)(void); // led动作回调函数
|
||||||
|
} LEDInstance;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
PWM_Init_Config_s pwm_config;
|
||||||
|
uint8_t init_swtich; // 初始化开关
|
||||||
|
} LED_Init_Config_s;
|
||||||
|
|
||||||
|
LEDInstance* LEDRegister(LED_Init_Config_s* led_config);
|
||||||
|
|
||||||
|
void LEDSet(LEDInstance *_led,uint8_t alpha,uint8_t color_value,uint8_t brightness);
|
||||||
|
|
||||||
|
void LEDSwitch(LEDInstance *_led,uint8_t led_switch);
|
||||||
|
|
||||||
|
void LEDShow();
|
||||||
|
|
||||||
|
#endif // !_LED_H_
|
Loading…
Reference in New Issue