串口中断程序里发送数据如何进入中断?

2019-07-15 07:38发布

发送中断,是在执行了MOV SBUF,A ,发送完毕后,ti置1,然后才能进入中断,可是我看到书上一个例子,在中断里发送多个字节数据,发送一字节后退出中断,退出后没有MOV SBUF,A的指令,怎么又进入中断发送数据?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
15条回答
人中狼
2019-07-17 03:10
没怎么用过进入中断的发送方式,通常都是在外部依次执行发送,这里你有一个概念的错误,串口发送数据完毕后,TI置1,硬件依据这个条件进入中断,这里包括TI的置1都是硬件自动完成的,所以在执行MOV SBUF,A之后就不需要理会了。
这个例程有问题,使用中断发送数据,那么在中断里就不应该有判断TI是否置1的代码,例程里的WAIT部分应该去除,应该有一个判断数据包是否发送完全的判断处理,判断成立后,应该设置一些标志,来避免无限制的发送数据。

一周热门 更多>