一、 IAM-20680 SPI 模块介绍
1.IAM-20680 SPI 模块简介
SPI 是一个四线同步串行接口,具有两条控制线和两条数据串行线。IAM-20680 在标准主-从 SPI 操作期间始终作为从设备运行。
SPI 操作功能:
1)数据首先推出 MSB,LSB 最后推出;
2)数据被锁定在 SPC 的上升边沿上;
3)数据应在 SPC 的下降边沿上进行转换;
4)SPC 的最大频率为 8MHz;
5)SPI 读写操作在 16 个或更多时钟周期内完成(两个或多个字节)。第一个字节包含 SPI 地址,下面的字节包含 SPI 数据。第一个字节的第一位包含读/写位,并表示Read(1)或Write(0)操作。以下 7 位包含注册地址。对于多字节读写/写入,数据为两个或多个字节。
2. IAM-20680 SPI 模块时序图
3. IAM-20680 SPI 模块接口
4. IAM-20680 SPI 模块数据模式
二、寄存器介绍
1.“我是谁”寄存器(WHO_AM_I)
WHO_AM_I寄存器的地址是0xf5ff (十六进制),返回值为0xffa9,是为参考手册中的WHO_AM_I寄存器的设定值,这意味着电路通路搭载成功。
2.自检加速度计寄存器(SELF_TEST_X_ACCEL_XOUT)
此寄存器中的值表示在制造测试过程中产生的自检输出。该值将用于检查最终用户执行的后续自检输出。
将OTP中的自检代码转换为出厂自检测量的公式为:
其中,ST_OTP 是存储在设备 OTP 中的值,FS 是全比例值,ST_code 基于 InvenSense 工厂最终测试中确定的自检值(ST_FAC),并根据以下等式计算:
SELF_TEST_X_ACCEL_XOUT 寄存器地址为 0xfdff。
SELF_TEST_X_ACCEL 自检输出值 12 H
即 ST_FAC 的值为 12 H
3.X轴加速度计(X_ACCEL_XOUT)
ACCEL_XOUT_H寄存器(寄存器59)包含16位X轴加速计测量值 ACCEL_XOUT 中的 8 个最重要的位 ACCEL_XOUT[15:8]。
除以下寄存器以外的所有寄存器的重置值为 0x00,自检寄存器也包含预编程的值,重置后不会为 0x00 :
寄存器 107(0x40) 电源管理1 ;
寄存器 117(0xA9) WHO_AM_I 。
以 x 轴加速度计为例
以 _H 和 _L 结尾的寄存器名分别包含内部寄存器值的高字节和低字节。
x 轴加速度计高位与低位数值会随着传感器的运动而发生改变。
三、搭设硬件电路
1.连接 Ecohes ,LPCLINK2 Debugger,CP2102 USB to UART Bridge Controller,TDK-20680 等 demo 板,搭建完整电路。
2.在官网找到 CP2102 USB to UART Bridge Controller 的驱动安装程序,下载并安装。
3.在“计算机管理-操作-添加过时硬件-端口”设置串口。
四、通过串口输出数据
1.连接 RX TX ,打开串口通信工具,运行程序,连接串口。
2.通过串口接受数据,变动 IAM-20680 的位置与运动状态,发现接口可以测得实时数据。
五、参考文献
1.TDK InvenSense IAM-20680 :High Performance Automotive 6-Axis MotionTracking Device
评论