arduino - ADXL345 传感器的抽头检测数据转换
问题描述
我正在使用数据表以及其他我能够理解 TAP 阈值设置的库来连接ADXL345传感器。
我需要在示例代码中确认:
// Set values for what is considered a TAP and what is a DOUBLE TAP (0-
255)
adxl.setTapThreshold(50); // 62.5 mg per increment
adxl.setTapDuration(15); // 625 μs per increment
adxl.setDoubleTapLatency(80); // 1.25 ms per increment
adxl.setDoubleTapWindow(200); // 1.25 ms per increment
其中根据数据表中提到的比例因子提到的用户设置值,我在这里面临疑问,需要清除它
Tap解决方案提到的值是十进制还是十六进制值?
需要知道用于创建设置阈值的转换公式。
作为 ADXL345 传感器,我使用的最大分辨率为 13 位,因此我想将值设置为 13 位
任何有关此的建议对我在 ADXL345 传感器与 Arduino 接口上的工作都非常有帮助
解决方案
这些值是十进制值 - 您可以在评论中看到它们与实际物理值的关系:
adxl.setTapThreshold(50); // 62.5 mg per increment -> 62.5mg * 50 = 3.125g
adxl.setTapDuration(15); // 625 μs per increment -> 625us * 15 = 9.375ms
adxl.setDoubleTapLatency(80); // 1.25 ms per increment -> 1.25ms * 80 = 100ms
adxl.setDoubleTapWindow(200); // 1.25 ms per increment -> 1.25ms * 200 = 250ms
因此,要计算出阈值 Xg 所需的值,请使用公式
v = X / 62.5mg = X / 0.0625
例如,对于 5g 的阈值:
adxl.setTapThreshold(80); // Because 5 / 0.0625 = 80
推荐阅读
- python - 我有朋友发送的 ionic v3 项目,但我无法在我的系统中运行。我试过删除节点模块并重新安装它但没有用
- python - Python [WinError 3] 系统找不到指定的路径:
- amazon-web-services - 使用 Lambda 函数进行 Cognito 属性映射
- python - 地址已在使用中,但在 Python Shell 上正常运行
- html - 提交表单后,Gmail 网站无法打开
- javascript - 隐藏具有相同类名的两个或多个列表中的项目
- html - 如何使用 ejs 传递的值设置 href?
- telegram-bot - 开发电报机器人时如何组织缓存?
- python - Keras 中的错误 - 'int' 对象没有属性 'shape'
- node.js - Nextjs - 在 pages/_document 之外导入下一个/文档错误