如果想自己編譯固件的話,可以看這篇自己動手編譯nodemcu固件
閑言碎語
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,我們的上手操作也就到這里就結束了。如果你新買模塊的話,可以使用這種方法測試模塊是不是正常的~
后面的文章發表有一段時間了??赡芎同F在的文檔提供的API有差別。如果在閱讀過程中發現理解上有難度的,歡迎評論,我可以針對性的更新。
另外,如果你覺得我文章對你有幫助不妨點個贊或者打賞,讓我更有動力寫下去