Hi:
最我用的是EVM6678le开发板,Win7 64bit系统,安装CCS5.5.0.00077,工具包为MCSDK2.00.00beta2,导入mcsdk_2_00_00/example/ndk/下的helloWorld工程后,使用开发板自带的仿真器TI XDC100V1,板子上SW9 的User Switch2 置为 OFF状态,即使用静态IP,小端模式,连接到板子后,加载helloWorld.out,只在一个核上运行,程序加载完成后,光标不会停留在main()函数入口处,而是自动运行另外的程序,暂停后,提示错误“0x80xxxxxx has no symbol”,在Debug窗口中core0下也没有main()函数,重新编译程序后,问题依旧,导入platform_test工程,加载程序后光标停留在main()函数入口处,点击“Run”后程序运行一切正常…..
是我哪里忘记设置了还是别的原因???还望各位大神指点一下…..
Allen35065:
是不是编译选项里把debug symbol suppress了,你改一下编译选项试试
Frost Edge:
回复 Allen35065:
谢谢您的回复,您说的是Properties->Build->C6000Compiler ->Basic Option里的Debugging model选项吗?我当前的设置为Full symbolicdebug,我试了一下设置成Suppress all symbolic debug generation,重新编译后,问题还是那样………
Allen35065:
回复 Frost Edge:
Full symbolic 没错,你可以在main函数那设个断点,看能否跑到那里
Frost Edge:
回复 Allen35065:
设断点了,也不起作用,程序加载后就自动运行了,暂停后,光标指向的地址并无程序,然后提示“Nosourceavailable for 0x8256d0”……
Zhan Xiang:
回复 Frost Edge:
看样子是没有跑到main函数,你可以在target config文件中把运行到main的选项去掉,看看是不是可以正常加载。
Frost Edge:
回复 Zhan Xiang:
您好!
我在Target Configuration文件里没找到 "运行到main” 的选项,我换了一个SEED XDS560v2仿真器后,每次加载完还是会自动运行,但是我在Debug窗口中进行“System Reset”,然后重新Load程序,程序光标就会在main()函数入口处停下来,也可以正常执行,不影响调试了。如果是这样的话,那么我在loadti.bat文件中最后一行加一个“-r” 语句,作用应该是一样的吧,也相当于在load之前将系统复位了,但我实际修改之后,却没起到作用,能帮忙解释一下原因吗???
noaming:
回复 Frost Edge:
是在debug Configuration中,在这里找"运行到main” 的选项
Allen35065:
回复 Frost Edge:
system reset就能正常运行的话,你可以看看是不是你的boot mode不在no boot设置上
Frost Edge:
回复 Allen35065:
我检查了我的SW3~SW6,boot mode为NOR Boot,其值为0010 1111 1110 1111, System Reset也并不是每次都起作用,偶尔也不行,需要将板子和仿真器重新上电,在Debug Option里去掉“运行到main”前面的勾后,问题依旧,有没有可能是mcsdk和ccs版本不相匹配?
Allen35065:
回复 Frost Edge:
设置到no boot再试试
TI中文支持网