openmv4系列5----板级功能
pyb 模块包含与插件相关的特定函数。
一、时间相关函数
-
pyb.delay(ms)
延迟给定的毫秒数。 -
pyb.udelay(us)
延迟给定的微秒数。 -
pyb.millis()
插件重置后,返回毫秒数。
结果通常是一个Micropython小整数(31位有号数),因此在2^30毫秒(约12.4天)后,这一数值将开始返回负数。
注意:若 pyb.stop() 发布,支持该功能的硬件计数器将在休眠状态期间暂停。这将影响 pyb.elapsed_millis()的结果。
- pyb.micros()
插件重置后,返回微秒数。
结果通常是一个Micropython小整数(31位有号数),因此在2^30微秒(约17.8分钟)后,这一数值将开始返回负数。
注意:若 pyb.stop() 发布,支持该功能的硬件计数器将在休眠状态期间暂停。这将影响 pyb.elapsed_micros()的结果。
- pyb.elapsed_millis(start)
返回 start 后消耗的毫秒数。
这个函数负责计数器换行,且总是返回一个正数。也就是说,该函数可用来测量长约12.4天的周期。
例:
start = pyb.millis()
while pyb.elapsed_millis(start) < 1000:
# Perform some operation 执行一些操作
- pyb.elapsed_micros(start)
#返回 start 后消耗的微秒数。
这个函数负责计数器换行,且总是返回一个正数。也就是说,该函数可用来测量长约17.8分钟的周期。
例:
start = pyb.micros()
while pyb.elapsed_micros(start) < 1000:
# Perform some operation 执行一些操作
pass 通过
二、复位相关函数
-
pyb.hard_reset()
以类似于按下外部RESET按钮的方式重置pyboard或OpenMV Cam。 -
pyb.bootloader()
在不使用BOOT引脚的情况下激活引导加载程序。 -
pyb.fault_debug(value)
启用或禁用硬故障调试。硬故障即发生在底层系统中的严重错误,例如内存访问失效。
若value参数为 False ,则板子会在出现硬故障时自动重设。
若value参数为 True ,板子出现硬故障时,则将打印寄存器和堆栈追踪,并无限循环LED。
三、中断相关的函数
- pyb.wfi()
等待内部或外部中断。
此处执行 wfi指令,在任何中断(无论是内部或外部)出现前,该指令将减低MCU的能耗。此时将继续执行该指令。注意:系统节拍每毫秒(1000Hz)中断一次,因此该功能的停滞最长可达1毫秒。
- pyb.stop()
将Pyboard或OpenMV Cam设置在睡眠状态。
该设置将能耗降低到500uA以下。退出睡眠状态需外部中断或实时闹钟。退出睡眠状态后,系统将继续完成因睡眠而中止的任务。
- pyb.standby()
将OpenMV Cam设置在深度睡眠状态。
该设置将能耗降低到50uA以下。退出这种睡眠状态需要一个实时时钟事件。退出睡眠状态后,系统进行硬复位。
三、其他功能函数
-
pyb.info([dump_alloc_table])
打印插件信息。 -
pyb.main(filename)
设置boot.py完成后要运行的主脚本的文件名。 如果未调用此函数,则将执行默认文件main.py。只在boot.py中调用此函数才有意义。 -
pyb.rng()
返回一个硬件产生的30位随机数值。 -
pyb.sync()
同步所有文件系统。 -
pyb.unique_id()
返回一个12字节的字符串(96位),即MCU的唯一ID。