今天在arduino平台做了一个按键开锁,真正代码也就几行。在这里也总结一下
一、用到的硬件主要是四个:
1.wemos d1的板子
2.继电器
3.单键触摸传感器
4.锁
二、开发环境
开发环境就是arduino,这里就不多说了。
三、接线
四、通过串口观察按键和不按键的区别。
#define ZHIWEN D2 //定义按键引脚
#define RELAY D8 //定义继电器引脚
int data; //定义data接收数据
void setup() {
Serial.begin(115200); //设置波特率
pinMode(ZHIWEN,INPUT);//设置按键模块为输入引脚
pinMode(RELAY,OUTPUT);//设置继电器为输出引脚
digitalWrite(RELAY,HIGH); //初始化引脚为高电平(关闭继电器)
}
void loop() {
data = analogRead(ZHIWEN); //读取数据
Serial.println(data); //在 串口打印出读取到的数据
}
现象
1.当没有按键时串口的状态
2.按下键的时候串口的数据
五、总结结论和编程按键开锁
首先我们发现我们不按键的时候,打印的值为0,当我们按键的时候的值为1023.那么我们可以通过这个来控制我们按键开锁 不按键的关闭。
以下就是代码
#define ZHIWEN D2
#define RELAY D8
int data;
void setup() {
Serial.begin(115200); //设置波特率
pinMode(ZHIWEN,INPUT);//设置按键模块为输入引脚
pinMode(RELAY,OUTPUT);//设置继电器为输出引脚
digitalWrite(RELAY,HIGH); //初始化引脚为高电平(关闭继电器)
}
void loop() {
data = analogRead(ZHIWEN); //读取按键状态数据
switch(data)
{
case 0:
Serial.println("close");
digitalWrite(RELAY,HIGH); //关闭继电器(关锁)
break;
case 1023:
Serial.println("open");
digitalWrite(RELAY,LOW); //打开继电器(开锁)
delay(1000); //开锁后延时1秒
break;
}
以上是今天玩的了一个小玩意,有时候做点简单的小玩意可以增加信心,增加乐趣,成就感。展望就是以后玩更厉害的模块 ,技术也不断的提高,想做智能家居等等