使用keil4编程,在串口中断中,其实就是简单的赋值语句
if((T35_Delay2)&&(MB_Rx_First2==0))//接收开始
{
MB_Rcv_Cnt2 = 0;
MB_Rx_First2 = 1;
MB_Rx_Buff2[MB_Rcv_Cnt2] = msg;
}
按照上面的写法,MB_Rcv_Cnt2每次不被清零。然后将MB_Rcv_Cnt2 = 0;移到下一行就正常了
```c
if((T35_Delay2)&&(MB_Rx_First2==0))//接收开始
{
MB_Rx_First2 = 1;
MB_Rcv_Cnt2 = 0;
MB_Rx_Buff2[MB_Rcv_Cnt2] = msg;
}
实在不明白为什么,有没有什么思路呢?调试方法?
看了disassembly窗口也看不出什么区别
