今天收到了捷研芯MA10评估板,这是个AHRS模块,集成了9轴传感器和MCU,可以直接串口输出姿态解算结果。
值得一提的是,MA10模块并不是用MPU9250芯片内部的DMA输出姿态,而是使用了基于卡尔曼滤波的姿态融合算法,直接输出姿态角,并且最高200Hz。
模块封装非常友好,使用2.54mm间距的邮票孔,手工焊接毫无压力。
![模块照片.JPG](//cf04.ickimg.com/bbsimages/201706/81dd44b2d30b316be6dcf5d5fe5912b3.jpg)
因为模块直接把姿态数据解算后通过串口发送了,所以我们就用串口助手来看吧。先连接电脑,原理图如下。
![串口连接方法.JPG](//cf04.ickimg.com/bbsimages/201706/1151f6f2d4cb8dee964fd383bc74b288.jpg)
我使用了一个超级廉价的CP2102模块来实现USB转串口。这儿要注意tx和rx要交叉。
![串口调试.JPG](//cf04.ickimg.com/bbsimages/201706/cd4b25cb86fecffe6fbcdb4f9f054ced.jpg)
硬件连接上以后,模块就亮了,并开始发数据了。
但是数据有些问题,值不会变,那是因为模块还没有真正起动。查看一下串口通信协议,如下图
![通讯协议1.JPG](//cf04.ickimg.com/bbsimages/201706/4f3f789ecc1b0d2331d4e14ed889c4b8.jpg)
有一个设置运行状态的命令RUN,1代表运行,0是停止。上电初始值是停止,要给个1才能开始。
发送开始运行命令后,模块正常输出,如下图所示。
![串口测试1.JPG](//cf04.ickimg.com/bbsimages/201706/2a75510c19f4485e3463b475e5ce8940.jpg)
看上去是乱码,没问题的,其实是32位float型数据。
数据解析可以参考这个表。
![通讯协议2.JPG](//cf04.ickimg.com/bbsimages/201706/d9bc7991cb3fc7f796f33e2db3c3dc86.jpg)
至此,开箱测试结束。下一步是写串口解析程序。
今天收到了捷研芯MA10评估板,这是个AHRS模块,集成了9轴传感器和MCU,可以直接串口输出姿态解算结果。
值得一提的是,MA10模块并不是用MPU9250芯片内部的DMA输出姿态,而是使用了基于卡尔曼滤波的姿态融合算法,直接输出姿态角,并且最高200Hz。
模块封装非常友好,使用2.54mm间距的邮票孔,手工焊接毫无压力。
![模块照片.JPG](//cf04.ickimg.com/bbsimages/201706/81dd44b2d30b316be6dcf5d5fe5912b3.jpg)
因为模块直接把姿态数据解算后通过串口发送了,所以我们就用串口助手来看吧。先连接电脑,原理图如下。
![串口连接方法.JPG](//cf04.ickimg.com/bbsimages/201706/1151f6f2d4cb8dee964fd383bc74b288.jpg)
我使用了一个超级廉价的CP2102模块来实现USB转串口。这儿要注意tx和rx要交叉。
![串口调试.JPG](//cf04.ickimg.com/bbsimages/201706/cd4b25cb86fecffe6fbcdb4f9f054ced.jpg)
硬件连接上以后,模块就亮了,并开始发数据了。
但是数据有些问题,值不会变,那是因为模块还没有真正起动。查看一下串口通信协议,如下图
![通讯协议1.JPG](//cf04.ickimg.com/bbsimages/201706/4f3f789ecc1b0d2331d4e14ed889c4b8.jpg)
有一个设置运行状态的命令RUN,1代表运行,0是停止。上电初始值是停止,要给个1才能开始。
发送开始运行命令后,模块正常输出,如下图所示。
![串口测试1.JPG](//cf04.ickimg.com/bbsimages/201706/2a75510c19f4485e3463b475e5ce8940.jpg)
看上去是乱码,没问题的,其实是32位float型数据。
数据解析可以参考这个表。
![通讯协议2.JPG](//cf04.ickimg.com/bbsimages/201706/d9bc7991cb3fc7f796f33e2db3c3dc86.jpg)
至此,开箱测试结束。下一步是写串口解析程序。