挑战
为了简单起见,我们将在板保持水平的情况下仅测量X轴上的加速度。这样,我们就不必处理减去我们之前
观察到的虚拟的1g
,这将是困难的,因为1g
可能有X,Y,Z分量,这取决于电路板的方向。
冲压式流量计必须做到以下几点:
- 默认情况下,应用程序不会"观察"电路板的加速度。
- 当检测到显著的X加速度(即加速度超过某个阈值)时,应用程序应开始新的测量。
- 在测量间隔期间,应用程序应跟踪观察到的最大加速度。
- 测量间隔结束后,应用程序必须报告观察到的最大加速度。您可以使用
rprintln!
宏报告该值。
试一试,让我知道你打得有多用力 ;-)
.
注意:有两个额外的API应该对我们尚未讨论的任务有用。 首先是
set_accel_scale
,您需要测量高g值。 其次是embedded_hal
的Countdown
trait。如果您决定使用它来保持测量间隔,则必须在nb::Result
类型上进行模式匹配,而不是使用我们在前几章中看到的block!
宏。