标题:
关于I2C总线通信的问题,主机发数据给从机没有应答,主机该停止发送吗?
[打印本页]
作者:
18879461580
时间:
2019-9-25 15:32
标题:
关于I2C总线通信的问题,主机发数据给从机没有应答,主机该停止发送吗?
请教一下大家关于I2C总线通信的问题:当主机给从机发数据而从机没有应答的时候,主机是应该停止发数据不是吗?为什么我看的很多例程里面都没有相关的处理?希望懂的能帮我解决这个疑惑。
void respons()
{
uchar i=0;
scl=1;
delay();
while((sda==1)&&(i<255))
i++;
scl=0;
delay();
}
作者:
没有你
时间:
2019-9-25 15:55
如果从机没回应,可能从机异常或者从机正在处理其他事件,主机应等待从机正常再发送数据给从机,如果主机多次发送没有得到回应的话,则可认为从机异常,主机不必再发数据。
作者:
Y_G_G
时间:
2019-9-25 17:05
大多教程上是不会有什么处理的,人家是想告诉你是怎么进行通讯的,或者是想表达一下这个通讯协议
你给的代码好像是一共查询255次SDA线吧,超过这个次数就退出循环了
我是用汇编的,一般设定查询几千次左右,如果没有响应的话,会重新发送一次,重新发送十几次都不成功的话,就会有提示的
作者:
yun1981
时间:
2019-9-25 17:15
根据实际情况来吧!可以定时发送不管有没有应答,大不了接收不到数据而已
作者:
yzwzfyz
时间:
2019-9-26 15:59
这取决你的整体设计的目的是什么?停与不停对达成目的的影响是什么?
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1