atheos42

IR Frequency Meter

Oct 2nd, 2026
23
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.17 KB | Source Code | 0 0
  1. // Reference:
  2. // https://docs.arduino.cc/language-reference/en/functions/external-interrupts/attachInterrupt/
  3. // https://www.makerguides.com/how-to-read-fan-speed-signal-with-arduino/
  4. // https://circuitdigest.com/microcontroller-projects/interfacing-flame-sensor-with-arduino
  5. // https://circuitdigest.com/microcontroller-projects/arduino-frequency-counter-circuit
  6. // https://www.instructables.com/Arduino-Frequency-Counter/
  7. // https://github.com/Bodmer/TFT_eSPI/blob/master/examples/160%20x%20128/TFT_Print_Test/TFT_Print_Test.ino
  8. //
  9. //  Uses IR Infrared Flame Sensor Module 3 Pin
  10. //  Read a IR signal and determine frequency with ESP32-C3
  11.  
  12. #include "Arduino.h"
  13.  
  14. // Pin Assignments
  15. #define IR_Pin D10
  16.  
  17. // Variables
  18. volatile unsigned long freq = 0;
  19.  
  20. void countPulses() { freq++; }
  21.  
  22. void setup() {
  23.     // Initalize GPIO pins
  24.     pinMode(IR_Pin, INPUT);  
  25.  
  26.     // Initalize Serial port
  27.     Serial.begin(9600);
  28.   Serial.println("IR Frequency Meter");
  29.  
  30.   attachInterrupt(digitalPinToInterrupt(IR_Pin),countPulses,RISING);
  31.   delay(500);
  32. }
  33.  
  34. void loop() {
  35.   delay(1000);
  36.  
  37.   Serial.print("IR Frequency: ");
  38.   Serial.print(freq);
  39.   Serial.println(" Hz");
  40.  
  41.   freq = 0;  
  42. }
  43.  
  44.  
Advertisement
Add Comment
Please, Sign In to add comment