日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

STM32两轮自平衡小车(学习记录)——MPU6050

發布時間:2024/3/7 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32两轮自平衡小车(学习记录)——MPU6050 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

摘要

MPU6050是一種非常流行的空間運動傳感器芯片,可以獲取器件當前的三個加速度分量和三個旋轉角速度。由于其體積小巧,功能強大,精度較高,不僅被廣泛應用于工業,同時也是航模愛好者的神器,被安裝在各類飛行器上馳騁藍天。

MPU6050的數據是有較大噪音的,若不進行濾波會對整個控制系統的精準確帶來嚴重影響。

MPU6050芯片內自帶了一個數據處理子模塊DMP,已經內置了濾波算法,在許多應用中使用DMP輸出的數據已經能夠很好的滿足要求。

移植過程

移植需要官方代碼
dmpKey.h
dmpmao.h
inv_mpu.c
inv_mpu.h
inv_mpu_dmp_motion_driver.c
inv_mpu_dmp_motion_driver.h

以及
mpu6050.c
mpu6050.h
mpuiic.c
mpuiic.h

再自己寫一個中斷

void MPU6050_EXTI_Init(void) { GPIO_InitTypeDef GPIO_InitStructure;EXTI_InitTypeDef EXTI_InitStructure;NVIC_InitTypeDef NVIC_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; //INT-B5 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //上拉輸出GPIO_Init(GPIOB, &GPIO_InitStructure); GPIO_EXTILineConfig(GPIO_PortSourceGPIOB,GPIO_PinSource5);EXTI_InitStructure.EXTI_Line=EXTI_Line5;EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;EXTI_InitStructure.EXTI_LineCmd = ENABLE;EXTI_Init(&EXTI_InitStructure); //外部中斷5優先級配置也就是MPU6050 INT引腳配置///優先級設為最高NVIC_InitStructure.NVIC_IRQChannel = EXTI9_5_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x00; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x01; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); }

總結

以上是生活随笔為你收集整理的STM32两轮自平衡小车(学习记录)——MPU6050的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。