MPU6050从战舰开发板移植到miniV3板的步骤

更新时间:2024-01-01 22:22:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Step1 :将原启动文件替换为 startup_stm32f10x_hd.s

Step2:尝试编译,报错,发现 #include \这两句的“”紧跟在#include后边,分别加上空格,搞定

Step3:再次编译依然报错,路径中有乱码,于是进入文件夹,发现有一文件夹名为“上位机”,将其改为computer,然后在manage project items和tagart中都修改文件路径。

Step4:再次编译,有一个

warning,..\\HARDWARE\\MPU6050\\inv_mpu_dmp_motion_driver.c(1344): warning: #223-D: function \。暂时无视

Step5:修改devcie,将器件修改为STM32F103RC,晶振频率改为8MHz Step6:硬件连接, #define SCL PEout(8) ………..

#define SDA PEout(9),

可以看出楼主的6050的SCL和SDA分别接在了PE8和PE9上,而我准备接在PC12和PC11上,与原子哥的I2C实验例程相同,故改为 #define SCL PCout(12) ………..

#define SDA PCout(11),其他地方做同样修改

Step7:检查6050的地址,为0x68,与我的6050模块一样,不用改

Step8:检查USART的输出引脚,为PA9、PA10,和miniv3板子一样,不用改 Step9:编译,使用软件仿真ok,使用jlink仿真,有问题,不能擦写flash。发现问题原因是Jlink设置flash download那里没有选择flash device。选择512k,jlink仿真ok~

Step10:烧写程序,mini开发板显示TFT test 95,开发板无其他反应

Step11:突然想起来第六步改过之后没有使能portc时钟,没有设置IO状态,找到void i2cInit(void) {

RCC->APB2ENR|=1<<4; //使能PORTE口时钟 GPIOE->CRH&=0XFFFFFF00;

GPIOE->CRH|=0X00000055;//IO状态设置

改为: RCC->APB2ENR|=1<<4; //使能PORTC口时钟

GPIOC->CRH&=0XFFF00FFF;

GPIOC->CRH|=0X00033000;//IO状态设置

GPIOC->ODR=3<<11; //PC11/12输出高 和原子哥的I2C实验相同。

改完之后,这下牛逼了。。。LCD整个不亮了啊,但是串口那边接收到了 pu initialization complete...... mpu_set_sensor complete ...... mpu_configure_fifo complete ...... mpu_set_sample_rate complete ......

dmp_load_motion_driver_firmware complete ...... dmp_set_ori

说明6050初始化成功了,有一点成果了!,全速运行。Oye,有串口输出!!!有数据!!

本文来源:https://www.bwwdw.com/article/kvdx.html

Top