This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6678 ,官方例程 NIMU_emacExample_EVMC6678C66BiosExampleProject

使用的是开发板evm6678L, CCS7.1,inport官方例程NIMU_emacExample_EVMC6678C66BiosExampleProject。

编译成功,开始debug.打印如下:

C66xx_0: GEL Output: Setup_Memory_Map...
C66xx_0: GEL Output: Setup_Memory_Map... Done.
C66xx_0: GEL Output:
Connecting Target...
C66xx_0: GEL Output: DSP core #0
C66xx_0: GEL Output: No initialization performed since bootmode = 0x00000005
C66xx_0: GEL Output: You can manually initialize with GlobalDefaultSetup
C66xx_0: GEL Output: Invalidate All Cache...
C66xx_0: GEL Output: Invalidate All Cache... Done.
C66xx_0: GEL Output: GEL Reset...
C66xx_0: GEL Output: GEL Reset... Done
C66xx_0: GEL Output: Disable all EDNC_NetStartMA3 interrupts and events.

开始调试之后,发现 NC_NetStart() -> NetworkOpen() ->DaemonNew() -> NS_BootTask();

当进入函数NS_BootTask()之后,按F5,程序进入到了Task_exit()函数,也就是没有执行NS_BootTask()后面的代码,我有设置断点,也并没有定下来。

F7运行完毕之后,我用C:\ti\ndk_2_25_01_11\packages\ti\ndk\winapps下的hellWorld.exe测试,如下:

C:\ti\ndk_2_25_01_11\packages\ti\ndk\winapps>helloWorld.exe 192.168.1.4
Testing UDP echo server at 192.168.1.4:7
helloWorld.exe: timed out waiting for reply
不知道我上午说的,和出错有没有关系。请专家们解答一下吧。
  • No initialization performed since bootmode = 0x00000005 

    把Boot Mode置为no boot再试试。

  • 您好,我这个问题已经解决了,确实是bootMode设置出错了。请帮我再解答一个问题吧。(新手学习DSP,身边也没有熟手能帮忙解决,只能遇到问题上论坛提问了);

    我在编译C6678的官方例程:PA_emacExample_evmc6678_C66BiosExampleProject 时,报如下两个错误。

    <Linking>
    "configPkg/linker.cmd", line 207: error #10099-D: program will not fit into available memory.  run placement with alignment fails for section "systemHeap" size 0x3c000 .  Available memory ranges:
       L2SRAM       size: 0x80000      unused: 0x1332d      max hole: 0x13200  
     undefined       first referenced                                                  
      symbol             in file                                                       
     ---------       ----------------                                                  
     NIMUDeviceTable C:\ti\ndk_2_25_01_11\packages\ti\ndk\stack\lib\stk6.ae66<nimu.oe66>
    error #10234-D: unresolved symbols remain
    error #10010: errors encountered during linking; "PA_emacExample_evmc6678_C66BiosExampleProject.out" not built
    第一个错误,我明白意思是,我的systemHeap堆栈大了,L2SRAM 存储器小了。但是不知道L2SRAM  大小可以改吗?、如何改呢?
    第二个字面意思是未识别NIMUDeviceTable 字符。。其它就不明白了。
    请您解答一下吧。十分感激。
  • L2SRAM一般在BIOS的Platform里定义,通常不能改,因为L2大小是芯片决定的。

    你需要把一些数据段从L2移出到DDR3中,或者减小内存的使用量。

    第二个是链接问题,库里没有找到这个sysmbol;正常来说例程编译不应该出现的,请确认你的SDK安装没有问题。

  • 虽然不是太明白您的回答,但是还是隐约懂了一点意思。我继续学习。感谢您的答复。