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

liftword4个月前 (12-27)技术文章45

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宝藏库:pathlib.Path

在日常的Python开发中,我们经常需要处理文件和路径。传统上,我们可能会使用os模块来完成这些任务,但实际上,有一个更为优雅和强大的工具——pathlib模块,特别是其中的Path类,正是我们今天要...

pip在Python中的9个必须知道的用法

如今,构建商业软件需要使用许多现有的框架、包或模块。因此,一种优雅的编程语言应该有一个易于使用的包管理工具。Java有Maven, Ruby有RubyGems, JavaScript有npm,…,那么...

Python协程之asyncio Python协程之间共享变量

asyncio 是 Python 中的异步IO库,用来编写并发协程,适用于IO阻塞且需要大量并发的场景,例如爬虫、文件读写。私信小编01即可获取Python学习资料asyncio 在 Python3....

一次说明白Python爬虫中多线程,多进程,异步IO编程

图/文:迷神我们在Python爬虫中,重要的是讲究速度,如果有10万或者100万Url地址,写过爬虫的都会知道,那估计是非常慢的。我们的Python爬虫一般IO密集型业务,Python爬虫程序需要发起...

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

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

python最新版3.11正式发布,有哪些新特色?(3/5)

异步任务的语法更完美python编程语言对异步编程的支持一直在改进,比如python 2.0 版开始就增加了生成器(generator),在3.4版开始增加了 asyncio 库,随后在 3.5 版中...