【Arduino基础】继电器控制LED灯亮灭
实验现象使用arduino直接驱动继电器,在串口监视器输入命令,间接控制LED灯亮灭。理论学习NC:常闭端NO:常开端COM:公共端VCC:电源正极5VGND:电源负极IN:信号输入端一般情况下NC是闭合,当IN收到信号是低电平信号,接向NO,形成闭合回路,左端电路开始工作。当IN端给高电平时,NO端断开,接向NC,负载即停止工作。实验准备arduino主板-1...
·
实验现象
使用arduino直接驱动继电器,在串口监视器输入命令,间接控制LED灯亮灭。
理论学习
NC:常闭端 NO:常开端 COM:公共端
VCC:电源正极5V GND:电源负极 IN:信号输入端
一般情况下NC是闭合,当IN收到信号是低电平信号,接向NO,形成闭合回路,左端电路开始工作。
当IN端给高电平时,NO端断开,接向NC,负载即停止工作。
实验准备
arduino主板-1
面包板-1
数据线-1
继电器-1
Led灯-1
10KΩ电阻-1
跳线若干
连接电路
图1 电路连接说明
继电器电路和Led灯电路均为5V供电。为防止电流过大烧坏Led灯,用10KΩ电阻与之串联。
图 2 实物连接图
图 3 实物连接图
实验代码
/*
Relay
继电器控制,通过串口控制继电器开关
*/
int incomedate = 0;
int relayPin = 2; //继电器引脚
void setup()
{
pinMode(relayPin, OUTPUT);
//设置引脚13为输出接口,Arduino 上我们用到的I/O 口都要进行类似这样的定义。
Serial.begin(9600);
//设置波特率为9600,这里要跟软件设置相一致。当接入特定设备时,我们也要跟其他设备的波特率达到一致。
}
void loop()
{
if (Serial.available() > 0)//串口接收到数据
{
incomedate = Serial.read();//获取串口接收到的数据
if (incomedate == 'H')
{
digitalWrite(relayPin, LOW);
Serial.println("LED OPEN!");
}
else if (incomedate == 'L')
{
digitalWrite(relayPin, HIGH);
Serial.println("LED CLOSE!");
}
}
}
相关文章
【Arduino】继电器控制水泵抽水
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献2条内容
所有评论(0)