Micropython 玩转硬件系列1:环境搭建

liftword6个月前 (12-27)技术文章65

1.引言

最近几年Python语言非常火,听说小学生都开始学Python了,让我这个中年人感到一丝丝压力。为了以后最起码能辅导辅导孩子,咱也得学学啊。学Python干什么用呢?我这本身是做嵌入式的,听说有个叫MicroPython的,能直接运行在单片机上,这让我很感兴趣。查了下,MicroPython是 Python 3 语言的精简高效实现 ,包括Python标准库的一小部分,经过优化可在微控制器和受限环境中运行。这个不错,这样就可以把Python和硬件结合起来了。下面就开始学习之旅吧。

2.环境介绍

2.1.硬件

在某宝上了花了26元买了一个小板子,这价格实在是够便宜啊,

再加一条micro usb线就可以了,一头接板子,一头插在电脑上。

2.2.软件

1) PC端Windows系统,Python 2.7环境 或者 Python 3.4及更新版本,Putty 串口工具

2) 板子上Micropython 环境

3.环境搭建

第1步:将usb线连接电脑和板子,PC端识别出一个虚拟串口。如果安装不成功,那么需要一个CP2102的驱动。

第2步:安装esptool,这个工具是用来和ESP32板子进行通讯的,实现micropython固件烧录、读写内存等功能。本身它是开源的,项目位于github.com/espressif/esptool

安装方式,我这里采用的是:pip install esptool

备注:esptool本身基于python的,所以在安装前,你的电脑上需要先安装Python,这里不再描述,不会的自行百度即可,我电脑上装的Python 2.7。

第3步,在Windows DOS窗口下执行下述指令

esptool.py --port COM3 erase_flash

实现ESP32 Flash全部擦除的功能。

注意:需要将COM3改成实际你电脑上对应的串口号。

第4步,到下面这个网址下载最新的稳定版本固件

micropython.org/download/esp32/

然后执行:

esptool.py --chip esp32 --port COM3 write_flash -z 0x1000 esp32-idf3-20191220-v1.12.bin

上述下载固件的过程需要经历一段时间

4.运行Hello World

上面工作执行完毕,就相当于给ESP32芯片装上了一套Python的环境,只不是它不是标准版的Python,因为它运行在微处理器闪个,叫做MicroPython.xia下面就到了Hello World时间了。

第1步:通过一个串口调试助手连接板子,可以使用SecureCRT或者PUTTY等工具。

以Putty为例:


第2步:我们就可以打印出Hello World了。

直接敲代码:

print("Hello World!")

然后一回车,结果就出来了!

是不是很爽啊。

5.总结

本篇介绍了ESP32 Micropython环境的搭建,下一篇介绍点灯实验。


关注TopSemic,让我们一起成长吧!

相关文章

python asyncio -- 异步编程 python异步编程用在哪里

概念:asyncio 是 python3.4 版本引入的标准库,直接内置了对异步IO的支持。本质上asyncio的编程模型是一个消息循环,asyncio 模块内部实现了EventLoop,把需要执行的...

Python编程之第1节(环境配置) python3.8配置环境变量

1,Python是一种动态解释型的编程语言,可以在Windows、UNIX、MAC等多种操作系统上使用,也可以在Java、.NET开发平台上使用。2,特点:Python使用C语言开发,但Python不...

Python学习笔记 | 办公自动化基础之文件和文件夹操作

利用python实现办公自动化的基础就是管理磁盘文件和文件夹,如文件和文件夹的新建、删除、遍历查找等等,使用到的模块有os、shutil、golb、pathlib等。内容虽然简单,但是有些关键点也很容...

python 你需要知道的 python中需要用到的英文词汇

IDEpycharmCondapython 环境管理利器,必学必会教材Python 之旅stackoverflow-about-python 翻译Python黑魔法手册, https://github...

Python并发编程(1)——Python并发编程的几种实现方式

左手编程,右手年华。大家好,我是一点,关注我,带你走入编程的世界。公众号:一点sir,关注领取python编程资料Python 并发编程是指在 Python 中编写能够同时执行多个任务的程序。并发编程...