How does STM32F103RB handle Interrupts?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-10-28 2:29 AM
Does it save all the registers of the current process before executing the ISR? If so, how does it save the registers? Does it do it by pushing all registers in stack?
#stm32f103xx #interrupts- Labels:
-
Interrupt
-
STM32F1 Series
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-10-28 7:12 AM
Please review documentation for the Cortex-M3 core, ARM has Technical Reference Manuals, and Joseph Yiu's Essential Cortex-Mx series books has good coverage of the CPU and NVIC functionality.
It pushes a subset of the registers, well documented, easily findable..
Up vote any posts that you find helpful, it shows what's working..
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-10-28 7:46 AM
Generally speaking, the compiler and linker should take care of pushing/popping the needed registers in the stack for you peace of mind. The main exception is when floating point copro and registers are used within an ISR. This may require manual #pragma handling, or better, avoid using floats within an interrupt. Even in Android, drivers are avoiding floats within interrupts.
