NodeMCU ESP8266+Arduino:将宿舍老式门锁改造为简易密码锁

基本信息

实验环境

  • Arduino IDE
  • Win 10电脑
  • 宿舍门锁:老式旋转开关门锁

实验材料

  • NodeMCU:以ESP8266为核心模块,CH9102X驱动版本(CP2102驱动升级版)
  • 4x4矩阵薄膜键盘
  • MG996R 金属标准舵机 180度(3.0-7.2V)
  • 其它:microusb数据线、面包板、杜邦线若干

Untitled

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

(一)驱动安装、环境配置、例程运行

参考:

驱动安装

Untitled
Untitled

  • 将电脑连接上NodeMCU,在设备管理器→端口(COM和LPT) 下查看是否显示连接上了设备,确认驱动安装成功(可以看到显示连接到了COM3端口)。

Untitled

Arduino下载安装及配置

Untitled

Untitled

  • 点击工具→开发板→开发板管理器,搜索ESP8266,点击安装,安装该开发板定义。这里因为要从github上下载文件,可能需要科学上网(若无法科学上网,可参考这篇文章解决)。安装完成后显示installed就可以了。

Untitled

  • 工具→端口选择刚刚在设备管理器看到的端口号COM3,在工具→开发板选择NodeMCU 0.9(根据自己板子的实际Module情况选择,CP2102驱动选NodeMCU 1.0也可以)。这样Arduino就可以和NodeMCU通信了。

Untitled

例程运行

使用C语言编程,以下代码来自:https://www.scaugreen.cn/(这个博客的系列教程很好,推荐)

  • Arduino相关功能区如下:
    • 验证:类似编译。
    • 上传:类似编译+运行。
    • 新建、打开、保存:对文件的操作。

Untitled

  • 例子一:串口通信

程序功能:NodeMCU每隔1秒向串口输出“WiFi connected”信息。

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);
}

Untitled

点击验证,提示编译成功。

点击上传,NodeMCU开始运行程序(写入过程,板子上LED会闪烁),打开工具→串口监视器,可查看程序是否运行成功。注意串口监视器的波特率要调到和程序以及板子一致,否则会出现乱码。

Untitled

一旦NodeMCU通电,程序就会不断地运行(可以从串口监视器看到)。按下板子USB口旁边的RST按键进行Hard Reset,会重启板子,同样也会自动运行该程序。

  • 例子二:控制LED闪烁

程序功能:NodeMCU板子上自带的LED灯循环闪烁(亮→等1秒→暗→等2秒)。注意此时无串口通信。

//如果是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)
}

过程同上:复制程序→验证(显示编译成功)→上传(板子LED闪烁)→上传成功,程序开始运行(LED规律闪烁)

完成上述步骤,就可以正式开始使用NodeMCU制作项目了。

(二)将老式门锁改造为简易密码锁

NodeMCU引脚图

Untitled

注意此引脚图是CP2102驱动版本的(也适用于CH9102X驱动版本)。

将舵机连接至NodeMCU

舵机参数

Untitled

Untitled

  • 4
    点赞
  • 69
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值