# MicroPython控制器

### 第一部分：硬件准备

#### 1.1 需要准备的硬件

* NyBoard USB上载模块（CH340C）
* NyBoard WiFi模块

#### &#x20; 1.2 硬件连接&#x20;

将WiFi模块插入USB上载器的模块配置接口上，在windows设备管理器找到对应的COM口。

<div><figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2FpbkHQsE4BCGBsmed6cJt%2FConnectWiFI.jpeg?alt=media&#x26;token=b93c8538-adc2-476b-975c-f31446734f0b" alt=""><figcaption></figcaption></figure> <figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2FTRfcxdgILFVcS6tvSkbN%2F%E6%89%93%E5%BC%80%E8%AE%BE%E5%A4%87%E7%AE%A1%E7%90%86%E5%99%A802.jpg?alt=media&#x26;token=18500265-bb87-4980-9966-5702ca5bfb6a" alt=""><figcaption></figcaption></figure></div>

### 第二部分：软件准备

#### 2.1 下载 Thonny

下载最新版本的Thonny，Thonny是一个开箱即用的Python编辑器，原生提供了MicroPython的支持。

&#x20;[下载地址](https://thonny.org/)

<figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2F6zkenG0n56aZ5HAAFuL8%2Fthonny_logo.png?alt=media&#x26;token=0b81b7e8-f3b4-4b7b-90e1-aaaacd70119f" alt=""><figcaption></figcaption></figure>

#### 2.2 下载 MicroPython固件

MicroPython官方网站上提供了已经编译好的ESP8266固件，因为我们的[WiFi模块](https://docs.petoi.com/v/chinese/tong-xin-mo-kuai/wifi-mo-kuai-esp8266)为4MB， 请选择`ESP8266 with 2MiB+ flash`名称的最新固件，下载bin文件即可。&#x20;

[固件下载地址](https://micropython.org/download/esp8266/)

#### 2.3 烧录 MicroPython固件

将MicroPython固件烧录至WiFi模块有两种方法：

* 使用ESPtool下载工具，可以更加精确控制Flash的分区和使用
* 使用Thonny自带工具，比较方便

为了方便我们使用Thonny自带的烧录工具。 具体步骤如下：

1. 打开Thonny软件，主界面如下图。Thonny默认配置使用安装目录下的Python解释器。

   <figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2FPxEnPecPH5744A772tMZ%2FThonny%E4%B8%BB%E7%95%8C%E9%9D%A2.png?alt=media&#x26;token=35c34523-3693-4e7c-9a79-b469c653061d" alt=""><figcaption></figcaption></figure>
2. 打开`Tools -> Options（选项）`，进入选项页面。在第一个`General`界面，我们可以选择需要的语言 （需要重新启动Thonny）。

   <figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2FDMM4WgYszoaqIKoo99d9%2FThonny%E9%80%89%E9%A1%B9.png?alt=media&#x26;token=ba74a788-0326-49b5-8f91-e0cdc3861120" alt=""><figcaption></figcaption></figure>
3. 打开第二个选项卡`Interpreter（解释器）`，我们将默认的Python3解释器更换为`MicroPython(ESP8266)`后， 选择对应的端口。

   <figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2FqCbEDVF9U6KB8zS55MGe%2FThonny%E9%80%89%E6%8B%A9%E8%A7%A3%E9%87%8A%E5%99%A8%E5%92%8C%E5%BC%80%E5%8F%91%E6%9D%BF.png?alt=media&#x26;token=87bdebee-c711-4004-9ea2-77f2b6a941d9" alt=""><figcaption></figcaption></figure>
4. 此时我们的WiFi模块还未烧录MicroPython固件，点击上图右下角的`Install or update firmware` 使用内置的烧录程序更新固件。
5. 选择WiFi模块所在的端口(COMx)，选择下载的MicroPython固件（bin文件）所在的位置。 勾选下载模式（flash mode）为：`from image file(keep)`（速度会比较慢，但是只需要烧录一次且不容易出错）， 勾选`全片擦除（Erase flash before installing）`。按下`安装(install)`键。

   <figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2FILMYJiGI0NGjHcaduBDf%2FThonny%E7%83%A7%E5%BD%95%E5%9B%BA%E4%BB%B6.png?alt=media&#x26;token=af521c88-b8bf-4578-8468-60f3338f5f26" alt=""><figcaption></figcaption></figure>
6. 界面的左下角会显示进度，先擦除Flash，再写入固件。当出现`完成（Done）`字样的时候，表示已经烧录完成了。

   <figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2FxGX5vl47rAskz5Wi6SGB%2F%E5%9B%BA%E4%BB%B6%E7%83%A7%E5%BD%95%E6%8C%87%E7%A4%BA.png?alt=media&#x26;token=ff4e01cf-39a9-44d9-914c-5b9c5b9fb0d3" alt=""><figcaption></figcaption></figure>
7. 软件准备工作到此结束，关闭下载界面会出现如下显示。红字乱码是因为ESP8266启动时会打印一串非115200波特率的代码，这段代码无法被MicroPython Shell识别。 当出现Python标志性&#x7684;**`>>>`**&#x7B26;号时，表示固件烧录成功。

   <figure><img src="https://201656985-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MQ6a951Q6Jn1Zzt5Ajr-3369173170%2Fuploads%2FE1tNOTHMX8PIlnVFnWvm%2FMicroPythonThonny%E4%B8%BB%E7%95%8C%E9%9D%A2.png?alt=media&#x26;token=fc4bc4a2-065d-462b-b337-46b35c97f1c5" alt=""><figcaption></figcaption></figure>
