轻质隔墙板厂家
免费服务热线

Free service

hotline

010-00000000
轻质隔墙板厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

带USB接口的电子巡更系统的设计 免费猫

发布时间:2020-02-17 12:42:07 阅读: 来源:轻质隔墙板厂家

带USB接口的电子巡更系统的设计

Windows98和Windows2000已经为一些USB标准设备提供了驱动程序,巡更机目前还不是标准的计算机外设,所以必须针对巡更机的特点来编写驱动程序。本设计中巡更机驱动程序是通过Windows DDK来开发的,它是Microsoft公司提供的一个开发Windows驱动程序的工具,DDK提供了编译驱动程序的环境。该巡更机的驱动程序是WDM 类型的,采用VC++编程。

驱动程序中对USB进行操作的请求都应调用系统例程,将其转化为一个URB结构,即USB请求块(USB Request Block),然后使用系统级的IRP将其提交。该驱动程序由四个模块组成:初始化模块、即插即用管理模块、电源管理模块和I/O控制模块。

①初始化模块。DriverEntry为驱动程序的入口处,通过它来执行大量的初始化函数。

②即插即用管理模块实现设备的热插拔和动态配置。驱动程序初始化完成后,接着对设备进行初始化,这主要是通过即插即用(PnP)管理器调用驱动程序中的AddDevice和IRP_MJ_PNP两个例程来完成的。当驱动程序从PnP管理器中收到IRP_MN_START_DEVICE请求时,驱动程序启动设备,并且准备好处理I/O操作。

③电源管理模块负责设备的唤醒和挂起。电源管理器(powermanager)从整个系统的角度来管理电源,所有与电源相关的IRP都是由它发出的,它发出的请求包可以指定一种新的电源状态以及查询或更改一种状态。支持电源管理的驱动程序,在最大程序地帮助Windows合理地利用资源方面起着重要作用。值得注意的是,与电源相关的IRP必须在同步操作上有非常严格的要求。例如,任何时候在一个PDO(物理设备对象)中。只能有一个 IRP_MN_QUERY_POWER或者IRP_MN_SET_POWER;电源IRP的处理要尽可能地快等。

④I/O控制模块完成输入输出请求的大部分功能。设备的控制由设备控制例程(IRP_MJ_DEVICE_CONTROL)负责,主要是对设备进行一些操作命令的发送或者标志的读取。数据读写主要由IRP_MJ_READ和IRP_MJ_WRITE两个例程完成,只需在AddDevice中申请一个符号链接,并且在StartDevice中将此符号链接激活即可。

2.3 应用程序设计

在Win32系统中,每一个设备对象都抽象为文件,此时的应用程序只需通过几条简单的文件操作API函数,就可以实现与驱动程序中某个设备的通信。在本设计中,应用程序是该电子巡更系统的中心,采用Visual C++编程。其主要功能有:启动或关闭USB设备、检查USB设备、设置巡更参数、从巡更机中读取数据以及显示、比较、存储数据等。

结语

USB接口因其具有诸多优点,近年来为计算机外设的开发热点,尤其是USB2.0标准的推出,其传输速率可达480Mb/s,使其真正意义上成为了一种通用串行总线。而根据笔者的实际开发经验,Philips公司的PDIUSBD12是一种性能优良、经济、实用、高效的USB接口器件,很适合投资少、周期短的开发项目,而且可以根据自己的实际情况灵活地选择组件,相信其在各领域必有广阔的应用前景。

参考文献

1. 但唐仁 一种基于新型信息钮扣的巡更系统 [期刊论文] -长春光学精密机械学院学报2001(2)

2. Chris Cant.孙义 Windows WDM设备驱动程序开发指南 2000

3. PHILIPS Semiconductor PDIUSBD12

4. 王朔.李刚 USB接口器件PDIUSBD12的接口应用设计 [期刊论文] -单片机与嵌入式系统应用2002(1)

5. 周振宇.谷海颖 基于USB总线的实时数据采集系统设计 [期刊论文] -电子技术应用2002(2)

作 者:哈尔滨工业大学 魏廷库 刘晓胜 王锡仲

来 源:单片机与嵌入式系统应用2003(9)

豚鼠养殖

悲情小说

娱乐小说全文免费阅读

养生茶饮