想学WINCE驱动,但书很少,于是打算从WINDOWS驱动入手,但是,今天跑了深圳南山,罗湖书城,还有八卦路的书市,都没找到一本关于WINDOWS的驱动的书,都不知道怎么办好.
WINCE驱动开发又用到那么多的结构函数,像音频驱动中有什么MMDRV_MESSAGE_PARAMS的结构,还有WIDM_ADDBUFFER消息,
不知道怎么可以系统的去学习这些驱动编程中用到的函数啊
想搞WINCE 的,那就买个板子搞
基本都带驱动的例子,应该不难
可以来汉远嵌入开发网看下,www.embedlab.com.cn刚好推出了一款2440板,价格优惠详情请查看
安装PB,看看PB的驱动帮助吧
PB的BSP中已经带有很多驱动的。
看一下流驱动模型,wince驱动模型,其它的都是基于这个的
学驱动主要是要能看懂CPU等器件的datasheet,如果看不懂还是算了,光看什么API函数一点用都没有,如果在bootloader中写,很多就是用汇编。
首先是wince驱动的分类问题。按照书上讲的说CE下驱动分成单体驱动和分层驱动,而看到另一种说法是本机驱动和流式驱动。经过microsun大哥的指点,把这两种分类法分开了。在这里引用一下:
“单体与分层只是从代码的形式上做的分类.分层驱动代码上分为PDD与MDD,一般的微软已经实现了MDD,可能也实现了PDD,我们只需要对PDD做些修改就能使用,比如音频的驱动,显示的驱动。单层驱动是把PDD与MDD写在一起,没有做严格的区分,通常这种驱动比较简单,比如:ATADISK。
至于本地驱动和流式驱动是从驱动与系统其它模块(调用者)的接口形式上做的分类.其实,本地驱动这个名称不大恰当,可能叫专用驱动或其它名字更为合适.它是指调用它的模块给它有特定的接口,比如电源驱动和通用LED驱动。而串口,网卡等就是流接口驱动程序.
所以,一个驱动程序可以是单体的流式驱动,例如:ATADISK.也可以是分层的流式: 如OHCI ”
按照我的理解,单体和分层是驱动实现方式上的分类,而本地和流式则是驱动模型上的分类,所谓本地驱动就是操作系统有保留专门的接口,所谓流式是指编写的DLL文件里可以导出各种流式接口函数。
第二点:驱动的功能属性。设备驱动程序是操作系统内核和硬件的接口,操作系统定义了一组标准的接口,编写驱动的过程也就是实现这些接口。从应用程序到具体硬件间有如下这些环节起作用:应用程序-调用OS函数-操作系统-驱动接口-驱动程序-硬件操作函数-硬件。在wince里驱动都以用户态的DLL存在,需要通过进程加载到slot里。共有三类系统进程用来加载:Device.exe,GWES.exe,FileSys.exe.绝大多数设备驱动都是通过Device.exe加载的。需要注意的是,不同的OS保留的设备驱动接口是不一样的,如桌面windows和wince就不同。
查看详细信息,请访问嵌入式软件开发论坛 http://www.embeddedsoft.cn/BBS/showtopic-95.aspx
orthTiger
讲的很直接,一刀见血,说明你理解的很到位。o(∩_∩)o...
经常来这里看别人的帖子,自己也尝试着回答,就慢慢会了
先买块开发板、再买几本书,南山书城就有好几本wince下的很好的书籍,书名就不记得了
*****************************
深圳友坚恒天科技最新推出UT-S3C2440开发板,仅售700元RMB
史上做工最精致、性价比最高的2440开发板
详尽的文档、丰富的实验例程,ARM软、硬件开发入门最佳选择!
详情请登录:www.urbetter.com
联系电话:0755-26423815 符先生
该回复于2008-10-31 09:57:07被版主删除
为什么这么老的帖子会在今天重现江湖,而且还被版主干了。