一、ESP8266刚买回来,需要烧录Lua固件,才可以进行Lua开发,固件是Lua的源码(C语言)进行二次改造,官网也提供了固件源码开源,如果有兴趣,可以搭建linux系统进行个性化定制,再编译成固件提供给ESP8266烧录,DIY需要对C语言、linux系统、以及Lua源码基础。

二、作为新手,我选择官网的云构建,简单的选择几个必备函数:file、GPIO、net、node、timer、UART、WiFi

简单介绍功能:

1.file:文件操作函数,当我们需要保存新的数据(如wifi账号,wifi密码),需要使用该函数在ESP8266内创建、写入、删除文件等操作。

2.GPIO:引脚接收、设置,作为新手,我们可以先学习如何使用引脚点亮一个LED(包括 ESP8266的信号灯)

3.net:网络模块、远程控制。用于创建TCP/UDP端口,主要用于手机App、电脑端,接收,发送数据。

4.node:系统级功能,如睡眠、重新启动以及各种信息和 ID。

5.timer:分时器模块。该模块很重要,Lua属于单线程,在ESP8266开发里,我们编程会使用timer 代替 while 死循环。

6.UART:串口通讯。与GPIO不同的是,这个是已经设置好的引脚(TX - 发送 、RX - 接收)。

7.WiFi:wifi模块。详细介绍可以点击函数后面的小图标进入手册查看。

七、我下载的是 第一个 float-bin,暂时还没研究两个固件的区别,有懂行的可以评论区讨论。该链接官网有时效,尽量两个都下载,这个固件一般都不需要重新构建,保存好,够我们学习半年。

(二)ESP8266 固件烧录工具

一、固件烧录工具,网上有好几种,我这个只拿来烧录ESP8266,暂时没试过ESP32。

百度云盘链接: https://pan.baidu.com/s/1WLYck4X2C1DupVl2GtqyQQ 提取码:nsx4

二、我选择ESP8266 型号:ESP-12F 开发板进行烧录(主要是方便,直接插数据线即可)

4.从这些信息里面我们可以了解到固件的信息,有个重点:从此以后,ESP8266启动都会去运行一个名字为init.lua的文件。所以接下来我们就要学习烧录Lua文件。

(二)ESP8266 nodeMCU 官网手册: Lua 函数  - API

(三)ESP8266 nodeMCU 官网Github固件开源: nodemcu-firmware

(四)ESP8266 nodeMCU 官网推荐Lua烧录工具

一、ESPlorer

下载地址

1.这款工具是很多ESP8266 nodeMCU教程所使用的工具,但是用过它的人都知道,因为中文注释等问题,烧录会经常失败。另外需要java环境,nodeMCU官网其实也不推荐这个工具了,因为它已经没有人去维护。

2.你也可以使用这款工具,因为它有界面,对新手来说,除了烧录需要多点几次,其实没什么缺点。另外它还可以当作串口助手来调试。