ST意法半导体
直播中

贺楠

7年用户 903经验值
私信 关注
[问答]

如何在LSM6DSM与LSM303加速度计上设置一个特定的阈值并让它生成一个IRQ呢

我想在加速度计上设置一个特定的阈值并让它生成一个 IRQ。  
这LSM6DSM 与 LSM303 两个加速度计都允许我这样做吗?
对于这个应用程序,一个比另一个好吗?如果是,为什么?

回帖(1)

周必镜

2022-12-26 16:14:45
可以在上述两个设备上设置阈值。
对于 LSM303AGR 设备,您可以通过配置 INT1_CFG_A (30h) 和 INT1_SRC_A (31h) 并在 INT1_THS_A (32h) 寄存器中设置所需的阈值来简单地启用阈值交叉的轴和方向(参见数据表从第 53 页)。
对于 LSM6DSM,它有点复杂,因为可配置的阈值取决于您要实现的特定应用:您有一个用于唤醒的阈值(WAKE_UP_THS (5Bh) 寄存器),一个用于方向/点击(TAP_THS_6D ( 59h) 寄存器),一个用于自由落体应用,一个用于倾斜检测等。请参阅第96 页的数据表。
您还可以参考 Github 上的 C 驱动程序示例以了解 --> lsm6dsm_activity.c的配置。
所以,回到你的第一个问题,如果你只是对检测阈值的交叉感兴趣,LSM303AGR 可能更合适,否则如果你已经知道具体的应用,你应该面向 LSM6DSM 设备。

举报

更多回帖

发帖
×
20
完善资料,
赚取积分