Arduino环境下开发NodeMCU(ESP8266)


  以前用过ESP8266,只是一些简单的应用。将ESP8266与单片机相连,使用AT指令进行串口通信,从而达到发送信息、接收信息一些目的。由于最近项目,需要充分利用ESP8266的内部资源,所以对ESP8266的应用进行了更加深入的研究。现将学习成果,总结如下。如有遗漏或者错误,欢迎指出。

   目前,我所知道的ESP8266的开发方式有这几种:

  • AT指令方式 –烧录AT的固件包,使用AT指令与ESP8266交互,执行相应指令,需与单片机相连
  • NodeMCU的lua开发 –烧录NodeMCU的固件包,使用Lua语言开发,使用ESP内部资源。
  • Arduino IDE下的开发 –相当于直接编写固件,编译之后,烧录进ESP,使用ESP内部资源。

  这几种方式我都有接触过,说说我的体会。

  • AT指令开发方式:
    优点:开发简单,资料较多。只需知道AT指令集,以及它的通信方式即可。
    缺点:浪费资源,需要MCU与其通信,不能独立完成某项功能。
  • NodeMCU的lua开发:NodeMCU本质也是ESP8266,只是它的固件是与lua脚本语言交互。
    优点:节省资源,开发简单,代码量少。
    缺点:
    1.lua解释器执行效率较低,我最终换成ArduinoIDE开发,就是因为读取传感器数据时,老是漏掉一个数据。2.前期准备比较麻烦。需要准备相应功能的固件,烧录进去,然后使用lua语言和工具与之调试。
  • Arduino IDE下的开发方式:
    优点:集编程和烧录一体,使用很方便。语言执行效率高,节省资源,开发简单,该有的库也都有。重要的是开发语言,对于我用单片机的人来说,能够很快上手。
    缺点:Arduino IDE需要写较长的代码时,不是很方便,如果需要查看底层函数或者方法,非常费劲。据说在VisualStudio 中有插件,因为自己电脑的原因,我没有尝试过。

Arduino IDE下开发NodeMCU(ESP8266)步骤:


官方的GitHub仓库:https://github.com/esp8266/Arduino

以及http://esp8266.github.io/Arduino/versions/2.0.0/doc/libraries.html#other-libraries-not-included-with-the-ide

软件环境:Windows 7 64bit

     Arduino 1.6.7

硬件环境:NodeMCU(CH340版)

arduino esp8266 库下载_NodeMCU

  1. 打开Arduino IDE,文件–>首选项
  2. arduino esp8266 库下载_arduino_02

  3. 附加开发板管理器网址:
    http://wechat.doit.am/package_esp8266com_index.json 或者
    http://arduino.esp8266.com/stable/package_esp8266com_index.json
  4. arduino esp8266 库下载_NodeMCU_03

  5. 项目 –> 加载库 –> 管理库,进入之后,它会自动下载库索引,等待下载完后。(注:如果不能下载,肯定是网络的原因,我使用的是vpn)在搜索栏输入esp8266,点击安装。
  6. arduino esp8266 库下载_ESP8266_04


  7. arduino esp8266 库下载_NodeMCU_05

  8. 安装完成之后,点击 工具 –> 开发板,会看见esp8266 模块,选择相应的模块。之后,可以看到右下角出现了相应的信息。
  9. arduino esp8266 库下载_ESP8266_06

  10. 前期准备工作完成,下边开始编写代码,并且烧录。
  11. 打开Arduino,点击 文件 –> 新建,点击 文件 –> 保存,输入文件名,确定。
    写入代码:
    void setup() {
    Serial.begin(115200);
    }void loop() {
    Serial.println("Hello,NodeMCU!");
    }

点击 验证,确认没有报错。

arduino esp8266 库下载_ESP8266_07

7.连接NodeMCU,安装ch340驱动,点击 工具 –> 端口 –> 端口号。如果驱动安装成功,连接上NodeMCU之后,会显示相应的端口号。若没有显示,请检查驱动或者连接问题。

arduino esp8266 库下载_arduino esp8266 库下载_08

8.点击 上传,先进行编译,等待上传。上传完成之后,显示上传成功。

arduino esp8266 库下载_ESP8266_09

9.点击工具 –>串口监视器。可以看见,在不断的输出 Hello,NodeMCU。

arduino esp8266 库下载_NodeMCU_10