陀螺仪介绍及编程(4)

2020-06-07 14:31

** 输 入 : 无 ** 输 出 : 无 ** 返 回 : 无

void WWDG_IRQHandler(void) {

/* Update WWDG counter */ WWDG_SetCounter(0x50);

/* Clear EWI flag */ WWDG_ClearFlag(); }

//************************************************ void USART1_SendData(uchar SendData) {

USART_SendData(USART1, SendData); Delayms(1); }

//初始化MPU6050,根据需要请参考pdf进行修改************************ void Init_MPU6050(void) {

Single_Write(MPU6050_Addr,PWR_MGMT_1, 0x00); //解除休眠状态 Single_Write(MPU6050_Addr,SMPLRT_DIV, 0x07); Single_Write(MPU6050_Addr,CONFIG, 0x06);

Single_Write(MPU6050_Addr,GYRO_CONFIG, 0x18); Single_Write(MPU6050_Addr,ACCEL_CONFIG, 0x01); }

//******读取MPU6050数据**************************************** void READ_MPU6050(void) {

BUF[0]=Single_Read(MPU6050_Addr,GYRO_XOUT_L); BUF[1]=Single_Read(MPU6050_Addr,GYRO_XOUT_H); T_X= (BUF[1]<<8)|BUF[0]; T_X/=16.4; //读取计算X轴数据

BUF[2]=Single_Read(MPU6050_Addr,GYRO_YOUT_L); BUF[3]=Single_Read(MPU6050_Addr,GYRO_YOUT_H); T_Y= (BUF[3]<<8)|BUF[2]; T_Y/=16.4; //读取计算Y轴数据 BUF[4]=Single_Read(MPU6050_Addr,GYRO_ZOUT_L); BUF[5]=Single_Read(MPU6050_Addr,GYRO_ZOUT_H); T_Z= (BUF[5]<<8)|BUF[4]; T_Z/=16.4; //读取计算Z轴数据

// BUF[6]=Single_Read(MPU6050_Addr,TEMP_OUT_L); // BUF[7]=Single_Read(MPU6050_Addr,TEMP_OUT_H); // T_T=(BUF[7]<<8)|BUF[6];

// T_T = 35+ ((double) (T_T + 13200)) / 280;// 读取计算出温度 }

//********串口发送数据*************************************** void Send_data(uchar axis) {uchar i;

USART1_SendData(axis); USART1_SendData(':');

for(i=0;i<4;i++)USART1_SendData(TX_DATA[i]); USART1_SendData(' '); USART1_SendData(' '); } /*

********************************************************************************

** 函数名称 : main(void) ** 函数功能 : 主函数 ** 输 入 : 无 ** 输 出 : 无 ** 返 回 : 无

********************************************************************************

*/

int main(void) {

RCC_Configuration(); //配置RCC GPIO_Configuration(); //配置GPIO USART1_Configuration(); //配置串口1 I2C_GPIO_Config(); //配置IIC使用端口 Delayms(10); //延时 Init_MPU6050(); //初始化MPU6050 while(1) {

READ_MPU6050(); //读取MPU6050数据 DATA_printf(TX_DATA,T_X);//转换X轴数据到数组 Send_data('X'); //发送X轴数

DATA_printf(TX_DATA,T_Y);//转换Y轴数据到数组 Send_data('Y'); //发送Y轴数

DATA_printf(TX_DATA,T_Z);//转换Z轴数据到数组 Send_data('Z'); //发送Z轴数

// DATA_printf(TX_DATA,T_T);//转换温度数据到数组 // Send_data('T'); //发送温度数据 USART1_SendData(0X0D); //换行 USART1_SendData(0X0A); //回车 Delayms(5); //延时 } }

/*************结


陀螺仪介绍及编程(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《药用植物学与生药学》实验指导书绍兴文理学院元培学院

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: