汗,本来是想写IIC教程的,结果发现IIC好像没有什么要写的东西,看看官方的例程,基本的IIC也就出来,难道要我再造轮子? 于是想写一下注意点。
一般IIC都是用于传感器的通信的,发现官方的板子自带的温度传感器是SMBUS通信协议的,SMBUS是可以用IIC通信,但是有点小区别,具体的区别自己可以google下。
背景:
N天以前,有个同学说,他用IIC去获取陀螺仪的数据,结果怎么都不成功。刚好我在N天前有用过IIC,知道了CC3200的IIC跟我们平常用的IIC有点不太一样(平常我用的是软件的IIC),一眼就知道问题出现在哪里,然后跟他讲了好多IIC的东西,唉,有些代码可能会误导那些对IIC协议不太懂的同学。
像stm32的硬件IIC是比较特别的,所以基本上都是用软件的IIC。什么是软件的IIC:软件控制IO的电平,模仿出IIC的时序图。在这个过程中需要软件去控制电平。
当时如果是硬件IIC的话,就不需要软件去控制电平了,芯片自己会帮我们做了。
IIC协议:如果有不懂的话,请自己先GOOGLE下,花几分钟去详细了解它。哥哥在这里就介绍重点。
IIC分成主机和从机,从机都需要一个地址,这个地址是7BIT的,假设
设备地址是 0b1100 111 ------7bit