☰
通讯协议--硬件模拟和软件模拟
2026/10/25 1:45:45 网站建设 项目流程

1、先说:为什么 STM32 可以做硬件 I2C / 硬件 SPI

芯片内部专门做了一套硬件外设模块(控制器),不是 CPU 靠软件循环翻转 IO。

  • SPI 外设内部:移位寄存器 + 时钟发生器。只要你写几个寄存器配置好,硬件自动输出 SCK 时钟、自动移位发送 MOSI、采样 MISO。CPU 只要把数据丢进寄存器,然后等完成就行,CPU 不用去每一位操作引脚。
  • I2C 外设内部:同样内置时序电路、起始 / 停止、ACK 应答逻辑。硬件自动生成 SCL 时钟,处理总线握手。

2、单总线(1-Wire,典型 DS18B20)

✅绝大多数 STM32 没有内置硬件 1-Wire 外设!所以没有硬件控制器,只能软件模拟。

一、I2C 硬件 vs 软件 代码对比(HAL 库 STM32)

(1)硬件 I2C(CubeMX 开启 I2C1,PB6 PB7 复用开漏)

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询