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

c6657 GE工程发包问题请教:

你好:

           本人在使用论坛上下载的c6657 STK_C6657_EMAC里面的GE工程测试网络通信的时候,组了一个udp的包如下:

Uint8 test_buf[POST_EMAC_TEST_PKT_LENGTH+14]= {
// 0x00, 0x23, 0x8B, 0xBE, 0x3C, 0x1D,
// 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* Src MAC */
// 0x12, 0x34, 0x56, 0x78, 0x9a, 0xbc,
0x00,0x26,0x9E,0xFE,0x98,0xB8, /* Dest MAC */
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* Src MAC */
0x08, 0x00, /* Ethertype = IPv4 */
0x45, 0x00, 0x05, 0xbc, /* IP version, services, total length */
0x00, 0x00, 0x00, 0x00, /* IP ID, flags, fragment offset */
0x05, 0x11, 0x2c, 0xd6, /* IP ttl, protocol (UDP), header checksum */
0xc0, 0xa8, 0x78, 0x06, /* Source IP address */
0xc0, 0xa8, 0x78, 0xB, /* Destination IP address */
0x12, 0x34, 0x56, 0x78, /* UDP source port, dest port */
0x05, 0xa8, 0x1d, 0x18, /* UDP len, UDP checksum */
0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, /* 80 bytes of payload data */
0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,
0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49,
0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51,
0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71,
0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81};

并且使用EMAC_Send(test_buf, /*POST_EMAC_TEST_PKT_LENGTH+14*/122) < 0函数把包发送到pc端,pc端使用wireshark进行抓包,但是抓到的包字节数是正确的,包数据却都是0x00。抓包信息如下:

不知道是哪个环节出问题了,源码如附件所示,恳请大神给予指导。

Marvin Liang:

从该代码来看,没有考虑buffer是cacheable的情况,请确认你的cmd文件中PacketData.buffer_LL2段放置于non-cacheable空间

赞(0)
未经允许不得转载:TI中文支持网 » c6657 GE工程发包问题请教:
分享到: 更多 (0)