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

C6678 将mcsdk helloWorld移植到自研板的无法成功发送UDP数据包的问题

您好,

        我们所使用的是C6678自研板,mcsdk_2_01_02_05下的helloWorld例程,ndk_2_21_01_38,编译环境为CCS5.3.0

        我们想要在自研板上跑通helloWorld例程,实现与上位机的交互,向上位机发送UDP数据包。

        我们已经在C6678自研板上跑通了GE例程,可以实现与上位机的收发。

使用时我们对helloWorld例程进行了修改——

1.将.cfg文件中启动EVM_init的语句注释;

2.将EVM_init和StackTest中对platform PLL、DDR、phy、UART初始化的语句注释;

3.在BIOS start之前加上Serdes、SGMII的初始化(这部分代码是从GE例程里面移过来的);

        连接上板子以后,我们先load一个工程将PLL、DDR初始化,然后再把helloWorld例程load进去,运行程序,

      (按照我们的设想,我们首先完成了PLL和DDR的初始化,然后再BIOS启动之前又完成了Serdes和SGMII的初始化,这就替代了gel和EVM_init的工作了,然后hellowWorld例程会完成QMSS、CPPI和PA等的初始化)

       然后使用ndk下的helloWorld.exe(在cmd中输入helloWorld ip),WireShark就能抓到DSP发出的UDP数据包了。

       但是我们的现象是,输入helloWorld ip以后,会打印timeout的语句。

        不知道这个问题是出在哪里?

       如果在开发板上运行该例程,在初始化完QMSS、CPPI、PA以后,还会打印PASS、Ethernet subsysetm等初始化成功的语句,我看了helloWorld的代码,里面只有QMSS、CPPI和PA的初始化,并没有PASS这些的初始化,我后来在nimu_eth.c里面找到了PASS这些的初始化代码,但是我始终找不到helloWorld是怎么调用这些代码的?

       所以我想请问怎么才能正确的把helloWorld例程移植到我的板子里,我上面做的这些是否正确?

       另外,helloWorld到底是怎么调用nimu_eth.c的?

Nancy Wang:

请问在开发板上测试是可以正常运行的吗?
方便将修改过的例程上传吗?并将相应的log输出截图。

赞(0)
未经允许不得转载:TI中文支持网 » C6678 将mcsdk helloWorld移植到自研板的无法成功发送UDP数据包的问题
分享到: 更多 (0)