[!看这里] 二者的主要区别在于I2C时序 的产生方法 硬件I2C:是用MCU内置的I2C控制模块产生时序 软件I2C:是通过GPIO引脚模拟时序

  1. 硬件方法:时序精准、效率高,但是引脚固定,I2C控制模块数量有限
  2. 软件方法:引脚灵活,但是精度容易受影响、占用CPU资源