机器¶
machine 模块包含与 micro:bit 硬件相关的特定功能。该模块中的大多数功能允许实现对系统硬件块(如 CPU、定时器、总线等)的直接和不受限制的访问和控制。使用不当,这可能会导致电路板故障、锁定、崩溃,在极端情况下还会导致硬件损坏。
职能¶
-
machine.
unique_id
()¶ 返回具有板的唯一标识符的字节字符串。它会因一个板实例而异。
-
machine.
reset
()¶ 以类似于按下外部 RESET 按钮的方式重置设备。
-
machine.
freq
()¶ 以赫兹为单位返回 CPU 频率。
-
machine.
disable_irq
()¶ 禁用中断请求。返回应被视为不透明值的先前 IRQ 状态。此返回值应传递给
machine.enable_irq()
函数以将中断恢复到machine.disable_irq()
调用之前的原始状态。
-
machine.
enable_irq
()¶ 重新启用中断请求。该状态参数应该是从最近一次调用的返回值
machine.disable_irq()
的功能。
-
machine.
time_pulse_us
(pin, pulse_level, timeout_us=1000000)¶ 在给定的pin上计时脉冲,并以微秒为单位返回脉冲的持续时间。所述pulse_level参数应该是0到时间低脉冲或1到时刻高脉冲。
如果引脚的当前输入值与pulse_level不同,函数首先 (*) 等待直到引脚输入变得等于 pulse_level,然后 (**) 乘以引脚等于pulse_level的持续时间 。如果引脚已经等于pulse_level,则计时立即开始。
如果在上面标记 (*) 的条件等待超时,则该函数将返回 -2,如果在主要测量期间超时,则返回 -1,标记为 (**)。两种情况的超时时间相同,由timeout_us给出 (以微秒为单位)。
阅读记忆¶
该 machine
模块允许您从设备的内存中读取,从物理地址获取 1 字节(8 位;mem8
)、2 字节(16 位;mem16
)或 4 字节(32 位;
mem32
)字。例如:mem8[0x00]
在物理地址上读取 1 个字节 0x00
。这有很多用途,例如,如果您想从 nRF51 寄存器读取数据。