今天小编要和大家分享的是接口,总线,驱动相关信息,接下来我将从基于USB设备的接口驱动设计方法解析,车载wince60wifi wince怎样加装wifi这几个方面来介绍。
接口,总线,驱动相关技术文章基于USB设备的接口驱动设计方法解析
随着USB2.0设备的不断增加,USB设备驱动开发在嵌入式开发中变的越来越重要。Windows CE支持USB 2.0更是对这一波新技术浪潮产生巨大的推动。近期我负责一个这样的项目,在WinCE下开发USB接口的外围设备驱动。当时做这个项目花费了我相当多的时间和精力,错走许多冤枉路使我精疲力尽。
项目需求是在已调好的ARM9板子上开发USB WiFi无线网卡的驱动程序,具体要求是驱动程序平台是WinCE,CPU类型支持ARM构架,要能比较方便地移植到X86;驱动接口类型是USB2.0和Wlan 802.11b。后来因为连接效率一直有问题,就东改西改,最后改的是一塌糊涂。
1. 什么是WinCE设备驱动程序?
(1)从驱动加载方式来区分
在深入探讨Windows CE所支持的外围设备驱动程序之前,先了解在WinCE平台上使用的两种设备:内建设备和可安装设备。因此,从驱动加载方式来看WinCE可分为本机设备驱动(Built-In Driver)、可加载驱动(Loadable Driver)以及混合型驱动。
①本机设备驱动
本机设备驱动即Native Device Drivers。WinCE设计成可直接使用内建设备,这些设备由本机驱动过程控制,而本机驱动程序又与WinCE的核心组件紧密相连。这些驱动对应的设备通常在系统启动时,在GWES的进程空间内被加载,因此它们不是以独立的DLL形式存在,也因此要求每一个本机驱动程序都必须与称为设备驱动程序接口(DDI)的特定接口一致。
本机设备是指整合进平台的设备,其中包括显示、触摸面板、音频、串行埠、LED、电池和PC卡插座等。如果没有这些本机设备整个系统就不能和用户信息交流,例如触摸面板和显示等。本机驱动程序一般设计为动态链接库,但有两个例外:电池和LED驱动程序由于小而设计为静态库(当建立CE图像时与GWES模块链接)。这些设备相应的驱动程序是在WinCE平台开发过程中由OEM开发的,它们储存在ROM或闪存内。通常只有OEM才会对本机设备驱动程序进行修改,其它自由设备生产商只提供附加的硬件设备,对本机设备驱动程序不会有过多涉及。