I am following the wiring and code at https://playground.arduino.cc/Main/ReadingRPM but using pin 9 to read the speed instead of pin 2 and I have added a 10K pull up resistor between pin 9 and +5V as well; I dont see any interrupts firing even though the fan is running;
The fan is a standard intel cpu fan with 4 wires(black, yellow, green, blue) and the green wire is the sense/tach wire and I have connected it to pin 9 as well;
Need some help or expert advise; I am not sure if the approach works fine or not;
1 Answer 1
There are no interrupts on pin 9 (unless you are using Pin Change interrupts...?). You have to use pin 2 (interrupt 0), or pin 3 (interrupt 1) (also, on the Mega: 18 (interrupt 5), 19 (interrupt 4), 20 (interrupt 3), and 21 (interrupt 2)).
-
I am using arduino mega and using the digitalPinToInterrupt(9) when passing the value to attach/detach interrupt calls; not sure if thats same as what you meant;techniche– techniche2017年09月16日 20:59:53 +00:00Commented Sep 16, 2017 at 20:59
-
RTFM:
External Interrupts: 2 (interrupt 0), 3 (interrupt 1), 18 (interrupt 5), 19 (interrupt 4), 20 (interrupt 3), and 21 (interrupt 2). These pins can be configured to trigger an interrupt on a low level, a rising or falling edge, or a change in level. See the attachInterrupt() function for details.
Majenko– Majenko2017年09月16日 21:01:31 +00:00Commented Sep 16, 2017 at 21:01 -
Thanks; I am using pin 19 now since other pins are occupied and the code seems to read and print RPM values;techniche– techniche2017年09月16日 21:06:04 +00:00Commented Sep 16, 2017 at 21:06