找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2451|回复: 1
收起左侧

不定长串口字节接受程序 就是进不了空闲中断

[复制链接]
ID:155187 发表于 2016-12-16 10:11 | 显示全部楼层 |阅读模式
u8 Clear=Clear;

        if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //????????
        {
        
                RX_BUF[RX_HEAD_PTR]= USART_ReceiveData(USART1);//SBUF0;
                RX_HEAD_PTR=(RX_HEAD_PTR+1)&0x3f;
                //USART_ClearITPendingBit(USART1, USART_IT_RXNE); //ÇåÖD¶Ï±êÖ¾Î
          //USART_ClearFlag(USART1,USART_FLAG_TC);  //?????
                //         if(USART_GetFlagStatus(USART1,USART_FLAG_ORE)==SET)
        // {
        //        USART_ClearFlag(USART1,USART_FLAG_ORE); //?SR????????
        //        USART_ReceiveData(USART1);    //?DR
        // }
        //while(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET){}//μè′y½óêü½áêø
               

        }
        else if(USART_GetITStatus(USART1, USART_IT_IDLE) != RESET)
        {
                Clear=USART1->SR;//¶áSR¼Ä′æÆ÷
                Clear=USART1->DR;//¶áDR¼Ä′æÆ÷
                Recflag=1;
   }
         /*·¢Ëíêy¾YÖD¶Ï*/
  if(USART_GetITStatus(USART1, USART_IT_TXE) != RESET)
  {  
    if (TX_HEAD_PTR!=TX_TAIL_PTR)
                {
                        USART_SendData(USART1, TX_BUF[TX_TAIL_PTR]);
                        TX_TAIL_PTR=(TX_TAIL_PTR+1)&0xff;
                }else
                {
                        USART_ITConfig(USART1, USART_IT_TXE, DISABLE); //·¢Ëííê3éÖ®oóÇå·¢ËíÖD¶Ï
      TX_HEAD_PTR=TX_TAIL_PTR=0;
                  RS485 =0;
    }

  }
就是进不了空闲中断

回复

使用道具 举报

ID:204496 发表于 2020-4-25 13:54 | 显示全部楼层
请问楼主解决了吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表