主题 : 串口通信程序如何实现delete键的功能? 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 61994
精华: 0
发帖: 12
金钱: 60 两
威望: 12 点
综合积分: 24 分
注册时间: 2012-01-12
最后登录: 2012-02-09
楼主  发表于: 2012-02-06 14:35

 串口通信程序如何实现delete键的功能?

while(!(UART0->rUtrStat & 0x1)); //Receive data ready
           ch = UART0->rUrxh;
    
     if(ch == '\r')
     {
       while(!(UART0->rUtrStat & 0x2));  //wait utill transmit buffer empty
            UART0->rUtxh = '\n';
         while(!(UART0->rUtrStat & 0x2));  //wait utill transmit buffer empty
            UART0->rUtxh = '\r';      
          
     }
     else
     {
      if(ch == '\b')
         {
            while(!(UART0->rUtrStat & 0x2));  //wait utill transmit buffer empty
              UART0->rUtxh = '\b';
              while(!(UART0->rUtrStat & 0x2));  //wait utill transmit buffer empty
              UART0->rUtxh = ' ';
              while(!(UART0->rUtrStat & 0x2));  //wait utill transmit buffer empty
              UART0->rUtxh = '\b';          
         }
       else if(ch == 127)
       {
            Uart_Printf("11111111111111111111111111!\n\r");
       }
       else
           {
             while(!(UART0->rUtrStat & 0x2));
             UART0->rUtxh=ch;
           }


我的if(ch == 127)是用来判断delete键的,也有网上说是46,但是还是没用。我现在只用打印语句判断是否接受delete键传来的信号,具体怎么实现还没写。