2025-05-14 10:26 AM
Hello,
As per CM4 guide and TRM of Nucleo f446re,interruot vector table is array of function pointers and each pointer holds the entry address(initial address) of each IRQ_handler, Where interrupt IRQ_number is used for indexing.
While debugging I failed to observe the intial address of teh reset handler and USART2_Handler at location 0x0000 0004 and 0x0000 00DC respectively.Please find the samething in attachments.Address fo the IRQ_handlers are available in expressions window snapshot and actuall value stored at location 0x0000 0004 and 0x0000 00DC is not matching.
Am I missing something here?
I am just verifying my understanding -->"At each location in IVTable,address oif IRQ handlers should be ther (&<IRQ_Handler_Name>
"
2025-05-23 3:46 AM
Hi,
I got it.as youa re asking to use same function names declared in startup file.I tried it si working .But I am looking for soltion where I have define some function funcHandler() and It need to attach this on interruptVectorTable.for example at 0x000000DC(Loc at IVT) i,e, &funcHandler needs to be placed at 0x000000DC.
How to Achive this.
I tried to use pointer also.
uint32_t *p;
p=(uint32_t *)(0x000000DC);
*p=(uint32_t)&funcHandler;
while debugging,value didnt change
2025-05-23 12:00 PM
this area is flash memory and you cannot write to it like writing to RAM. You may however relocate the entire vector table to SRAM using SCB->VTOR.
2025-05-23 6:51 PM
Thanks knarfb, I git the answer.thanks for the support an precise answer.
You may close this ticket