源码作者:散人QQ:3182076356未经商业许可,禁止商用推荐研究学习本代码包含14个开发模块在这里不细说(贺阳团队网络工作室批准开源)/*!
* 未经许可,禁止商业!
* 贺阳团队网络工作室
*
*/
#include <DFRobot_DHT.h>
#include <DFRobot_Servo.h>
#include <DFRobot_URM10.h>
#include <DFRobot_NFC0231.h>
#include <DFRobot_LiquidCrystal_I2C.h>
DFRobot_LiquidCrystal_I2C lcd1602;
DFRobot_PN532_IIC nfc;
Servo servo_A6;
DFRobot_URM10 urm10;
DFRobot_DHT dht11_5;
void setup() {
lcd1602.begin(0x20);
nfc.begin();
servo_A6.attach(A6);
dht11_5.begin(5, DHT11);
delay(3000);
lcd1602.printLine(uint32_t(1), "正在加载数据中...");
delay(15000);
lcd1602.clear();
delay(2000);
lcd1602.printLine(uint32_t(1), "正在获取贺阳团队网络工作室授权卡片");
delay(5000);
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "开发人员:散人");
delay(3000);
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "数据加载完毕,欢迎使用!");
}
void loop() {
if (nfc.scan()) {
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "读卡中...");
digitalWrite(0, HIGH);
digitalWrite(1, HIGH);
if (nfc.scan("4978ef9c")) {
digitalWrite(0, HIGH);
digitalWrite(3, HIGH);
digitalWrite(0, HIGH);
servo_A6.angle(abs(90));
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "欢迎回家!");
}
if (nfc.scan("4978ef9c")) {
digitalWrite(0, HIGH);
digitalWrite(3, HIGH);
digitalWrite(0, HIGH);
servo_A6.angle(abs(90));
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "欢迎主人回家");
}
}
else {
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "未授权,无法开锁!");
}
delay(20000);
if (((urm10.getDistanceCM(4, 5))>"30cm")) {
while (!((urm10.getDistanceCM(4, 5))>"30cm")) {
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "安防警告");
lcd1602.printLine(uint32_t(2), "请离开本系统3米开外");
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(0, LOW);
delay(5000);
if (((urm10.getDistanceCM(4, 5))<="30cm")) {
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "正在上报");
delay(5000);
lcd1602.clear();
lcd1602.printLine(uint32_t(1), "已上报至云端");
}
}
}
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(0, LOW);
while (1) {
lcd1602.printLine(uint32_t(1), "贺阳团队网络工作室出品");
delay(20000);
lcd1602.clear();
delay(3000);
lcd1602.printLine(uint32_t(1), "贺阳团队网络工作室门禁系统");
delay(10000);
lcd1602.clear();
delay(3000);
lcd1602.printLine(uint32_t(1), "系统正常运行");
delay(10000);
lcd1602.clear();
delay(3000);
lcd1602.printLine(uint32_t(1), "开发人员");
lcd1602.printLine(uint32_t(2), "散人");
delay(15000);
lcd1602.clear();
delay(3000);
lcd1602.printLine(uint32_t(1), dht11_5.getTemperature());
}
}
详细清单并定制请联系QQ:3182076356