- 博客(22)
- 收藏
- 关注
原创 Modbus 协议官方规范资料包:中文翻译版 / 英文原版 / 中英对照版
本资料包整理了 Modbus 协议相关核心规范与实施指南,适合工业通信、PLC 通信、嵌入式开发、网关开发、上位机软件开发、自动化系统集成等方向学习和查阅使用。资料内容覆盖 Modbus 应用协议、Modbus 串行链路、Modbus TCP/IP 通信、Modbus TCP/IP 安全协议,以及 SEMI E54-0306 传感器与执行器网络标准等内容,适合作为 Modbus 协议学习、项目开发、协议分析和技术文档查阅资料。
2026-05-22 22:07:44
238
原创 Keil5 每次进 Debug 都弹窗报错?“The window position data is inconsistent” 一次彻底解决
这种问题不致命,但很影响心情。调试效率的提升,往往来自这些细节的积累。减少一次踩坑,就是一次进步。如果这篇内容对你有帮助,欢迎关注公众号「单片机那点事」。
2026-02-27 13:46:59
407
原创 STM32CubeMX 生成 Keil5 FreeRTOS 工程,AC6编译报错 解决方案
嵌入式开发中,很多问题并没有所谓“标准答案”。工程稳定、可维护、可复现,才是最重要的。如果你在 STM32 或 FreeRTOS 开发中踩过类似的坑,也欢迎交流讨论。公众号「单片机那点事」
2026-02-24 21:15:00
1180
原创 ESP32-S3 ESP-IDF OpenOCD 调试报错:libusb / Zadig 驱动修复
ESP32-S3 USB-JTAG 报错,本质是Windows 驱动权限问题。出现出现大概率就是USB-JTAG 驱动没装对Zadiglibwdi两个 Interface 都要检查更多踩坑记录,见公众号「单片机那点事」。
2026-02-08 17:41:59
898
1
原创 ESP32-S3 ESP-IDF OpenOCD 调试报错:libusb / Zadig 驱动修复
ESP32-S3 USB-JTAG 报错,本质是Windows 驱动权限问题。出现出现大概率就是USB-JTAG 驱动没装对Zadiglibwdi两个 Interface 都要检查更多踩坑记录,见公众号「单片机那点事」。
2026-02-08 16:27:55
887
原创 这本书,把 Cortex-M 的“底层逻辑”讲清楚了
MCU 在变,芯片在换但 Cortex-M 的底层机制十几年没变。你今天在 STM32F103 上学到的:NVIC栈异常内存模型在上全都通用。如果你问我:有没有一本书,能把单片机从“会用”拉到“专业”?我的答案只有一个。📚《ARM Cortex-M3 与 Cortex-M4 权威指南》如果你是认真写 MCU 的人,这本书,值得你反复翻。📖后面如果有机会,也会结合这本书里的内容,聊一聊中断、异常、HardFault、RTOS 底层机制在实际单片机项目里的真实用法。
2026-01-31 09:02:03
1037
原创 书籍推荐:STM32Cube 高效开发教程(高级篇)附下载地址
高级篇》不是在教你“多写几个 API”,而是在教你如何把 STM32 当成一个“小系统”来用。如果你已经过了点灯、串口、ADC 的阶段,正在纠结RTOS、文件系统、复杂外设如何整合那这本《STM32Cube 高效开发教程(高级篇)》正好卡在这个门槛上。📥资料下载方式下载地址(无需登录、不限速):把踩过的坑、用过的方案慢慢记下来,都在公众号「单片机那点事」
2026-01-31 09:01:54
1335
6
原创 STM32 DAC生成正弦波:从原理到实战(附完整代码)
原理掌握:DAC+TIM+DMA协同工作机制配置技巧:CubeMX的关键设置点代码实现:查表法生成波形的工程实践动态调参:运行中无缝修改频率/幅值的技巧CPU占用极低(<1%),完全由硬件完成,主程序可以专心干别的事!公众号:「单片机那点事」
2026-01-30 14:54:53
1926
2
原创 ADS1220(24位ADC)+PT100(RTD):高精度(0.1℃)测温实战(二):STM32F103 软件实现全解析,附源码
✅SPI驱动:严格遵守Mode 1时序,软硬件SPI双实现✅寄存器配置:四个寄存器的每一位都有讲究✅非阻塞设计:状态机轮询,不卡主循环✅比例测量算法:64位运算防溢出,公式严格推导✅查表+插值:纯整数运算,精度±0.1°C✅数字滤波:三种滤波器适应不同场景。
2026-01-27 16:26:39
1291
原创 ADS1220(24位ADC)+PT100(RTD):高精度(0.1℃)测温实战(一):原理一次讲透
第十六节解决了“线阻”,这一节解决“电流源不准”的问题。1. 这一步是为了消灭谁?消灭了导线电阻 R_LEAD。消灭了恒流源电流 I 的波动。终极公式(数学证明)我们来看看最终 MCU 是怎么算出电阻的。根据第十六节结论,线阻已抵消,只剩 PT100 的电压。两路电流在顶部汇合,流过 R_REF 的是2 倍电流。一除就“破案”了ADC 输出的代码值 (Code) 本质上就是 输入电压 占 参考电压 的比例:👉看!上下都有电流 I,直接约分约掉了!
2026-01-27 16:26:03
3341
原创 踩坑实录:STM32 UART DMA 只能发一次:gState 一直 BUSY_TX 的根因与修复
摘要:本文分析了STM32使用UART+DMA发送数据时只成功一次的问题。通过调试发现,首次发送后UART状态保持BUSY_TX,原因是未开启USART1的NVIC中断,导致DMA传输完成时无法触发回调函数进行状态重置。解决方法是在CubeMX中勾选USART1全局中断,使HAL库能正确处理发送完成事件,实现连续数据发送。该问题源于UART DMA发送机制对中断的依赖性,而非配置错误。
2025-12-31 02:15:00
1270
1
原创 罗技 G304 无线鼠标卡顿、延迟高、断断续续
罗技无线鼠标出现卡顿、延迟问题,发现是HDMI接口电磁干扰2.4G接收器所致。更换为DP接口后问题立即解决,因DP抗干扰性更强。提醒用户:无线鼠标卡顿可能是HDMI干扰导致,而非鼠标本身问题。
2025-12-19 19:38:24
2135
原创 Flash 擦除操作会阻塞中断——STM32F407 实测结论(逻辑分析仪测试)
摘要:本文通过STM32F407实验验证了Flash擦除操作对中断实时性的严重影响。测试采用200kHz TIM6中断翻转GPIO引脚,结果显示Flash读取和写入操作不影响中断响应,但擦除操作会导致中断被阻塞长达974ms。分析指出,擦除时Flash控制器处于忙状态,导致CPU无法取指令执行中断服务程序。建议在实时控制系统中避免在控制环运行期间执行Flash擦除操作,必要时需降频或进入安全状态后再操作。实验代码和详细分析可供电力电子开发者参考。
2025-12-19 19:32:55
1068
原创 keil5 自动生成 .elf文件
摘要:本文介绍了在Keil5中通过创建postbuild.bat脚本自动生成.elf文件的方法。主要内容包括:1)在Keil安装目录创建Postbuild文件夹和批处理文件;2)编写智能查找fromelf.exe工具并生成.elf的脚本;3)配置Keil工程选项,在编译后自动运行脚本;4)支持生成ELF/BIN/HEX格式文件。该方法解决了Keil5默认不生成.elf文件的问题,适用于需要.elf文件进行调试或其他用途的开发场景。
2025-12-17 11:18:48
1371
原创 Keil MDK5 直接下载任意版本,无需进官网!
【摘要】Keil MDK5下载其实无需繁琐的官网流程,只需修改下载链接中的版本号即可直接获取对应版本。例如将"mdk543a.exe"改为"mdk538a.exe"即可下载MDK5.38a版本,无需注册登录。这种方法适用于官网已下架的老版本,原理是Keil服务器采用固定路径映射文件名与版本号。更多嵌入式技巧可关注公众号"啊哈哈哈111"。(149字)
2025-12-17 10:51:59
9219
4
原创 电源接电子负载(CV 3V)却冲到 4V 的原因
电子负载在恒压模式(CV)下出现电压过冲(3V升至4V)的原因是动态响应延迟。电子负载通过闭环控制调节电流来维持电压,但存在响应时间,无法瞬间钳位。当电源启动时,其输出电容储存的能量导致电压瞬时升高,而电子负载需要几十毫秒才能检测并调节电流将电压拉回设定值。影响因素包括电子负载的带宽、电源输出电容容量及线路电感等。电子负载的CV模式并非理想稳压器,其瞬态响应必然存在过冲现象。
2025-11-29 00:00:00
939
原创 STM32 互补 PWM 关断后引脚电压迟滞下降问题
摘要:STM32 PWM互补模式关闭输出后电压缓慢下降问题,原代码仅清除CCER寄存器导致输出处于半浮空状态。修改方案为同时清除BDTR.MOE位和CCER寄存器,强制所有通道输出到预设安全电平(低电平)。这样能立即将高低桥栅极拉到安全电平,避免半浮空状态导致的电压缓慢下降现象。关键点在于高级定时器的MOE位控制总输出闸刀,清除后能实现快速关断。(148字)
2025-11-27 18:40:52
260
1
原创 解决Keil5安装软件包报错:Fatal Error parsing node ‘textarea‘
摘要:Keil5安装软件包时出现XML解析错误,原因是Pack下载失败导致错误网页内容被保存为.pdsc文件。解决方法:1)关闭Keil;2)删除缓存目录(C:\Users\用户名\AppData\Local\Arm\Packs.Web)中Geehy开头的内容;3)重启Keil重新下载。该错误通常由网络问题导致下载中断,清理缓存后即可正常安装。更多嵌入式技术内容可关注公众号「啊哈哈哈111」。
2025-11-23 16:04:10
1761
2
原创 别再混淆了!单片机 3 大任务调度机制(抢占 / 轮询 / 协程)通俗解析
摘要:三种任务调度方式的单片机工程师视角解析:1)抢占式调度(如RTOS)通过中断强制切换任务,实时性强但开销大;2)时间片轮询以固定顺序轮流执行任务,结构简单但可能阻塞;3)协程通过主动让出CPU实现轻量级切换,适合逻辑流程处理。对比显示,抢占式适合复杂系统,轮询适合小系统,协程则平衡轻量化和多任务需求。核心区别在于CPU控制权的获取方式:抢占是"强制接管",轮询是"排队轮流",协程是"自愿让出"。
2025-11-18 18:58:42
573
原创 【嵌入式干货】MultiButton:一款支持 7 种按键事件的高效按键库,裸机 / RTOS 都能用
MultiButton是一个高效灵活的多按键状态机库,支持多种按键事件检测。该库提供按下、抬起、单击、双击、长按等多种事件类型,内置硬件去抖功能和状态机驱动。具有多按键支持、内存优化和灵活回调机制等特点,适用于各类微控制器平台。使用简单,只需初始化按键、注册回调函数并定时调用处理函数即可。库配置灵活,可自定义时间参数,支持C99标准,兼容STM32、Arduino等多种硬件。内存占用小,适合资源受限系统,同时支持裸机和RTOS环境运行。
2025-11-17 20:48:17
402
原创 5 分钟上手 VOFA+:STM32 串口实时波形可视化教程(超简单)
摘要:本文介绍了使用VOFA+工具实现STM32实时输出3路波形的方法。通过配置UART并采用justfloat协议(小端float数组+0x7F800000帧尾),可以免去PC端编程,5分钟快速搭建实时波形显示系统。文章提供了STM32的阻塞和DMA两种发送实现方案,包含完整的代码示例(正弦波、三角波、方波3路波形输出),并强调UART需配置为Normal模式且开启全局中断。该方法仅需串口即可实现高刷新率的示波器效果,显著提升开发调试效率。
2025-11-14 23:42:11
2511
2
原创 一分钟搞定 J-Link CDC VCOM 串口
J-Link调试器自带虚拟串口(VCOM),在设备管理器显示为"JLinkCDCUARTPort(COMx)"。连接MCU仅需两根线:P5(TX)接MCU的RX,P17(RX)接MCU的TX。VCOM默认波特率最高稳定支持115200。该设计简化了调试连接,只需交叉连接收发线即可实现通信。
2025-11-13 22:56:36
922
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅