TI中文支持网
TI专业的中文技术问题搜集分享网站

EVM6678开发板 ndk下helloworld例程遇见奇怪的问题

初学DSP,分析MCSDK下的helloworld例程,所遇见的问题,希望高手解答一下,谢谢

第一个问题,在evm_init()函数中调用了platform_init()函数,而对应的platform_init.c中又调用了configserdes() init_sgmii()函数,configserdes()和 init_sgmii()函数应该在evmc6678_phy.c中实现,更改serdes和sgmii的设置是否应该在evmc6678_phy.c更改?不过我发现无论怎么更改,都和不改动一样,我试了一下,只要更改platform_init.c之后调用的函数都没有影响,在例程中我甚至都把platform.c文件给删掉(彻底的删掉。从电脑里删掉),这样就没有对网络初始化的代码了,再重新编译加载,但是helloworld仍然可以运行,这是怎么回事啊?要是这样的话我怎么更改配置呢?

第二个问题已经问过了但是我还是有点不太明白,configserdes() init_sgmii()函数在evmc6678_phy.c和cpsw_mgmt.c都有实现,我怎么知道到底是调用的哪个文件呢?我看了一下包含的头文件,也找不到头绪,并且假设一个程序中同时需要包含evmc6678_phy.h和cpsw_mgmt.h,那岂不是要乱套了?

另外问一个ccs操作的问题,我想debug时只让一个核加载程序,不知道怎么设置,有时候debug是会弹出launching debug sessin对话框,可以选择只加载一个核,但是有时候不弹出这个对话框,8个或多个核就直接加载了,请问怎么设置?

striker Qian:

baojun,

platform_init.c 在ti.platform.evm6678l.ae66 中,helloworld 工程并不编译。工程cfg文件中有这么一句xdc.loadPackage('ti.platform.evmc6678'), 在自动生成的Debug/configPkg/linker.cmd 中可以看到 该lti.platform.evm6678l.ae66   ib的路径。如果尝试修改platform_init.c 里的代码,需要重新编译该lib。pdk6678 里platform_lib_evm 工程,就是干这个事。从linker.cmd 中可以看出, NDK也有调用不少其他lib,如果需要修改原理同上。

取消自动加载 :  右键你的工程或者ccxml文件,debug as – debug_configuations – Program , 挨个clear掉其他核的Project 及Program里面的内容。保存即可。

striker

赞(0)
未经允许不得转载:TI中文支持网 » EVM6678开发板 ndk下helloworld例程遇见奇怪的问题
分享到: 更多 (0)