设备驱动程序设计(精选)
- 格式:ppt
- 大小:1.51 MB
- 文档页数:5
VxWorks下USB设备驱动程序设计作者:王浩来源:《电脑知识与技术·学术交流》2008年第24期摘要:介绍了VxWorks下USB驱动的层次结构,分析了USB设备驱动程序开发的一般方法和关键技术。
在此基础上实现了VxWorks下LM9833设备驱动,达到了预期目标。
所给出的VxWorks下USB设备驱动设计的一般步骤为在VxWorks下开发其它USB设备驱动提供了参考。
关键词:VxWorks;USB设备驱动;管道;回调中图分类号:TP316文献标识码:A文章编号:1009-3044(2008)24-1200-04Design of USB Device Driver Based on Real Time Operation System VxWorksWANG Hao(College of Computer, Xidian University, Xi'an 710071, China)Abstract:The architecture of USB dirver based on VxWorks is given, general method and key technology in developing USB device dirver are analyzed.Then the device driver of LM9833 is implemented, expectant performace of target system is achieved. The general process of developing USB device dirver used in this paper can be refered by others USB device driver developing based on VxWorks.Key words: VxWorks; USB device driver; pipe; callback1 VxWorks下USB驱动概述VxWorks是WindRiver公司开发的具有工业领导地位的高性能实时操作系统(Real Time Operation System, RTOS)内核。
操作系统课程设计键盘驱动一、实验选题 (1)二、模块整体功能介绍及主要目标 (1)三、头文件的分析 (2)四、数据结构的分析 (2)1、数组tty_table[] (2)2、tty_struct 数据结构 (2)3、tty 等待队列数据结构 (3)4、各个数据结构间的关系图 (3)五、函数的分析 (4)1、采用中断驱动的I / O设备键盘的循环周期 (4)2、键盘中断处理程序 (5)3、ctrl和alt键的处理 (7)4、caps、scroll、num键的处理 (8)5、数字小键盘的处理 (11)6、减号键的处理 (13)7、功能键的处理 (14)8、do_self的处理 (15)9、左,右shift键的处理 (16)六、分析体会及亮点说明 (16)七、参考文献 (20)一、实验选题实验题目是:Linux0.11字符设备驱动中的键盘驱动程序源代码分析,这部分涉及到操作系统的中断、I/O应用接口、I/O子系统等相关知识,程序源代码参考Linux0.11中kernel目录下的keyboard.s文件。
二、模块整体功能介绍及主要目标该模块键盘中断处理程序 keyboard.s 主要用于读入用户键入的字符并放入read_q 缓冲队列中。
其具体实现机制是:当用户在键盘上键入了一个字符时,会引起键盘中断响应(中断请求信号IRQ1,对应中断号INT 33),此时键盘中断处理程序就会从键盘控制器读入对应的键盘扫描码,然后根据使用的键盘扫描码映射表译成相应字符,放入tty 读队列read_q 中。
然后调用中断处理程序的C函数do_tty_interrupt(),它又直接调用行规则函数copy_to_cooked()对该字符进行过滤处理,并放入tty 辅助队列secondary 中,同时把该字符放入tty 写队列write_q 中,并调用写控制台函数con_write()。
此时如果该终端的回显(echo)属性是设置的,则该字符会显示到屏幕上。
PCI设备的WDM驱动程序设计柳泉罗耀华柳华伟摘要:本文详细地讨论了利用DDK开发PCI设备的WDM驱动程序的设计原理、方法及在设计中注意事项,实现了以芯片PCI9052开发的PCI卡的具有内存和I/O读写及中断处理的WDM驱动程序。
关键字:PCI,WDM,驱动程序,DDK在Windows操作系统中,为了保证系统的安全性和可移植性,对应用程序对硬件的操作进行了限制,尤其Windows 2000和Windows XP,不支持直接对系统的硬件资源的操作。
因而在设计开发PCI设备时,需要开发相应的驱动程序来实现对PCI设备的操作,用户应用程序通过驱动程序来访问PCI设备。
由于计算机硬件设备都存在不同的特点,因此各种设备的驱动程序也都有自己的特点,比如PCI设备、USB设备等等。
尽管在整体框架中基本相同,但设备功能上不同,因此本文以PCI桥芯片PCI9052开发的PCI卡为硬件设备,来探讨PCI设备的驱动程序的开发。
1.驱动程序类型和开发工具的选择在WINDOWS操作系统下,支持PCI总线及其设备的驱动程序类型有支持Windows 98/95的VxD、支持Windows NT的NT式驱动程序和支持Windows 2000、Windows XP 和Windows 98的WDM(Windows Driver Model)。
前两种驱动程序类型由于其支持的操作系统的逐渐淘汰而淘汰。
现在主流的操作系统是Windows 2000和Windows XP,因此开发PCI设备的驱动程序最好的方案是WDM驱动程序。
在一个系统中开发出WDM 驱动程序,稍加修改即可在其他系统中编译运行。
WDM是在Windows NT驱动程序体系的基础上发展而来的,修改或增加了即插即用、电源管理等功能,使之适应硬件和用户的要求。
开发WDM驱动程序的主要工具是微软为各操作系统提供的开发软件包Device Driver Kits(DDK) ,该软件包为驱动程序开发者提供了用于驱动程序开发的资源文件、编译连接程序、开发技术文档等。
完整的内存设备驱动程序目录一、设备驱动中的并发控制 (2)1、并发 (2)2、自旋锁 (2)2.1、自旋锁的使用 (2)3、信号量 (2)3.1、信号量的相关操作 (3)3.2、信号量用于同步 (3)二、设备驱动中的阻塞与非阻塞 (3)1、阻塞操作 (3)2、非阻塞操作 (3)3、等待队列 (3)3.1、等待队列的相关操作 (3)4、轮询操作 (4)三、设备驱动中的异步通知 (4)1、异步通知 (4)2、信号的接收 (4)3、信号的释放 (4)3.1、异步通知编程用到一项数据结构和两个函数 (4)四、设备I/O端口和I/O内存的访问 (5)1、I/O端口与I/O内存 (5)2、可以使用以下函数访问定位于I/O空间端口 (5)2.1、I/O内存 (5)2.2、对设备内存映射的虚拟地址的读写 (5)3、申请与释放设备I/O端口和I/O内存 (5)4、设备I/O端口和I/O内存访问流程 (5)4.1、设备I/O端口访问流程 (5)4.2、I/O内存访问流程 (5)五、globalfifo驱动涉及的结构体、操作及代码 (5)1、globalfifo设备结构体 (5)1.1、cdev结构体 (6)1.2、设备号的分配和释放 (6)1.3、struct file_operations结构体 (6)2、使globalfifo驱动实现异步通知 (7)3、文件打开函数于释放函数 (7)4、读写函数 (7)4.1读函数 (7)4.2、写函数 (8)5、ioctl设备控制函数 (10)6、轮询操作 (10)7、初始化并注册cdev (11)8、文件操作结构体 (11)9、设备驱动模块加载函数 (12)9.1自动创建设备文件 (13)10、模块卸载函数 (13)11、其他代码 (13)11.1、必要的头文件 (13)11.2模块的相关信息 (14)六、Makefile (14)七、模块加载 (14)1、直接编译内核 (14)2、使用模块法 (15)设备驱动最通俗的理解是“驱使硬件设备行动”。
下USB OTG设备驱动程序设计孔旋,邓中亮北京邮电大学电子电子工程学院计算机应用技术专业,北京(100876)E-mail:kongxuan1982@摘要:本文介绍了USB OTG技术,分析了两用USB OTG设备驱动程序配置模型以及下设备驱动程序模型,并详细介绍了下pl2303的usb转串口桥接器芯片驱动程序的设计与实现。
关键词:USB OTG,,驱动程序1.引言USB,全称是Universal Serial Bus(通用串行总线)。
在1994年年底,由当时的康柏、IBM、Microsoft等多家公司联合发起成立的通用串行总线开发者论坛(USB Implementers Forum,简称USB IF)先后陆续推出了USB0.7、USB1.1、USB2.0规范,其理论传输数率最高可达480Mb/s。
最近,根据现有的USB接口在有线/无线,性能及应用规范上的不同,USB IF将USB接口分为5类,并发布了相应的标识,分别是:Wireless USB、Original USB、Hi-Speed USB、On-The-Go USB及Hi-Speed On-The-Go USB[1] 。
是微软公司向嵌入式领域推出的一款紧凑、高效的32位嵌入式操作系统,具有多任务、实时性、模块化及可伸缩性、强大的通信和多媒体能力等特点[2] ,在移动计算、工业控制和信息家电等诸多领域都有广泛的应用。
本文将通过工具Platform Builder实现TI OMAP850 PDA手机平台下USB OTG设备驱动程序,并实现基于OTG技术的一种应用——在无PC条件下,以PDA手机平台端为USB 主机端的数据通信。
B OTG技术2.1 OTG技术简介USB技术的发展,使得PC和周边设备能够通过较简单、可方便热插拔的方式连接在一起,通过USB总线,在PC的控制下进行数据交换。
但这种方便的数据交换方式,就在不久以前(10年以内),一旦离开了PC,各设备间无法利用USB接口进行操作,因为当时没有任何一种PC以外的其他设备能够充当PC一样的Host。
f a r s igh t I n c .LINUX 设备驱动高级班补充材料SD/MMC 的规范及其驱动程序设计华清远见 深圳2008.10(内部资料,请勿外传)华清远见(2008) 版权所有f a r s igh t I n c .一、SD/MMC 规范概述..................................................................................................3 1. 硬件规范......................................................................................................................3 2. SD/MMC 卡中的信息..................................................................................................4 3. MMC 提供的命令........................................................................................................6 4. 其它............................................................................................................................13 二、 S3C2410提供的SD/MMC 编程界面SDI (13)1. SDI 的主要特性.........................................................................................................13 2. 卡操作流程说明........................................................................................................13 3. 有关SD/MMC 卡的中断说明..................................................................................14 4. 有关SDI 的register .. (14)f a r s igh t I n c .一、 S D/MMC 规范概述 1. 硬件规范MMC 卡分共有7个触点(引脚),分为两种操作模式,分别为MMC 模式、与SPI 模式,两种模式对引脚的定义是不同的。