• 全部
...

WINCE下网卡驱动的开发问题,进者有分,结贴做总结,欢迎畅所欲言【推荐】

xilidecai 2009-12-21 04:38:42
加精
最近在做网卡驱动,但是无论是google还是baidu发现这方面的资料不多,尤其是wince下网卡驱动的开发,就更少了!以前由于BSP包里面都带,要么CS8900,要么DM9000,当然也有其他的网卡。其中在模拟器里面提供了CS8900网卡的源码,现在抛出问题,希望能和大家一起探讨!
问题:
1.CS8900芯片内置的PacketPage存储单元支持两种地址访问模式:一种是内存访问模式,一种是I/O端口访问模式。CS8900芯片复位后的默认工作模式是I/O模式,I/O端口地址默认为300H。
那么内存访问模式又是什么?什么情况下使用?
2.无论是DM9000或者CS8900还是其他的网卡驱动,现在从厂商大部分都能获得源码,大部分只需要知道中断号和入口地址,然后进行相应配置和修改就可以了。
那么中断号和入口地址从什么地方看出来呢?是不是下面给出的这样呢?如果是,DM9000是什么样的呢?如果不是,又是什么样呢?
在模拟器下CS8900在初始化的过程中给出了4个步骤:
(1)配置允许CS8900以太网控制器芯片接收以太网数据类型:
WritePacketPage(RX_CTL,RX_CTL_RX_OK|RX_CTL_INDIVIDUAL|RX_CTL_BROADCAST);
(2)配置CS8900以太网控制器芯片以中断的方式接收数据帧
WritePacketPage(RX_CFG,RX_CFGRX_OK_IE);
(3)配置CS8900以太网控制器芯片选择使用第0号中断引脚
WritePacketPage(INTERRUPT_NUMBER,0);
(4)配置CS8900以太网控制器芯片使之允许收发数据帧:
WritePacketPage(LINE_CTL,LINE_CTL_RX_ON|LINE_CTL_TX_ON);
3.如果要验证一个驱动移植是否成功,如何去做呢?是通过Ping通与否嘛?还是收发数据包成功呢?如果,发送数据包,是什么样的数据包?需要自己定义还是简单的数据进行打包?
4.如果要开发自定义的网卡驱动应该如何开发呢?微软又提供了哪些层的代码?我们又需要做哪些工作呢?
因为在PUBLIC\COMMON\OAK\DERIVERS\NETCARD目录下面只提供了ar6k,e100bex,ne2000,ne2000isr,netmui,smsc100fd,如果是自己的网卡,需要完全自己开发吗?
5.在一些源代码流程分析中,包括从网上一些老牛的博客中也可以看出,NDIS.dll提供了网络驱动的接口参数,“简单”的说,只需要调用就好了,可是怎么调用呢?前段时间看了下PUBLIC\COMMON\OAKK目录下的NDISUIO的的示例代码可是编译总是出问题,我是直接编译的,是不是应该添加什么函数库呢?
6.假如网卡驱动成功了,我要实现数据包的收发,应该怎么做呢?是自定义IOCTL自定义还是调用几个API接口参数呢?如果是API又是哪些API呢?如果数据流很大,比如视频流,那么个人应该认为采用DMA方式来完成数据的收发,可是又该怎么实现呢?
以上问题,最近需要解决,我有什么进度也会及时跟进!
希望大家多多交流!有点思路就说,或者这个方向也好!
如果解决了,我会进行网卡驱动的总结,再追加100分!
...全文
给本帖投票
2492 127 打赏 收藏 转发到动态 举报
写回复
用AI写文章
127 条回复
切换为时间正序
请发表友善的回复…
发表回复
guangwu1214 2012-05-22
  • 打赏
  • 举报
回复
最近也在学这个,关注下
wangzhenbaizhi 2011-03-21
  • 打赏
  • 举报
回复
本人最近也在弄WINCE 5.0下的网上驱动,是S3C2440的,有意着请加我QQ哦,一起学习
ywm7731083 2010-09-16
  • 打赏
  • 举报
回复
学习中!!!!!!
swicloud 2010-09-15
  • 打赏
  • 举报
回复
关注没研究过
xiao_rq 2010-08-09
  • 打赏
  • 举报
回复
标注一下,非常有用!
浪尖飞鲨 2010-07-22
  • 打赏
  • 举报
回复
供应嵌入式linux/Wince 3G EVDO/WCDMA无线上网卡 (模块)
  供应嵌入式linux/Wince 3G EVDO/WCDMA无线上网卡 ,可提供相关系统的驱动程序,可二次开发3C数码终端(导航仪/MID)、3G路由器,3G视频服务器,3G工业数据采集系统

我们的数据卡和模块产品全面支持嵌入式操作系统下的驱动
–Linux 2.6
–WinCE 5.0/WinCE 6.0
–Android 1.5/1.6/2.1

已经在以下硬件平台验证测试
–Freescale i.MX21/i.MX31/i.MX27/i.MX51(Cortex A8)
–TI OMAP 3530 (Cortex A8)/3430/3630/DM355
–Marvell PXA310/PXA168/PXA166
–SiRF Prima A4 (ARM1136)
–Intel Atom
–RMI Au1200/Au1250/Au1300
–Telechip TC89XX
- Rockchips 2718

–Anyka
–Jade
–VIA
- Nvidia

–海思 K3
–瑞芯微
–中星微
–OmniVision
接下来将支持更多平台

产品特性:

1:网络支持:

支持中国电信 3G EVDO 网络下行最高 3.1 Mbps, 上行1.8 Mbps。
支持中国联通 WCDMA 网络下行最高 7.2 Mbps,上行5.74Mbps。

2:采用通用usb无线上网卡、标准PCIE接口模块,保护用户投资,只要您的嵌入式产品具有linux、wince操作系统和usb host接口立即可以 3G Ready。

3:支持通用的AT命令集,可在现有设备的基础上轻松升级到3G数码装备、3G无线视频监控、3G无线数据采集。


公司产品资质:(QQ45459768,13826579041)
1:国内通用3C证书、ISO9001质量认证、信息产业部入网许可证、中国电信终端入库产品证明。
2:深圳市高新企业、中国通信标准制定委员会全权会员
四极管 2010-04-10
  • 打赏
  • 举报
回复
值得一看
lipengbo10054444 2010-03-26
  • 打赏
  • 举报
回复
顶顶顶顶
chen89506624 2010-03-24
  • 打赏
  • 举报
回复
先学习一下
shenmou 2010-03-22
  • 打赏
  • 举报
回复
[Quote=引用 51 楼 xilidecai 的回复:]
谢谢各位的关注!
刚才在万方上找了一篇文章,感觉有用,在这里贴出来和大家共享!不过图就没有了,我不会贴,嘿嘿,原谅下,回头有需要的,我可以发给你们。
3.2网络驱动接口的具体实现
实际网络驱动的编写,就是理解wincE下网络驱动程序的构架,然后针对实际的硬件编写代码,实现相应的中间层Miniport Driver接口函数。下面结合利用WinCE5.0内核在脉冲发生器嵌入式主板上移植编写嵌入式……
[/Quote]
讲的不错
lan120576664 2009-12-28
  • 打赏
  • 举报
回复
楼主搞定了cs8900么??
介绍一下方法嘛
cacoless 2009-12-23
  • 打赏
  • 举报
回复
不知道呀,顶了!
xilidecai 2009-12-23
  • 打赏
  • 举报
回复
[Quote=引用 104 楼 reallyu 的回复:]
中断号和端口地址是和你的硬件连接有关,你看原理图就能看出来了.
一般中断号是看网卡的中断信号连在cpu的那个中断pin上
端口地址要看地址线和片选信号是怎么连的
[/Quote]
恩,这个我正在在看实现的函数,只是我想知道如果实现收发数据包该如何实现呢?
xilidecai 2009-12-23
  • 打赏
  • 举报
回复
呵呵,谢谢大家的关注,分不是问题,不够我在另外开贴送分就好了!关键是问题的解决!
这两天一直在查找资料,发现WINCE下网卡驱动开发的资料真的很少,很大一部分朋友在做这块的时候都是直接拿来使用或者进行适当的移植。当然做驱动开发这块关键就是在于移植,我现在有两个方向要走:
1.参考W参考windows 下的网卡驱动开发,利用DDK+driver studio+VC进行开发,确切的说也是移植或者直接来用,弄清楚在windows下的流程。据说wince是windows的一个子集,问了一些人都说只是部分函数名称变了而已,有一些在CE下没有提供了,还有一些仍然可以使用的。
2.读现有的CS8900和DM9000网卡驱动,种点在于把握数据包的收发,寄存器的配置,以及中断的使用。
另外,最近还有一个思路,当然还是在windows下的PCAP,如果只是实现读取数据包,那么PCAP也是一个不错的选择!而且这个已经成功运用的WINCE3.0的版本,只是后面的版本,包括现在大家使用的WINCE6.0是否能使用就不得而知,有必要验证一下!这对我又是一个挑战!
呵呵,好了说了那么多废话,没有一句实际的!这个问题先到这里,周末结贴!现在继续探索...
cdcjk 2009-12-23
  • 打赏
  • 举报
回复
学习
liu071401220 2009-12-23
  • 打赏
  • 举报
回复
关注
jiutianzhuri 2009-12-23
  • 打赏
  • 举报
回复
望楼主不吝给分
xuefeng_baggio 2009-12-23
  • 打赏
  • 举报
回复
前阵子搞了点 等有时间再来看楼主的贴!肯定有用!帮顶下!
lllchr88 2009-12-23
  • 打赏
  • 举报
回复
还没弄过.mark
o46382509 2009-12-23
  • 打赏
  • 举报
回复
顶一个。。
加载更多回复(99)

19,520

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
社区公告
暂无公告

试试用AI创作助手写篇文章吧

手机看
关注公众号

关注公众号

客服 返回
顶部