I2C总线的小问题,求大神!在线等

I2C总线中,SCL到底应该怎么样设定我看datasheet都是这样的方波但是我看郭天祥的视频,他编程的时候,直接就是初始化SCL=1,然后根据要传数据,还是穿开始信号什... I2C总线中,SCL到底应该怎么样设定
我看datasheet都是这样的方波

但是我看郭天祥的视频,他编程的时候,直接就是初始化SCL=1,然后根据要传数据,还是穿开始信号什么的,直接给SCL赋值。
但是我理解的是和从图中看来,SCL不应该就是一个主机直接产生的方波吗?还是说只是他这么画,其实就是可以随时设定的?
展开
 我来答
kissmoonfans
2013-08-11 · TA获得超过377个赞
知道小有建树答主
回答量:138
采纳率:0%
帮助的人:167万
展开全部
这其实是个编程思想的问题,郭天祥写的是软件模拟的iic,用c语言模拟了一段iic时序,实际做法可以有两种:
1、像你说的,直接产生SCL方波,然后从start时序开始你要从头到尾严格通过定时器延时来控制整个传输过程SDA线的变化,类似面向过程来编程。
2、将读,写,start,stop写成几个子函数,子函数里就是模拟一小段时序,所以SCL是初始化赋值的方式。接着你只要调用这些子函数对象就可以完成传输过程,可重复性可移植性都比上面的方法好。
SCl在传输过程中除了start stop前后,确实就是个一般是100kHz的方波。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式