附:pyb模块内置类
附: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
()
在不使用BOO T*引脚的情况下激活引导加载程序。
pyb.
fault_debug
(value)启用或禁用硬故障调试。硬故障即发生在底层系统中的严重错误,例如内存访问失效。
若value参数为
False
,则板子会在出现硬故障时自动重设。若value参数为
True
,板子出现硬故障时,则将打印寄存器和堆栈追踪,并无限循环LED。禁用默认值,即自动重设。
中断相关的函数
pyb.
disable_irq
()禁用中断请求。返回先前的IRQ状态:
False
/True
(分别为禁用/启用IRQs)。这个返回值可被传递,以启用IRQ,使IRQ返回初始状态。pyb.
enable_irq
(state=True)启用中断请求。 若
state
为True``(默认值),则启用IRQ。该函数的最广泛应用为传递由 ``disable_irq
返回的值,以退出临界区。
电源相关函数
pyb.
wfi
()等待内部或外部中断。
此处执行
wfi
指令,在任何中断(无论是内部或外部)出现前,该指令将减低MCU的能耗。此时将继续执行该指令。注意:系统节拍每毫秒(1000Hz)中断一次,因此该功能的停滞最长可达1毫秒。pyb.
stop
()将Pyboard或OpenMV Cam设置在睡眠状态。
该设置将能耗降低到500uA以下。退出睡眠状态需外部中断或实时闹钟。退出睡眠状态后,系统将继续完成因睡眠而中止的任务。
rtc.wakeup()
配置一个实时时钟唤醒事件。pyb.
standby
()将OpenMV Cam设置在深度睡眠状态。
该设置将能耗降低到50uA以下。To wake from this sleep state requires a real-time-clock event.退出睡眠状态后,系统进行硬复位。
见
rtc.wakeup()
配置一个实时时钟唤醒事件。
其他功能
pyb.
have_cdc
()如果USB作为串行设备连接,则返回True,否则返回False。
注解
此功能已弃用。使用pyb.USB_VCP().isconnected()来代替。
pyb.
hid
((buttons, x, y, z))采用4元组(或列表)并将其发送到USB主机(PC)以发出HID鼠标移动事件的信号。
注解
此功能已弃用。使用
pyb.USB_HID.send()
来代替。pyb.
info
([dump_alloc_table])打印插件信息。
pyb.
main
(filename)设置boot.py完成后要运行的主脚本的文件名。 如果未调用此函数,则将执行默认文件main.py。
只在boot.py中调用此函数才有意义。
pyb.
mount
(device, mountpoint, *, readonly=False, mkfs=False)注解
这个函数是不推荐的。安装和卸载设备应由
uos.mount()
和 :meth:`uos.umount`来执行。挂载一个块设备并使其作为文件系统的一部分运行。
device
须为一个提供块协议的对象: (以下内容也不推荐。见uos.AbstractBlockDev
获取创建块设备的正确方法。)readblocks
和writeblocks
应从设备上的块数量blocknum
开始, 在buf
和块设备之间复制数据。buf
为一个长度为512的字节数组。 若writeblocks
未定义,则设备为只读的。这两个函数的返回值被忽略。count
应返回设备上可用的块数。Sync
若运行,应同步设备上的数据。参数
mountpoint
是在文件系统的根目录下安装设备的位置。该参数应以斜杠开始。若
readonly
为True
,则设备为只读,否则为可读写。若
mkfs
为True
,且尚不存在文件系统,则会创建一个新文件系统。卸载设备,只需将设备设置为
None
,并将挂载位置设置为mountpoint
。
readblocks(self, blocknum, buf)
writeblocks(self, blocknum, buf)
(任选)count(self)
sync(self)
(任选)pyb.
repl_uart
(uart)在REPL重复之处,获取或设置UART对象。
pyb.
rng
()返回一个硬件产生的30位随机数值。
pyb.
sync
()同步所有文件系统。
pyb.
unique_id
()返回一个12字节的字符串(96位),即MCU的唯一ID。
pyb.
usb_mode
([modestr, ]vid=0xf055, pid=0x9801, hid=pyb.hid_mouse)若无参数调用,则作为字符串返回当前USB。
若使用给定
modestr
调用,则尝试设置USB模式。仅在调用pyb.main()前从boot.py
中调用才可实现。以下的modestr
值被理解:为实现向后兼容,
'CDC'
理解为'VCP'
(对于'CDC+MSC'
和'CDC+HID'
也是类似的).vid
和pid
参数允许您指定VID(供应商id)和PID(产品id)。若启用HID模式,您可能也需要通过传递
hid
关键参数来指定HID的具体细节。 其需要一个(子类、协议、最大数据包长度、轮询间隔、报告描述符)的元组。默认情况下,其将为USB鼠标设置适当值。pyb.hid_keyboard
常量为USB键盘的适当元组。None
: 禁用USB'VCP'
: 使用VCP接口启用(虚拟COM端口)'VCP+MSC'
: 使用VCP和MSC启用(大容量存储设备类)'VCP+HID'
: 使用VCP和HID启用(人工接口设备)
视频:板载LED的使用
视频:制作板载流水灯
视频:按键的使用