Skip to main content
Share Your Experience: Take the 2024 Developer Survey

Questions tagged [isr]

Interrupt Service Routine. A function which gets called in response to an interrupt signal.

Filter by
Sorted by
Tagged with
9 votes
2 answers
7k views

Arduino interruption (on pin change)

I use the interrupt function to fill an array with values received from digitalRead(). void setup() { Serial.begin(115200); attachInterrupt(0, test_func, CHANGE); } void test_func() { if (...
user277820's user avatar
9 votes
2 answers
4k views

How to update a variable in an ISR using Timers

I'm trying to check the frequency of Timer3 using a counter. The value of the counter, declared as volatile, is incremented in the ISR and every second the sum is shown in the main loop and the value ...
UserK's user avatar
  • 559
22 votes
3 answers
6k views

Can a function be called automatically when an input changes?

Currently, my sketch is checking an input pin every time round the main loop. If it detects a change, it calls a custom function to respond to it. Here's the code (trimmed down to the essentials): ...
Peter Bloomfield's user avatar
8 votes
2 answers
20k views

Why the need to use the volatile keyword on global variables when handling interrupts in Arduino?

I am familiar with the keyword Volatile being used to declare variables that are shared among multiple threads on a software application (basically on a multithreaded application). But why do I need ...
user avatar
3 votes
3 answers
3k views

What is the right way to query an I2C device from an interrupt service routine?

The ADXL345, for example, requires that interrupts are responded to by querying the INT_SOURCE (interrupt source) register. In example code for the SparkFun ADXL345 Arduino Library, there is code that ...
James Brusey's user avatar
3 votes
3 answers
4k views

Breaking a switch case from an ISR

I'm struggling with something. My CPU sits in a switch case state machine like this: switch(expression) { case constant-expression_1 : statement(s); break; /* optional */ case ...
makepeace's user avatar
2 votes
1 answer
209 views

Mildly accurate oscilloscope using Arduino Uno R3

I'm trying to make a mildly accurate oscilloscope using Arduino Uno R3 and I've done some research on the best method to do so. First of all I need to measure the voltage with a rather high sampling ...
infinite's user avatar
0 votes
4 answers
16k views

How to set up one second interrupt/ISR for ds3231 RTC

I am able to set up one hz interrupts using millis and other timers, but would like to do it instead using the RTC I have attached (DS3231) I am not sure how I can do that. Can someone point me to a ...
Tim's user avatar
  • 131
0 votes
1 answer
237 views

Arduino ISR timing question

Im trying to understand how the Arduino ISR keeps track of timing between pulses stored in a variable, if that variable is latter used. Say, for example, you have a magnet mounted on a circular ...
Jim's user avatar
  • 31