UART和串口助手的通讯发送接收数据不对

2019-07-14 17:38发布


设置靠中断后,在中断里设置接收和发送标志,并显示在串口助手上,等待为空,才发送,等待满才接收,现在怎么也 发送接收数据不对,应该从哪下手解决

unsigned char GetChar (void)          //接收数据
{
  
    unsigned char temp;
    while(!RxBufferFull);                     //RxBufferFul ,接收缓冲满标志,在中断里置1
    temp=UrtRx(pADI_UART);   
    RxBufferFull=0;
    return (temp);
   }
int fputc(int ch, FILE *f)            // printf 重定向
{      
      while(!TxBufferEmpty);
      UrtTx(pADI_UART,ch);
      TxBufferEmpty = 0;
      return (ch);   
}

   
   while (1)
   {
              
       TEMP= GetChar();
       printf("接收的数据:%x ",TEMP);
       delay(10000000);
   }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
armortech
1楼-- · 2019-07-15 19:20
我也遇到这个问题
TOPCB
2楼-- · 2019-07-15 21:17
只开接收中断,收到数据直接发送就可以。不要开发送中断。
冬冬5241
3楼-- · 2019-07-16 02:20
 精彩回答 2  元偷偷看……
冬冬5241
4楼-- · 2019-07-16 06:38
不开发送中断怎么发出去数据呢
冬冬5241
5楼-- · 2019-07-16 07:59
还有个问题,比如单片机的接收缓冲器满了,我写了段程序,接收,然后发给串口助手,怎么也调试不通过
TOPCB
6楼-- · 2019-07-16 08:22
发送中断只要为空就要进去,所以不要开发送中断,只开接收中断。发送用查询的方式发送即可。

一周热门 更多>