目录

项目基于FreeRTOS的STM32四轴飞行器-四.LED控制

[项目]基于FreeRTOS的STM32四轴飞行器: 四.LED控制

一.配置Com层

先在Com_Config.h中 定义灯位置的枚举类型:

https://i-blog.csdnimg.cn/direct/fabcc95c41de434daa9ddc93ddb64f53.png

之后 定义Led的结构体:

https://i-blog.csdnimg.cn/direct/4e25d6bad3974889851c0e003921e7d7.png

定义飞行器状态:

https://i-blog.csdnimg.cn/direct/fdbd8b4fe85d4d969ec2292fcc1f1d6e.png

在Com_Config.c中 初始化四个灯

https://i-blog.csdnimg.cn/direct/59fbc1f95a2347a8bf0d71aae847f4ef.png

在Com_Config.h外部声明,其他文件#include可以使用四个灯:

https://i-blog.csdnimg.cn/direct/5d53f763a36a46698670263be03674a5.png

定义飞控板状态:

https://i-blog.csdnimg.cn/direct/b0af72051822459ca94d6504ed281002.png

在Com_Config.h外部声明:

https://i-blog.csdnimg.cn/direct/207d8948841e49feb9c3c8f8c49de619.png

二.编写驱动

之后在Inf_LED 编写驱动

该函数实现LED灯常量、常灭、翻转的功能。

先传入结构体指针,判断如果小于等于1置LED灯为常量或常灭。

https://i-blog.csdnimg.cn/direct/d6e6ef983e2e4f30b8068c66e7f19e42.png

如果大于1则 翻转对应led

https://i-blog.csdnimg.cn/direct/6303ce1ab04740bb8d7c1522e75a4d20.png