下面那段服务程序写的不太对。有可能出问题。
一般原则:
1、不仅仅判断状态标记而且同时判断是否允许该标记产生中断。
2、每个中断分支服务完成后就立刻从中断返回。其他判断基本上99.99xxx%是多余的。如果万一同时还存在未服务的中断,MCU会重新进入中断服务。按照概率可以减少MCU多余操作。
3、缺少TXC中断服务。一般写入一串字符的最后一个字节到 TX BUFFER 之后,就必须禁止TXE中断。同时使能TC中断。进入TXC中断服务后,禁止TXC和TXE中断,关闭发送模块。下次启动发送时,打开TXE中断(多字节)或者TC中断(单字节)。
|