Skip to main content
Kkhan.2
Associate
January 4, 2021
Question

Hi. I have a query, related to the global interrupt of the Uhart. Is there any way we can enable more than one interrupts for a singal uhart.

  • January 4, 2021
  • 2 replies
  • 1114 views

Actually I am using a single interrupt to receive, data from another processor in two different arrays. Due to this scenario and interrupt being called at two times in different arrays, only the first array receive interrupt accurately.

This topic has been closed for replies.

2 replies

Tesla DeLorean
Guru
January 4, 2021

Each typically has a single vector but can handle multiple sources within the USART.

If the Vector Table is in RAM you can dynamically change the subroutine called.​

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
Kkhan.2
Kkhan.2Author
Associate
January 4, 2021

Kindly explain completely about RAM dynamically subroutine function

Tesla DeLorean
Guru
January 4, 2021

There are Technical Reference Manuals for the MCU, a review of those might be enlightening.

Have a sufficiently large 32-bit array​ to hold all the Vector entries, have it on a 512-byte aligned address. Copy the current defaults into this new array. Point SCB->VTOR at this new array.

C​hange the function address pointer in the array index for the USART interrupt.

I​f this is too complex, perhaps use a function pointer your IRQ Handler calls.

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..