哈喽,大家好,今天给大家提供一套STM32读取JY60陀螺仪的控制程序。
一、手册简介
以下是JY60陀螺仪的性能参数,值得注意一点是他的波特率是9600,如果串口使用其他的波特率是读取不了的。
下面是引脚简介
加速度数据读取协议
角速度数据读取协议
角度数据读取协议
二、读取程序
这里我使用的是USART3串口,在接收中断中按照协议读取0x55以及后面的七位数据。并将第一个数据赋值给变量TYPE。
#include "stm32f10x.h" // Device header
#include "All_Define.h"
//JY60ÍÓÂÝÒÇ´®¿Ú PB10¡ªTXD PB11¡ªRXD ²¨ÌØÂÊ£º9600
uint8_t USART3_RxPacket[7];
//char USART3_RxPacket[100]; //@ \r\n
uint8_t USART3_RxFlag;
uint8_t TYPE;
float ACCX_Data,ACCY_Data,ACCZ_Data;
float GYROX_Data,GYROY_Data,GYROZ_Data;
int16_t Roll_Data,Pitch_Data,Yaw_Data;
void USART3_Init(uint32_t Baud_Rate)
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init