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

基于FreeRTOS的STM32四轴飞行器: 四.LED控制

一.配置Com层

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

之后定义Led的结构体:

定义飞行器状态:

在Com_Config.c中初始化四个灯

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

定义飞控板状态:

在Com_Config.h外部声明:

二.编写驱动

之后在Inf_LED编写驱动

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

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

如果大于1则翻转对应led

创建LED任务:

翻转一次50ms,优先级设置低一些为2。


实现LED任务:

先判断定高再解锁再连接,先判断范围小的可以避免多次嵌套。

之后根据模式给不同的status值。

如果status值小于等于1直接通过set赋值,或者cnt%status值通过set实现固定时间翻转:

相关推荐
apocelipes1 天前
常用编程语言和库的正则表达式性能对比
c语言·c++·python·性能优化·golang·开发工具和环境
老梁agent2 天前
企业生产级 AI Agent 系统设计:能力、架构与演进路径
物联网·agent
老梁agent2 天前
当 Agent 要动手了:工业实时控制的三层安全护栏设计
物联网·agent
神奇啊龙2 天前
我的第一个 TinyGo 项目:ESP32-C3 + DHT11 + SSD1306
物联网·嵌入式
老梁agent3 天前
工业 Agent 的边缘部署:Ollama + LangChain4j 本地推理方案
物联网·边缘计算·agent
老梁agent5 天前
MCP 协议实战:用标准化方式让 Agent 调用工业工具
物联网·agent·mcp
老梁agent8 天前
一个 Agent 不够用?工业场景下的多 Agent 路由模式实战
物联网·agent
老梁agent8 天前
从 0 到 22 篇:工业 Agent 的六大设计原则
物联网·agent
老梁agent11 天前
Agent 如何看懂时序数据?时间序列查询的 Tool 设计模式
物联网·agent
FreakStudio11 天前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机