From the AttachInterrupt
docs, I see "Most Arduino boards have two external interrupts: numbers 0 (on digital pin 2) and 1 (on digital pin 3).". Yet the Atmega328 data sheet specifies PCINTxx values for nearly every pin. So from that, it would seem I could get an interrupt on any pin
What accounts for this difference in docs?
"external interrupts" versus "pin change interrupts".
"External interrupts" get their own interrupt vector and have extended functionality (hardware support for LOW, RISING, FALLING, CHANGE). RISING, FALLING, and CHANGE do not work if the processor clock is stopped (deeper sleep modes).
"Pin change interrupts" have one vector per port (up to eight pins assigned to one vector) and have very basic functionality (hardware support for CHANGE). Pin change interrupts always work; even in the deepest sleep modes.
And can I actually put an ISR on any pin? (Is it just that I have to do it manually for the others??)
@JimEli's post above.http://www.arduino.cc/playground/Main/PinChangeInthttp://www.arduino.cc/playground/Main/PcInthttp://www.google.com/search?q=pin+change+interrupt+site:arduino.cc%2Fforum