摘要:手边这款IMU传感器,型号是LSM6DSR。¡¿¡¿下面制作一个电路板,来通过 I2C总线读取它的数据。¡¿¡¿并将数据传递到上位机进行处理。¡¿¡¿下面制作这块电路板,相应的电路设计和软件都放置在CSDN对应的博文中。
01 加速度传感器
手边这款IMU传感器,型号是 LSM6DSR。¡¿¡¿下面制作一个电路板,来通过 I2C总线读取它的数据。¡¿¡¿并将数据传递到上位机进行处理。¡¿¡¿下面制作这块电路板,相应的电路设计和软件都放置在CSDN对应的博文中。
设计电路板,主控芯片为STM32F103。¡¿¡¿增加 TypeC USB接口。¡¿¡¿外接I2C总线接口。¡¿¡¿与传感器模块相连。¡¿¡¿优化PCB,只剩下三个飞线。¡¿¡¿一分钟之后得到测试电路板。¡¿¡¿电路板制作的非常完美。¡¿¡¿下面焊接测试。
>>
焊接电路板,¡¿¡¿清洗之后准备调试。¡¿¡¿电路中存在三个跳线,分别使用 0 欧姆的电阻完成条线。¡¿¡¿ IMU传感器具有多种接口,使用跳线将其中的 CS 连接到高电平,将AD0 连接到低电平,¡¿¡¿这样形式 I2C 总线的连接形式。¡¿¡¿接下来进行软件编程,对LSM6DSR 传感器进行初始化,并读取相应的数据。
● 对LSM6DSR管脚设置: AD0:连接低电平 CS:连接高电平
利用 CubeMX 生成程序框架,¡¿¡¿利用弹簧夹子将 ST-LINK接入测试电路板,下载调试软件。¡¿¡¿感谢网络上好心的嵌入式电子爱好者的分享。他们在博文中,¡¿¡¿不仅介绍了这款IMU的原理,而且分享了基础的 I2C总线对它的初始化以及读取数据的程序。基于这些已有的源文件,经过简单的整理,便得到了对传感器访问的软件。¡¿¡¿经过下载之后,可以读取对应的加速度、 角速度以及温度数值。这大大节省了自己编写软件的过程。
最后,编写USB接口程序,通过USB端口,将定时采集到的数据发送到上位机。这样就便于将来进行大规模数据传输。
本文制作了基于USB读取 IMU传感器的电路模块。¡¿¡¿利用单片机完成加速度数据的读取,¡¿¡¿为之后轨迹判断提供采集到的数据。
[1]
BH1745测量USB模块:
[2]
ST六轴传感器LSM6DSO使用记录:
[3]
LSM6DSR Datasheet:
来源:TsinghuaZhuoqing