This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

在利用msp430f449进行串口通信时,接收设置为中断方式,对大部分数据接收都正常,接收完一个字节正常退出中断子程序。但当接收到的数据是:00H、FF、F0H、FCH时,出现问题:在接收中断子程序中死循环,反复接收,不能退出接收中断子程序。请各位大侠帮忙找找原因

;串口初始化
                bis.b     #PENA+CHAR+SWRST,&U0CTL     ;
                bis.b     #SSEL0+URXSE+TXWAKE,&U0TCTL ;辅助时钟
                mov.b     #1bh,&U0BR0                 ;波特率=1200
                mov.b     #00h,&U0BR1                 ;
                mov.b     #03h,&U0MCTL              ;
                bis.b     #10h,P2SEL                  ; p2.4使能    
                bis.b     #20h,P2SEL                  ;p2.5使能    
                bis.b     #URXE0+UTXE0,&ME1           ;
                bic.b     #SWRST,&U0CTL               ;
                bis.b     #URXE0,&IE1                 ;

                eint
main0       nop
                nop 
                nop
                nop
                nop
                nop
                nop
                nop
                nop
                jmp       main0
chuankou0_fasong
                mov.b       r5,&U0TXBUF               ;
                reti
chuankou0_jieshou
                bic.b       #URXIFG0,&IFG1                ;清除接收缓冲器满标志位(=0)
                mov.b       &U0RXBUF,r4                   ;读取串口的接收数据
                reti