阅读:1646回复:3
关于无线网卡ce驱动的开发的几个问题(我是一个wince的新手)
先说一下我要作什么:
1、硬件环境:我现在需要在一个pda的成品上做开发(可以是任何牌子的pda) 2、软件环境:ppc2003 3、在ce下无线网卡可以实现monitor功能,即不仅可以得到AP的各种信息,也可以得到STA的各种信息 4、在ce下实现wlan sniffer功能 再介绍一下工作背景: 1、我已经在windows和linux实现了wlan sniffer 2、现在需要在ppc上实现 3、为什么需要自己开发无线网卡的驱动?因为我在做windows下的wlan sniffer时候发现并不是所有网卡的驱动都可以支持monitor模式的。而且都没有开放的源代码。在linux就好多了,什么都是开源的,我已经在sharp的pda上做好了wlan sniffer,参考了linux的kismet。但是我觉得linux的界面人性化不好,而且我的sharp pda是英文的,客户不希望这样。所以现在要转移的wince上。 我的问题:(我是一个wince的新手) 1、在ce下开发无线网卡驱动是否不一定需要pb和bsp?因为我要在商品pda上使用,所以我也无法得到bsp。而且我不需要要把驱动编译到os image中。 2、是否用evc也开发无线网卡驱动?还需要其他的开发环境或工具吗? 3、如果我可以做出这样的无线网卡驱动,这样的驱动是否可以做到和pda的硬件无关?只和操作系统的版本有关?比如我就是针对ppc2003开发的。 4、驱动如何调试?是否可以使用某种工具进行单步调试?是不是就是论坛上一直都在说的epec?如果这样比较麻烦,是否可以把调试信息通过ppc的串口输出到pc的超级终端?这样我也可以接受,反正之前做linux驱动时候我已经习惯了printk了。 5、我做无线网卡驱动思路是把linux上的支撑wlan monitor模式的网卡驱动移植到ce上,这样做是否会有什么无法克服的困难? 最后,希望大家可以帮助我解决这些问题。不胜感激。 |
|
|
论坛版主
|
沙发#
发布于:2005-06-14 11:21
1.不一定要用pb来做,evc可能可以。当然没有bsp也不是完全不可能。要看你的无线网卡用什么接口。
2.和硬件无关?我觉得这个可能不能完全做到吧,无论怎么样,你最后操作网卡部分都需要通过主系统这边的某个控制器,虽然这个代码可能系统会帮你做好,但我想无线网卡不会是标准的吧(例如内部寄存器偏移等等,那么你要控制它必然会修改这部分代码) 3.对成品pda开发驱动不能单步调试,而且也没有支持调试信息输出的底层支持,不过无论用什么方式,只要你可以使用pda的任意物理通道传送信息那么就可以有办法输出调试信息。比如你可以借用其串口和pc的超级终端连接来输出调试信息,不过这个基础部件需要你自己做。 4.这里基本上谈不上移植,可以继续使用的就是你操作wlan网卡硬件的代码,由于os平台不同,驱动框架完全不同,api也都不一样,平台相关部分全部要重做。 以上纯属个人看法,有错误大家指正。 |
|
板凳#
发布于:2005-06-14 12:07
版主,你好:
1、我的无线网卡是CF接口的 2、为什么无法做到和pda硬件无关?你看在windows下不都是和平台硬件无关吗?我明白你说得意思,你是说要控制CF卡控制器吧。 3、有现成的可以把调试信息输出到pda串口上的工具吗?或者是ce的驱动支持printf从定向到串口吗? |
|
|
论坛版主
|
地板#
发布于:2005-06-14 15:28
嗯,cf接口虽然比较标准,我不是很清楚无线网卡标准制定到什么程度,比如内部控制寄存器固定偏移是否是一样的等等,如果这些不一样,那么主系统的cf驱动就不可能预先帮你写好,你在自己控制网卡的时候必须要重写这部分,那么必然要了解cf控制器的细节,不知道时候是这样。对了,如果cf标准是通过特定命令来做的,比如主系统发命令给无线网卡,然后接受回应,这倒有可能不用改,如果这样的话你实际上也不需要些什么代码了,就配置注册表就行了。
对于产品,没有调试的支持设施了,你可能需要自己做。 |
|