【物联网】Arduino+ESP8266物联网开发(二):控制发光二极管 按钮开关控制开关灯

【物联网】Arduino+ESP8266物联网开发(一):开发环境搭建 安装Arduino和驱动

2.ESP8266基础应用

开发软件下载地址

链接: https://pan.baidu.com/s/1BaOY7kWTvh4Obobj64OHyA?pwd=3qv8 提取码: 3qv8

学习过程中会用到的基础引脚如下。开发板提供3V电源,一般传感器工作电压都是3V,可通过开发板供电。如果设备需要的电压超过3V,如水泵、风扇等设备,需要5V以上电压,需要外接电源。

数字信号引脚接收或输出0-1信号,可作为输入也可作为输出。如按键开关、传感器等都是输入设备;风扇、灯、蜂鸣器等都是输出设备。

一些数字引脚在启动时有特殊含义,使用时需要考虑。

在接入设备的时候,常用标记如下:

接地:G、GND、-

电源:VCC、3V、5V、+

信号:IN、D0、S

2.1 控制发光二极管

下图是基础的发光二极管,通电即可点亮。将二极管正极接D5引脚,负极接地。

代码如下,上传后二极管点亮。

c 复制代码
void setup() {
  pinMode(D5, OUTPUT); //设置引脚为输出模式
  digitalWrite(D5,HIGH);//二极管高电平亮
}

下图是发光二极管模块,低电平驱动,VCC接电源,IN接数字信号引脚。

代码如下,上传后二极管模块点亮。

c 复制代码
void setup() {
  pinMode(D1, OUTPUT); //设置引脚为输出模式
  digitalWrite(D1,LOW);// LED低电平亮
}

可以通过按钮开关控制二极管,常用的开关有三个引脚,电源、接地、数字信号引脚。如果开发板上有多个按钮,那么每个按钮会对应一个数字信号引脚,如下图。

按钮开关按下后自动回弹,按下时输入低电平,弹起时为高电平。我们要实现的效果是第一次按下时灯亮,再按时灯灭。

c 复制代码
bool LIGHTED=false;//标识LED灯的开关状态
void setup() {
  pinMode(D2, INPUT);//设置引脚为输入
  pinMode(D1, OUTPUT); //设置引脚为输出模式
}

void loop() {//这个循环方法会一直运行
  if (digitalRead(D2) == LOW)
  {
    delay(1000);//1秒内按钮开关要弹起,否则会持续读到低电平,灯会闪烁
    if(LIGHTED){
       digitalWrite(D1,HIGH);// LED高电平灭
       LIGHTED=false;
    }else{
       digitalWrite(D1,LOW);// LED低电平亮
       LIGHTED=true;
    }
  }
}
相关推荐
2601_953988072 小时前
Ricon组态系统vs传统组态软件:为什么选择新一代Web组态平台
前端·后端·物联网·tcp/ip·数学建模·前端框架
TDengine (老段)4 小时前
TDengine 第三方工具 — Telegraf、Kafka Connect、Flink、Spark
大数据·数据库·物联网·flink·kafka·时序数据库·tdengine
LCG元14 小时前
STM32+ESP8266+MQTT 物联网气象站:从零搭建温湿度远程监测系统(附完整源码)
stm32·物联网·struts
殷忆枫17 小时前
基于K210与STM32的智能垃圾分类与物联网监管系统
stm32·物联网·分类
老孙讲技术1 天前
【4G IPC 上云】临时点位怎么免布线上云?listDeviceDetailsByPage + 辅码流预览|智慧工地实战
后端·物联网
数字新视界1 天前
信创动环监控厂家深入剖析智能机房环境监控技术应用与挑战
服务器·数据库·物联网·芯片·动环监控系统
笨鸟先飞,勤能补拙1 天前
AI Agent应用领域深度解析:从概念到落地的全维度审视
大数据·人工智能·python·物联网·安全·网络安全·github
星恒讯工业路由器2 天前
当无人机成为“空中路由器”:应急通信背后的联网技术支撑
物联网·信息与通信·wifi模块·无人机模块·无人机应急通信·空中基站·三断通信
会周易的程序员2 天前
aiDgePLC — IEC61131-3 ST PLC 虚拟机调试与运行环境
c++·物联网·虚拟机·st·工业协议·iec61131·梯形图
老孙讲技术2 天前
周末档期厨房爆单,带宽账单也爆了——不是直播难,是主码流 + always 计划在烧钱
后端·物联网