能帮忙解决我的问题的 送50元手机充值卡



我的QQ是29141057,能帮我解决下面的问题,调试成功,我给你手机充值50,绝不食言。我也没必要食言。

使用的是UCOS,每次串口接收中断来后,接收完后就进入void  OS_TaskIdle (void *p_arg)这个函数不出来了,单独发送并且发送中断都问题,单独接收就出现问题。请问是怎么回事。

下面是接收中断函数

 if((ulStatus&UART_INT_RT)||(ulStatus&UART_INT_RX))//接收超时中断, 接收中断
 {  
  while(UARTCharsAvail(UART0_BASE))     // 接收FIFO里有可用数据 
  { 
   ucBuffer[ucNum]=UARTCharNonBlockingGet(UART0_BASE); 
   if((ucBuffer[ucNum]==10) ||(ucNum>40)) //判断是否接受完数据 换行  回车(ASCII码13)  换行(ASCII码10) 空格,ASCII码32
   {
    OSSemPost(UartRx_Semp);    
    ucNum=0;
    UARTIntDisable(UART0_BASE, UART_INT_RX|UART_INT_RT);
    UARTIntDisable(UART0_BASE, UART_INT_RX);    
    break;
   }
   else
   {
    ucNum++;
    
   }
  }
 }