一文速通ESP8266NodeMCU(基于ArduinoIDE)——万字爆肝含示例代码

ESP8266,点击此处黄色字体领取文章中的配套资料

ESP8266是一款由乐鑫(Espressif)公司开发的芯片。

一般来说,搭载了ESP8266芯片,长得像下面的这样的开发板就叫ESP8266NodeMCU。

可能会有些许不同,但是只要芯片上写着ESP8266的就没问题。因为随便来个人搞个ESP8266的芯片都可以搞个自己的ESP8266NodeMCU。

ESP8266内部集成了WiFi,所以可以作为WiFi模块(我干过,用STM32去采集数据,然后通过串口通信传给ESP8266,再由ESP8266把数据上传到服务器),也可以作为独立的微控制器。

接下来我们就开始用ArduinoIDE来编写程序速通一遍ESP8266NodeMCU。(需要对单片机有点基础,否则一些名词会听的稀里糊涂)

ArduinoIED环境配置

要使用ArduinoIED编写ESP8266NodeMCU的程序,我们需要有ESP8266开发板的资源包,这个我们可以去电灯科技的官网里找离线安装包。

包括ESP32的资源也有。

我们点击下载之后会跳转到Arduino中文网,跟着步骤下载即可。得到一个exe文件,直接执行就好了。

然后在ArduinoIDE中按照下面选择即可(不是我不截图,一用快捷键截图这些选项就不见了,所以只能拍照了)

GPIO

要学习一款芯片,我们先成为电灯大师再说。

我们能用的ESP8266NodeMCU的GPIO口其实挺少的。

GPIO口看着不少,其实右边那一排的GPIO口我们是用不了的(不作为普通的GPIO口使用,其他特殊用途可以),因为它们是用来控制内部存储单元的。就记着A0口在的那一排的其他GPIO用不了。

然后左边一排的GPIO中,GPIO1和GPIO3被用来串口通信,一般也不用作其他用途,所以能用的GPIO口其实少的可怜。

那我们就先点个灯吧。

闪烁LED

配置GPIO口模式

pinMode(uint8_t pin, uint8_t mode);

第一个参数可以直接填入ESP8266NodeMCU开发板上的标注,例如“D0”,也可以填入数字,例如D0实际上是GPIO16,因此填入数字16也是可以的。

第二关参数配置模式,简单来说我们就使用三种,OUTPUT,INPUT,INPUT_PULLUP,分别是输出,输入,上拉输入,其实可配置的模式不止这三种,但是这三种是最常用的。

数字输出

digitalWrite(uint8_t pin, uint8_t val);

第一个参数就是指定GPIO口,跟上面一样。

第二个参数直接写数字即可,1就是高电平,0就是低电平。

点亮LED

void setup() { // put your setup code here, to run once: pinMode(D0,OUTPUT); //等价于pinMode(16,OUTPUT); digitalWrite(D0, 1); //等价于digitalWrite(16, 1) } void loop() { // put your main code here, to run repeatedly: }


以防有小伙伴不清楚这种格式的代码编写(因为51和32都是写main函数的),这边稍微解释一下。我们写在setup函数里的是配置东西的代码,只会执行一次,而写在loop函数里的是会一直循环执行的东西,可以理解为我们51,32代码里的while(1)。

这样我们先配置了GPIO口,再输出高电平,然后再接上LED就可以实现点亮LED的操作了。

完整代码可进群免费领取!!!

嵌入式物联网的学习之路非常漫长,不少人因为学习路线不对或者学习内容不够专业而错失高薪offer。不过别担心,我为大家整理了一份150多G的学习资源,基本上涵盖了嵌入式物联网学习的所有内容。点击下方链接,0元领取学习资源,让你的学习之路更加顺畅!记得点赞、关注、收藏、转发哦!

点击这里找小助理0元领取

the end

评论(0)