ESP8266传送文件设置和操作
问题:ESP8266不能被识别为USB盘,也不能通过串口传送文件,只能通过wifi传送文件,需要事前在串口连接后的repl状态下,用命令行方式配置网络参数,之后才可以用wifi传送文件(webrepl方式)。
目的:解决wifi传送文件的设置问题。
工具:使用putty或TeraTerm
固件:升级后的固件MicroPython v1.9.3-8-g63826ac5c on 2017-11-01
平台:windows XP
一. AP方式直接连接到PC机
1. 配置AP(不用配置,默认网关为192.168.4.1 )
你的PC机直接连接到ESP8266 ssid = "micropython-xxx" password="micropythoN"
自己可以修改:
>>> ap_if = network.WLAN(network.AP_IF)
>>> ap_if.config(essid="micropython-xxx", authmode=network.AUTH_WPA_WPA2_PSK, password="micropythoN")
2.启动webrepl
用putty或TeraTerm以串口连接后,在串口repl模式下,输入:
>>> import webrepl_setup
按(E)able
按y/n?(y)
输入密码:h1234
再输入密码:h1234
按y,重新启动。
显示>>>
!设置已经保存文件中,下次启动时有效。
3. wifi传送文件(两种方法传送文件)
(1). 浏览器方式wifi传送文件和webrepl命令
javascript实现,不用Python3,要求高版本浏览器
PC机上,双击webrepl.html 打开黑色浏览窗口(firefox esr 52.0.1 (32-bit)测试正确;js代码中要求IE10以上,但没有测试。)
默认地址和端口不变:192.168.4.1:8266
输入密码:h1234
显示>>>
黑色浏览窗口右上角收发文件正常
webrepl中命令正常
(2). webrepl_cli.py命令行方式wifi传送文件
!要求已经安装python3
执行cmd,进入命令行状态,进入webrepl_cli.py所在目录
帮助
>>> python webrepl_cli.py --help
ESP--->PC接收文件
>>> python webrepl_cli.py -p h1234 192.168.4.1:/boot.py ./esp2pc_test.txt
上行命令写入批处理文件中,点击就执行。自己修改目录和文件。
PC--->ESP发送文件
>>> python webrepl_cli.py -p h1234 pc2esp_test.txt 192.168.4.1:/pc2esp_test.txt
上行命令写入批处理文件中,点击就执行。自己修改目录和文件。
二. STA方式经过自己的路由器连接到PC机
1. 配置ESP8266 wifi网络参数
配置STA,连接到自己的wifi自己的路由器(ssid=hyper1, password=hj1234567):
用putty或TeraTerm以串口连接后(repl方式),设置ESP8266 wifi STA模式,并连接到自己的wifi路由器。
串口连接ESP8266, 在repl方式下输入如下命令:
>>> import network
>>> sta_if = network.WLAN(network.STA_IF); sta_if.active(True)
>>> sta_if.connect("hyper1", "hj1234567") #连接到hyper1路由器。
>>> sta_if.ifconfig() # 查看ip地址 192.168.0.106 !记住这个IP
>>> sta_if.isconnected() #查看是否连接到自己的路由器
>>> import port_diag #诊断板
2. 启动webrepl
用putty或TeraTerm以串口连接后,在串口repl模式下,输入:
>>> import webrepl_setup
按(E)able
按y/n?(y)
输入密码:h1234
再输入密码:h1234
按y,重新启动。
显示>>>
!设置已经保存文件中,下次启动时有效。
3. wifi传送文件(两种方法传送文件)(esp8266 STA方式连接到自己路由器)
(1). 浏览器方式wifi传送文件和webrepl命令
javascript实现,不用Python3,要求高版本浏览器
PC机上,双击webrepl.html 打开黑色浏览窗口(firefox esr 52.0.1 (32-bit)测试正确;js代码中要求IE10以上,但没有测试。)
修改8266的STA地址:192.168.0.106,端口8266不变
输入密码:h1234
显示>>>
黑色浏览窗口右上角收发文件正常
(2). webrepl_cli.py命令行方式wifi传送文件
!要求已经安装python3
执行cmd,进入命令行状态,进入webrepl_cli.py所在目录
帮助
>>> python webrepl_cli.py --help
ESP--->PC接收文件
>>> python webrepl_cli.py -p h1234 192.168.0.106:/boot.py ./esp2pc_test.txt
上行命令写入批处理文件中,点击就执行。自己修改目录和文件。
PC--->ESP发送文件
>>> python webrepl_cli.py -p h1234 pc2esp_test.txt 192.168.0.106:/pc2esp_test.txt
上行命令写入批处理文件中,点击就执行。自己修改目录和文件。
三. 使用
用wifi传送文件,有线串口调试。
(1)两种网络连接方式
AP或STA连接,选择一种就行,建议用第一种方式,方便、不用配置、只启动就行。
(2) 两种文件传送方式
有两种文件传送方式,网页方式和命令行方式,选择一种就行,第一种方便,不用安装Python3,但对浏览器要求高。
(3)两种命令操作方式
建议用串口repl命令行操作esp中文件和调试代码片段。
网络中webrepl也可以,但不稳定,慢。
(4) 文件操作
import os
os.listdir()
os.remove("test.py")
...
四. 停止与重启动
停止webrepl
(1) 串口repl中Ctr-C后Ctr-D启动,wrepl守护进程停止。
(2) >>> import webrepl
>>> webrepl.stop()
(3)>>> import webrepl_setup
按d (Disable)
按y (yes)
修改boot中开机启动守护进程项,关闭。重新启动webrepl
(1) >>> import webrepl
>>> webrepl.start()
显示如下:
WebREPL daemon started on ws://192.168.4.1:8266
WebREPL daemon started on ws://192.168.0.100:8266
Started webrepl in normal mode
表示webrepl已经启动。(2)上电或复位后会自动启动webrepl守护进程,
(3)>>> import webrepl_setup,并重新输入密码。
修改boot中开机启动守护进程项,打开,并保存新密码。
以上方式全部测试通过!
五. 出现的问题:
- 固件1.9.3,在putty或TeraTerm连接开始时,repl窗口出现很多乱码,连接三次后正常。或者板上电后,延时5秒以上时间后,再打开putty或TeraTerm.
- putty会有串口锁住的问题,而TeraTerm不会锁住串口。
微信:h790516
qq :790516
博客:http://www.cnblogs.com/hyper99
微店:嵌入式系统工匠坊 ---http://wd.koudai.com/s/259792644
作者:黄永平(Hyper)
时间:2017年12月7日
ESP8266传送文件设置和操作的更多相关文章
- Linux SSH 远程操作与传送文件
操作系统:centos 6.5 x64 一.远程连接:在进行linux 的 ssh远程操作前,一定要确认linux 是否安装了 openssh-clients,为了方便起见,一般用yum安装即可:# ...
- 通过minicom传送文件的相关配置及使用方法
写一下我使用串口向开发板传送文件中遇到的问题及解决办法: 使用的软硬件环境: 虚拟机:VMware® Workstation 8.0.1 Linux操作系统:Fedora 9 开发板:mini6410 ...
- Python::OS 模块 -- 文件和目录操作
os模块的简介参看 Python::OS 模块 -- 简介 os模块的进程管理 Python::OS 模块 -- 进程管理 os模块的进程参数 Python::OS 模块 -- 进程参数 os模块中包 ...
- Apache日志不记录图片文件设置方法和来源日志的配置
Apache日志不记录图片文件设置方法 <FilesMatch "\.(ico|gif|jpg|swf)">SetEnv IMAG 1</FilesMatch&g ...
- Delphi- ini文件的读写操作
一.读INI文件示例 procedure TForm1.FormCreate(Sender: TObject); Var MyIni :Tinifile; glAppPath :string; beg ...
- Python之文件与目录操作及压缩模块(os、shutil、zipfile、tarfile)
Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...
- plist文件的相关操作
本文概要 1.plist文件的简介 2.在Xcode中创建plist文件 3.在Xcode中将plist文件转换成数组或者字典对象 4.将数组或者字典对象转换成plist文件并且存储 详细介绍 1.p ...
- linux中文件I/O操作(系统I/O)
我们都知道linux下所有设备都是以文件存在的,所以当我们需要用到这些设备的时候,首先就需要打开它们,下面我们来详细了解一下文件I/O操作. 用到的文件I/O有以下几个操作:打开文件.读文件.写文件. ...
- 【linux之文件查看,操作】
一.shell如何处理命令 1.shell会根据在命令中出现的空格字符,将命令划分为多个部分 2.判断第一个字段是内部命令还是外部命令 内部命令:内置于shell的命令(shell builtin) ...
随机推荐
- Scratch GUI
原文地址:https://github.com/LLK/scratch-gui/wiki/Getting-Started Getting Started Bryce Taylor edited t ...
- python----------闭包 、装饰器
闭包: 就是内层函数对外层函数(非全局变量的)非全局变量的引用 def func(): name = '老人家' def func1(): print(name)#局部变量对全局变量的引用 因为并没有 ...
- Java实例---简单的投票系统
代码分析 InputData.java package vote; import java.io.BufferedReader; import java.io.IOException; import ...
- Win10笔记本显卡驱动更新升级
对于游戏玩家来说,对显卡的关注度要高于电脑其它硬件,一般来说,显卡越好,游戏性能往往越强.不过要持续发挥显卡的最佳游戏性能,经常更新显卡驱动也是很有必要的.那么笔记本显卡驱动怎么更新?下面小编以自己的 ...
- 沉淀再出发:再谈java的多线程机制
沉淀再出发:再谈java的多线程机制 一.前言 自从我们学习了操作系统之后,对于其中的线程和进程就有了非常深刻的理解,但是,我们可能在C,C++语言之中尝试过这些机制,并且做过相应的实验,但是对于ja ...
- 利用python查看电脑系统信息
#查看python默认编码格式 >>> import sys >>> print sys.getdefaultencoding() #python 2.x 默认编码 ...
- 异常处理与MiniDump详解(2) 智能指针与C++异常
write by 九天雁翎(JTianLing) -- blog.csdn.net/vagrxie 讨论新闻组及文件 一. 综述 <异常处理与MiniDump详解(1) C++异常>稍 ...
- WebDAV漏洞直接远程溢出拿下服务器
以上是 我做的幻灯片 介绍什么是WebDAV 有什么用 漏洞测试需要的工具 http://pan.baidu.com/s/1o6DYxAE看到这里 说明直接远程溢出 提升权限为system 这些都很久 ...
- IOS XMPP总结
//前言:仿weixin实现一个即时通讯的案例,支持版本7.0以上 "准备工作 创建项目时使用git" /* 显示隐藏文件,看到git的文件夹 defaults write com ...
- Java虚拟机14:类加载器
类与类加载器 虚拟机设计团队把类加载阶段张的"通过一个类的全限定名来获取此类的二进制字节流"这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需要的类.实现这 ...