从 machine 到 rp2:MicroPython 相关模块一文速览
我们可以把 MicroPython 的系统结构比作​智能手机的运行体系​手机硬件对应微控制器硬件手机的操作系统如 Android/iOS对应 MicroPython 固件而我们安装的 APP 对应用户编写的 MicroPython 程序。固件是整个系统的核心负责衔接硬件和用户程序就像手机系统衔接硬件和 APP 一样。在了解系统结构前先搞懂几个关键的基础知识点​固件​是烧录到微控制器闪存中的预编译程序包包含 MicroPython 解释器、核心库和硬件驱动相当于嵌入式设备的 “操作系统内核 运行环境”。​REPL交互式解释器​全称是 “读取 - 求值 - 打印 - 循环”简单说就是 MicroPython 的 “实时命令行”—— 输入一行代码立刻执行并返回结果方便调试和快速测试代码。​引导加载程序Bootloader微控制器通电后第一个运行的小程序负责把闪存中的固件加载到内存RAM中运行相当于硬件的 “开机启动器”。垃圾回收​器GCMicroPython 自带的内存管理工具会自动清理不再使用的变量、对象等内存占用避免嵌入式设备因内存不足卡死是针对微控制器小内存的优化设计。1.MicroPython 的系统结构一个 MicroPython 系统的典型结构如下图 2.5 MicroPython 系统典型结构图它包括用户程序、MicroPython 固件和微控制器硬件构成固件和硬件是最基础、固定的部分我们只能对用户程序进行编写和修改。MicroPython 固件就类似于一个​嵌入式​的​操作系统​主要用于运行用户程序并提供 REPL 命令​解释器。专用的 MicroPython 开发板如 pyboard、树莓派 pico 等可以直接烧录官方提供的固件运行源代码MicroPython 支持的其他类型开发板需要自己编译源代码产生固件如果是兼容 MicroPython 的开发板需要自己移植 MicroPython 系统。在使用 MicroPython 进行 MCU 的编程之前我们需要首先烧录特定 MCU 芯片对应的 MicroPython 固件烧录完成后我们将编写好的 MicroPython 程序上传到单片机中然后重启 MCU设备通电后引导加载程序负责将 MicroPython 的固件从闪存中加载到 RAM 中固件包含解释器和基本的运行时环境在 MicroPython 开始执行 Python 代码之前它会初始化必要的硬件和外设包括设置时钟、初始化 GPIO、配置外设等MicroPython 会查找并执行预定义的启动脚本如 main.py这个脚本可以包含用户自定义的初始化代码或程序逻辑MicroPython 的解释器首先将 Python 代码编译成字节码这一过程在设备上动态完成避免了需要预编译的复杂过程编译后的字节码由 MicroPython 解释器执行。解释器将字节码转换成具体的操作并在硬件上运行这些操作MicroPython 在微控制器中管理堆栈和内存其自带的垃圾回收器GC也会定期清理不再使用的对象以释放内存空间一旦启动脚本执行完毕MicroPython 进入 REPL 模式等待用户输入命令或代码。2.machine 模块 —与硬件相关的功能machine 模块包含与特定板上硬件相关的特定功能。该模块中的大多数功能允许实现对系统硬件块如 CPU、定时器、总线等的直接和不受限制的访问和控制。使用不当这可能会导致电路板故障、锁定、崩溃在极端情况下还会导致硬件损坏。图 2.6 machine 模块功能架构图3.rp2 模块——特定于 RP2040 的功能该 rp2 模块包含特定于 RP2040 的函数和类如在 Raspberry Pi Pico 中使用的。图 2.7 rp2 模块功能架构图4.MicroPython 标准微库以下标准 Python 库已被“微化”以符合 MicroPython 的理念。它们提供该模块的核心功能旨在替代标准 Python 库。图 2.8 MicroPython machine 模块功能架构图5.MicroPython 特定库图 2.9 MicroPython 特定库功能架构图

相关新闻

Windows安卓应用安装终极指南:3分钟搞定APK安装,告别笨重模拟器

Windows安卓应用安装终极指南:3分钟搞定APK安装,告别笨重模拟器

Windows安卓应用安装终极指南:3分钟搞定APK安装,告别笨重模拟器 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否厌倦了笨重的Android模拟…

2026/11/3 15:13:05 阅读更多 →
如何用BiliDownloader轻松下载B站视频?终极免费工具使用指南

如何用BiliDownloader轻松下载B站视频?终极免费工具使用指南

如何用BiliDownloader轻松下载B站视频?终极免费工具使用指南 【免费下载链接】BiliDownloader BiliDownloader是一款界面精简,操作简单且高速下载的b站下载器 项目地址: https://gitcode.com/gh_mirrors/bi/BiliDownloader 你是否曾想保存B站的精…

2026/10/28 17:40:38 阅读更多 →
为什么选择Twitter, together!?开源项目社交媒体管理的终极解决方案

为什么选择Twitter, together!?开源项目社交媒体管理的终极解决方案

为什么选择Twitter, together!?开源项目社交媒体管理的终极解决方案 【免费下载链接】action :bird: A GitHub action to tweet from a repository 项目地址: https://gitcode.com/gh_mirrors/act/action Twitter, together! 是一款基于GitHub Action的开源工…

2026/10/30 20:15:38 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/3 1:09:25 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/3 10:57:27 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/3 11:35:49 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/3 2:27:21 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/3 10:47:27 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/3 10:57:33 阅读更多 →

日新闻

周新闻

月新闻