yuangaoping 发表于 2008-3-16 21:15:01

马老师,TWI主从通信时,主机如何从从机获取不确定长度的数据?

TWI主从通信,主机可以主动向从机发送任意长度的数据,但当主机从从机读取数据时,若从机有效数据长度不确定,主机如何确定数据已经结束,提前终止接收?
如:当主机计划从从机中读取32字节数据,但实际本次传送过程中,从机有效数据只有24字节,此状态下主机如何在接收完24字节后终止接收?
试过使用从机在最后字节发送完毕后,执行写入TWCR:TWINT=1,TWEA=0,转入被控器初始状态,但主机仍能继续接收到0XFF,直至32字节接收完.
谢谢.

machao 发表于 2008-3-17 17:33:31

如果从机是自己定义的,不是固定的器件,那么你可以自己定义用户层的协议来比较好的处理这个问题.具体请参考我编写书中关于USART的协议设计部分内容.

yuangaoping 发表于 2008-3-17 22:39:41

谢谢马老师,我现在也是使用的自定义协议,已经搞定了.谢谢.
买了2本马老师的书了,收获很大.(都快翻破了.)
每次看过,总会有不同的收获.可能是我太喜欢刨根问底了,总想把问题考虑的全面些.目前正在整理手头的程序,突然发现了这个问题.

guoxiongmao 发表于 2008-5-22 14:44:44

这个问题怎么解决啊?
页: [1]
查看完整版本: 马老师,TWI主从通信时,主机如何从从机获取不确定长度的数据?