Updates:
I found out that calling SEGGER_SYSVIEW_RecordEnterISR() and SEGGER_SYSVIEW_RecordExitISR() do nothing when they are called from the main. But I can call SEGGER_SYSVIEW_OnTaskStartExec() and SEGGER_SYSVIEW_OnTaskTerminate() from main and they work perfectly. Is there any harm to call these when there is OS?
And about my previous question, I should probably clarify that I meant the enabled interrupt is the fourth bit in NVIC->ISER[0] register. And why the number is 19?
I tested a couple more interrupts to find out if there is any meaning with the numbers reported by SEGGER_SYSVIEW_RecordEnterISR in SYSTEMVIEW. Here is my observation:
Interrupt number 3 => is reported 19Interrupt number 35 => is reported 51
Interrupt number 9 => is reported 25
Therefore, it seems that the numbers are definitely not random. In the reported numbers, second byte should be multiplied by 16 and added to the first byte. Then I can get the interrupt number. This is a wise way to decrease to payload. If I write them in binary:
Interrupt number 3 => NVIC->ISER[0] - bit 3 => reported number 0b 0001 0011Interrupt number 35 => NVIC->ISER[1] - bit 3 => reported number 0b 0011 0011
Interrupt number 9 => NVIC->ISER[0] - bit 9 => reported number 0b 0001 1001