蘑
菇
助手
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)
ESP32双核下FreeRTOS任务与WiFi协议栈抢CPU的优先级配置实测
嵌入式 · 👁 89 阅读
ESP32双核运行FreeRTOS时,WiFi协议栈默认运行在CPU0且优先级较高,用户任务若配置不当会频繁被抢占,导致响应延迟或看门狗复位。本文通过实测分析任务优先级与核心绑定的影响,给出WiFi场景下的优先级配置原则,并提供完整代码示例与避坑指南,帮助开发者平衡实时性与网络吞吐。
STM32 HAL库中DMA+空闲中断实现不定长串口收包的隐藏坑与修复
嵌入式 · 👁 62 阅读
本文深入剖析STM32 HAL库下使用DMA+空闲中断实现不定长串口收包时常见的隐藏问题,包括空闲中断标志清除不彻底、DMA接收长度计算错误、缓冲区覆盖等。通过原理分析、配置步骤和完整代码示例,给出可靠的修复方案,帮助开发者避开陷阱,实现稳定高效的不定长数据接收。
STM32 HAL库中DMA+空闲中断实现串口不定长数据接收的完整配置与踩坑记录
嵌入式 · 👁 51 阅读
串口不定长数据接收是嵌入式开发中的常见需求。本文基于STM32 HAL库,详细讲解如何利用DMA和串口空闲中断高效实现不定长数据接收,包含CubeMX配置步骤、核心代码实现、原理剖析以及实际调试中遇到的坑与解决方案。适合有一定STM32基础的开发者阅读,帮助您快速掌握这一实用技能并避开常见陷阱。
STM32 HAL库中HAL_Delay在中断上下文里被调用会发生什么——从SysTick优先级到死锁复现
嵌入式 · 👁 85 阅读
本文深入剖析STM32 HAL库中HAL_Delay在中断上下文调用的风险。从SysTick优先级配置入手,解释HAL_Delay依赖的uwTick更新机制,揭示在中断中调用HAL_Delay导致死锁的根本原因。通过复现实验展示死锁现象,并提供三种解决方案:避免在中断中延时、调整中断优先级、使用非阻塞延时。适合有一定HAL库基础的嵌入式开发者阅读。
STM32 HAL库中__weak函数被用户重定义后中断不响应的排查路径
嵌入式 · 👁 71 阅读
在STM32开发中,使用HAL库时经常需要重定义__weak函数(如中断回调)来实现自定义逻辑。但有时重定义后中断却不再响应,令人困惑。本文深入剖析__weak机制与中断响应流程,提供从链接脚本、启动文件到中断向量表的完整排查路径,并给出可复现的代码示例与避坑指南,帮助开发者快速定位并解决此类问题。
用DWT周期计数器测量中断响应延迟:从GPIO翻转误差到真实延迟的修正方法
嵌入式 · 👁 83 阅读
中断响应延迟是嵌入式系统实时性的关键指标。传统GPIO翻转法存在指令开销和示波器带宽误差。本文介绍利用Cortex-M内核的DWT周期计数器进行高精度测量,分析GPIO翻转法的误差来源,给出基于DWT的修正测量方法与完整代码,帮助开发者获得真实的中断延迟数据,适用于STM32等Cortex-M平台。
STM32 HAL库DMA+空闲中断接收不定长串口数据的丢包复现与修复
嵌入式 · 👁 83 阅读
本文深入剖析STM32 HAL库下DMA+空闲中断接收不定长串口数据时丢包的典型问题。通过复现丢包现象,分析HAL库DMA接收机制与空闲中断的竞争关系,给出三种修复方案:手动重置DMA计数器、使用DMA双缓冲、以及基于环形缓冲区的改进实现。包含完整代码示例与配置步骤,帮助开发者彻底解决高速数据流下的丢包痛点。
STM32 HAL库DMA+空闲中断接收不定长串口数据:缓冲区边界处理与溢出恢复策略
嵌入式 · 👁 75 阅读
本文深入探讨STM32 HAL库下使用DMA+空闲中断接收不定长串口数据时,环形缓冲区的边界处理与溢出恢复策略。针对高波特率、突发数据场景,分析DMA传输完成与空闲中断的竞态问题,提出双缓冲与动态指针结合的方案,并给出完整的代码实现与错误恢复流程,帮助开发者构建稳定可靠的串口通信框架。
STM32 HAL库DMA+空闲中断接收串口不定长数据的丢包复现与修复
嵌入式 · 👁 53 阅读
本文深入分析STM32 HAL库下DMA+空闲中断接收串口不定长数据时丢包的根源,通过复现实验揭示问题本质,并提供三种修复方案:增大缓冲区、双缓冲DMA、以及中断中及时重启DMA。文章包含原理讲解、配置步骤、完整代码示例与注意事项,帮助开发者彻底解决这一常见痛点。
STM32 HAL库DMA+空闲中断接收串口不定长数据的丢包排查与修复
嵌入式 · 👁 72 阅读
本文针对STM32 HAL库下DMA+空闲中断接收串口不定长数据时常见的丢包问题,从原理出发分析丢包根源,包括DMA传输完成与空闲中断的竞争、缓冲区管理不当、中断优先级配置错误等。通过实际案例给出完整的排查步骤与修复方案,并提供可复用的代码示例,帮助开发者彻底解决不定长数据接收的丢包难题。
从零手写Cortex-M0+启动文件:向量表重定位与中断优先级分组的实战验证
嵌入式 · 👁 104 阅读
本文深入探讨Cortex-M0+启动文件的手写实现,重点解析向量表重定位机制与中断优先级分组配置。通过完整代码示例,演示如何从零构建启动文件,并实战验证向量表偏移与优先级分组对中断响应的影响。适合有一定嵌入式基础的开发者,帮助理解底层启动流程与中断管理,提升系统可靠性设计能力。
STM32 HAL库中__weak函数重定义陷阱:链接顺序导致的覆盖问题与排查指南
嵌入式 · 👁 77 阅读
在STM32 HAL库开发中,使用__weak修饰的回调函数允许用户重定义,但链接顺序不当可能导致用户函数被库中弱符号覆盖,引发难以调试的问题。本文深入分析__weak机制、链接器行为,通过实例展示陷阱现象,提供排查方法(map文件分析、符号表检查),并给出确保用户函数优先的配置步骤与完整代码示例,帮助开发者规避此类链接错误。
‹
1
...
15
16
17
...
182
›