用FreerRTOS控制MPU6050

本文介绍了使用FreeRTOS控制MPU6050陀螺仪时遇到的问题及解决方案,包括MPU6050信号线和数据线的连接、GPIO配置、任务断言的保护作用,以及C文件中函数声明和定义的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个任务可用队列来写

1

2

队列操作函数,主要是前面两个函数。

 3

3

 

下文主要内容为:我在完成任务:使用FReeeTOS控制陀螺仪时,遇到一些问题,以及解决方案。

NO.1  mpu6050的信号线和数据线在mpuiic.h文件中可以看到接哪个IO口。(mini板)。

NO.2 在仿写代码时,顺便学习了一下寄存器

RCC->APB1ENR |=1<<4; //先使能外设IO PORTOC时钟
	GPIOC->CRH&=0XFFF00FFF;	//PC11/12 推挽输出
	GPIOC->CRH|=0X00033000;	   
	GPIOC->ODR|=3<<11;     	//PC11,12 输出高

其中,PORTOC时钟解释:

 AVR单片机的IO是3态门。DDRC是C口的方向寄存器,PORTC是C口的数据寄存器,
DDRC为0时,C口为输入,IO的高低从PORTC可以读出
DDRC为1时,c为输出,输出高低有PORTC控制。      (看看就可以了)

GPIOC->CRH&=0XFFF00FFF;//清掉这2个位原来的设置,同时也不影响其他位的设置

GPIOC->CRH|=0X00033000; //PC11输入,PC12输出
 

NO.3  任务断言(保护作用):当你程序卡死,你可以debug.看看从哪里跳转到这。

NO.4       在c文件中添加函数(Definitions )一定要在h文件中声明 declaration

 就是因为在gpio.c文件中定义,但未声明。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值