【陀螺仪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

相关推荐
xuxie995 小时前
start9 霍尔双相编码器
单片机
兆龙电子单片机设计6 小时前
【STM32项目开源】STM32单片机语音分类垃圾桶-蓝牙APP
stm32·单片机·嵌入式硬件·物联网·开源·自动化·毕业设计
零涂毕业设计6 小时前
毕业设计模块开发-OLED显示屏(IIC协议0.96寸)STM32 ESP32 FPGA Linux驱动免费分享
linux·stm32·单片机·嵌入式·esp32·fpga·oled
阿龙的工作记录8 小时前
深入理解Linux设备驱动模型
linux·嵌入式硬件·工作记录
ye150127774558 小时前
220V转5V1A隔离芯片WT5602
单片机·嵌入式硬件·其他·硬件工程
武汉万象奥科8 小时前
AGV导航控制器方案 | 基于HD-RK3576系列核心板的算控融合一体化平台
arm开发·嵌入式硬件·arm核心板·单板机
ye150127774559 小时前
DC24V-100V转3.3V500mA隔离芯片WT5602
单片机·嵌入式硬件·其他·硬件工程
Lumos6fly9 小时前
51单片机从零到实战(15)——数字时钟温度计
单片机·嵌入式硬件·51单片机
gwf21610 小时前
磨损均衡算法(Wear Leveling)——SSD如何让每块闪存“公平退休“?
运维·数据库·人工智能·python·嵌入式硬件·算法·智能硬件
zlinear数据采集卡11 小时前
从“脏信号”到“纳伏级纯净”:硬核拆解DABL7606的多级抗混叠滤波与24位过采样算法
arm开发·科技·嵌入式硬件·fpga开发·开源