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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4137|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

分享一個基于K60讀取顯示姿態(tài)傳感器MPU6050的源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
K60使用山外K60DN,姿態(tài)傳感器使用GY-25(串口輸出式的MPU6050),LCD使用1.44寸128*128的山外液晶屏,傳感器自帶卡爾曼濾波輸出,單片機(jī)控制簡單穩(wěn)定。

單片機(jī)源程序如下:
  1. #include "common.h"
  2. #include "include.h"

  3. unsigned char Re_buf[11],counter=0;
  4. int Pitch,Roll,Yaw;    //串口mpu6050輸出的3個角度
  5. char angle_reflash=0;

  6. void uart4_handler(void)        //串口4中斷函數(shù)
  7. {
  8.   if(uart_query(UART4) == 1)   //接收數(shù)據(jù)寄存器滿
  9.   {
  10.      uart_getchar(UART4,Re_buf+counter);
  11.      if (counter==0 && Re_buf[0]!=0xAA) return; //第0號數(shù)據(jù)不是幀頭,跳過,重新接收
  12.      counter++;
  13.      if (counter==8 && Re_buf[0]==0xAA && Re_buf[7]==0x55) //接收到8個正確數(shù)據(jù)
  14.      {
  15.        counter=0;//重新賦值,準(zhǔn)備下一幀數(shù)據(jù)的接收   
  16.        Yaw   =((short)(Re_buf[1]<<8|Re_buf[2]))/100+180; //航向角Yaw
  17.        Pitch =((short)(Re_buf[3]<<8|Re_buf[4]))/100+180; //俯仰角Pitch
  18.        Roll  =((short)(Re_buf[5]<<8|Re_buf[6]))/100+180; //橫滾角Roll
  19.        angle_reflash=1;     //標(biāo)志角度更新完成
  20.      }
  21.   }  
  22. }

  23. void main()
  24. {   
  25.     char i=0,j=1;
  26.     Site_t site41 = {88,16};
  27.     Site_t site42 = {88,40};
  28.     Site_t site43 = {88,64};
  29.    
  30.     led_init(LED_MAX);
  31.     LCD_init();
  32.     uart_init(UART4,115200);    //串口MPU6050所用串口初始化
  33.     set_vector_handler(UART4_RX_TX_VECTORn,uart4_handler);
  34.    
  35.     PTB20_OUT=0,PTB21_OUT=0,PTB22_OUT=0,PTB23_OUT=0;//4燈全亮
  36.    
  37.     while(1)
  38.     {
  39.         uart_rx_irq_en (UART4);//開串口4中斷,接收最新角度數(shù)據(jù)
  40.         while ( angle_reflash==0 )  ;
  41.         angle_reflash=0;
  42.         uart_rx_irq_dis(UART4);//關(guān)串口4中斷  
  43.         LCD_num_BC(site41,Pitch,5, BLUE,RED);     //顯示俯仰角
  44.         LCD_num_BC(site42,Roll, 5, BLUE,RED);     //    橫滾角
  45.         LCD_num_BC(site43,Yaw,  5, BLUE,RED);     //    航向角
  46.         i++;
  47.         if (i>70)      //最小系統(tǒng)的4個LED形成流水燈,指示程序正常運(yùn)行
  48.         {               //PTB20,21,22,23,低電平點(diǎn)亮
  49.           i=0;
  50.           GPIO_SET_NBIT(4,PTB20,15-j);//4位整體賦值。15-j起到把j按位取反的作用
  51.           j=j*2;                       //1,2,4,8——0001,0010,0100,1000
  52.           if (j>=16) j=1;
  53.         }
  54.         DELAY_MS(5);    //相當(dāng)于5ms定時中斷的作用
  55.     }
  56. }
復(fù)制代碼

所有資料51hei提供下載:
K60 串口6050 LCD.7z (1.01 MB, 下載次數(shù): 51)



評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:587148 發(fā)表于 2019-7-19 22:27 | 只看該作者
很好很實(shí)用呢
回復(fù)

使用道具 舉報(bào)

板凳
ID:596304 發(fā)表于 2019-8-6 22:35 | 只看該作者

可以分享一下嗎,幣不夠,很凄涼
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表