该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
volatile int flow_frequency; // Measures flow meter pulses
unsigned int l_hour; // Calculated litres/hour
unsigned char flowmeter =D7; // Flow Meter Pin number
unsigned long currentTime;
unsigned long cloopTime;
void flow () // Interruot function
{
flow_frequency++;
}
void setup()
{
pinMode(flowmeter, INPUT);
Serial.begin(9600);
attachInterrupt(0, flow, RISING); // Setup Interrupt
// see http://arduino.cc/en/Reference/attachInterrupt
sei(); // Enable interrupts
currentTime = millis();
cloopTime = currentTime;
}
void loop ()
{
currentTime = millis();
// Every second, calculate and print litres/hour
if(currentTime >= (cloopTime + 1000))
{
cloopTime = currentTime; // Updates cloopTime
// Pulse frequency (Hz) = 7.5Q, Q is flow rate in L/min. (Results in +/- 3% range)
l_hour = (flow_frequency * 60 / 7.5); // (Pulse frequency x 60 min) / 7.5Q = flow rate in L/hour
flow_frequency = 0; // Reset Counter
Serial.print(l_hour, DEC); // Print litres/hour
Serial.println(" L/hour");
}
}
这个是水流探测器的,上传之后继电器的灯就不会亮了,然后打开串口监视器也没反应,网上说好像水流传感器成功的话 是会一直跳数值的 然后倒水在传感器里面会有数值显示在串口监视器上~