自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 深入解析STM32低功耗模式

摘要:本文详细解析STM32的三种低功耗模式:睡眠模式(关闭CPU时钟,功耗取决于外设)、停机模式(关闭所有时钟,功耗uA级)和待机模式(全断电,功耗1-2uA)。针对不同应用场景,文章分别介绍了三种模式的进入方式、唤醒机制和适用场景,并提供了HAL库实现的代码示例。通过合理选择低功耗模式,可显著延长电池供电设备的续航时间。全文代码实现详见CSDN博客文章。

2025-08-14 17:56:22 690

原创 STM32 低功耗模式深度解析:让你的嵌入式设备“电力十足”

本文深入解析STM32微控制器的低功耗模式设计要点,涵盖三种核心模式:睡眠模式(CPU暂停,外设运行,μs级唤醒)、停止模式(关闭时钟,μA级功耗,保留数据)和待机模式(nA级功耗,复位式唤醒)。重点阐述了各模式的切换机制、唤醒源(外部中断/RTC/特定外设)及典型应用场景(如智能水表周期性唤醒)。文章强调实现优化的关键技术:精确电流测量、外设时钟管理、IO状态配置及数据保存策略,并提供了CubeMX配置示例和代码实现要点。通过合理选择低功耗模式,开发者可显著延长电池设备续航,满足物联网等场景的节能需求。

2025-08-14 17:47:04 974

原创 ADC多通道连续循环采集(DMA转运)

摘要:STM32采用ADC多通道扫描+DMA转运模式可高效采集多路模拟信号。通过配置连续转换和循环缓冲区,实现数据自动搬运,极大降低CPU占用。关键步骤包括:开启ADC连续循环模式,设置DMA循环转运,定时器触发控制采样率。该方法具有高吞吐率、实时性强等优势,适用于传感器读取、音频处理等场景。实验使用STM32F103C8T6,通过HAL库配置实现3通道数据自动采集,主循环直接读取缓冲区数据,显著提升系统效率。

2025-07-24 09:02:09 651 5

原创 使用HAL库移植江协OLED驱动代码

本文介绍了如何将江协科技的OLED驱动代码从STM32标准库移植到HAL库环境。主要内容包括:1)使用PB8/PB9作为I2C接口,配置为开漏输出模式;2)关键修改点为引脚配置和初始化部分,需包含gpio.h头文件;3)给出了HAL库下的引脚配置宏定义和初始化函数实现方法。移植后使用方法与标准库一致,只需调用初始化函数即可正常使用OLED显示功能。该方案为STM32开发者从标准库转向HAL库提供了OLED驱动的兼容解决方案。

2025-07-19 20:55:14 178 1

原创 stm32-RTC实时时钟详解(掉电自动走时,含代码)

摘要:本文介绍了STM32 RTC(实时时钟)的掉电走时功能实现方法。RTC作为独立定时器,可在主电源关闭时由VBAT供电维持计时。关键实现步骤包括:1)配置外部低速时钟和RTC模块;2)利用备份寄存器存储日期数据;3)编写读写备份寄存器的函数;4)修改RTC初始化逻辑以判断是否需重新初始化。测试表明,该方法可实现断电后时间持续走时,但需注意VBAT引脚必须连接备用电源(如3.3V电池),否则断电后备份数据仍会丢失。文章详细阐述了硬件连接要求和软件实现要点,特别适用于需要精确持续计时的电池供电应用场景。

2025-07-19 13:07:03 1105 3

原创 非阻塞式按键检测(长按、短按)

本文介绍了一种非阻塞式按键检测的实现方法,通过状态机在定时器中断中处理按键状态,支持单击和长按检测。系统采用结构体数组存储各按键状态,通过定时器中断(1ms周期)轮询检测GPIO状态,使用状态机实现消抖处理。代码分为按键检测和事件处理两个部分,通过标志位区分短按(100ms以下)和长按(100ms以上)。实践证明该方案检测精准可靠,适用于嵌入式系统的按键处理场景。

2025-07-17 14:27:36 216 1

原创 stm32微秒级延时函数

STM32中的微秒级延时函数主要用于需要的场景。它通过让CPU原地执行特定次数的空操作(或基于硬件定时器计数)来实现短暂的暂停,从而满足外设、通信协议或传感器对精确时序的要求。

2025-07-17 13:13:36 555

原创 基于stm32和esp8266的智能家居设计,连接onenet云平台

本文介绍了如何使用STM32F103C8T6、ESP01s、DHT11等硬件实现温湿度数据上传和远程控制LED灯的功能。通过AT指令MQTT固件的ESP01s模块,结合OneNet云平台,实现了数据的传输和控制。文章详细说明了AT指令的使用,包括Wi-Fi连接、MQTT配置、数据发布和订阅等关键步骤。代码部分展示了如何通过STM32读取DHT11的温湿度数据,并通过ESP01s上传到云端,同时接收云端的控制指令来开关LED灯。整个过程通过CubeMX配置和HAL库实现,适合初学者参考和扩展。

2025-06-04 09:01:55 1875

原创 keil串口通信使用printf输出 | printf的底层重定向

解决串口通信不能使用printf的问题,将printf的底层重定向

2025-04-16 20:11:30 1117

原创 解决STM32CubeMX 打不开 无法启动的问题

STM32CubeMX 打不开 无法启动 问题解决方法

2025-03-27 11:33:50 953 18

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除