不会编程的小卜
人生没有白走的路,每一步都算数

浅谈MircoPython---ESP8266

一.连接WIFI

在Putty会话窗口输入

>>>help() 

 打印的消息会告诉你如何连接WIFI

import network
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.scan()                             # Scan for available access points
sta_if.connect("<AP_name>", "<password>") # Connect to an AP
sta_if.isconnected()                      # Check for successful connection

二.使用WebREPL上传文件

 webrepl客户端

  webrepl是MicroPython官方提供的文件管理工具,并且有一个webrepl客户端工具,使用它可以通过浏览器来访问ESP8266.

  首先我们在ESP8266的会话窗口输入import webrepl_setup 以配置webrepl:

>>> import webrepl_setup

  接下来按照返回的提示信息输入即可,密码至少三位,之后输入下面命令,启动webREPL

>>> import webrepl
>>> webrepl.start()

  

从Github下载WebREPL客户端打开或者访问MicroPython官网提供的在线客户端(http://micropython.org/webrepl/),以准备上传和下载文件。

ESP8266连接好WiFi后,输入sta_if.ifconfig()查看连接信息,返回的元组第一个IP就是无线路由器分配给ESP8266的IP。

如果你的电脑和ESP8266在同一个局域网,修改WebREPL要连接的地址为ESP8266的IP,点击「Connect」,返回「Welcome to MicroPython!」说明连接成功,根据提示输入密码(密码默认不显示)。回车后显示「WebREPL connected」表示登录成功。

之后就可以用这个客户端上传下载文件了.

 

 三.设置上电自动连接WIFI

MicroPython初始化后都会自动执行main.py文件,所以我们只需要设置改文件即可上电自动连接WIFI,打开自己常用的编辑器,输入下面代码,并保存为main.py文件.

# main.py
import network
import webrepl

SSID = "SSID"
PASSWORD = "password"

def do_connect():
    import network
    wlan = network.WLAN(network.STA_IF)
    wlan.active(True)
    if not wlan.isconnected():
        print('connecting to network...')
        wlan.connect(SSID, PASSWORD)

    start = utime.time()
    while not wlan.isconnected():
        utime.sleep(1)
        if utime.time()-start > 5:
            print("connect timeout!")
            break

    if wlan.isconnected():
        print('network config:', wlan.ifconfig())

do_connect()

  之后通过WebREPL客户端长传改文件,完成之后,尝试给ESP8266重启一下,看看ESP8266的会话窗口是不是打印了user init ! 如果成功打印,说明上电后确实执行了上面的代码,另外,ESP8266重启后,WebREPL客户端需要重新连接才可以操作.

 

posted @ 2019-09-24 18:11  不会编程的小卜  阅读(997)  评论(0编辑  收藏  举报