欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 單片機(jī)根據(jù)加速度數(shù)據(jù)控制IO口,輸出電平不穩(wěn)定問題求助大家 [打印本頁]

作者: 1400301635    時(shí)間: 2020-4-26 17:43
標(biāo)題: 單片機(jī)根據(jù)加速度數(shù)據(jù)控制IO口,輸出電平不穩(wěn)定問題求助大家
我用STC89C52單片機(jī)連接了一個(gè)加速度模塊,根據(jù)角度信息控制IO口的電平,設(shè)置了串口中斷,加速度模塊每幀數(shù)據(jù)25個(gè)字節(jié),串口RX讀取數(shù)據(jù)后用來控制其他IO口的電平,連接了幾個(gè)二極管控制亮滅來觀察現(xiàn)象,然后發(fā)現(xiàn)IO電平會(huì)不斷地快速波動(dòng),被困住了好幾天,想求助大家這個(gè)問題是怎么回事。把中斷代碼和讀取代碼貼上來請(qǐng)大家指導(dǎo),謝謝大家。
中斷
  1. #include "stc_it.h"
  2. #include "usart.h"
  3. #include "string.h"
  4. //串口中斷
  5. void USART_IRQHandler(void)interrupt 4
  6. {
  7. static uint8_t i=0;//

  8. if(RI)//接收完成標(biāo)志
  9. {
  10.   RI=0;//清中斷接收標(biāo)志
  11.   RX_BUF[i]=SBUF;
  12.   if (i==0&&RX_BUF[0]!=0x5a) return;//檢查幀頭
  13.     i++;
  14.   if(i==25)                //
  15.     {   
  16.        i=0;                 //
  17.        Receive_ok=1;
  18.     }
  19.   
  20.    }[/i][/font][i]
  21. [font=Tahoma]  }[/font][font=Tahoma][size=5]
  22. 讀取
  23. [/size][/font][font=Tahoma]while(1)
  24. {
  25.     if(Receive_ok)//串口接收完畢
  26.   {    Receive_ok=0;
  27.    for(sum=0,i=0;i<(RX_BUF[3]+4);i++)
  28.    sum+=RX_BUF[i];
  29.    count=0;
  30.       if(sum==RX_BUF[i])//校驗(yàn)和判斷
  31.    {   
  32.        if(RX_BUF[2]&0x01)   //加速度數(shù)據(jù)
  33.       count=6;
  34.       if(RX_BUF[2]&0x02)  //陀螺數(shù)據(jù)
  35.      count+=6;
  36.       if(RX_BUF[2]&0x04)  //磁場(chǎng)數(shù)據(jù)
  37.       count+=6;
  38.       if(RX_BUF[2]&0x08)  //四元數(shù)數(shù)據(jù)
  39.       count+=8;
  40.       if(RX_BUF[2]&0x10)  //歐拉角數(shù)據(jù)
  41.       {
  42. //          LED_0=0;        
  43.          rpy[0]=(RX_BUF[4+count]<<8)|RX_BUF[5+count];
  44.          rpy[1]=(RX_BUF[6+count]<<8)|RX_BUF[7+count];
  45.          rpy[2]=(RX_BUF[8+count]<<8)|RX_BUF[9+count];
  46.       
  47.         Y=rpy[0];  //獲取角度
  48.        X=rpy[1];
  49.       
  50.        TI=1;  
  51.    
  52.       LED(Y,X);
  53.          count+=6;
  54.       }
  55.    }
復(fù)制代碼






歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1