【Arduino】108种传感器模块系列实验(91)-水流量传感器模块-Arduino爱好者 - Powered by Discuz!

Arduino爱好者

 找回密码
 立即注册

QQ登录

只需一步,快速开始

楼主: eagler8

[经验] 【Arduino】108种传感器模块系列实验(91)--水流量传感器模块

[复制链接]
发表于 2021-7-8 19:22 | 显示全部楼层

我是在这个实验的基础上加了计数到5后点亮LED的命令。不能实现。单独做都没有问题。
 楼主| 发表于 2021-7-8 20:04 | 显示全部楼层
oanger 发表于 2021-7-8 19:21
大佬你还还原了一下现场

这个我也做过,没问题。

还原是觉得要从简单的做起,这点要向你学习
发表于 2021-7-8 20:18 来自手机 | 显示全部楼层
eagler8 发表于 2021-7-8 20:04
还原是觉得要从简单的做起,这点要向你学习

 楼主| 发表于 2021-7-8 20:23 | 显示全部楼层
oanger 发表于 2021-7-8 19:22
我是在这个实验的基础上加了计数到5后点亮LED的命令。不能实现。单独做都没有问题。 ...

  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验九十一: 1号霍尔水流量传感器 直饮机流量监控模块
  项目六:水流量指示灯(有流量时LED灯亮)
  实验接线:Uno D2接流量传感器OUT,LED接D13

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.   实验九十一: 1号霍尔水流量传感器 直饮机流量监控模块
  4.   项目六:水流量指示灯(有流量时LED灯亮)
  5.   实验接线:Uno D2接流量传感器OUT,LED接D13
  6. */

  7. #define Holzer 2
  8. #define LED 13

  9. unsigned int holdtime; //霍尔停下的时间
  10. int Holzer_Status;

  11. void setup() {
  12.   holdtime = millis(); //读取当前时间
  13.   Serial.begin(9600);
  14.   pinMode(Holzer, INPUT);
  15.   pinMode(LED, OUTPUT);
  16.   Holzer_Status = digitalRead(Holzer); //读取霍尔初始状态
  17.   digitalWrite(LED, LOW); //将LED的初始状态设置为关闭
  18. }

  19. void loop() {
  20.   int Holzer_Status1 = digitalRead(Holzer); //读取霍尔状态
  21.   int nowtime;
  22.   if (Holzer_Status1 == (!Holzer_Status)) // 如果霍尔状态改变
  23.   {
  24.     Serial.println(Holzer_Status);
  25.     digitalWrite(LED, HIGH); // 点亮LED
  26.     Holzer_Status = Holzer_Status1; // 将霍尔状态重置为最新
  27.     holdtime = millis(); // 读取当前时间
  28.   }
  29.   else   // 如果霍尔状态不变
  30.   {
  31.     nowtime = millis();
  32.     if (nowtime - holdtime > 300) // 如果没有变化持续 300
  33.       digitalWrite(LED,LOW);//关闭LED
  34.   }
  35. }
复制代码


 楼主| 发表于 2021-7-8 20:24 | 显示全部楼层
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验九十一: 1号霍尔水流量传感器 直饮机流量监控模块
  项目七:累计脉冲大于等于50则点亮LED灯
  实验接线:Uno D2接流量传感器OUT,LED接D13

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.   实验九十一: 1号霍尔水流量传感器 直饮机流量监控模块
  4.   项目七:累计脉冲大于等于50则点亮LED灯
  5.   实验接线:Uno D2接流量传感器OUT,LED接D13
  6. */

  7. #define pin 2
  8. #define led 13
  9. volatile long count = 0;//变量count声明为volatile类型

  10. void setup() {
  11.   pinMode(pin, INPUT);
  12.   pinMode(led, OUTPUT);
  13.   attachInterrupt(0, blinkA, FALLING);//当引脚电平由高电平变为低电平时触发中断服务程序
  14.   Serial.begin(9600);
  15.   Serial.println("准备就绪OK");
  16.   Serial.println("");
  17. }

  18. void loop() {
  19.   Serial.print("累计脉冲=");
  20.   Serial.println(count);
  21.   delay(1000);
  22.   if (count >= 50) {
  23.     digitalWrite(led, HIGH);
  24.     Serial.println("点亮LED灯");
  25.   }
  26.   else
  27.     digitalWrite(led, LOW);
  28. }

  29. void blinkA()
  30. {
  31.   count++;
  32. }
复制代码


 楼主| 发表于 2021-7-8 20:25 | 显示全部楼层
实验串口返回情况

24.jpg
发表于 2021-7-8 20:27 来自手机 | 显示全部楼层
感谢,一会我试试。
 楼主| 发表于 2021-7-8 20:28 | 显示全部楼层
oanger 发表于 2021-7-8 20:27
感谢,一会我试试。

实验场景图

25.jpg
发表于 2021-7-8 20:32 来自手机 | 显示全部楼层
感谢,一会我试试。
发表于 2021-7-8 20:42 来自手机 | 显示全部楼层
老表,还是p10,几个手机啊
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|好玩手机游戏盒子|196体育|Arduino爱好者

GMT+8, 2023-10-3 02:39 , Processed in 0.086492 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表