3.8 KiB
3.8 KiB
MicroPython 模块
!!! abstract "简介" - MicroPython 提供丰富的模块,每个模块提供特定的功能。了解开发的过程中一些常用的模块的使用方式,可以让你很好的使用 MicroPython 的功能。
- 这些模块可以通过 env 工具的 menuconfig 功能来开启和关闭,如果你需要使用特定的模块,在 menuconfig 中选中模块名,保存退出后,重新编译运行即可。
1. Python 标准库和微型库
Python 的标准库被 “微型化”后,就是 MicroPython 标准库,也称 MicroPython 模块。它们仅仅提供了该模块的核心功能,用来替代 Python 标准库 。一些模块使用 Python 标准库的名字,但是加上了前缀 "u",例如ujson代替json。也就是说 MicroPython 的标准库(微型库),只实现了一部分模块功能。通过给这些库以不同的方式命名,用户可以写一个 Python 级的模块来扩展微型库的功能,以便于兼容 CPython 的标准库(这项工作就是 micropython-lib 项目的正在做的)。
在一些嵌入式平台上,可添加 Python 级别封装库从而实现命名兼容 CPython,使用 MicroPython 标准库既可使用他们的 u-name,也可以使用 non-u-name。使用 non-u-name 的模块可以被库路径文件夹里面的同名模块所覆盖。
例如,当import json时,首先会在库路径文件夹中搜索一个 json.py 文件或 json 目录进行加载。如果没有找到,它才会去加载内置 ujson 模块。
2. RT-Thread MicroPython 模块
2.1 系统模块
- rtthread – RT-Thread 系统相关函数
- utime – 时间相关函数
- sys – 系统特有功能函数
- math – 数学函数
- uio – 输入/输出流
- ucollections – 收集和容器类型
- ustruct – 打包和解包原始数据类型
- array – 数字数据数组
- gc – 控制垃圾回收
2.2 硬件模块
- machine – 与硬件相关的功能
- machine.Pin
- machine.I2C
- machine.SPI
- machine.UART
2.3 系统模块
2.4 工具模块
- cmath – 复数的数学函数
- ubinascii – 二进制/ ASCII转换
- uhashlib – 哈希算法
- uheapq – 堆排序算法
- ujson – JSON编码与解码
- ure – 正则表达式
- uzlib – zlib 解压缩
- urandom – 随机数生成模块
2.5 网络模块
- usocket – 套接字模块