使用Arduino开发NodeMcu

编程知识 更新时间:2023-04-30 00:34:21

目录

一、前言

二、知己知彼,百战不殆

 三、装驱动、配环境和跑例程 

1.驱动

2.配环境

3.跑例程 

例子一:串口通信

例子二:控制LED闪烁


一、前言

        因为自己参加的一个比赛需要与硬件结合呀,虽然在大二时期学习了单片机,但是学习太过理论化了。没有去做一点软硬结合的项目,真的很后悔。所以现在在网上查找一些资料,决定选用NodeMcu板子,原因如下:

  • 找到了相应的详细参考资料,参见《软硬结合——从零打造物联网》、《3D可视化教程》
  • 物美价廉,还可使用Arduino进行开发

二、知己知彼,百战不殆

        在比赛中要用到NodeMcu,所以先了解一下相关信息。

        NodeMCU,是一个开源的物联网平台。 它使用Lua脚本语言编程。该平台基于eLua 开源项目,底层使用ESP8266 sdk 0.9.5版本。该平台使用了很多开源项目, 例如 lua-cjson, spiffs. NodeMCU包含了可以运行在 esp8266 Wi-Fi SoC芯片之上的固件,以及基于ESP-12模组的硬件。总结来说,nodemcu本质就是ESP8266+USB转串口芯片,ESP8266是一块可编程的WIFI芯片。

        据了解 ,NodeMcu可分为v2版本和v3版本,v2版本的价格比v3版本稍贵一点,并且v2尺寸稍微小一点,具体差别可查阅其他资料,我根据自己的需要买了v2版。如果你是第1次玩硬件的话,记得买一根数据线 。

         

 三、装驱动、配环境和跑例程 

1.驱动

        板子大概长这样:

        第1步需要做的就是下载相应的驱动 。比较简单的方法就是先在电脑下载一个驱动精灵类似的驱动软件 ,然后使用数据线将板子连接到电脑上 ,接着使用驱动精灵自动检测并安装所需要的驱动,然后进入设备管理器,查看是否安装完成,安装成功的话,结果类似如下所示:

2.配环境

        刚刚已经说到要在Arduino开发NodeMcu,那么首先要下载Arduino,官网arduino下载,或者推荐在这个地址 搜索下载各式各样软件。安装后打开,界面如下:

         依次点击文件|首选项, 然后跳转到如下界面,将下面的附加开发版管理器网址设置为http://arduino.esp8266/stable/package_esp8266com_index.json:

         随后点击按钮“好”即可。再接着点击工具|开发板|开发板管理器,跳转到如下界面:

        然后找到如上所示的包, 再点击安装即可,因为我已安装,所以它显示已安装, 如果找不到这个开发包,那就试着检查一下地址有没有弄错,或者 重启Arduino并重新按照上面的步骤添加附加开发版 管理器地址

        在下载过程中,如果非常缓慢的话,可以将我提供的这个包替换你的对应路径里面的Arduino15文件,如下所示,Karry是对应我自己的用户名,在替换的时候记得对应的找到你自己的路径。

        替换成功后,不出意料的话, 你就可以在开发版中选择NodeMcu了,如下所示:

3.跑例程 

       在经过第2步后,我们已经选好了NodeMcu, 所以我们可以来运行一些例子吧,刚开始先让自己看到运行的结果,后期再慢慢把代码消化,这样可能会更有兴趣和信心~tips: 以下代码都来自这位优秀的大佬的博客https://www.scaugreen/

例子一:串口通信

       主要功能是定时在串口打印信息。

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  delay(10);
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("WiFi connected");
  delay(1000);
}

Arduino的相关功能区如下, 下面将对其一一介绍:

标题

验证: 类似于c语言中的编译;

上传: 类似于c语言中的编译+运行;

 后面三个功能按钮就比较容易理解了,就不讲了。    

        把以上代码直接复制到Ardunio中,点击验证,如果如下图所示,则成功上传到硬件:

按照如下操作即可看到打印的信息:

       注意串口中设置的波特率要与代码中的波特率是一样的,不然的话接收的信息就会乱码,如下所示代码中设置的波特率是115200,如果我们将串口里的波特率改为9600,就会出现乱码的情况。

 

例子二:控制LED闪烁

//如果是nodemcu V3版,需要另外定义LED引脚
//#define LED_BUILTIN 2 
void setup() {
  pinMode(LED_BUILTIN, OUTPUT);     // Initialize the LED_BUILTIN pin as an output
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, LOW);   // Turn the LED on (Note that LOW is the voltage level
  // but actually the LED is on; this is because
  // it is active low on the ESP-01)
  delay(1000);                      // Wait for a second
  digitalWrite(LED_BUILTIN, HIGH);  // Turn the LED off by making the voltage HIGH
  delay(2000);                      // Wait for two seconds (to demonstrate the active low LED)
}

      类似地进行上传,在100%上传完成之后,板子上的灯便会定时闪烁如下所示:

 

 

 

 

更多推荐

使用Arduino开发NodeMcu

本文发布于:2023-04-22 08:05:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/65da8fd040d5e2e9c657b8935ddaa4a8.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Arduino   NodeMcu

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 95466文章数
  • 24062阅读数
  • 0评论数