Direction(方向)
microbit上有一个指南针。如果你曾经做过一个气象站,那么可以用它来计算风的方向。
Compass
指南针可使用内置模块compass。使用之前应该先校准,否则可能会读取错误数据。
注意:指南针校准会导致程序暂停运行,直到校准完毕。校准时,背部LED矩阵会显示小图片。
功能
microbit.compass.calibrate()
开始校准指南针,用户需要根据背部LED矩阵的图像显示,将图像旋转一圈。
microbit.compass.is_calibrated()
如果校准完毕返回True,否则返回False
microbit.compass.clear_calibration()
撤销校准,使指南针处于未校准状态。
microbit.compass.get_x()
读取X轴上的值,根据方向的调整,可能会得到正或负整数。
microbit.compass.get_y()
读取Y轴上的值,根据方向的调整,可能会得到正或负的整数。
microbit.compass.get_z()
读取Z轴上的值,根据方向的调整,可能会得到正或负的整数。
microbit.compass.heading()
给出指南针方向,从上面的读数,计算一个整数的范围从0到360,代表的角度,顺时针,北至0。如果指南针没有校准,那么这将调用校准。
microbit.compass.get_field_strength()
返回周围磁场大小的整数值。
它也可以告诉你北方向在哪个方向:
from microbit import *
compass.calibrate()
while True:
needle = ((15 - compass.heading()) // 30) % 12
display.show(Image.ALL_CLOCKS[needle])
注意:
** 在阅读前必须校准指南针。否则可能会读取错误数据。该**calibration()
方法是一个有趣的小游戏,可以帮助设备在与地球磁场相关的地方运行程序。
首先你需要校准,请将microbit倾斜,直到在显示屏的外边缘上有一圈红点。
该程序采用compass.heading()
和使用一些数字通过一些算法(取整//和取模 %)计算出在屏幕上显示的时钟指针的数量,这样它就可以大概地指出北方。