【陀螺仪JY61P&维特智能】通过单片机修改波特率和角度参考的方法

根据官方文档:

修改波特率

1.解锁:FF AA 69 88 B5

1.1延时200ms

2.修改波特率:FF AA 04 06 00

2.1切换已修改的波特率然后重新发送解锁和保存指令

2.2解锁:FF AA 69 88 B5

2.3延时200ms

4.保存: FF AA 00 00 00

XY轴角度参考

角度参考是以传感器当前的实际位置,让xy轴的角度归零,做一个相对归零操作。

指令操作流程

1.解锁:FF AA 69 88 B5

1.1延时200ms

2.校准:FF AA 01 08 00

2.1延时3秒(实测200ms也可)

3.保存: FF AA 00 00 00

Z轴置零

注:z轴归零需要在六轴算法的前提下,算法切换可以在上位机配置界面修改,九轴设备下的九轴算法是绝对角度,不能归零。指令操作流程:

1.解锁:FF AA 69 88 B5

1.1延时200ms

2.校准:FF AA 01 04 00

2.1延时3秒(实测200ms也可)

3.保存: FF AA 00 00 00

复制代码
uint8_t  JY61P_ULOCK_CMD[5] = {0xFF, 0xAA, 0x69, 0x88, 0xB5}; //解锁
uint8_t  JY61P_BAUD_CMD [5] = {0xFF, 0xAA, 0x04, 0x06, 0x00}; //波特率修改为115200
uint8_t  JY61P_SAVE_CMD [5] = {0xFF, 0xAA, 0x00, 0x00, 0x00}; //保存
uint8_t  JY61P_XY0_CMD  [5] = {0xFF, 0xAA, 0x01, 0x08, 0x00}; //XY角度归零
uint8_t  JY61P_Z0_CMD   [5] = {0xFF, 0xAA, 0x01, 0x04, 0x00}; //Z轴归零

/* 延时函数 */
void delay_ms(uint32_t ms)  
{  
    uint32_t i, j;  

    for (i = ms; i > 0; i--)  
    {  

        for (j = 800; j > 0; j--); // 这个值可能需要调整  
    }  
}  
/* IMU波特率修改函数 */
void JY61P_BAUD(void)
{
    usart1_send_buff(JY61P_ULOCK_CMD, sizeof(JY61P_ULOCK_CMD));  //解锁
    delay_ms(200);//延时200ms
    usart1_send_buff(JY61P_BAUD_CMD, sizeof(JY61P_BAUD_CMD));    //修改波特率为115200
    delay_ms(200);
    usart1_send_buff(JY61P_SAVE_CMD, sizeof(JY61P_SAVE_CMD));    //保存
    delay_ms(200);
}
/* IMU归零函数 */
void JY61P_START(void)
{
    usart1_send_buff(JY61P_ULOCK_CMD, sizeof(JY61P_ULOCK_CMD));  //解锁
    delay_ms(200);//延时200ms
    usart1_send_buff(JY61P_XY0_CMD, sizeof(JY61P_XY0_CMD));    //XY轴归零
    delay_ms(200);
    usart1_send_buff(JY61P_Z0_CMD, sizeof(JY61P_Z0_CMD));      //Z轴归零
    delay_ms(200);
    usart1_send_buff(JY61P_SAVE_CMD, sizeof(JY61P_SAVE_CMD));    //保存
    delay_ms(200);
}

实现效果:单片机上电初始化后XYZ数值为0

相关推荐
The Mr.Nobody1 小时前
STM32MPU开发之旅:从零开始构建嵌入式Linux镜像
linux·stm32·嵌入式硬件
阿川!1 小时前
嵌入式软件--stm32 DAY 3
stm32·单片机·嵌入式硬件
#金毛2 小时前
STM32的定时器输出PWM时,死区时间(DTR)如何计算
stm32·单片机·嵌入式硬件
无脑学c++3 小时前
STM32串口重定向:MDK与GCC重定向需重写的不同函数
stm32·单片机·物联网
Invinciblenuonuo3 小时前
STM32八股【6】-----CortexM3的双堆栈(MSP、PSP)设计
stm32·单片机·嵌入式硬件
2401_888859714 小时前
STM32 TIM编码器接口
stm32·单片机·嵌入式硬件
【0931】4 小时前
51单片机中断
单片机·嵌入式硬件
学习噢学个屁5 小时前
基于51单片机的超声波液位测量与控制系统
c语言·单片机·嵌入式硬件·51单片机
电鱼智能的电小鱼6 小时前
EFISH-SBC-RK3588无人机地面基准站项目
linux·网络·嵌入式硬件·机器人·无人机·边缘计算
电鱼智能的电小鱼6 小时前
基于 EFISH-SBC-RK3588 的无人机环境感知与数据采集方案
linux·网络·嵌入式硬件·数码相机·无人机·边缘计算