我使用的工程是mcsdk下的《ex09_readwrite》,但是导入到ccs时使用的名字是linux_dsp_rw(dsp端),linux_arm_rw(arm端);在linux3.3下一开始测试不成功,考虑可能是messageq的名字可能不一致,改为固定名字后测试成功。但是当我启动开发板后,arm端linux启动完成后,使用modprobe加载syslink后,然后使用tidsp xds100V3仿真器加载dsp端程序到dsp后执行发现程序一直在死循环
/* only one thread must call start */
do {
status = Ipc_start();
} while (status == Ipc_E_NOTREADY);
函数status = Ipc_start();一直返回 Ipc_E_NOTREADY,请问如何联合仿真调试dsp程序?怎样解决IPC启动不起来的错误?
环境为omapl138芯片,arm跑linux,dsp跑sys/bios+ipc
Kevin Le82:
无论是加载完dsp后,重新加载arm端syslink,还是在dsp加载前加载arm端的syslink都不行,why????
有人遇到和我一样的问题吗?难道是dsp端的syslink没有加载?这个要怎样加载?仿真器加载dsp程序的时候,dsp程序运行起来时不会配置好syslink的运行空间之类的?
Kevin Le82:
回复 Kevin Le82:
1、在linux使用slaveloader加载dsp程序,然后启动arm程序,这样程序正常执行
2、使用仿真器下载dsp程序,然后启动arm程序,这样dsp在ipc_start()死循环,arm程序报ipc错误。
这两种方式有什么区别?