2014-12-03 03:15 AM
I have ADC1 and ADC2 sampling by using the hardware signal (external interrupt) from a timer. They use the same timer, but two different channels.
It works for 10 minutes+, but then the ADC ISR is no longer called. The timer ISR is still called so as far as I can understand the ADC should still get the hardware signal. And it does! I can see while debugging that the ADC data register is still updating with the correct values when I adjust the voltage on the ADC input channel. This means that it works as it should, but the ADC ISR where I get the ADC converted value is not triggered.The ADC error ISR is not called either, I have a breakpoint in the ISR and I use trace to print out debug message if it enters.When I read the ADC_SR after it has stopped the JEOC bit is set, so the ADC ISR should be triggered, but it is not. (I use injected, but no regular).Any idea how I can debug this further? I use the HAL library.Summary:ADC ISR or ADC error ISR is not triggered, but the ADC sampled values are still being updated correctly. #timer #adc #error