精华内容
下载资源
问答
  • ESP8266 Python使用方法

    千次阅读 2019-12-18 20:51:45
    ESP8266 Python使用方法 MicroPython简介 官网介绍(http://www.micropython.org/) MicroPython是Python 3编程语言精简高效实现 ,包括Python标准库一小部分,并且经过优化,可在微控制器和受限环境中运行。...

    ESP8266 Python使用方法

    MicroPython简介

    • 官网介绍(http://www.micropython.org/)

        MicroPython是Python 3编程语言的精简高效实现 ,包括Python标准库的一小部分,并且经过优化,可在微控制器和受限环境中运行。
      
        MicroPython pyboard是一个紧凑的电子电路板,在裸机上运行MicroPython,为您提供一个低级Python操作系统,可用于控制各种电子项目。
      
        MicroPython包含许多高级功能,如交互式提示,任意精度整数,闭包,列表理解,生成器,异常处理等。然而它非常紧凑,可以在256k的代码空间和16k的RAM内运行。
      
        MicroPython旨在尽可能与普通Python兼容,以便您轻松地将代码从桌面传输到微控制器或嵌入式系统。
      
    • 在ESP8266上运行MicroPython

      • 开发环境

        • ESP NodeMCU
        • Windows10 64位
      • 安装esptool

          # 需要安装python环境
          pip install esptool
        
      • 安装MicroPython固件

        • 在官网上下载最新固件(http://micropython.org/download#esp8266)

        • 将NodeMCU用数据线与电脑链接,并在cmd命令窗口使用mode查看com口

        • 使用命令写入固件

            # 清空原有固件,如果报错没有该命令则需要使用esptool.py ...
            esptool --port COMx erase_flash
            
            # 写入固件
            esptool --port COM3 --baud 460800 write_flash --flash_size=detect -fm dio 0 esp8266-20170108-v1.8.7.bin
            (部分型号的 NodeMCU,需增加命令参数 -fm dio)
          
      • 使用putty链接开发板

        • 使用串口连接 COMx
        • 速率设置为 115200
        • 将 Serial /FLow control 设置为None
        • 输入回车键即会显示输入提示符

    Micro Python 常用库

    • machine 库

        import machine
        # 设置 p2 为 gpio 2号口,并设置为输出
        p2 = machine.Pin(2,machine.Pin.OUT)
        # 熄灭
        p2.value(1)
        #点亮
        p2.value(0)
      
    • os 库(import os)

      • 对文件系统进行操作

      • 常用文件系统操作命令

          os.statvfs('/')     # 查看文件系统状态
          os.listdir()        # 列出当前目录下文件
          os.mkdir('xxxx')    # 创建目录
          os.rmdir('xxxx')    # 删除目录
          os.stat('test.py')  # 列出文件状态
          os.rename('test.py','test.py.bak')  # 修改文件名
          os.remove('test.py.bak')            # 删除文件
          
          # 打印文件内容
          f=open('boot.py','r')
          f.read()
          f.close()
        
    • network 库(import network)

      • 对网卡进行操作

      • 常用命令

          sta_if = network.WLAN(network.STA_IF)   # 设置工作站网卡 sta_if
          sta_if.active(True)                     # 开启网卡
          sta_if.connect('xxx','yyy')             # 连接 wifi 网络,名称为 xxx,密码为 yyy
          sta_if.active()                         # 查询网卡是否激活
          sta_if.isconnected()                    # 查询网络是否连接
          sta_if.ifconfig()                       # 查询网络连接信息
          sta_if.active(False)                    # 关闭网卡
          
          # 设置热点,热点名为Micropython... , 密码为:micropythoN
          ap_if = network.WLAN(network.AP_IF)             # 设置热点网卡 ap_if
          ap_if.config(essid="abc", password="12345678")  # 设置热点与密码
          ap_if.config("essid")                           # 查看设置的热点
          sta_if.active(False)                            # 关闭热点
        
    • webrepl_setup 库 (import webrepl_setup)

      • 操作web界面
      • 输入 e
      • 输入密码
      • 确认密码
      • 输入 y
      • 浏览器访问 webrepl 网页( http://micropython.org/webrepl/ )
      • 修改 web段IP 地址
    • time 库

      • 操作时间的函数

      • 常用命令

          time.sleep(1)  # 延时1秒
        
    • dht 库

      • dht 操作温湿度传感器

          import dht
          import machine
          # 将4号引脚设置为dht11传感器
          d1 = dht.DHT11(machine.Pin(4))
          # 测量一次
          d1.measure()
          # 返回测量的温湿度
          d1.temperature()
          d1.humidity()
        
    • MQTTClient 库

    • 基本使用方法

      • 编译环境会自动出现缩进,连续按4次回车,即开始运行程序,CTRL + C 终止程序
      • 按 Ctrl + e 进入粘贴模式,CTRL + D 退出即可
      • 也可以保存为.py文件,使用 webrepl 上传文件,import 文件名 即可运行该程序
      • 每次esp8266上电后会自动运行 main.py 函数
    展开全文
  • 使用Node ESP8266通过UDP方法控制ESP8266的LED灯 完整代码 #include <ESP8266WiFi.h> #include <WiFiUdp.h> const char *ssid = "ABC666666"; //网络名称 const char *password = "ABC666666"; //网络...

    使用Node ESP8266通过UDP方法控制ESP8266的LED灯

    完整代码

    #include <ESP8266WiFi.h>
    #include <WiFiUdp.h>
    
    const char *ssid = "ABC666666";     //网络名称
    const char *password = "ABC666666"; //网络密码
    
    WiFiUDP Udp;
    unsigned int localUdpPort = 8686; // 本地端口号 (0~65535)
    char incomingPacket[537];         // 接收缓冲区
    
    void setup()
    {
      //以下为基本功能初始化,初始化串口和网络和LED
      pinMode(2, OUTPUT);
      Serial.begin(115200);
      Serial.println();
      Serial.printf("Connecting to %s ", ssid);
      WiFi.mode(WIFI_STA);
      WiFi.setAutoConnect(false);
      WiFi.begin(ssid, password);
      while (WiFi.status() != WL_CONNECTED)
      {
        delay(500);
        Serial.print(".");
      }
      Serial.println(" connected");
    
      //以下开启UDP监听并打印输出信息
      Udp.begin(localUdpPort);
      Serial.printf("Now listening at IP %s, UDP port %d\n", WiFi.localIP().toString().c_str(), localUdpPort);
    }
    
    void loop()
    {
      int packetSize = Udp.parsePacket(); //获取当前队首数据包长度
      if (packetSize)                     // 有数据可用
      {
        Serial.printf("Received %d bytes from %s, port %d\n", packetSize, Udp.remoteIP().toString().c_str(), Udp.remotePort());
        int len = Udp.read(incomingPacket, 536); // 读取数据到incomingPacket
        if (len > 0)                             // 如果正确读取
        {
          incomingPacket[len] = 0; //末尾补0结束字符串
          Serial.printf("UDP packet contents: %s\n", incomingPacket);
    
          if (strcmp(incomingPacket, "Turn off") == 0) // 如果收到Turn off
          {
            digitalWrite(2, HIGH); // 熄灭LED
            Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
            Udp.write("LED has been turn off"); // 回复LED has been turn off
            Udp.endPacket();
          }
          else if (strcmp(incomingPacket, "Turn on") == 0) // 如果收到Turn on
          {
            digitalWrite(2, LOW); // 点亮LED
            Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
            Udp.write("LED has been turn on"); // 回复LED has been turn on
            Udp.endPacket();
          }
          else // 如果非指定消息
          {
            Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
            Udp.write("Data Error!"); // 回复Data Error!
            Udp.endPacket();
          }
        }
      }
    }
    

    通过修改上述的代码,为我所用

    1.修改需要连接的wifi账号和密码

    const char *ssid = "ABC666666";     //网络名称
    const char *password = "ABC666666"; //网络密码
    

    2.修改监听的端口,(0~65535)任意选择,

    unsigned int localUdpPort = 8686; // 本地端口号 (0~65535)
    

    3Arduino的IDE把程序下载到ESP8266,打开IDE中的串口调试助手,重启ESP8266,正常来说串口助手会打印下面的信息

    在这里插入图片描述

    4.完成上述操作后,下载一个网络调试助手

    • 我选择了一款Packet Sender,在下面的官网下载:

    https://packetsender.com/

    5.打开Packet Sender网络调试助手,在步骤3复制IP地址:192.168.1.101,端口8686,选择UDP模式。填写好信息如下

    在这里插入图片描述

    展开全文
  • ESP8266固件升级方法ESP8266-01S模块)简介下载烧录工具和固件升级固件三级目录 简介 在使用ESP8266-01S做项目时,遇到了最新AT指令不支持情况,如下: AT+CIPDNS_CUR 使用AT命令查询当前版本信息,可以看到...

    ESP8266固件升级方法(ESP8266-01S模块)

    简介

    在使用ESP8266-01S做项目时,遇到了最新的AT指令不支持的情况,如下:

    AT+CIPDNS_CUR
    

    使用AT命令查询当前版本信息,可以看到AT固件是2016年的,处于1.3.0版本,所以要对ESP8266模组进行固件升级:

    AT+GMR
    

    所以要首先对模块进行固件升级。

    下载烧录工具和固件

    烧录工具: 淘宝上买的这个就可以了在这里插入图片描述

    烧录软件:nodemcu-flasher的ESP8266Flasher.exe
    AT固件:博安通出厂固件 v1.7.1.0

    升级固件

    打开烧录软件,进行相关设置。
    Advanced页面的设置:
    在这里插入图片描述
    Config页面的设置:
    在这里插入图片描述
    Operation页面的设置:选择正确的串口,点击Flash按钮即可。
    在这里插入图片描述

    展开全文
  • 使用像“blink”这样标准草图或使用像 wifi_blink Arduino 程序这样基本示例在你 ESP8266 一个 3 美元支持 wifi 板上运行。 在 github 上,您将找到源代码。 如果您想改进工具链,核心或添加一些示例。 ...
  • ESP8266-HomeKit, 在ESP8266_RTOS上使用API方法,HomeKit服务器本机 ESP8266-HomeKit 使用API方法的ESP8266HomeKit服务器基础更新 17 2017年月请阅读问题 41中消息关于切换到 Maxim Kulkin代码库。苹果协议...
  • 所以使用AT命令查询当前版本信息,可以看到固件是2016年,所以要对ESP8266模组进行固件升级: AT+GMR 复位模组,查询Flash大小: A+RST 2. 下载烧录工具和固件 在 乐鑫官网 ,点击工具一栏,下载最新烧录...

    1. 查询当前版本和信息

    在使用ESP8266做项目时,遇到了最新的AT指令不支持的情况,如下:

    AT+CIPDNS_CUR
    

    使用AT命令查询当前版本信息,可以看到AT固件是2016年的,处于1.3.0版本,所以要对ESP8266模组进行固件升级:

    AT+GMR
    

    复位模组,查询Flash大小:

    A+RST
    

    2. 下载烧录工具和固件

    本文中使用的烧写工具是 flash_download_tools_v3.6.6,烧写的AT固件为安信可发布的1.4.0版本:可以点击此链接直接下载:

    该下载链接有效期只有3天,如果失效,请在微信公众号Mculover666回复关键词ESP8266获取。

    3. 硬件准备

    本文使用的模组是ESP8266-12F系列,该模组引脚如下,本次实验中会用到其中的 5 个引脚(图中红色圈出部分):

    还需要准备一个USB转串口工具,将该模组的串口直接连接到PC上,接法如下:

    • VCC:连接至USB转串口3.3V
    • GND:连接至USB转串口GND
    • TXD0:连接至USB转串口RXD
    • RXD0:连接至USB转串口TXD
    • GPIO0:重点,见下面。

    GPIO0引脚所接电平高低决定了ESP8266的启动模式:

    GPIO0 启动模式
    接VCC或者留空 正常启动模式
    接GND 进入Flash烧写模式

    在本实验中,烧录固件时将GPIO0接到GND,烧录完毕后将GPIO0留空,查看ESP8266模组是否正常工作

    我准备了两个模组用于演示,一个是正点原子的ESP8266模组,另一个是小熊派IoT开发套件中包含的ESP8266模组。

    正点原子模组烧录接法

    正点原子模组将这五个引脚全部引出,所以直接与USB转串口连接即可:

    小熊派模组烧录接法

    小熊派IoT开发套件中的模组只引出了四个常用引脚,并未引出GPIO0引脚,接法如下:

    4. 开始下载

    下载操作之前请确保模组、USB转串口、PC之间连接正常。

    ① 检测模组信息



    打开之后界面如下,首先设置连接模组的串口,再设置其他信息,和图中一样即可:

    然后点击START:

    确保模组的GPIO0已经接到GND,重新上电,可以看到成功检测到了模组信息:

    ② 烧录固件

    点击文件浏览按钮:

    选择下载包提供的固件,地址填写0x000,然后在最前打勾:

    点击START,重新上电,开始烧录,在最下方可以看到烧录进度:

    烧录完成后,如图:

    ③ 检查模组是否正常

    使用串口助手打开串口,然后将GPIO0引脚留空,恢复正常启动模式,模组重新上电,检查输出信息是否正确,可以看到,固件成功的升级到了 1.4.0 版本:

    最后检查一下之前不能正常使用的AT指令是否可以正常使用:

    至此,ESP8266模组AT固件升级完成。

    接收更多精彩文章及资源推送,欢迎订阅我的微信公众号:『mculover666』。

    展开全文
  • 使用 Sming 框架 esp8266 IR 库。 该代码是一个端口 红外线接收详情 接收器代码与原始库中代码相同。 定时器例程每 50us 执行一次并将数据附加到缓冲区。 然后用户调用解码例程,如果可以解码,则返回。 红外线...
  • 使用 esp8266 将廉价 RGB LEDstrips 连接到 pimatic wifi370 协议实现。 目前这个存储库包含以下内容: 在 NodeMCU 固件上运行 Lua 脚本 Eagle PCB原理图和电路板布局 快速设置方法 安装和优秀插件 在 ...
  • ESP8266使用记录

    2018-09-08 16:30:52
    ESP8266的使用记录,包括如何上手,淘宝店资料,如何烧录固件,如何上传lua代码,lua程序编写和一些坑,参考文档摘录,参考协议,使用的同步方法,以及一些实测可以完成无线同步的代码。
  • 了解如何使用esp8266 nodemcu板对esp12F进行编程,而无需添加按钮进行重置并将其置于闪存模式。 硬件组件: ESP8266 ESP-12E×1个 NodeMCU ESP8266分支板×1个 UTSOURCE电子零件×1个 我正在做一个需要WS2812B RGB ...
  • ESP8266 IDE2.0使用方法

    千次阅读 2016-03-09 12:54:29
    下载并解压IDE 2.0, 下载地址见帖:ESP8266 安信可WIFI模块,SDK V2.0编译环境IDE正式发布!  这个IDE2.0解压时候要注意  1、建议使用7-zip软件解压(由于文件路径冗余,普通解压软件会出错)  2、解压...
  • 我想建立这个开源库,作为如何将ESP8266模块与arduino结合使用的示例。 具体来说是发出http请求。 这可能是大多数人使用目的。 这里唯一(无疑是很大)缺少功能实际上是ip地址查找。 您必须对要访问IP...
  • ESP8266-wifi模块使用方法

    千次阅读 多人点赞 2019-03-02 00:16:25
    ③5v转3.3v模块(esp8266仅支持3.3v电压,使用5v模块有几率会被烧坏) ④杜邦线 二、连线 1、wifi模块有8个引脚,要使用它,我们只需要用到5个引脚即可(红框) 本来不准备画出连线图,考虑到你们学习效率问题...
  • 前言: ESP8266 是一个完整且自成体系的 WiFi 网络解决方案,能够...Espressif 推荐使用如下一些工具作为ESP8266的调试工具。(用户也可以自行选择其他同类型的工具。)  烧录工具: FLASH_DOWNLOAD_TOOLSFLASH_DO
  • ESP8266 RTOS软件开发套件 ** 重要通知 ** 关于这个仓库 一个新分支模型应用于... 但是,我们首先提供一个新版本的ESP8266 SDK( ESP8266_RTOS_SDK v3.0 ),作为一种解决方法,它与esp-idf (esp-idf样式)共享相同
  • 首先电脑安装python环境 然后使用pip安装esptool、pyserial两个库 pip install esptool ...然后电脑连接esp8266并查看端口 得到COM9 然后我们使用命令 esptool.py --port COM9 erase_flash 完成
  • 利用 ESP8266 可以实现十分灵活组网方式和网络拓扑。 **SoftAP:**即无线接入点,是一个无线网络中心节点。通常使用的无线路由器就是一个无线接入点。 **Station:**即无线终端,是一个无线网络终端。 2.1.1. ...
  • esp8266-项目 该存储库用于容纳ESP8266微控制器示例项目。... ota-tcp-一种无线更新ESP8266固件或使用TCP / IP“空中传输”(OTA)固件简单方法。 [博客帖子] 。 udp-debug-将输出从“ os_print
  • 《科学怪人》是一款快速又肮脏的固件,由ESP8266的不同部分(因此而得)制成。 特点: 一个漂亮而闪亮的命令行界面,类似于u-boot。 不再草率的AT命令。 完整的命令行编辑和历史记录。 向外壳添加新命令的一种...
  • agi-esp8266旨在为最终用户提供一种简单直接的方法来测量影响其植物环境数据。 它是计划中系统仪器部分,该系统用于在窗台,温室和冷框上种植植物。 该软件目前还处于准系统状态,但是某些功能目前正在运行...
  • ESP8266固件烧录方法

    2016-03-30 16:11:00
    今天拿到ESP8266的板子,第一步是进行烧录固件。 首先是使用官方自带的参考文档,进行操作。发现每次烧录均卡在等待同步上电。 之后发现是烧录方法错误。 正确的烧录方法: 先按下FLASH不放,再按...
  • 接着上一篇文章《ESP8266类库的使用——总体概述》我们来继续深入学习ESP8266库类的实现方法,以String getVersion(void)方法为例。在前期的文章《Arduino+ESP8266连接WiFi》我们介绍了直接利用串口输入AT命令控制...
  • 用于 esp8266 MAX6675 热电偶驱动器。 它是 Arduino 库直接端口,位于 它使用 3 个 GPIO 引脚,因此可以使用 esp-1。 但是您将不得不重新分配您 RX 引脚。 确保在闪烁时没有将 max6675 连接到 RX 引脚,...
  • 使用该库来帮助将ESP8266设置为AP模式,提供一个配置页面并将设置保存在EEPROM中 要求 ESP8266WiFi库 用法 以zip格式下载此存储库(右侧按钮) 从Arduino IDE菜单中.ZIP安装库。 创建一个ESP8266DynConfig类...
  • 使用esp8266实现STM32联网(最简单USART方法

    万次阅读 多人点赞 2017-10-18 15:41:57
    上一篇esp8266怎么配置 esp8266和USB转TTL连接 esp8266简单介绍 esp8266连接路由器 esp8266通过路由器连接在同一局域网中的电脑,建立TCP...esp8266的透传模式 esp8266使用透传模式连接到电脑的网络调试助手 esp8266
  • ESP8266 RTOS软件开发套件 ** 重要通知 ** 关于这个仓库 ... 但是,我们首先提供一个新版本的ESP8266 SDK( ESP8266_RTOS_SDK v3.0 ),作为一种解决方法,它与esp-idf (esp-idf样式)共享相同
  • wifi模块使用教程,需要配套stc系列单片机wifi程序评论里告诉我我重新上传。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 449
精华内容 179
关键字:

esp8266的使用方法