基于SYS/BIOS的以太网数据链路层通信 - 第2页 - TMS320C6748 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: shuo
打印 上一主题 下一主题

基于SYS/BIOS的以太网数据链路层通信

[复制链接]

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
11#
发表于 2016-4-13 17:42:47 | 只看该作者
shuo 发表于 2016-4-13 17:14
原来可以手工填写,哈哈哈哈
但是把它改回0x888协议还是不行呢

XCAP 抓其它网络包正常不? 比如抓其它电脑发来的数据包
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
12#
发表于 2016-4-13 17:44:19 | 只看该作者
shuo 发表于 2016-4-13 17:14
原来可以手工填写,哈哈哈哈
但是把它改回0x888协议还是不行呢

如果操作步骤与文档一致的话 还是不行 那只好请你带上设备来广州测试了
回复 支持 反对

使用道具 举报

8

主题

21

帖子

1145

积分

金牌会员

Rank: 6Rank: 6

积分
1145
13#
 楼主| 发表于 2016-4-13 18:02:38 | 只看该作者
希望缄默 发表于 2016-4-13 17:42
XCAP 抓其它网络包正常不? 比如抓其它电脑发来的数据包

测试的时候不是用网线把板子和电脑连起来嘛,把网络的网线插回电脑之后,XCAP可以抓包,这样是不是说明XCAP没有问题?和SYS/BIOS有关系吗?但是我是导入的例程的啊
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
14#
发表于 2016-4-14 07:25:54 来自手机 | 只看该作者
没有关系 这个测试不仅需要板卡 还依赖网络环境和电脑 没有办法保证所有情况都可以使用 你可以尝试两块板子通信 这样就可以排除其它变量了
回复 支持 反对

使用道具 举报

8

主题

21

帖子

1145

积分

金牌会员

Rank: 6Rank: 6

积分
1145
15#
 楼主| 发表于 2016-4-14 10:01:31 | 只看该作者
希望缄默 发表于 2016-4-14 07:25
没有关系 这个测试不仅需要板卡 还依赖网络环境和电脑 没有办法保证所有情况都可以使用 你可以尝试两块板子 ...

谢谢您的耐心解答。还有一个问题就是PC发包给DSP时,DSP是把数据存在哪里了呢?要怎么把数据取出来在进行后面的处理呢?

点评

RAW Socket 模式不走协议 所以 DSP 就得一直处于接收模式 这样收到数据的时候会得到数据指针 i = (int)recvnc(s, (void **)&pBuf, 0, &hBuffer); 这个 pBuf 就是数据指针  详情 回复 发表于 2016-4-14 10:58
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
16#
发表于 2016-4-14 10:58:08 | 只看该作者
shuo 发表于 2016-4-14 10:01
谢谢您的耐心解答。还有一个问题就是PC发包给DSP时,DSP是把数据存在哪里了呢?要怎么把数据取出来在进行 ...

RAW Socket 模式不走协议 所以 DSP 就得一直处于接收模式 这样收到数据的时候会得到数据指针
i = (int)recvnc(s, (void **)&pBuf, 0, &hBuffer);

这个 pBuf 就是数据指针
回复 支持 反对

使用道具 举报

8

主题

21

帖子

1145

积分

金牌会员

Rank: 6Rank: 6

积分
1145
17#
 楼主| 发表于 2016-4-14 21:22:50 | 只看该作者
希望缄默 发表于 2016-4-14 10:58
RAW Socket 模式不走协议 所以 DSP 就得一直处于接收模式 这样收到数据的时候会得到数据指针
i = (int)re ...

您好,不好意思,关于这个例程还有两个问题

1. ethernet ii以太网帧结构的data最少是46bytes,但是在xcap.exe中data设置是相同的值(如0x01),请问能把它每byte设置成不能的值吗?怎么设置呢?

2. 最右边的ASCII码为什么是 "........."这种格式呢?代码中 RawETHPacket.Payload[64]中存储的也是这种点,请问我怎么把它转换成十六进制或者二进制呢?像这样printf("%02x\n",RawETHPacket.Payload[0]); 只是输出转化了,但是RawETHPacket.Payload[64]中存储的还是点


麻烦了,谢谢您。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

1、直接修改就行了[attachimg]731[/attachimg] 2、电子设备只能认识 0 和 1 怎么可能储存的是 . 呢? 参照 ASCII 表 值为 01 时候就是 . [attachimg]732[/attachimg]  详情 回复 发表于 2016-4-15 09:31
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
18#
发表于 2016-4-15 09:31:29 | 只看该作者
shuo 发表于 2016-4-14 21:22
您好,不好意思,关于这个例程还有两个问题

1. ethernet ii以太网帧结构的data最少是46bytes,但是在xca ...

1、直接修改就行了

2、电子设备只能认识 0 和 1 怎么可能储存的是 . 呢?
参照 ASCII 表 值为 01 时候就是 .

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-17 12:57 , Processed in 0.054268 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表