`
hzy3774
  • 浏览: 984924 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

NodeMCU学习笔记之初始化工作

 
阅读更多

NodeMCU是一个开源的可以运行脚本的微控制器,直接支持WiFi链接和GPIO,而且成本低廉。是物联网开发的不二之选。板子是在某宝上买的,十多元到手,板载USB转串口芯片,5V转3.3V芯片,4Mflash,引出IO支持中断,ADC,数字输入输出,能完成单片机基本功能而且还有Wifi功能,性价比超高,因此开发功能只需要一根USB线,非常简洁:

首先整理NodeMCU相关网站:

API文档:http://nodemcu.readthedocs.io/en/master/

固件下载地址:https://github.com/nodemcu/nodemcu-firmware

开发工具nodemcu studio:https://github.com/nodemcu/nodemcu-studio-csharp

开发工具ESPlorer:https://github.com/4refr0nt/ESPlorer

固件烧写工具estool:https://github.com/themadinventor/esptool

估计见烧写工具nodemcu-flasher:https://github.com/nodemcu/nodemcu-flasher

附件里有英文版:How to program ESP8266 in Lua

书籍对应源码:How to program ESP8266 in Lua source

 

首先电脑上装好CH430驱动,使用nodemcu-flasher来烧写,直接点flash就好了:


 然后使用ESPLorer写入或者执行lua代码:


 然后就可以开始写代码了:

NodeMCU的代码如果像51单片机那样写个死循环,那么,要想让上位机软件通过串口连接它就只能拔电源重启了,如果不是死循环,程序运行完之后ESPLorer也就可以再次连接上板子了。

首先来点亮LED,板子上共有两个LED,ESP-12上的蓝色LED在pin4,USB接口左边连接按钮的红色LED在pin0,来点亮红色LED:

pin=0
gpio.mode(pin, gpio.OUTPUT)
gpio.write(pin, gpio.LOW)

 

通过延时函数,来让LED闪烁:

pin=0
gpio.mode(pin, gpio.OUTPUT)
i=10
while i>0 do
gpio.write(pin, gpio.LOW)
tmr.delay(500000)
gpio.write(pin, gpio.HIGH)
tmr.delay(500000)
i=i-1
end

 

使用PWM来调节LED亮度做个呼吸灯:

pin=4
freq=1000
max_pwm=1023
min_pwm=0

gpio.mode(pin, gpio.OUTPUT)
pwm.setup(pin, freq, max_pwm)
pwm.start(pin)
for i=0,4,1 do
     j=max_pwm
     while j>min_pwm do
          delay=max_pwm-j+1
          pwm.setduty(pin, j)
          tmr.delay(delay)
          j=j-1
     end
     while j<=max_pwm do
          delay=max_pwm-j+1
          pwm.setduty(pin, j)
          tmr.delay(delay)
          j=j+1
     end
end

 呼吸灯呼吸几次以后退出程序。

  • 大小: 448.8 KB
  • 大小: 30.6 KB
  • 大小: 30.5 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics