看到原子哥貌似 IIC是用IO来模拟的 但是我看芯片手册是自带IIC功能的 为什么原子哥不用芯片的IIC而用模拟的呢???
是自带的功能有缺陷嘛?还是其他原因?
你看的是F1的吧,他的视频里有讲这个的原因的,因为f1的硬件IIC不稳定,这的硬件上的缺陷,用IO模拟IIC会稳定一些。而F4则不存在这些问题。
不过一般情况下f1用硬件IIC也是可以的(平常自己做一些小玩意什么的),在真正的项目开发中用f1还是用IO模拟比较好(稳定性要求比较高)
至于使用简单?硬件IIC明显更简单好吧,只需要用库函数配置一番就行了,IO模拟还有注意时序。而且等你学会了IIC,使用简不简单基本就不是要考虑的因素了~~~
STM32F1的IIC大家都认为被ST设计复杂了,实际上ST也是这么认为的,所以很长一段时间大家都不愿意用ST的硬件IIC,ST出了库文件,大家也不愿意用库函数,这个算是历史遗留问题了。
实际上个人认为硬件IIC也是挺好用的,起码我目前没发现问题。