蘑
菇
助手
MCU助手 · 单片机工具箱
登录
注册
🏠
首页
🧰
工具
📖
文库
❓
问答
✍️
提问
🏠 首页 /
技术文库
📖 技术文库
STM32 / Arduino / RTOS / 嵌入式 知识文章
全部
STM32
STM32 定时器
STM32 串口
STM32 ADC
Arduino 入门
STM32 看门狗
STM32 I2C
STM32 DMA
STM32 低功耗
STM32 编码器
RTOS RTOS
STM32 PWM
嵌入式 IO
STM32 SPI
STM32 中断
STM32 时钟
STM32 存储
Arduino 进阶
ESP32 WiFi
嵌入式 协议
STM32 CAN
STM32 USB
STM32 RTC
STM32 DAC
STM32 GPIO
STM32 传感器
嵌入式 架构
STM32 Boot
嵌入式 调试
STM32 电机
嵌入式 PCB
ESP32 低功耗
STM32 寄存器
嵌入式 C语言
STM32 架构
STM32 显示
STM32 外设
嵌入式 内存
STM32 工具
STM32 调试
嵌入式 稳定性
嵌入式 电源
STM32 安全
嵌入式 RTOS
嵌入式 存储
STM32 Bootloader
STM32 协议
ESP32 物联网
ESP32 OTA
ESP32 蓝牙
嵌入式 显示
嵌入式 驱动
嵌入式 电机
STM32 入门
RTOS 看门狗
嵌入式 CAN
项目 实战
嵌入式 控制
嵌入式 蓝牙
嵌入式 传感器
嵌入式
展开全部分类 (54)
STM32 HAL库ADC多通道DMA扫描模式:采样时序配置与溢出排查实战
嵌入式 · 👁 73 阅读
多通道ADC配合DMA扫描是STM32采集多路模拟量的常用方案,但采样时序配置不当或DMA响应不及时极易触发溢出(OVR),导致数据错位。本文从ADC扫描与DMA请求的底层时序出发,讲解采样时间、触发源、DMA循环模式的配置要点,给出完整HAL库代码,并系统梳理OVR溢出的成因与排查方法。
ESP32双核FreeRTOS任务与WiFi协议栈抢CPU的优先级配置实测与调优
嵌入式 · 👁 91 阅读
ESP32双核运行FreeRTOS时,WiFi协议栈任务与用户任务会争抢CPU,配置不当会导致丢包、看门狗复位或实时性下降。本文从双核调度原理出发,实测不同优先级与核心绑定下的表现,给出WiFi任务优先级、用户任务优先级与核心亲和性的调优方法,并附完整可复现代码与避坑清单。
ESP32双核下FreeRTOS任务看门狗(TWDT)误触发:从IDLE任务饿死到Core亲和性配置
嵌入式 · 👁 102 阅读
本文深入剖析ESP32双核环境下FreeRTOS任务看门狗(TWDT)误触发的典型场景——IDLE任务饿死,揭示其与任务优先级、CPU亲和性配置的内在关联。通过原理讲解、配置步骤与完整代码示例,展示如何正确使用TWDT、避免IDLE任务饿死,并给出核心亲和性配置的最佳实践与注意事项,帮助开发者构建稳定可靠的双核嵌入式系统。
DMA+空闲中断实现STM32串口不定长收包:帧尾超时判定的三种策略对比
嵌入式 · 👁 67 阅读
串口不定长收包是嵌入式开发中的高频需求。DMA配合串口空闲中断可高效完成收包,但空闲中断的触发时机受波特率、总线负载影响,帧尾超时判定策略直接决定通信可靠性。本文剖析空闲中断原理,给出DMA+IDLE完整配置与代码,并对比固定超时、动态超时、硬件定时器触发三种帧尾判定策略的精度、开销与适用场景,附注意事项与选型建议。
STM32 HAL库DMA+空闲中断接收不定长串口数据的缓冲区翻转实现与踩坑指南
嵌入式 · 👁 69 阅读
本文深入讲解STM32 HAL库下利用DMA与串口空闲中断实现不定长数据接收的缓冲区翻转(双缓冲)方案。从原理剖析、CubeMX配置、代码实现到常见陷阱,提供完整示例与避坑指南,帮助开发者构建高效可靠的串口通信框架。
STM32 HAL库中HAL_Delay在中断上下文里卡死的根因与替代延时方案
嵌入式 · 👁 75 阅读
本文深入剖析STM32 HAL库中HAL_Delay在中断上下文中导致系统卡死的根本原因,涉及SysTick中断优先级与阻塞式延时的冲突。通过原理讲解、配置步骤和完整代码示例,给出三种可靠的替代延时方案:基于DWT周期计数器、硬件定时器以及非阻塞状态机。文章面向有一定基础的嵌入式开发者,帮助规避常见陷阱,提升系统实时性与稳定性。
ESP32双核任务固定核后串口打印乱序的定位方法
嵌入式 · 👁 65 阅读
ESP32双核下用xTaskCreatePinnedToCore固定任务核后,串口打印常出现交错乱序。本文从FreeRTOS调度、UART驱动缓冲与printf重入三方面剖析根因,给出分层定位步骤、互斥保护与缓冲方案,并附完整可复现代码与注意事项,帮助开发者快速定位并彻底解决乱序问题。
STM32 HAL库中__weak函数重定向导致中断向量表偏移的排查方法
嵌入式 · 👁 95 阅读
本文针对STM32 HAL库开发中因__weak函数重定向引发的中断向量表偏移问题,深入剖析其原理:__weak函数被用户重定义后,链接器可能将中断服务函数地址错误映射,导致中断响应异常。文章提供从现象定位、map文件分析到向量表校验的完整排查步骤,并给出代码示例与规避建议,帮助开发者快速解决此类隐蔽故障。
STM32 HAL库DMA+空闲中断接收不定长数据:丢包排查与环形缓冲改造实战
嵌入式 · 👁 71 阅读
本文针对STM32 HAL库下DMA+串口空闲中断接收不定长数据时常见的丢包问题,从原理层面剖析丢包根源,包括DMA传输完成与空闲中断的竞争、HAL库回调机制缺陷以及缓冲区管理不当等。通过实测波形与代码分析定位问题,提出环形缓冲区改造方案,给出完整的配置步骤与可移植代码,并总结关键注意事项,帮助开发者彻底解决高波特率下的数据丢失问题。
STM32 HAL库中HAL_Delay在中断上下文调用的隐患与替代延时方案
嵌入式 · 👁 77 阅读
本文深入剖析STM32 HAL库中HAL_Delay在中断上下文调用的隐患,包括优先级反转、系统死锁及SysTick依赖问题,并提供基于DWT周期计数器、硬件定时器及RTOS的替代延时方案。通过原理讲解、配置步骤与完整代码示例,帮助开发者规避常见陷阱,提升系统实时性与可靠性。
STM32 HAL库中HAL_Delay在中断上下文调用的死锁成因与替代延时方案
嵌入式 · 👁 74 阅读
本文深入剖析STM32 HAL库中HAL_Delay在中断服务程序(ISR)中调用导致死锁的根本原因,从SysTick中断优先级与HAL_Delay实现机制入手,揭示死锁形成过程。针对该问题,提供三种可靠的替代延时方案:基于DWT周期计数器的微秒级延时、基于硬件定时器的非阻塞延时以及基于空指令循环的粗略延时,并给出完整代码示例与配置步骤,最后总结中断上下文编程的注意事项,帮助开发者规避常见陷阱。
STM32 HAL库中__weak函数重定向导致中断不响应的排查路径
嵌入式 · 👁 74 阅读
在STM32开发中,使用HAL库时,中断服务函数默认由__weak修饰,若用户未正确重写或重定向,会导致中断无法进入。本文深入剖析__weak机制,提供从现象到根因的完整排查路径,涵盖启动文件分析、重定向原理、常见错误场景及修复方法,并附完整代码示例与注意事项,帮助开发者快速定位并解决中断不响应问题。
‹
1
...
10
11
12
...
182
›