脉冲计数实验代码
时间: 2023-07-02 18:07:24 浏览: 49
以下是一个简单的脉冲计数实验代码,使用Arduino Uno进行编写:
```
const int pulsePin = 2;
volatile int pulseCount = 0;
unsigned long previousMillis = 0;
unsigned long interval = 1000;
void setup() {
pinMode(pulsePin, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(pulsePin), countPulse, RISING);
Serial.begin(9600);
}
void loop() {
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval) {
previousMillis = currentMillis;
Serial.print("Pulse count: ");
Serial.println(pulseCount);
pulseCount = 0;
}
}
void countPulse() {
pulseCount++;
}
```
该代码使用 `attachInterrupt()` 函数在引脚2上注册一个中断服务程序,该程序在检测到上升沿时调用 `countPulse()` 函数。 `countPulse()` 函数将计数器 `pulseCount` 的值增加1。 `loop()` 函数检查时间间隔是否已经到达,并在达到时间间隔时打印计数器的值。