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

基于FreeRTOS的STM32四轴飞行器: 三.电源控制

一.IP5305T芯片手册

注意该芯片低功耗特性,为防止进入待机,每隔一段时间发送一个电平。

官方提供的芯片外围电路设计图:

电气特性:

当负载电流持续小于45mA,最小值24s,典型值32s,最大值40s,会自动关机。

如果已经关机或者防止关机,要给予一个短按,给30ms低电平就认为短按了,手册有误差经过实验至少80ms才实现短按。

按键方式:

不需要时将按键悬空,连续短按两次可以关闭芯片紧急关机。

二.电源控制任务

Inf_IP5305T.c:

先实现短按功能,通过拉低拉高电平实现,static使该函数只能在Inf_IP5305T.c中被调用:

实现芯片开机功能,直接调用短按函数:

实现芯片关机功能,在1S内连续两次短按:

App_Task.c:

配置电源管理任务形参:

创建电源控制任务:

编写电源任务函数:

通过xTaskGetTickCount()获取当前的时间记录时间点,进入while循环后先判断阻塞等待通知(类似信号量获取)ulTaskNotifyTake(pdTRUE, POWER_EXEC_CYCLE),如果在10S内收到通知就执行强制关机,未收到通知就短按持续激活电源芯片。

相关推荐
liulilittle40 分钟前
C++ i386/AMD64平台汇编指令对齐长度获取实现
c语言·开发语言·汇编·c++
工业互联网专业1 小时前
汇编与接口技术:8259中断实验
汇编·单片机·嵌入式硬件·8259中断实验
brave and determined1 小时前
国产MCU学习Day6——CW32F030C8T6: I2C功能详解与应用案例
单片机·eeprom·i2c·cw32f030c8t6·cw32·cw32f030·中断读取eeprom
梁山1号1 小时前
【ESP32】3.串口的发送与接受
单片机·物联网
KaiGer6662 小时前
AUTOSAR进阶图解==>AUTOSAR_SWS_V2XFacilities
单片机·汽车·嵌入式·autosar
V我五十买鸡腿2 小时前
顺序栈和链式栈
c语言·数据结构·笔记·算法
desssq3 小时前
SPI通信协议
单片机·嵌入式硬件
星辰pid5 小时前
STM32实现四自由度机械臂(SG90舵机)多功能控制(软件篇freertos)
stm32·单片机·嵌入式硬件·机械臂
森焱森11 小时前
水下航行器外形分类详解
c语言·单片机·算法·架构·无人机
小殷学长13 小时前
【单片机毕业设计17-基于stm32c8t6的智能倒车监测系统】
stm32·单片机·课程设计