用了款AD公司的芯片ADV7390,用IIC通信的。只能写不能读,不知道为什么
答案:2 悬赏:70 手机版
解决时间 2021-02-15 05:20
- 提问者网友:容嬷嬷拿针来
- 2021-02-14 16:44
调试一款IIC通信的芯片ADV7390.8位地址最后一位是标志读还是写,我确信地址没有写错。可是却只能写不能读,读就没有ACK返回,读的前2个字节写地址是有ACK的,到读的时候就没ACK了,很奇怪,怎么试都不好。此外,IIC线上其它2个设备是可以通的,且正常读写。(测试时已经将其它2个弄下来了)
最佳答案
- 五星知识达人网友:长青诗
- 2021-02-14 18:05
8位地址最后一位为0表示写,1表示读。
读时候,ADV7390没有ACK?这是应该的,此时,主机给ACK,ADV7390继续返回数据。只有主机给了ACK,才会继续。
发读写命令时,包括写命令发的数据,是主机发“数据”,那么ADV7390应该给ACK告诉主机,收到你的数据了。
反之,读命令响应后,就是ADV7390发数据,那么主机应该告诉收到数据,则返回信号(ACK)。
就好比说话时,说的人看到听的人有反应,才会继续说话,不然一个人在那里自言自语,多尴尬。
读时候,ADV7390没有ACK?这是应该的,此时,主机给ACK,ADV7390继续返回数据。只有主机给了ACK,才会继续。
发读写命令时,包括写命令发的数据,是主机发“数据”,那么ADV7390应该给ACK告诉主机,收到你的数据了。
反之,读命令响应后,就是ADV7390发数据,那么主机应该告诉收到数据,则返回信号(ACK)。
就好比说话时,说的人看到听的人有反应,才会继续说话,不然一个人在那里自言自语,多尴尬。
全部回答
- 1楼网友:三千妖杀
- 2021-02-14 18:56
额
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯