ESP8266-01S配置MicroPython方法(esp8266api)
off999 2024-09-27 13:55 24 浏览 0 评论
▌01 ESP8266模块下载MicroPython
手边有这类小型的ESP8266WiFi串口模块: ESP-01S 无线透传工业级 ESP8266串口转WiFi模块[1] 。现在有一个问题:它是否可以使用MicroPython进行开发呢? 就像在 ESP8266的一些MicroPython基础实验[2] 中的模块那样下载 ESP8266 MicroPython[3] 的固件。
下面图中的快速制版的PCB使用MAX3232作为接口,连接ESP8266与PCB的RS232 UART接口。
▲ ESP8266通讯模块
修改ESP8266的固件可以直接使用下面的 ESP8266固件烧写器[4] 来进行修改。
▲ ESP8266烧录器
1.模块的接口
▲ 8PIN的外部引脚定义
▲ 引脚功能定义
2.Thonny开发环境
在 Thonny开发环境[5] 介绍了Thonny MicroPython的开发环境的安装,并对ESP8266进行软件更新的过程。
从 MicroPython网站Download[4] 选择 ESP8266-20210202-V1.14bin[6] 文件下载到本地计算机目录下。
使用这个软件的 ESP8266 Firmware Installer 对ESP8266-01S进行软件更新。下面是更换过程,但是出现固件下载错误。
▲ 工作模式下出现下载错误
下面是在Thonny下载界面信息框中给出的出错信息。显示了Thonny无法发送芯片擦除命令。
根据 图1-1-1 中关于ESP8266-01S的8PIN管脚功能定义,需要对于PIN3(GPIO0)拉低,使得模块进入 UART编程状态。
下面使用金属镊子对ESP8266的PIN3(GPIO0)与PIN1(GND)断路,然后上电,此时ESP8266进入了UART下载模式。
▲ 使用金属镊子对PIN3于PIN1断路,再上电使得模块进入程序下载状态
3.对ESP8266设置下载状态
整个过程需要经过两个步骤:
(1)擦除ESP8266
通过前面使用金属镊子帮助使得ESP8266-01s模块进入下载状态,使用Thonny的Update Firmware对ESP8266进行擦除。
(2)下载ESP8266固件
通过前面使用金属镊子帮助使得ESP8266-01s模块进入下载状态,使用Thonny的Update Firmware对ESP8266进行固件下载。
下载完之后,重新对于ESP8266上电,便可以在Thonny的Shell通过REPL来对于ESP8266-01S进行控制了。下面显示了使用help()命令获得输出。
▲ 固件下载之后通过Thonny 的REPL对于ESP8266进行操作
▌02 测试ESP8266-01S
根据 ESP8266的一些MicroPython基础实验[5] 对于ESP8266-01S进行初步测试。
1.GPIO测试
在ESP8266-01S具有两个GPIO:GPIO0,GPIO2。
(1)测试GPIO2
GPIO2在测试板上有LED连接到地。可以通过它来显示GPIO2的状态。
▲ 对于板载上的GPIO2的LED进行控制
(2)测试GPIO0
由于GPIO0没有连接任何外设,通过示波器测试该端口的波形。
▲ 测量GPIO0的波形
2.测试ADC
由于ADC引脚并没有引出,所以下面的程序可以执行,但是信号与外部没有关系。
3.测试PWM
测试代码:
下图显示GPIO0上的波形:
设置PWM的duty 0 ~ 1023。
4.Socket通讯
(1)测试代码
从程序print(wlan.lfconfig())获得模块的IP地址。
(2)STM32Bootloader终端
使用STM32BOOTLOADER中断来进行UDP发送、接收。在设置IP,Port之后,点动“SET UDP”完成设置。
然后在STM32BOOTLOADER对话窗口发送 ,便可以收到了对应的信息了。
▌实验总结
通过实验验证了将ESP8266-01S下载MicroPython的固件过程。并通过Thonny开发环境完成对于ESP8266-01S的固件下载,并进行的内部的编程测试。
参考资料
[1]
ESP-01S 无线透传工业级 ESP8266串口转WiFi模块: https://item.taobao.com/item.htm?spm=a230r.1.14.42.566567d1KEbE5v&id=568054600435&ns=1&abbucket=5#detail
[2]
ESP8266的一些MicroPython基础实验: https://zhuoqing.blog.csdn.net/article/details/114238748
[3]
ESP8266 MicroPython: http://www.micropython.org/download/esp8266/
[4]
ESP8266固件烧写器: https://detail.tmall.com/item.htm?id=617225331165&ali_refid=a3_420434_1006:1109448581:N:qwnbk4ga1jWzvtXuIEnkGA:059458ad4395e879407ccc307fe53ea7&ali_trackid=1_059458ad4395e879407ccc307fe53ea7&spm=a230r.1.1957635.69&skuId=4351773637185*
[5]
Thonny开发环境: https://zhuoqing.blog.csdn.net/article/details/114064833
[6]
ESP8266-20210202-V1.14bin: http://www.micropython.org/resources/firmware/esp8266-20210202-v1.14.bin
相关推荐
- Python Flask 容器化应用链路可观测
-
简介Flask是一个基于Python的轻量级Web应用框架,因其简洁灵活而被称为“微框架”。它提供了Web开发所需的核心功能,如请求处理、路由管理等,但不会强制开发者使用特定的工具或库。...
- Python GUI应用开发快速入门(python开发软件教程)
-
一、GUI开发基础1.主流GUI框架对比表1PythonGUI框架比较框架特点适用场景学习曲线Tkinter内置库,简单小型应用,快速原型平缓PyQt功能强大,商用许可专业级桌面应用陡峭PySi...
- 实战揭秘:Python Toga 打造跨平台 GUI 应用的神奇之旅
-
在Python的世界里,GUI(图形用户界面)开发工具众多,但要找到一款真正跨平台、易于使用且功能强大的工具并不容易。今天,我们就来深入探讨一下Toga——一款Python原生、操作系统原...
- python应用目录规划(python的目录)
-
Python大型应用目录结构规划(企业级最佳实践)核心原则模块化:按业务功能拆分,高内聚低耦合可扩展性:支持插件机制和动态加载环境隔离:清晰区分开发/测试/生产环境自动化:内置标准化的构建测试部署流...
- Python图形化应用开发框架:PyQt开发简介
-
PyQt概述定义:PyQt是Python绑定Qt框架的工具集,用于开发跨平台GUI应用程序原理:通过Qt的C++库提供底层功能,PyQt使用SIP工具生成Python绑定特点:支持Windows/ma...
- [python] 基于PyOD库实现数据异常检测
-
PyOD是一个全面且易于使用的Python库,专门用于检测多变量数据中的异常点或离群点。异常点是指那些与大多数数据点显著不同的数据,它们可能表示错误、噪声或潜在的有趣现象。无论是处理小规模项目还是大型...
- Python、Selenium 和 Allure 进行 UI 自动化测试的简单示例脚本
-
环境准备确保你已经安装了以下库:SeleniumAllurepytest你可以使用以下命令安装所需库:pipinstallseleniumallure-pytestpytest示例代码下面的代...
- LabVIEW 与 Python 融合:打造强大测试系统的利器
-
在现代测试系统开发领域,LabVIEW和Python各自凭借独特优势占据重要地位。LabVIEW以图形化编程、仪器控制和实时系统开发能力见长;Python则凭借丰富的库资源、简洁语法和强大数...
- 软件测试进阶之自动化测试——python+appium实例
-
扼要:1、了解python+appium进行APP的自动化测试实例;2、能根据实例进行实训操作;本课程主要讲述用python+appium对APP进行UI自动化测试的例子。appium支持Androi...
- Python openpyxl:读写样式Excel一条龙,测试报表必备!
-
无论你是测试工程师、数据分析师,还是想批量导出Excel的自动化工作者,只需一个库openpyxl,即可高效搞定Excel的各种需求!为什么选择openpyxl?支持.xlsx格式...
- Python + Pytest 测试框架——数据驱动
-
引言前面已经和大家介绍过Unittest测试框架的数据驱动框架DDT,以及其实现原理。今天和大家分享的是Pytest测试框架的数据驱动,Pytest测试框架的数据驱动是由pytest自...
- 这款开源测试神器,圆了我玩游戏不用动手的梦想
-
作者:HelloGitHub-Anthony一天我在公司用手机看游戏直播,同事问我在玩什么游戏?我和他说在看直播,他恍然大悟:原来如此,我还纳闷你玩游戏,咋不用动手呢。。。。一语惊醒梦中人:玩游戏不用...
- Python单元测试框架对比(pycharm 单元测试)
-
一、核心框架对比特性unittest(标准库)pytest(主流第三方)nose2(unittest扩展)doctest(文档测试)安装Python标准库pipinstallpytestp...
- 利用机器学习,进行人体33个2D姿态检测与评估
-
前几期的文章,我们分享了人脸468点检测与人手28点检测的代码实现过程,本期我们进行人体姿态的检测与评估通过视频进行人体姿势估计在各种应用中起着至关重要的作用,例如量化体育锻炼,手语识别和全身手势控制...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- Python Flask 容器化应用链路可观测
- Python GUI应用开发快速入门(python开发软件教程)
- 【MCP实战】Python构建MCP应用全攻略:从入门到实战!
- 实战揭秘:Python Toga 打造跨平台 GUI 应用的神奇之旅
- python应用目录规划(python的目录)
- Python图形化应用开发框架:PyQt开发简介
- [python] 基于PyOD库实现数据异常检测
- Python、Selenium 和 Allure 进行 UI 自动化测试的简单示例脚本
- LabVIEW 与 Python 融合:打造强大测试系统的利器
- 软件测试进阶之自动化测试——python+appium实例
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python字典遍历 (54)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python读取文件夹下所有文件 (59)
- java调用python脚本 (56)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)