Tony,又有个新问题……
现在我基于此前你的简单例程的boot验证已全部OK,现在移植到我们自己产品的bootloader,遇到问题卡住了。。。
前后最大的区别就是:我现在的程序是ARM和DSP都是基于SYSBIOS开发的,此前的例程都是裸机且很简单。
现在我已验证UBL可以将ARM加载并启动运行,但是ARM去启动DSP就怎么都启动不起来。
借助仿真器,我发现ARM加载DSP入口地址并把它唤醒后,通过连接DSP核,发现PC停在的地方并非_c_init00,而是卡在如下一个地址:
xdc_runtime_System_formatNum_I() at System.c:496 0x********——这个地址是比_c_init00更靠前的一个地址。
顺此,无论再run还是step into单步运行,都跳不出这个函数。
顺便说一下:
如果把DSP.out通过仿真器load好后,一般来说PC会直接停到main()入口处,此时如果点击调试栏的CPU Reset操作,会发现PC也调到上述的那个函数中。
可不同的是,此时如果F8运行可到main()函数中的断点处。
这到底是为什么?该咋解决呢?