• 发文
  • 评论
  • 微博
  • 空间
  • 微信

【技术分享】BNO085-SH2协议通讯数据解析

润欣科技 2019-12-10 16:34 发文

前言

在VR/AR中的“眼观六路耳听八方”这个文章中我们有介绍到九轴传感器融合算法的芯片BNO085,这里特意针对此芯片的SH2协议通讯数据进行解析,客户主控MCU与BNO085的SPI,UART,IIC 中的任何一个接口驱动成功后,直接读写BNO085的相关传感器数据:

1:1000-3625 SH-2 Reference Manual v1.2 文档命令举例说明(一般游戏ARVR 客户读取0X29四元素数据后自己转换成欧拉角等):数据手册33页也有说明(2.2.5到2.2.7章节)。

6.5.18 Rotation Vector (0x05) 这个是没有防抖算法的传感器输出的九轴四元数数据。

6.5.19 Game Rotation Vector (0x08) 这个是没有防抖算法的传感器输出的六轴四元数数据。

6.5.42 ARVR-Stabilized Rotation Vector (0x28)当设备运动时,累积误差被纠正,这限制了数据不连续或跳跃的出现。这个是有防抖算法的稳定的传感器数据输出的九轴四元数数据。

6.5.43 ARVR-Stabilized Game Rotation Vector (0x29)这个当设备运动时,累积误差被纠正,这限制了数据不连续或跳跃的出现是六轴数据输出。这个是有防抖算法的稳定的传感器数据输出的六轴四元数数据。

2:客户驱动完成后,MCU获取BNO085的6.5.18 Rotation Vector (0x05) 的数据,先复位或者上电使能传感器,读写传感器数据,参考数据手册参考第5 . 2 . 2节写/读BNO08X数据表

直接写如下字符串21个字节:

0x15 0x00 0x02 0x01 0xFD 0x05 0x00 0x00 0x00 0x10 0x27 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

So if you would just like to get 200Hz(5000uS) AV/VR Stabilized Game Rotation Vector from BNO085, then you can just send the following commands from MCU to BNO085:

0x15 0x00 0x02 0x01 0xFD 0x29 0x00 0x00 0x00 0x88 0x13 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

解释:(这个命令是设置ROTATION VECTOR 加头四个字节SHTP Header的数据格式)

0x15 0x00 0x02 0x01 (shtp header 四个字节)SHTP LSB=0X15表示数据长度21字节,SHTP MSB=0X00,SHTP Channel=0X02,SHTP Sequence number=0x01

SHTP Channel 参考数据手册23页说明

0xFD 第五个字节表示 Report ID=0xFD

参考数据手册25页解释,SH2文档36页6.2 Summary

0x05 0x00  说明:0x05代表旋转矢量6.5.18 Rotation Vector (0x05);

0x29 0x00  说明:0x29 代表6.5.43 ARVR-Stabilized Game Rotation Vector (0x29)

参考1000-3625 SH-2 Reference Manual v1.2 文档命令6.5.18.2 Input Report

0x00 0x00 0x10 0x27  0x 2710代表10,000us单位( 100赫兹)。0x00002710

0x00 0x00 0x88 0x13  0x 1388代表20,000us单位( 200赫兹)。0x00001388

参考数据手册The report ID for the accelerometer is 0x1 and a period of 60ms (or 60,000 μs) equates to a report interval of 0x0000EA60.

0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

这里是10个字节

参考数据手册参考第5 . 2 . 2节写/读BNO08X数据表


查找1000-3625 SH-2 Reference Manual v1.2 文档命令数据格式


查找数据手册如下说明:


A report including SHTP header will have the format as seen in:


查找SH2文档截图如下:



文章来源:润欣科技Fortune微信公众号

声明:本文为OFweek维科号作者发布,不代表OFweek维科号立场。如有侵权或其他问题,请及时联系我们举报。
2
评论

评论

    相关阅读

    暂无数据

    润欣科技

    润欣科技是一家半导体芯片和解决方...

    举报文章问题

    ×
    • 营销广告
    • 重复、旧闻
    • 格式问题
    • 低俗
    • 标题夸张
    • 与事实不符
    • 疑似抄袭
    • 我有话要说
    确定 取消

    举报评论问题

    ×
    • 淫秽色情
    • 营销广告
    • 恶意攻击谩骂
    • 我要吐槽
    确定 取消

    用户登录×

    请输入用户名/手机/邮箱

    请输入密码