• 方案介紹
    • 一、模塊介紹
    • 二、代碼展示
    • 三、參考
  • 附件下載
  • 推薦器件
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

嵌入式外設(shè)集-三軸陀螺儀模塊(MPU6050)驅(qū)動代碼編寫

2024/06/26
2333
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

聯(lián)系方式.docx

共1個文件

一、模塊介紹

MPU6050是一款集成了加速度傳感器陀螺儀的6軸運(yùn)動傳感器。它可以用于測量物體在三維空間中的加速度和旋轉(zhuǎn)速度,并計算出物體的姿態(tài)角度。該傳感器具有高精度和低功耗的特性,因此也被廣泛應(yīng)用于機(jī)器人、飛行器、智能穿戴設(shè)備等領(lǐng)域。在使用MPU6050時,用戶需要使用I2C接口與其通信,并進(jìn)行相應(yīng)的配置和校準(zhǔn),以保證準(zhǔn)確的數(shù)據(jù)輸出。???????

關(guān)注微信公眾號--星之援工作室 發(fā)送關(guān)鍵字(MPU6050)

????

452c0cf75b1d4e4895194df8a5022c34.png (865×328)

使用的注意事項

1.供電選擇選擇的5V供電更穩(wěn)定

2.使用的模擬IIC通信

3.需要主要MUP6050受到的環(huán)境因素改變較多,使用的時候盡量固定水平位面

4.完整代碼資料中有,可自行移植

二、代碼展示

main

/****************************************
1. MPU6050
PB9:INT   
PB7:IIC_SCL   
PB8:IIC_SDA
2. IIC顯示屏
PA1:IIC_SCL_OLED      
PA2:IIC_SDA_OLED
****************************************/
#include "oled.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "mpu6050.h"
#include "inv_mpu.h"
#include "inv_mpu_dmp_motion_driver.h" 
#include "uart.h"
#include "stdio.h"

MPU6050_Typedef mup6050_init;				  // 設(shè)備狀態(tài)

int main(void)
{	 
	//NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);	 //設(shè)置NVIC中斷分組2:2位搶占優(yōu)先級,2位響應(yīng)優(yōu)先級

	delay_init();				       //延時初始化
	OLED_Init();
	OLED_ColorTurn(0);         //0正常顯示,1 反色顯示
  OLED_DisplayTurn(0);       //0正常顯示 1 屏幕翻轉(zhuǎn)顯示
	MPU_Init();					       //初始化MPU6050
	USART1_Init();
	 
	OLED_ShowString(15,0,"Waiting",24,1);
	OLED_ShowString(0,28,"Initialise",24,1);
	OLED_Refresh();
	
	while(mpu_dmp_init())
 	{
		OLED_Clear();
		OLED_Refresh();
	}
	OLED_Clear();
	OLED_Refresh();
	OLED_ShowString(0,0,"PITCH:",16,1);
	OLED_ShowString(0,15,"ROLL:",16,1);
	OLED_ShowString(0,31,"YAW:",16,1);
	OLED_ShowString(0,47,"TEMP:",16,1);
	OLED_Refresh();
 	while(1)
	{
		if(mpu_dmp_get_data(&mup6050_init.pitch,&mup6050_init.roll,&mup6050_init.yaw)==0)
		{
			mup6050_init.temp=MPU_Get_Temperature();							  //得到溫度值
			MPU_Get_Accelerometer(&mup6050_init.aacx,&mup6050_init.aacy,&mup6050_init.aacz);	//得到加速度傳感器數(shù)據(jù)
			MPU_Get_Gyroscope(&mup6050_init.gyrox,&mup6050_init.gyroy,&mup6050_init.gyroz);	//得到陀螺儀數(shù)據(jù)
			
			/*
			printf("Pitch:  %frn",(float)pitch);
			printf("Roll:  %frn",(float)roll);
			printf("yaw:  %frn",(float)yaw);
			printf("temp:  %frn",(float)temp);
			printf(" rn");
			*/
			OLED_ShowFloat(50, 0,mup6050_init.pitch,1,16,1);
			OLED_ShowFloat(50,15,mup6050_init.roll,5,16,1);
			OLED_ShowFloat(50,31,mup6050_init.yaw,5,16,1);
			OLED_ShowFloat(50,47,(float)mup6050_init.temp/100,5,16,1);
			OLED_Refresh();
		}
	} 	
}

三、參考

正點(diǎn)原子STM32學(xué)習(xí)筆記——MPU6050介紹icon-default.png?t=N7T8https://blog.csdn.net/wlswls1711/article/details/102727250?ops_request_misc=&request_id=&biz_id=102&utm_term=mpu6050%E5%A7%BF%E6%80%81%E8%A7%A3%E7%AE%97stm32&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-102727250.nonecase&spm=1018.2226.3001.4187


完整代碼請關(guān)注公眾號進(jìn)行獲取和咨詢


聯(lián)系方式 微信號:13648103287

  • 聯(lián)系方式.docx
    下載

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險等級 參考價格 更多信息
AD590JH 1 Intersil Corporation ANALOG TEMP SENSOR-CURRENT, 298.2uA, ROUND, THROUGH HOLE MOUNT, TO-52, 3 PIN
$28.63 查看
HPP845E131R4 1 TE Connectivity SENSOR HUMID/TEMP 3V I2C 3% SMD
$2.57 查看
MLX90316KDC-BDG-100-RE 1 Melexis Microelectronic Integrated Systems Hall Effect Sensor, 0deg Min, 360deg Max, -8-8mA, Rectangular, Surface Mount, 0.150 INCH, ROHS COMPLIANT, PLASTIC, SOIC-8

ECAD模型

下載ECAD模型
$52.69 查看

相關(guān)推薦

方案定制

去合作
方案開發(fā)定制化,2000+方案商即時響應(yīng)!

方案定制,程序設(shè)計方案、單片機(jī)程序設(shè)計與講解、APP定制開發(fā)。本公眾號致力于向讀者傳遞關(guān)于程序設(shè)計和開發(fā)的相關(guān)知識,并分享一些關(guān)于軟件開發(fā)的最佳實踐。如果您有什么問題或建議,請隨時聯(lián)系我們。我們將竭誠為您服務(wù)