MicroPython标准库
本文介绍micropython有下列模块(函数和类库)
主要构成如下:
内置模块:标准Python功能的子集,用户不能扩展。
扩展模块:实现了Python功能的一个子集,并提供用户扩展(通过Python代码)。
扩展模块:实现micropython to the Python标准库。
硬件驱动模块:特定端口或者硬件驱动的模块,因此不可移植。
Python标准库和微型库
标准的Python库被 “微型化”后,就是micropython标准库。它们仅仅提供了该模块的核心功能。一些模块没有直接使用标准的Python的名字,而是冠以“U”,例如ujson代替JSON。也就是说micropython标准库(=微型库),只实现了一部分模块功能。通过他们的名字不同,用户有选择的去写一个Python级模块扩展功能,也是为实现更好的兼容性。
在嵌入式平台上,可添加Python级别封装库从而实现命名兼容CPython,微模块即可调用他们的u-name,也可以调用non-u-name。根据non-u-name包路径的文件可重写。
例如,“ import json”的话,首先搜索一个json.py文件或json目录进行加载。如果没有找到,它回退到加载内置ujson模块。
Builtin Functions
array – arrays of numeric data
cmath – mathematical functions for complex numbers
gc – control the garbage collector
math – mathematical functions
select – wait for events on a set of streams
sys – system specific functions
ubinascii – binary/ASCII conversions
ucollections – collection and container types
uhashlib – hashing algorithms
uheapq – heap queue algorithm
uio – input/output streams
ujson – JSON encoding and decoding
uos – basic “operating system” services
ure – regular expressions
usocket – socket module
ustruct – pack and unpack primitive data types
utime – time related functions
uzlib – zlib decompression
MicroPython专有类库
具体类库如下:
btree – simple BTree database
framebuf — Frame buffer manipulation
machine — functions related to the hardware
micropython – access and control MicroPython internals
network — network configuration
uctypes – access binary data in a structured way
与硬件匹配的专有类库
pyb — functions related to the board
Time related functions
Reset related functions
Interrupt related functions
Power related functions
Miscellaneous functions
Classes
- lcd160cr — control of LCD160CR display
class LCD160CR
Constructors
Static methods
Instance members
Setup commands
Pixel access methods
Drawing text
Drawing primitive shapes
Touch screen methods
Advanced commands
Constants