RT1176 can't start multi core app created by project wizard

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

RT1176 can't start multi core app created by project wizard

ソリューションへジャンプ
1,706件の閲覧回数
ingo77
Contributor II

I use the latest MCUXpresso IDE v11.6.0 [Build 8187] [2022-07-13]

and the evkmimxrt1170

Steps to reproduce

  • Create M4 Slave project first
    • New project
    • Core: cm4, Role M4SLAVE, C++
    • Keep all other settings to default
  • Create M7 Master project
    • New project
    • Core: cm7, Role MASTER, c++
    • On next page, go to Multicore slave project settings
      • Point M4SLAVE project to previous one, keep default link RAM2
    • Keep all other settings to default
  • Compile both projects
  • Start debugging of M7 Master project

In result, the debugger will successfully connect to the M7 Core and place the breakpoint at the first instruction.

Then it tries to start and connect to the debugger to the M4 Core, and fails with the following error

15: Target error from Set break/watch
15: Target error from Set break/watch
HW Execution break may only be set below 0x20000000.
Debugging context: test_M4SLAVE LinkServer Debug

What is the root cause of that?

And if it is due to a wrong setting, would it not make sense that if we have project wizards, that they would correctly setup the projects in the first place?

 

0 件の賞賛
返信
1 解決策
1,696件の閲覧回数
ingo77
Contributor II

Ok solving myself....essentially in the new project wizard what you configure on page 1 does not correlate to page 2.

So even you set on page 1 that this is a Master / Slave, still on page 2 it will define a default memory configuration that is not compatible with it.

I have not gone in detail through what was proposed and where the mistake is, just copied the memory configuration from an M4Slave/M7Master SDK example and then it worked.

Would be great if the development team can fix this in the project wizard. If a wizard is there, then the users expectation is that if there are default values given, these default values match with what the user selected.

元の投稿で解決策を見る

3 返答(返信)
1,697件の閲覧回数
ingo77
Contributor II

Ok solving myself....essentially in the new project wizard what you configure on page 1 does not correlate to page 2.

So even you set on page 1 that this is a Master / Slave, still on page 2 it will define a default memory configuration that is not compatible with it.

I have not gone in detail through what was proposed and where the mistake is, just copied the memory configuration from an M4Slave/M7Master SDK example and then it worked.

Would be great if the development team can fix this in the project wizard. If a wizard is there, then the users expectation is that if there are default values given, these default values match with what the user selected.

1,705件の閲覧回数
ingo77
Contributor II

I found one thing

  • For M4 Slave need to set "Link application to RAM", in the project wizard, or can set it later in project settings under C++ Linker

Then at least both projects start, but the M4 goes straight into the HardFault_Handler ( I did not configure semihost, but left it to UART as by default ).

So, what more is there to configure to get it to run?

0 件の賞賛
返信
1,557件の閲覧回数
yocto1234
Contributor I

I am facing the same issue. Did multi core app with CPP worked for you? Any help is appreciated. 

0 件の賞賛
返信