久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

【Arduino】168種傳感器系列實驗(152)---GY-25串口傾斜度模塊

查看數: 5096 | 評論數: 30 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2020-12-10 12:08

正文摘要:

本帖最后由 eagler8 于 2020-12-10 16:25 編輯 37款傳感器與模塊的提法,在網絡上廣泛流傳,其實Arduino能夠兼容的傳感器模塊肯定是不止37種的。鑒于本人手頭積累了一些傳感器和執行器模塊,依照實踐出真知(一定 ...

回復

ID:513258 發表于 2020-12-25 13:11
ID:513258 發表于 2020-12-25 12:01
  1. /*
  2.   【Arduino】168種傳感器模塊系列實驗(資料代碼+圖形編程+仿真編程)
  3.   實驗一百五十二:GY-25 串口直接輸出角度數據 傾斜度角度傳感器模塊 MPU-6050
  4.   使用步驟:
  5.   1.先下載GY25_uart程序至arduino
  6.   2.再接上GY25模塊
  7.   3.按復位按鍵
  8.   4.打開串口,波特率115200
  9.   5、接線
  10.   GY25                arduino uno
  11.   VCC----------------------VCC
  12.   RX-----------------------TX
  13.   TX-----------------------RX
  14.   GND----------------------GND
  15.   ---------------------------------------
  16.   IICLCD2004           arduino uno
  17.   VCC----------------------VCC
  18.   SCL----------------------A5
  19.   SDA----------------------A4
  20.   GND----------------------GND
  21.   實驗之二:IICLCD2004顯示動態角度數值
  22. */

  23. #include <Wire.h>
  24. #include <LiquidCrystal_I2C.h>
  25. int YPR[3];
  26. unsigned char Re_buf[8], counter = 0;
  27. unsigned char sign = 0;
  28. int led = 13;
  29. LiquidCrystal_I2C lcd(0x27, 20, 4); // set the LCD address to 0x20 for a 20 chars and 4 line display

  30. //-----------------------------------------------------------
  31. void setup()
  32. {
  33.   lcd.init();                      // initialize the lcd
  34.   // Print a message to the LCD.
  35.   Serial.begin(115200);
  36.   delay(2000);
  37.   Serial.write(0XA5);
  38.   Serial.write(0X52);    //初始化GY25,連續輸出模式
  39.   lcd.backlight();
  40.   lcd.setCursor(0, 0);    //I2C接口LCD2004顯示初始值
  41.   lcd.print("Yaw:");
  42.   lcd.setCursor(0, 1);
  43.   lcd.print("Pitch:");
  44.   lcd.setCursor(0, 2);
  45.   lcd.print("Roll:");
  46. }
  47. //-------------------------------------------------------------
  48. void loop() {
  49.   if (sign)
  50.   {
  51.     sign = 0;
  52.     if (Re_buf[0] == 0xAA && Re_buf[7] == 0x55)   //檢查幀頭,幀尾
  53.     {
  54.       YPR[0] = (Re_buf[1] << 8 | Re_buf[2]) / 100; //合成數據,去掉小數點后2位
  55.       YPR[1] = (Re_buf[3] << 8 | Re_buf[4]) / 100;
  56.       YPR[2] = (Re_buf[5] << 8 | Re_buf[6]) / 100;

  57.       lcd.setCursor(4, 0);
  58.       lcd.print("    ");
  59.       lcd.setCursor(4, 0);
  60.       lcd.print(YPR[0]);      //顯示航向

  61.       lcd.setCursor(6, 1);
  62.       lcd.print("    ");
  63.       lcd.setCursor(6, 1);   //顯示俯仰角
  64.       lcd.print(YPR[1]);

  65.       lcd.setCursor(5, 2);
  66.       lcd.print("    ");
  67.       lcd.setCursor(5, 2);    //顯示橫滾角
  68.       lcd.print(YPR[2]);
  69.       delay(100);
  70.     }
  71.   }
  72. }
  73. //----------------------------------------------------------
  74. void serialEvent() {
  75.   while (Serial.available()) {
  76.     Re_buf[counter] = (unsigned char)Serial.read();
  77.     if (counter == 0 && Re_buf[0] != 0xAA) return; // 檢查幀頭
  78.     counter++;
  79.     if (counter == 8)             //接收到數據
  80.     {
  81.       counter = 0;               //重新賦值,準備下一幀數據的接收
  82.       sign = 1;
  83.     }
  84.   }
  85. }
復制代碼


ID:513258 發表于 2020-12-25 10:53
  1. /*
  2.   【Arduino】168種傳感器模塊系列實驗(資料代碼+圖形編程+仿真編程)
  3.   實驗一百五十二:GY-25 串口直接輸出角度數據 傾斜度角度傳感器模塊 MPU-6050
  4.   使用步驟:
  5.   1.先下載GY25_uart程序至arduino
  6.   2.再接上GY25模塊
  7.   3.按復位按鍵
  8.   4.打開串口,波特率115200
  9.   5、接線
  10.   GY25                arduino uno
  11.   VCC----------------------VCC
  12.   RX-----------------------TX
  13.   TX-----------------------RX
  14.   GND----------------------GND
  15.   實驗之一:串口顯示動態角度數值
  16. */

  17. #include <Wire.h>
  18. int YPR[3];
  19. unsigned char Re_buf[8], counter = 0;
  20. unsigned char sign = 0;
  21. int led = 13;

  22. //-----------------------------------------------------------
  23. void setup()
  24. {
  25.   Serial.begin(115200);
  26.   delay(2000);
  27.   Serial.write(0XA5);
  28.   Serial.write(0X52);    //初始化GY25,連續輸出模式
  29. }
  30. //-------------------------------------------------------------
  31. void loop() {
  32.   if (sign)
  33.   {
  34.     sign = 0;
  35.     if (Re_buf[0] == 0xAA && Re_buf[7] == 0x55)   //檢查幀頭,幀尾
  36.     {
  37.       YPR[0] = (Re_buf[1] << 8 | Re_buf[2]) / 100; //合成數據,去掉小數點后2位
  38.       YPR[1] = (Re_buf[3] << 8 | Re_buf[4]) / 100;
  39.       YPR[2] = (Re_buf[5] << 8 | Re_buf[6]) / 100;
  40.       Serial.print("YPR:\t");
  41.       Serial.print(YPR[0], DEC); Serial.print("\t"); //顯示航向
  42.       Serial.print(YPR[1], DEC); Serial.print("\t"); //顯示俯仰角
  43.       Serial.println(YPR[2], DEC);                    //顯示橫滾角
  44.       delay(50);
  45.     }
  46.   }
  47. }
  48. //---------------------------------------------------------------
  49. void serialEvent() {
  50.   while (Serial.available()) {
  51.     Re_buf[counter] = (unsigned char)Serial.read();
  52.     if (counter == 0 && Re_buf[0] != 0xAA) return; // 檢查幀頭
  53.     counter++;
  54.     if (counter == 8)             //接收到數據
  55.     {
  56.       counter = 0;               //重新賦值,準備下一幀數據的接收
  57.       sign = 1;
  58.     }
  59.   }
  60. }
復制代碼


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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕手机在线观看 | 国产精品嫩草影院桃色 | 日韩成人精品视频 | 一区二区国产视频 | 中文字幕观看 | 加勒比一区二区三区 | 成年人免费看片 | 日本不卡视频在线观看 | 久久99精品久久久久久国产越南 | 国产精品黄色 | 综合久久99 | 欧美日一区二区三区 | 久久久黄色片 | 国产午夜精品一区二区三区四区 | 色片在线 | 黄色网址在线免费观看 | 成人免费在线观看网站 | 中文字幕第7页 | 国产精品久久久久久久久久久久久久 | 日韩久久网 | 最新国产在线视频 | 精品视频免费在线观看 | 成人午夜在线观看 | av在线天堂 | 久久国内精品 | 国产自产21区 | 在线日韩一区 | 亚洲免费视频网站 | 欧美a级黄色片 | 日本免费在线 | 五月婷婷六月激情 | 国产精品aaa | 欧美日韩在线一区二区三区 | 欧美成人一级片 | 欧美黑人猛交 | 亚洲一区二区在线视频 | 亚洲日本国产 | 国产资源在线观看 | 天天干夜夜撸 | 国产精品国产三级国产 | 亚洲人成在线播放 |