在本教程中,我们将学习如何使用MicroPopyThon编程Raspberry Pi Pico。我们将学习什么是MicroPopthon,如何在Raspberry Pi Pico上安装MicropeThon以及如何使用MicropeThon编程Raspberry Pi Pico。
我制造了一个raspberry pi pico教程入门,其中我讨论了RP2040微控制器,覆盆子PI PICO开发板,覆盆子PI PICO的引脚。所以,在继续之前看看该教程。
介绍
如果您熟悉计算机编程,那么您可能会听到Python。以Monty Python(而不是蛇)命名,自1991年首次发布以来,Python编程语言已成为软件开发人员的热门选择。
Python用于开发桌面,笔记本电脑和服务器的应用程序,具有功能强大的处理器并运行OS。但是,如果您想在Python中编写基于小型微控制器的嵌入式系统
像Arduino和Raspberry PI Pico这样的微控制器板在内存和处理能力方面具有严重的限制,无法运行Python大桌和笔记本电脑的方式。
这里的MicropeThon到救援。
什么是micropeThon?
MicroPopthon是一种用于微控制器和嵌入式系统开发的Python语言解释器。它是由Damien P. George开发的,并用C. MicroPopython编写了一个Python 3兼容编译器和运行时,可以在小微控制器上运行。
即使它是Python 3的子集,它也不包括Python的所有标准库,因为它是为受限系统开发的。只有少数选定的Python库都包含在汇编为MicropeThon本身(主要用于低级硬件访问)时。
如果您是一个从未在硬件上工作的软件开发人员,但您希望为基于微控制器的嵌入式系统(个人或专业项目)编写应用程序,那么MicroPopthon就是答案。
在语法上,MicroPopthon与Python非常相似。因此,如果您使用Python工作,那么使用MicropeThon将非常简单(另外,您可以控制硬件)。
如果你没有用python(像我自己),那么不要担心。这是一种简单的学习语言。
什么电脑使用?
官方Raspberry PI PICo文档基于使用Raspberry PI SBC作为主机(用于MicroPopthon或C)。如果您正在使用MicroPopthon,那么您可以使用任何计算机(Windows,Mac或Linux),因为您只需下载一个名为Thonny的IDE。
但是,如果您正在使用C,那么我建议您使用基于Linux的系统,如Raspberry PI Computer(如果您有一个),那么很容易在Linux中下载SDK和写C程序。
此外,如果您有兴趣调试代码,那么Raspberry PI将是有用的,因为我们可以使用覆盆子PI的一些GPIO来调试覆盆子PI PICO。
笔记:在本教程中,我将使用Windows系统来演示如何使用MicroPopyth编程Raspberry Pi Pico。但您也可以在其他操作系统中应用类似的步骤。
如何在覆盆子pi pico上安装micropopython?
下载MicropeThon二进制文件
现在让我们在覆盆子Pico上开始MicropeThon。在Raspberry PI Pico上运行Micropopython的最简单和最快的方法是从官方Raspberry Pi Pico网站下载预设二进制。
转到文档页覆盆子pi pico,然后点击“入门MicropeThon.“ 标签。
选项卡下面的内容根据所选选项卡而更改,当您单击“入门MicropeThon.“,与MicroPopthon的入门相关的文本出现在覆盆子PI Pico上如何安装MicropeThon的小动画。
阅读所有信息,然后单击“下载UF2文件”选项。将下载以.uf2文件的形式的MicropeThon二进制文件。
在覆盆子pi pico上安装micropopython
在下载MicropeThon二进制之后,我们必须将此固件上传到覆盆子PI Pico。为此,首先我们必须将PICO放在引导加载程序模式下。
要做到这一点,将微型USB电缆插入到Raspberry PI Pico的Micro-USB端口。现在,将PICO上的Bootsel按钮置于USB电缆的另一端连接到主机的USB端口(持有Bootsel按钮)。
当raspberry pi pico显示为具有名称“RPI-RP2”的大容量存储设备时,您可以在几秒钟后释放按钮。如果打开它,您将看到文本文件和HTML文件。
现在,转到“下载”文件夹并将下载的MicroPopThon UF2文件拖放到RPI-RP2设备上。复制后,Raspberry Pi Pico将重新启动并运行Micropopthon。复制Micropopthon UF2文件后,大容量存储设备将消失。
您的Raspberry Pi Pico现在正在运行MicropeThon。您现在可以使用MicropeThon编程Raspberry Pi Pico。
下载thonny.
如果您的主计算机是Linux或Mac,那么您可以使用终端和Minicom与Raspberry Pi Pico通信。但在本教程中,我们将看到如何使用覆盆子pi pico使用Thonny.IDE。
Thonny是一个简单的Python IDE适用于Windows,Mac和Linux。覆盆子PI OS配有Thonny预装。由于我正在使用Windows系统,我下载了Windows版本的Thonny。下载了一个名为“thonny-3.3.5.exe”的可执行文件。
双击下载的可执行文件并安装Thonny。这个安装没有特别的特别,它非常直接。(可选)您可以选择创建桌面快捷方式。
配置Thonny.
下载并安装Thonny IDE后,打开它。确保已插入主计算机的Raspberry PI Pico。Thonny IDE非常简单。它的布局可分为四个部分:工具栏,脚本区域,shell,解释器。
- 工具栏:包含用于保存,运行和停止程序的图标。
- 脚本区域:这是您编写Python程序的地方。
- shell:python shell是一个交互式的repl(read-equate-print-loop)块,您可以为解释器提供单个命令,它将执行它们。
- 解释器:从IDE的右下方选择合适的解释器。
默认情况下,Thonny IDE配置为解释Python 3.x.x.
单击Python 3.7.9(或任何版本是什么)并选择MicropeThon(Raspberry PI Pico)翻译。一旦选择Micropopthon解释器,底部更改为MicroPopthon。
由于MicroPopthon支持交互式求建,因此您可以在shell中的命令输入shell和raspberry pi pico将执行它们。让我们试试这个。我们将从Hello World开始,即打印Hello World。
编程覆盆子pi pico与micropopython
在shell中,在“>>>”旁边键入以下内容并按Enter键。
这是在覆盆子PI Pico上运行的MicropeThon解释器的指令。在接收这个命令时,MicropeThon将用消息“Hello,World!”回复。并在壳体上打印它。
如果您还记得覆盆子PI PICO的布局,则LED连接到GPIO 25.我们可以尝试从外壳打开和关闭此LED。
为此,首先我们必须导入一个名为“机器”的特殊库。MicroPopyThon中的机器库用于控制电路板的硬件,在这种情况下。您可以重置微控制器,使其睡眠,启用或禁用中断,使用机器模块从睡眠中唤醒。
一些机器模块是:
- 别针
- 信号
- ADC
- uart.
- spi.
- I2C.
- RTC.
- 计时器
- WDT.
- SD.
- SD卡
我们将了解所有模块及其课程,就像我们使用它们时。如果您想在MicroPopthon库上进一步探索,则MicroPopthon文档是好的地方。
由于我们想要使用GPIO块,我们可以从“机器”导入“PIN”类,用于控制覆盆子PI PICO的IO引脚。
接下来,我们创建类引脚的对象并设置GPIO数及其方向即,输入或输出。
要打开LED,我们必须将其值设置为1。
在shell中键入一个接一个地键入上面的线。您可以看到LED打开。要关闭LED,请将引脚的值设置为0。
眨眼睛
从shell执行命令很好,但如果您想编写完整的Python程序,该命令是什么?这就是你有脚本区域的原因。现在让我们看看我们如何为Raspberry Pi Pico写下我们的第一个Python程序,并闪烁LED。
在220Ω电流限制电阻的帮助下,我连接了5毫米红色LED到Raspberry PI PICO的GPIO 16。
现在,在脚本区域中键入以下程序。我评论了关于每行的详细说明的代码。您可以忽略评论。
当被问到时,单击“保存”并选择Raspberry Pi Pico。
给文件的名称,然后单击确定。我把它作为“main.py”。
单击“运行”图标,您可以看到LED闪烁。
您可以使用Toggle函数来减少代码而不是将值设置为1和0。
命名的原因.py.py
重置任何微控制器(完全下电并打开或按钮复位),您希望微控制器再次执行该程序。如果您希望在Raspberry Pi Pico中发生同样的事情,那么您必须将Python脚本命名为“main.py”。
您可以在保存“blinky.py”时为Python程序提供任何名称,但如果删除电源并重新连接它,则不会执行。为此,您必须将Python程序命名为“main.py”。
即使您在Raspberry Pi Pico中有多个Python脚本,如果有一个名为main.py的文件,则MicroPopthon将执行该文件。
笔记:我不是Python或Micropopthon的专家,我还在学习。这个命名的东西是我在使用覆盆子pi pico时所经历的事情。
读按钮
我们已经了解如何将Raspberry Pi PICo的GPIO引脚设置为输出并闪烁LED。现在,让我们通过将GPIO引脚设置为输入并将按钮连接到GPIO引脚来扩展它。我们将读取按钮的状态并切换LED的状态。
我使用GPIO 15作为输入引脚,并连接了一个简单的瞬间按钮。按钮的另一个端子连接到3.3V。要从按钮获取干净的读数,我在配置按钮引脚时使用Pull_down选项。因此,通常Pico在按钮引脚上读取低电平,但是当我按下按钮时,Pico在按钮引脚上读取高电平。
结论
在这家精美的教程中,您学习了如何使用MicroPopyth编程Raspberry Pi Pico。您学到了一些关于MicroPopython的一点点,如何在Raspberry Pi Pico中安装MicropeThon,使用MicropeThon和Thonny IDE编程Raspberry Pi Pico,闪烁LED并读取按钮。
一个反应
令人失望的是小麦上没有机器。有没有办法运行C程序库(例如https://github.com/raspberrypi/pico-playground/tree/master/sleep/hello_sleep.)可能允许从MicropeThon睡觉?