闲言碎语
2016年10月17日,那是一个周一。在淘宝发现nodeMCU,被其价格蒙骗,入手了一块。样子如下,V1.0版本宣称可以without any trouble的使用。
图片来自然而,我买到的这块flash起来确实相当trouble。在使用了他们自家的nodemcu-flasher(下载的时候注意选择对应的系统位数)来下载固件时,却始终下载不了,进度条一直不会动。
注意文件路径别弄错。
可能你在其他文章看到需要下载多个文件的,地址参考下图。具体请到乐鑫官网找相关文档。
下载地址如下下载固件后发现不能工作,请接上串口看看输出是否正常。如果有乱码的话,考虑下载espxxx.bin和blank.bin两个文件,这个可以去乐鑫的GitHub上面找。
如果在阅读本篇文章的你,也遇到不能下载的问题,可以试试看下面的方法:
拔掉USB线,按住板子上面flash按键,插入USB线,点击软件上的flash按钮。另外,将下载波特率设置为115200
GOOD LUCK TO YOU
构建自己的固件
拿到这一块小玩意后,我们可以来这里构建自己的固件,输入自己的邮箱,用来接收编译后的bin文件。注意要输入两次邮箱地址,第二次输入不可以复制。
选择自己感兴趣的模块这里提供了各种各样的模块,包括传感器,LED驱动,通信协议等等,选择自己感兴趣的模块。默认已经选择了一些模块。提交后,过一会就会收到邮件。邮件里面有两个bin文件的下载地址,一个是float,一个是integer。float的比较大,下载那个任君选择,区别是带不带float。然后就可以使用nodemcu-flasher来下载自己的固件了。
我选择了这些模块:
adc,bit,cjson,coap,crypto,enduser_setup,file,gpio,http,mqtt,net,node,pwm,rtcfifo,rtcmem,rtctime,sntp,spi,tmr,uart,websocket,wifi
adc,bit,cjson,coap,crypto,enduser_setup,file,gpio,http,mqtt,net,node,pcm,pwm,rtcfifo,rtcmem,rtctime,sntp,tmr,uar,twebsocket,wifi,ws2812
后面的文章会围绕这些模块来说。
编写第一个程序
我想你大概猜到第一个程序是什么了吧!在此之前,推荐这个ESPlorer。
如果你打开后,send左边的文本框是灰色的,可以按一下Chip ID。你会看到上面的文本框会有内容输出。上电后,会调用一个 init.lua的文件夹。这里我们让nodeMCU循环发送 Hello NodeMCU。
tmr.alarm(0, 1000, tmr.ALARM_AUTO, function()
print("Hello NodeMCU!\n")
end
)
没设置成markdown,没有代码块,将就一下吧。代码编写玩后,保存为init.lua。点击Save to ESP,把文件存储到flash里面。右边的输出文本框也会不断的打印Hello NodeMCU。然后,拔插USB,重新打开这个工具,也会看到不断的输出Hello NodeMCU。
如果要移除init.lua,可以在右边输入下面的内容
=file.remove("init.lua")
OK,我们的上手操作也就到这里就结束了。如果你新买模块的话,可以使用这种方法测试模块是不是正常的~
后面的文章发表有一段时间了。可能和现在的文档提供的API有差别。如果在阅读过程中发现理解上有难度的,欢迎评论,我可以针对性的更新。
另外,如果你觉得我文章对你有帮助不妨点个赞或者打赏,让我更有动力写下去
网友评论
刷系统 一直刷不上 log里面有错误信息
Note:Detect serial port changed.
Note:Auto MAP serial port.Port-->COM4
Note:Serial port connected.
Note:Begin find ESP8266.
Note:ESP8266 ACK success.
Note:ESP8266 ACK success.
Error:Set ESP8266 Address timeout.
![image](http://ws2.sinaimg.cn/large/006p9NiLly1fnhofjhzeij30fw09bmxm.jpg)
stack traceback:
init.lua:2: in main chunk
[C]: in function 'dofile'
stdin:1: in main chunk
请问楼主,我用我的固件
固件含如下模块: cjson, file, gpio, net, node, pwm, tmr, uart, wifi.
然后把代码写进去的时候,会出现上面的错误请问是怎么回事呢?
能不能帮忙看看,感激不尽,谢谢谢。
count = 0
timer = tmr.create()
runTime = tmr.time()
tmr.register(timer, 1000, tmr.ALARM_AUTO, function()
local temp = 0
count = count + 1
temp = tmr.time()
print("count&runTime=", count, temp - runTime)
runTime = temp
if(count == 10) then
tmr.interval(timer, 3000)
end
if(count == 20) then
tmr.stop(timer)
print(tmr.state(timer))
print(tmr.unregister(timer))
print(tmr.state(timer))
end
end)
tmr.start(timer)
PORT OPEN 9600
Communication with MCU..Got answer! Communication with MCU established.
AutoDetect firmware...
Can't autodetect firmware, because proper answer not received (may be unknown firmware).
Please, reset module or continue.
� �8�@��K������b����P�cY��\TY�I��n��������wu{w��ou}����
PORT CLOSED
搞了个nodemcu云端编辑lua代码的网站 谁试试 站点经过香港TCP转发 速度可能会很慢