查看: 258|回复: 5

[未解决] esp8266怎么实现倒计时控制水量

[复制链接]

该用户从未签到

发表于 2022-1-13 13:32 | 显示全部楼层 |阅读模式
本人萌新,想问一下怎么实现按一下开关计时5秒后停止注水

签到天数: 332 天

[LV.8]以坛为家I

发表于 2022-1-13 23:53 | 显示全部楼层
本帖最后由 topdog 于 2022-1-16 15:26 编辑

以WEMOS D1实验,D3为开关,D4为水泵,esp8266按下按钮测得低电平时水泵开启。系统开始计时5秒(1秒为1000毫秒,5秒为5000毫秒,为防止溢出故采用unsigned int),关闭水泵。

程序如下:


const int button = D3;
const int WaterPump = D4;
volatile unsigned int starttime;

void setup() {
  pinMode(button, INPUT_PULLUP);
  pinMode(WaterPump, OUTPUT); 
   digitalWrite(WaterPump,LOW);      
}

void loop() {  
  bool state = digitalRead(button);
 if (state == LOW) {
    starttime = millis();
    digitalWrite(WaterPump,HIGH);
  }
  if (millis() - starttime == 5000) {
    digitalWrite(WaterPump,LOW);
  }
}

该用户从未签到

 楼主| 发表于 2022-1-14 08:20 | 显示全部楼层
topdog 发表于 2022-1-13 23:53
以WEMOS D1实验,D3为开关,D4为水泵,esp8266低电平时水泵开启。1秒为1000毫秒,5秒为5000,为防止溢出故 ...

多谢,我是想做一个可以远程控制的给猫喂水的,奈何不知道怎么实现控水,谢谢啦

签到天数: 3 天

[LV.2]偶尔看看I

发表于 2022-1-14 09:16 | 显示全部楼层
楼主,你这个是让喵星人自己按水么?还要考虑其连续按的情况,万一误操作就水漫金山了

给你个建议,做水位检测,如果满水就不出水 或停止,比直接用定时器好的多

该用户从未签到

 楼主| 发表于 2022-1-14 12:12 | 显示全部楼层
本帖最后由 PingGuoji 于 2022-1-14 12:14 编辑
zjzane 发表于 2022-1-14 09:16
楼主,你这个是让喵星人自己按水么?还要考虑其连续按的情况,万一误操作就水漫金山了

给你个建议,做水 ...

暂时用的esp01s加个继电器控制电机然后用点灯科技定个时实现自动加水,后面换个Micro再加个水位检测,主要是给猫加水太麻烦了,我又有点懒

签到天数: 3 天

[LV.2]偶尔看看I

发表于 2022-1-14 20:31 | 显示全部楼层
PingGuoji 发表于 2022-1-14 12:12
暂时用的esp01s加个继电器控制电机然后用点灯科技定个时实现自动加水,后面换个Micro再加个水位检测,主要 ...

你可以用NODEMCU,然后继续用点灯
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

毕设求助!max30102与gy906实现脉搏体温测量
毕设求助!max30102与gy90
各位大佬,我最近在搞毕业设计,想通过arduino,max30102,gy906实现脉搏体温测量,但
arduino解码sbus
arduino解码sbus
市面上有很多sbus接收机,它只有一根线就可以实现很多通道的通信,其本质利用了串口通
香蕉派 BPI-R3 开源路由器开发板采用 联发科MT7986(Filogic 830)
香蕉派 BPI-R3 开源路由器
香蕉派 BPI-R3 开源路由器开发板采用 联发科MT7986(Filogic 830)芯片设计,支持Wi-Fi 6
求智能垃圾桶编程代码
求智能垃圾桶编程代码
求大佬解答 很急!!
安信可ESP32点灯APP自动浇花和天气空气质量
安信可ESP32点灯APP自动浇
本人是完全不懂C语言,大部分都是借鉴各位大佬的,没有时间和精力去学习C语言,能达
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
快速回复 返回顶部 返回列表