【STM32+HAL】GY25倾斜度角度模块

一、前言

有关MPU6050模块读取六轴传感器数值的详细内容,详见【STM32+HAL】姿态传感器陀螺仪MPU6050模块

二、所用工具

1、芯片:STM32F103C8T6

2、配置软件:CUBEMX

3、编译器:KEIL5

4、产品型号:GY-25

5、使用芯片:MPU6050

6、商品编码:MK002824

三、实现功能

直接读取并输出俯仰角,横滚角,航偏角数值

四、HAL库配置步骤

1、配置串口一、二,参数一致

2、中断配置

五、KEIL填写代码

1、初始化
#define RXBUFFERSIZE  256

uint8_t aRxBuffer;
int flag=0;
int16_t y=0,p=0,r=0;
double YAW=0,PITCH=0,ROLL=0;

uint8_t query1 = 0xA5;
uint8_t query2 = 0x51;
uint8_t query3 = 0x55;

	printf("Hello World!\r\n");
	HAL_Delay(500);

	HAL_UART_Transmit_IT(&huart2,&query1,1);
	HAL_UART_Transmit_IT(&huart2,&query3,1);
	HAL_UART_Receive_IT(&huart2, (uint8_t *)&aRxBuffer, 1);
2、串口回调函数
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
    UNUSED(huart);
	if(huart==&huart2){
		static uint8_t k=0,rebuf[8]={0};
		HAL_GPIO_TogglePin(LED_GPIO_Port,LED_Pin);

		rebuf[k++] = aRxBuffer;				//读取接收到的数据
		if(!(rebuf[0]==0xAA))				//如果帧头错误,清缓存
		{
			k=0;
			rebuf[0]=0;
		}
		if(k==8)							//数据接收完毕
		{
			if(rebuf[7]==0x55)				//判断帧尾,正确则解析姿态角
			{
				 y=(rebuf[1]<<8|rebuf[2]);	//y,p,r为真实值的100倍
				 p=(rebuf[3]<<8|rebuf[4]);
				 r=(rebuf[5]<<8|rebuf[6]);
				 flag=1;
			}
			k=0;//清缓存
		}
		
	HAL_UART_Receive_IT(&huart2, (uint8_t *)&aRxBuffer, 1);
	}
}

3、main.c
  /* USER CODE BEGIN WHILE */
  while (1)
  {
	  if(flag==0){
		HAL_UART_Transmit_IT(&huart2,&query1,1);
		HAL_UART_Transmit_IT(&huart2,&query2,1);
		HAL_Delay(10);
	  }
	  else if(flag==1){
		flag=0;
		printf("Yaw=%.2f  Pitch=%.2f  ROLL=%.2f\r\n",(double)y/100.0f,(double)p/100.0f,(double)r/100.0f);
//		HAL_Delay(200);
	  }
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */

六、注意事项

1、输出格式

2、命令字节

3、注意事项

七、源码提供

【STM32+HAL】GY25倾斜度角度模块源码

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-10 07:14:07       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-10 07:14:07       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-10 07:14:07       82 阅读
  4. Python语言-面向对象

    2024-03-10 07:14:07       91 阅读

热门阅读

  1. 【NERF】入门学习整理(一)

    2024-03-10 07:14:07       46 阅读
  2. 【趣味学算法】00_百鸡百钱

    2024-03-10 07:14:07       32 阅读
  3. CentOS 7升级openssh9.6p1

    2024-03-10 07:14:07       50 阅读
  4. 微信小程序常用标签

    2024-03-10 07:14:07       53 阅读
  5. Rust 读写csv文件

    2024-03-10 07:14:07       46 阅读
  6. 计算机网络-网络应用服务器(四)

    2024-03-10 07:14:07       49 阅读