yangjiaxu 发表于 2022-4-28 10:37

I2C采用软件模拟和硬件I2C那个有优势?

I2C大家都比较常用,其实很多时候用的就是软件模拟I2C,因为大家都说STM32F103的硬件I2C不好用(只是听说,不造谣不传谣不信谣)。但是属实现在调试很多关于I2C的硬件,大多数用的都是软件模拟I2C。
其实分析一下,软件模拟的I2C是比较好移植,那个硬件基本上改一下管脚配置,就能直接使用。而且不用特定引脚,比较灵活。缺点就是时序有时候不准,或者调试时序的时候可能需要逻辑分析仪来帮助,而且速度跟IO的翻转速度有关系。
硬件I2C的优势就是速度比较快吧,而且时序不需要刻意去管。缺点就是固定引脚,电路设计的时候需要特意去考虑,而且有些时候如果对新的MCU不是很熟悉,配置I2C会比较吃力。

其实楼主在这里也就是个抛砖引玉吧,也是自己这段时间调试获得的心得,那么软件模拟和硬件I2C究竟还有什么可以对比的呢,欢迎大家来讨论。

corerocky 发表于 2022-4-28 11:26

我怎么也有听说过那个传闻,在前辈代码的注释中看到的

软件I2C是很方便移植,但如何异步执行,非阻塞式通讯呢,只用硬件I2C的带有中断的才好做吧

yangjiaxu 发表于 2022-4-28 16:45

corerocky 发表于 2022-4-28 11:26
我怎么也有听说过那个传闻,在前辈代码的注释中看到的

软件I2C是很方便移植,但如何异步执行,非阻塞式通 ...

属实是这样,软件I2C没有中断的,是要用定时器了
页: [1]
查看完整版本: I2C采用软件模拟和硬件I2C那个有优势?