標(biāo)題:
MPU6050測(cè)角度stm32程序
[打印本頁(yè)]
作者:
血之殤
時(shí)間:
2017-8-10 14:02
標(biāo)題:
MPU6050測(cè)角度stm32程序
分享一個(gè)別人使用F1mini開(kāi)發(fā)板 使用6050測(cè)角度的程序的程序
所有資料51hei提供下載:
程序3 讀出數(shù)據(jù).rar
(406.83 KB, 下載次數(shù): 41)
2017-8-10 18:46 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
stm32單片機(jī)源程序(主程序)如下:
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "lcd.h"
#include "key.h"
#include "MPU6050.h"
#include "myiic.h"
#include "usart.h"
#include "adc.h"
#include "dma.h"
#include "math.h"
#include "inv_mpu.h"
#include "inv_mpu_dmp_motion_driver.h"
//ALIENTEK Mini STM32開(kāi)發(fā)板范例代碼19
//IIC實(shí)驗(yàn)
u16 table[8]={0};
int main(void)
{
u8 t;
float pitch,roll,yaw; //歐拉角
short aacx,aacy,aacz; //加速度傳感器原始數(shù)據(jù)
short gyrox,gyroy,gyroz; //陀螺儀原始數(shù)據(jù)
short temp;
NVIC_Configuration();
delay_init(); //延時(shí)函數(shù)初始化
uart_init(9600); //串口初始化為9600
LCD_Init();
Init_MUP6050(); //IIC初始化
while(mpu_dmp_init())
{
LCD_ShowString(30,130,200,16,16,"MPU6050 Error");
delay_ms(200);
LCD_Fill(30,130,239,130+16,WHITE);
delay_ms(200);
}
LCD_ShowString(30,130,200,16,16,"MPU6050 OK");
LCD_ShowString(30,150,200,16,16,"KEY0:UPLOAD ON/OFF");
POINT_COLOR=BLUE;//設(shè)置字體為藍(lán)色
LCD_ShowString(30,170,200,16,16,"UPLOAD ON ");
LCD_ShowString(30,200,200,16,16," Temp: . C");
LCD_ShowString(30,220,200,16,16,"Pitch: . C");
LCD_ShowString(30,240,200,16,16," Roll: . C");
LCD_ShowString(30,260,200,16,16," Yaw : . C");
while(1)
{
{
MPU_Get_Accelerometer(&aacx,&aacy,&aacz); //得到加速度傳感器數(shù)據(jù)
MPU_Get_Gyroscope(&gyrox,&gyroy,&gyroz); //得到陀螺儀數(shù)據(jù)
mpu_dmp_get_data(&pitch,&roll,&yaw);
temp=pitch*10;
if(temp<0)
{
LCD_ShowChar(30+48,220,'-',16,0); //顯示負(fù)號(hào)
temp=-temp; //轉(zhuǎn)為正數(shù)
}else LCD_ShowChar(30+48,220,' ',16,0); //去掉負(fù)號(hào)
LCD_ShowNum(30+48+8,220,temp/10,3,16); //顯示整數(shù)部分
LCD_ShowNum(30+48+40,220,temp%10,1,16); //顯示小數(shù)部分
temp=roll*10;
if(temp<0)
{
LCD_ShowChar(30+48,240,'-',16,0); //顯示負(fù)號(hào)
temp=-temp; //轉(zhuǎn)為正數(shù)
}else LCD_ShowChar(30+48,240,' ',16,0); //去掉負(fù)號(hào)
LCD_ShowNum(30+48+8,240,temp/10,3,16); //顯示整數(shù)部分
LCD_ShowNum(30+48+40,240,temp%10,1,16); //顯示小數(shù)部分
temp=yaw*10;
if(temp<0)
{
LCD_ShowChar(30+48,260,'-',16,0); //顯示負(fù)號(hào)
temp=-temp; //轉(zhuǎn)為正數(shù)
}else LCD_ShowChar(30+48,260,' ',16,0); //去掉負(fù)號(hào)
LCD_ShowNum(30+48+8,260,temp/10,3,16); //顯示整數(shù)部分
LCD_ShowNum(30+48+40,260,temp%10,1,16); //顯示小數(shù)部分
}
}
}
復(fù)制代碼
作者:
Cunningboy
時(shí)間:
2017-8-10 22:27
這個(gè)引腳怎么連接?
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1