7.2 加速度计
Contents
29. 7.2 加速度计#
micro:bit主板上配备有一个加速度计,可以测量X,Y,Z轴的运动,横向左右移动为X轴,纵向前后移动为Y轴,高低上下移动为Z轴,可以很好的检测mincro:bit在空间中的位置以及移动方向。每一根轴都有一种方法,返回一个整数或者负数,当读数为0的时候,在该轴方向是水平的。
29.1. 加速计API#
API | 描述 |
---|---|
microbit.accelerometer.get_x() |
读取X轴读数,返回值为一个整数。 |
microbit.accelerometer.get_y() |
读取Y轴读数,返回值为一个整数。 |
microbit.accelerometer.get_z() |
读取Z轴读数,返回值为一个整数。 |
microbit.accelerometer.get_values() |
一次性读取XYZ三个轴的数据,保存为一个元组。 |
microbit.accelerometer.current_gesture() |
返回当前手势的名称。 |
microbit.accelerometer.is_gesture(val) |
返回True或者False指示当前手势名val 是否处于活动状态。 |
microbit.accelerometer.was_gesture(val) |
返回True或者False指示当前手势名val 自上次调用以来是否处于活动状态。 |
microbit.accelerometer.get_gesture() |
返回历史手势元组,元组第一位为最新手势,并且清除历史记录。 |
29.2. 示例:不想站起来#
根据如上API,编写一段小程序,当micro:bit主板平放时显示一个笑脸,当把主板拿起来显示一个难过脸。它只想躺着。
from microbit import *
while True:
gesture = accelerometer.current_gesture()
if gesture == "face up":
display.show(Image.HAPPY)
else:
display.show(Image.SAD)