作者a1781781781 (嘎了给给)
看板ASM
标题[问题] arduino i2c slave bit-banging实作
时间Thu Apr 18 17:37:42 2019
如题,最近在摸i2c
想尝试用bit-banging的方式做而不靠现有函示
Master较简单,但目前slave卡关中
我的做法是利用attachinterrupt,一旦SDA falling edge就触发i2c函式去读资料
因为担心被中断,一进i2c函式就关掉中断(cli();)最後再开启(sei();)
目前问题是读SCL或SDA不晓得为何读到的都是high
我设pin 2 3 input pull-up直接两块uno对接
附上读地址的code希望高手们能给点建议
https://i.imgur.com/PUdLcBT.png
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.230.53.90
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/ASM/M.1555580264.A.090.html
1F:推 god145145: slave应该不用delay吧 04/18 22:50
2F:→ god145145: 改用抓准位变化的方法 04/18 22:53
3F:→ a1781781781: 再问个arduino要如何设pin为open drain? 04/19 17:55
4F:推 hongsiangfu: 只能Input←→Output Low模拟O.D吧 04/20 20:04