串口通信TI不清0也可以吗
答案:2 悬赏:0 手机版
解决时间 2021-01-18 07:12
- 提问者网友:十年饮冰
- 2021-01-17 16:28
串口通信TI不清0也可以吗
最佳答案
- 五星知识达人网友:千夜
- 2021-01-17 17:59
你程序虽然没有给Tl清0,但用了延时,效果是一样的。Tl的作用是用于中断的,如果不采用中断,就查询TI的状态,因发送结束TI=1,这样就可以发送下一个数据,为了避免发送覆盖,所以,每次查询后要清0。这样可以连续发送,而效率最高。
回到你的程序上,你没有TI清0,并不影响发送。以9600波特率发送,发一个字节大约需10ms。你延时delay(200),这延时肯定大于10ms,否则,会覆盖出现发送错误。从效率上看,这样发送效率低,因延时超过10ms,每发送一次中间是有停顿时间的。
回到你的程序上,你没有TI清0,并不影响发送。以9600波特率发送,发一个字节大约需10ms。你延时delay(200),这延时肯定大于10ms,否则,会覆盖出现发送错误。从效率上看,这样发送效率低,因延时超过10ms,每发送一次中间是有停顿时间的。
全部回答
- 1楼网友:蕴藏春秋
- 2021-01-17 19:19
已经delay了,在delay时间里,串口已经完成了发送,按照一般的流程,是要判断标志位是不是已经发送完,发送完之後,再送数据到SBUF
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯