当前位置: 首页 > news >正文

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

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

  • 一.配置Com层
  • 二.编写驱动

一.配置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实现固定时间翻转:
在这里插入图片描述

http://www.lryc.cn/news/547787.html

相关文章:

  • 使用 dynamic-datasource-spring-boot-starter 实现多数据源动态切换
  • springboot中注解有什么用
  • Spring Boot 缓存最佳实践:从基础到生产的完整指南
  • Linux网络相关内容与端口
  • Python Flask框架学习汇编
  • GitHub CI流水线
  • 机器视觉运动控制一体机在天地盖同步跟随贴合解决方案
  • 贪心算法一
  • 什么是全栈?
  • 后端-Java虚拟机
  • Android 低功率蓝牙之BluetoothGattCallback回调方法详解
  • K8S学习之基础十四:k8s中Deployment控制器概述
  • Vue3快速入门笔记
  • 【LeetCode104】二叉树的最大深度
  • SQLAlchemy系列教程:理解SQLAlchemy元数据
  • Apache Shiro 反序列化漏洞全解析(Shiro-550 Shiro-721)
  • 计算机毕业设计Python+DeepSeek-R1大模型空气质量预测分析(源码+文档+PPT+讲解)
  • 实例详细演示在Pytest中如何忽略警告
  • 03 HarmonyOS Next仪表盘案例详解(二):进阶篇
  • mysql进阶(三)
  • MySQL 架构、索引优化、DDL解析、死锁排查
  • AVM 环视拼接 鱼眼相机
  • 【Flink银行反欺诈系统设计方案】5.反欺诈系统全生命周期设计
  • aardio - 虚表 —— 两个虚表之间互相拖动交换数据
  • VScode 中文符号出现黄色方框的解决方法
  • LINUX网络基础 [二] - 网络编程套接字,UDP与TCP
  • Spring统一格式返回
  • Unity多Pass渲染与GPU Instancing深度优化指南
  • Redis高频面试题10个
  • 【数据库】MySQL常见聚合查询详解