How to understand the interrupt vectors of NTM88

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

How to understand the interrupt vectors of NTM88

ソリューションへジャンプ
1,677件の閲覧回数
FrankHill
Contributor I

Hello,everyone

How does the user application interrupt vectors of NTM88 work?

have any re-direct operation to make the vectors valid? so the irq fucntion in user code can be used.

I want figure this out so I read the bootloader examples of NTM88 from NXP. I just find that:

if (gu8BootAppMode == MODE_APP)
(*USER_APP_INTERRUPT_TABLE[15])(); // JUMP TO USER APP main_app()

Only the main function of app code is called. It's not a irq function and not called by a real IRQ.

Who can help to explain this problem?

Thanks

Best regards

 

 

FrankHill_0-1611394065120.png

 

 

0 件の賞賛
返信
1 解決策
1,664件の閲覧回数
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi Frank,

 

In the bootloader project, memory is divided into two sections:

  • The bootloader section, which is always present and has a valid content (because it is never erased nor overwritten).
  • The application section, which is not always present and not always valid (in case of issue during OTA reprogramming).

After reset, the programs jumps into the main located bootloader section by default, and when an interrupt occurs the program accesses the interrupt vectors which are located in the bootloader section. Then, only if the application section is valid (i.e. program is in application mode) then the program jumps into the application (main_app) and application interrupt vectors. The program does not access the application section by default because it does not always have a valid content.

This is illustrated in Figures 4 and 5 of the AN5149.

Figure 4.JPG

Figure 5.JPG

 

Best regards,

Tomas

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
1,662件の閲覧回数
FrankHill
Contributor I

Hello Tomas.

Thanks for you reply. I will check the AN5149.

Best regards

Frank Hill

0 件の賞賛
返信
1,665件の閲覧回数
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi Frank,

 

In the bootloader project, memory is divided into two sections:

  • The bootloader section, which is always present and has a valid content (because it is never erased nor overwritten).
  • The application section, which is not always present and not always valid (in case of issue during OTA reprogramming).

After reset, the programs jumps into the main located bootloader section by default, and when an interrupt occurs the program accesses the interrupt vectors which are located in the bootloader section. Then, only if the application section is valid (i.e. program is in application mode) then the program jumps into the application (main_app) and application interrupt vectors. The program does not access the application section by default because it does not always have a valid content.

This is illustrated in Figures 4 and 5 of the AN5149.

Figure 4.JPG

Figure 5.JPG

 

Best regards,

Tomas

0 件の賞賛
返信