[问题] 如何让Arduino在I2C连续送出Stop Signal?

楼主: woody5202001 (狗爷)   2018-04-20 17:58:44
大家好,小弟最近开始接触Arduino nano,觉得非常好玩:P
最近遇到一个问题是在对一颗IC做I2C沟通
在使用该IC的某个功能时需要连续送出多组Stop讯号去触发
Wire.endTransmission ()这个语法如果单独使用-
会产生一个Start讯号跟9 bit(含Ack)的clock接着才会输出Stop讯号
这边想问的是有没有什么语法可以只输出Stop讯号而不输出其他讯号呢?
楼主: woody5202001 (狗爷)   2018-04-20 18:01:00
我本身有尝试过DigitalWrite(SDA,HIGH)但无效Orz不知道是不是因为Wire.H里将这两根Pin锁死...
作者: cs8425 (cs)   2018-04-20 18:19:00
为何要单独的stop讯号? idle状态是不可能传"单独的stop"再读一下I2C是怎运作的吧...感觉你有搞错那颗IC的用法idle状态: SCL=H, SDA=Hstop: SCL=H, SDA=L >> Hstart: SCL=H, SDA=H >> L
楼主: woody5202001 (狗爷)   2018-04-20 18:32:00
因为这颗IC要进Trim mode的方式是要连打10个stop并给出start [id] [address] [data1] []data2] 对ic本身的电压基准值做调整 所以状况看起来才会很怪
作者: m490521 (阿青)   2018-04-20 20:41:00
直接用io去模拟i2c stop?
作者: doubletime (电力电子的自控人)   2018-04-21 05:17:00
同cs大的说法,无法连续打出stop 讯号
作者: Anal (^^)   2018-04-23 23:30:00
同cs大说法。不可能打出连续的stop
作者: god145145   2018-04-23 23:34:00
哪颗IC?

Links booklink

Contact Us: admin [ a t ] ucptt.com