自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

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

2025-07-19 20:55:14 63

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

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

2025-07-19 13:07:03 569 1

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

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

2025-07-17 14:27:36 151

原创 stm32微秒级延时函数

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

2025-07-17 13:13:36 384

原创 基于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 1808

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

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

2025-04-16 20:11:30 1013

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

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

2025-03-27 11:33:50 766 17

空空如也

空空如也

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

TA关注的人

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