STM32 速记笔记NVIC / UART / I2C / SPI / DMA / CAN / ADC

📅 2026/7/9 13:15:53 👁️ 阅读次数 📝 编程学习
STM32 速记笔记NVIC / UART / I2C / SPI / DMA / CAN / ADC

NVIC / UART / I2C / SPI / DMA / CAN / ADC 关键点

说明:在你原文基础上做了准确性核对,个别表述做了修正(标注在对应位置), 面试口述时按这个版本讲更保险。


一、NVIC 中断系统

  • 中断仲裁机制,分抢占优先级响应优先级,数值越低优先级越高
  • 抢占优先级不同 → 高的可以打断低的正在执行的中断,实现中断嵌套
  • 响应优先级只用于"多个中断同时挂起时决定谁先被处理",不产生嵌套
  • 使用前必须先配置优先级分组(决定抢占位数和响应位数怎么分配),且全工程只配一次

二、UART 串口

  • TX/RX两根线,全双工,点对点收发
  • 双方波特率必须一致,工程上通常允许一定误差容限(常见经验值在2%左右,具体容限跟采样点位置和帧长有关)
  • 标准帧格式8N1:1个起始位 + 8个数据位 + 无校验位 + 1个停止位
  • 常配合DMA使用;处理不定长数据(如Modbus)常用"DMA循环模式 + 空闲中断(IDLE)"组合,靠计算DMA剩余计数得出实际收了多少字节

三、I2C

  • **SCL(时钟