此内容由EEWORLD论坛网友tiankai001原创,如需转载或用于商业用途需征得作者同意并注明出处
msp430单片机开发实录(17)
现象:
调试msp430f2955的串口,串口数据的发送和接收都采用的查询方式,没有用中断。msp4302955作为主控单片机,向另一个单片机发送串口数据,另一个单片机接收到数据后,返回应答数据。调试中出现:数据发送没有问题,但是数据接收不正常,并且还会引起单片机复位。
试验:
因为之前在msp430多种型号单片机上都调试过串口,中断方式和查询方式都用过,都能够正常实现功能这次出现这个问题,有些困惑。于是仿真调试,并且把串口引出一路接到计算机上,发现主控单片机发送的数据是正确的,计算机串口显示另一个单片机也返回了正确的应答数据。那么原因肯定是出在主控单片机上。检查程序发现,在进行串口初始化的时候,不小心开启了串口接收中断。但是程序中却没有串口接收中断的服务程序。问题就在这里。
验证:
将串口接收中断关闭。反复测试,数据发送和接收正常。
备注:
以前调试程序时,如果使能了中断,却没有相应的中断服务程序,更多的现象是程序跑飞,这次却出现了没有中断服务程序,程序自动复位。
|