(简单串口程序)debug无法进入while循环

2019-07-21 04:05发布

本帖最后由 1208 于 2019-3-18 15:22 编辑

单片机用stm32F103C8T6,代码很简单,传感器是主动上传的,1s一个数据,通过usart1读取,中断是这样写的。1.44寸屏幕可以直接读取到传感器浓度值(或者USB转TLL串口助手也行),但是debug的话怎么也进不了wihle循环(或者说USART_RX_STA这个值一直就是4000不是8000 ),新手一枚,想知道是哪里错了,求大神指教。
QQ图片20190318141906.png QQ图片20190318141946.png


气体传感器.rar (349.91 KB, 下载次数: 12) 2019-3-18 14:25 上传 点击文件名下载附件
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
18条回答
坠灬辰
2019-07-22 13:47
unsigned int flag = 0;

void USART1_IRQHandler(void)                        //′®¿ú1ÖD¶Ï·tÎñ3ìDò
        {
        u8 Res;
        if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)  //½óêÕÖD¶Ï(½óêÕμ½μÄêy¾Y±ØDëêÇ0x0d 0x0a½áÎ2)
                {
                Res =USART_ReceiveData(USART1);        //¶á衽óêÕμ½μÄêy¾Y
               
                if((USART_RX_STA&0x8000)==0)//½óêÕÎ′íê3é
                        {
       
                                if(Res == 0xFF)
                                        {
                                                flag |= 0x4000;
                                               
                                        }
                                if(Res == 0x86) //¿aê¼½óêÕêy¾Y
                                        {
                                                        flag |= 0x1000;                                                            
                                        }

                                if( (flag&0x4000) && (flag&0x1000) )
                                        {//±£′æêy¾Y                                                               
                                                USART_RX_BUF[USART_RX_STA&0x0fff]=Res;
                                                USART_RX_STA ++;                                                               
                                                if( (USART_RX_STA&0x0fff) > 6){
                                                        USART_RX_STA |= 0x8000;
                                                        flag = 0;
                                                }
                                                       
                                        }
                                       
                                                                       
                         }                    
     }
}

一周热门 更多>