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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 60|回復: 1
打印 上一主題 下一主題
收起左側

求佬解惑,關于mpu6050接收數據

[復制鏈接]
跳轉到指定樓層
樓主
問題是串口接收數據不變,均為:
temp= 36.53X= 0.00,y=0.00,z=0.00,X= 0.00,y=0.00,z=1.59,
如圖:


而且只有這一個能接收數據,其他兩個都不行,如下圖:



設置端口屬性錯誤:31


硬件接線為
系統板PA9、PA10接ch340模塊;PB6、PB7作IIC的SCL和SDA,接連mpu6050。其他就是電源接線了

cubemx引腳設置如下圖:



代碼:
初始化部分
  1. void MPU6050_INIT ()
  2. {
  3.         HAL_Delay(100);
  4.         
  5.         uint8_t SendAddress = 0x68;
  6.         uint8_t SendData = 0x00; //解除休眠
  7.         HAL_I2C_Mem_Write (&hi2c1,0xD0, SendAddress, 1, &SendData, 1, 0xff) ;

  8.         SendAddress = 0x19;
  9.         SendData = 0x07; //采樣率分頻器
  10.         HAL_I2C_Mem_Write (&hi2c1,0xD0, SendAddress, 1, &SendData, 1,0xff);

  11.         SendAddress = 0x1A; //低通濾波器
  12.         SendData = 0x06;
  13.         HAL_I2C_Mem_Write (&hi2c1,0xD0,SendAddress, 1, &SendData, 1, 0xff);

  14.         SendAddress = 0x1B; //陀螺儀
  15.         SendData = 0x08;//±500°/s
  16.         HAL_I2C_Mem_Write (&hi2c1,0xD0, SendAddress,1, &SendData, 1,0xff);

  17.         SendAddress = 0x1C; //加速度計
  18.         SendData = 0x00;//±2g
  19.         HAL_I2C_Mem_Write(&hi2c1,0xD0, SendAddress, 1, &SendData, 1, 0xff);
  20.         
  21. }
復制代碼
函數部分
  1. uint8_t MPU_DATA[14]={0};
  2.         uint8_t StartAddress=0x68;
  3.         double ACCEL_XOUT = 0.0,ACCEL_YOUT=0.0,ACCEL_ZOUT=0.0;
  4.         double GYR0_XOUT = 0.0,GYR0_YOUT = 0.0,GYR0_ZOUT = 0.0;
  5.         MPU6050_INIT();
  6.   /* USER CODE END 2 */

  7.   /* Infinite loop */
  8.   /* USER CODE BEGIN WHILE */
  9.   while (1)
  10.   {
  11.     /* USER CODE END WHILE */
  12.         HAL_I2C_Mem_Read (&hi2c1,0xD1, StartAddress, I2C_MEMADD_SIZE_8BIT,MPU_DATA, 14, 50);
  13.         float Temp = (MPU_DATA[6]<<8)|MPU_DATA[7];
  14.         if(Temp >32768) Temp-=65536;
  15.         Temp = (36.53+ Temp/340);
  16.                
  17.         short int ACCEL_XOUT1 = (( MPU_DATA[0]<<8) | MPU_DATA[1]);ACCEL_XOUT = (double)ACCEL_XOUT1/16384;
  18.         short int ACCEL_YOUT1 = (( MPU_DATA[2]<<8) | MPU_DATA[3]);ACCEL_XOUT =(double)ACCEL_YOUT1/16384;
  19.         short int ACCEL_ZOUT1 = (( MPU_DATA[4]<<8) | MPU_DATA[5]);ACCEL_ZOUT = (double)ACCEL_ZOUT1/16384;
  20.                
  21.         short int GYRO_XOUT1= ((MPU_DATA[8]<<8) | MPU_DATA[9]);GYR0_XOUT = (double)GYRO_XOUT1/65.5;
  22.         short int GYRO_YOUT1=((MPU_DATA[10]<<8) | MPU_DATA[11]);GYR0_YOUT = (double)GYRO_YOUT1/65.5;
  23.         short int GYRO_ZOUT1= ((MPU_DATA[12]<<8) | MPU_DATA[13]);GYR0_ZOUT = (double)GYRO_ZOUT1/65.5;
  24.                

  25.         printf("temp= %0.2f" ,Temp);
  26.         printf("X= %0.2f,y=%0.2f,z=%0.2f," ,ACCEL_XOUT,ACCEL_YOUT,ACCEL_ZOUT);
  27.         printf("X= %0.2f,y=%0.2f,z=%0.2f," ,GYR0_XOUT,GYR0_YOUT,GYR0_ZOUT);
  28.         printf("\r\n");
  29.         HAL_Delay(200);
  30.                
  31.   }
復制代碼
聽了上次問題中的大佬回答,將讀寫地址分別改為0xD1和0xD0
然后現象就是開頭所言。

求大佬解惑:
出現這樣的數據接收結果是哪里有問題?
軟件?程序?硬件?接線?設置?初始化?還是一開始的理解就有問題?

折騰了快一天了,明天再看看江科大的32視頻中關于mpu6050的部分

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

使用道具 舉報

沙發
ID:1148020 發表于 2025-4-14 18:18 | 只看該作者
您好請問解決了嗎,我的mpu6050也是這個問題,跑神經網絡的代碼輸出一直固定,現在我懷疑是不是沒用電源線給stm32供電導致mpu6050測量不完全
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品国产欧美一区二区 | 国产成人精品一区二区三区在线 | 久久久区| 中文字幕在线观看一区 | 91高清在线视频 | 91资源在线| 免费一区二区在线观看 | 黄色免费在线网址 | 日本中文在线视频 | 国产精品不卡一区二区三区 | 欧美日韩精品一区二区三区四区 | 四虎最新地址 | 国产精品国产三级国产aⅴ浪潮 | 在线日韩av电影 | 精品成人69xx.xyz| 亚洲精选一区二区 | 91色啪| 亚洲欧美视频一区 | 国产日韩欧美综合 | 久久久精品一区二区三区四季av | 日韩在线免费播放 | 久久99深爱久久99精品 | 亚洲视频免费在线看 | 伊人影院99| 桃花av在线 | 久久免费视频观看 | 91在线电影 | 国产第二页 | av免费网站在线观看 | 成人免费视频网站在线看 | 欧美日韩午夜精品 | 91精品国产乱码久久久久久 | 中文字幕三区 | 成人免费视频观看视频 | 成人av在线播放 | 大陆一级毛片免费视频观看 | 久久亚洲精品国产精品紫薇 | www.婷婷| www.99精品 | aaaaaaa片毛片免费观看 | 久久99国产精品 |