10 years, 2 months ago.  This question has been closed. Reason: I realized the question is invalid. The Keil uVision 4 debugger was giving me incorrect timing data.

ARM Cortex M3 IRQ Frequency

I am trying to sample audio using Ticker and my Mbed. When I debug with the Keil uVision tool, it seems the fastest period a function can be called at is 0.5ms, in spite of my setting Ticker to call the function at 44100kHz or 48000kHz. Does anyone know what is the limiting factor on interrupt handlers if the time it takes the handler to run is ignored?

How do you measure time? Set some optimization, don't run debugger. Might get better results. Hard to believe it's 0.5ms ;)

posted by Martin Kojtal 21 Feb 2014

1 Answer

10 years, 2 months ago.

Alot faster than that. Even when including the overhead of the Ticker library itself, still alot faster than that. What makes you think btw that your code isn't limitting it? For example AnalogIn? (Although also that should be alot faster than 0.5ms).

I realized now that the debugger I am using isn't using the correct clock rate to calculate elapse time between instructions. My code is running at 44100Hz. Now, I need to figure out how to fix the clock rate in the debugger. I am using Keil uVision 4. So far no luck.

posted by Jonathan Anderson 21 Feb 2014