首页 > 文章中心 > 驱动程序设计

驱动程序设计范文精选

开篇:润墨网以专业的文秘视角,为您筛选了十篇范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

TCD142D驱动程序的设计

摘要:本文主要研究如何用单片机实现TCD142D器件驱动的设计。并采用了KEIL软件对设计的程序进行了编译和调试,达到了较好的设计效果。

关键词:TCD142D;驱动;CCD

中图分类号:TP311.1 文献标识码:A文章编号:1007-9599 (2010) 06-0000-01

TCD142D Driver Program Design

Xu Jing,Liang Hua

(Electronic&Information Institute of Nanchang Technology College,Nanchang330044,China)

Abstract:This research is mainly about the driver problems of TCD142D device using MCU.We use the KEIL software programs to compile and debug the program,achieving a better effect.

Keywords:TCD142D;Driver;CCD

全文阅读

EEPROM驱动程序的开发设计

1引言

电可擦除、可编程只读存储器(Elec-ricallyErasableProgrammableRead-OnlyMemory,以下简称为EEPROM),具有存取速度快,可以随机访问,并在掉电时,不会丢失任何信息等优点。对EEPROM进行编程时,无须将它从原插座中取出,擦除信息方便,不需任何条件。由于它本身所具有的普通存储芯片没有的优点,因此,有一定应用前景。

2EEPROM的硬件分析

EEPROM的擦除不需要借助于其他设备,它是以电子信号来修改其内容的,而且是以Byte为最小修改单位,不必将资料全部洗掉才能写入。EEPROM在写入数据时,仍要利用一定的编程电压,此时,只需用专用刷新程序就可以轻而易举地改写内容,所以,它属于双电压芯片。借助于EEPROM芯片的双电压特性,可以使BIOS具有良好的防毒功能,可以方便地升级和控制。

3EEPROM设计原理与指令

(1)起始条件:如果CS和DI引脚在CLK出现首个上升沿的时候同时为高电平,器件就视之为起始位。

(2)数据输入/数据输出(DI/DO):数据输入引脚和数据输出引脚可以连接在一起。驱动器电流源输出能力越强,数据输出引脚上的电压就越高。为了限制电流,应该在DI引脚和DO引脚之间串接一个电阻。

(3)数据保护:如果VCC低于1.5V的典型电压值或3.8V的典型电压值,所有的操作模式都将被禁止。在正常操作过程中,EWEN和EWDS命令可以提供额外保护以避免发生意外编程操作。

全文阅读

μC/OS-II的设备驱动程序管理模块设计

摘要:μC/OS-II是一个基于抢占式的实时多任务内核,可固化、可剪裁、具有高稳定性和可靠性,μC/OS-II作为一个操作系统内核,它没有设备驱动程序管理部分。文章着重阐述了如何为μC/OS-II添加设备驱动程序管理模块,并给出了在NEC PD78F0376 平台下串口驱动程序的范例。

关键词: μC/OS-II;驱动设备管理;串口驱动

中图分类号:TP316文献标识码:A文章编号:1009-3044(2007)06-11649-02

1 引言

uC/OS-II 是一个简单、高效的嵌入式实时操作系统内核,被应用到各种嵌入式系统中。目前,它支持 x86、ARM、PowerPC、MIPS 等众多体系结构,并有上百个商业应用实例,其稳定性和可用性是经过实践验证的。uC/OS-II仅仅是操作系统内核,没有象其它嵌入式操作系统一样提供了文件系统管理和驱动设备管理部分,所以对于在uC/OS-II操作系统下开发应用程序的人员来说,应用程序是直接调用设备的底层函数,这就需要开发应用程序的人员能够比较了解底层的细节,一旦硬件设备较多,需要访问硬件设备的应用程序较多,应用程序开发人员要自己解决驱动程序的管理问题就比较麻烦。而拥有了驱动设备管理模块,驱动程序的安装可交给底层开发人员来完成,应用程序的开发人员就可以通过统一的接口函数来访问底层,同时也方便多个设备驱动程序的统一管理。

2 驱动设备管理模块的设计

驱动设备管理模块相当于操作系统和底层设备驱动程序的桥梁,一方面底层的相关函数在执行的时候可能需要操作系统提供的资源,另一方面,上层应用程序是通过操作系统来获取对底层设备的信息和对其操作的权力,在设计中,建立了驱动设备列表和驱动程序描述表来实现上述两个主要功能。下面对这两个表作详细介绍:

驱动设备列表是一个双向链表,驱动设备列表的大小是动态的,因此可以任意向其中添加新设备,应用程序通过设备来访问驱动设备列表,来找到该设备在驱动程序描述表对应的索引号,再从驱动程序描述表里面找到该设备的底层操作函数。链表设备的结构体定义如下:

全文阅读

嵌入式驱动程序设计课程研究

[摘要]随着嵌入式技术及物联网技术时代飞速发展,嵌入式系列课程的教学也在各大院校中开展起来,嵌入式驱动程序设计属于软硬件结合设计的一门学科。介绍了嵌入式驱动程序设计概念,对驱动程序设计课程进行了设置。设置了串行口通讯、键盘驱动原理、I/O接口电路、A/D接口电路、LCD的驱动控制、触摸屏程序设计的内容,对培养适应社会需求的嵌入式技术人才有着重要意义。

[关键词]嵌入式驱动程序 嵌入式技术 课程研究

[中图分类号]G434 [文献标识码]A

一、引言

嵌入式系统的硬件组成除了包括中心控制部件嵌入式系统处理器外,还有输入输出装置以及一些扩充装置开关、按键、传感器、模数转换器、LCD显示器、触摸屏及LED(发光二极管)等嵌入式硬件设备。嵌入式硬件环境是整个嵌入式操作系统和应用程序运行的硬件平台,不同的应用通常有不同的硬件环境[1]。硬件平台的多样性是嵌入式系统的一个主要特点。如何让这些设备工作起来,是嵌入式驱动程序的任务。由于I/O设备种类繁多,工作模式各不相同,驱动程序是整个嵌入式软件设计中最复杂、代码量最大、最繁琐的部分。

二、嵌入式驱动程序概述

外设驱动程序可以对系统提供访问设备的接口,把操作系统(软件)和设备(硬件)分离开来。当设备改变的时候,只需要更换相应的驱动程序,不必修改操作系统的内核以及运行在操作系统中的软件。系统的驱动程序要受控于相应的操作系统的多任务之间的同步机制。在操作系统中使用信号量、邮箱等机制进行协调。操作系统只和特定的驱动抽象层通讯,无论在抽象层下面对应的是什么类型的设备,对操作系统和用户的应用程序来说都是统一的接口[2]。驱动抽象层位置图如图1所示。

图1:驱动抽象层位置图

全文阅读

C64x系列DSP/BIOS中设备驱动程序的设计

摘要:为了高效地对外部设备进行控制,给硬件设备编写驱动程序是一种有效的解决方法。C64x系列的DSP系统提出了类/微型驱动模型的驱动程序结构。实践结果表明,采用类/微型驱动模型进行驱动程序设计后,应用软件可以复用绝大部分相似设备的驱动程序,因而极大地提高了驱动程序的开发效率。关键词:数字信号处理器 I/O设备驱动 类/微型驱动模型 实时操作系统

随着新技术的不断涌现和DSP实时系统的日趋复杂,不同类型的外部设备越来越多。为这些外部设备编写驱动程序已经成为依赖操作系统管理硬件的内在要求。但是,由于内存管脚、响应时间和电源管理等条件的限制,为一个给定的DSP系统编写设备驱动程序有时候会很困难。针对设备驱动程序开发者遇到的上述难题,TI公司为C64x系列[1]DSP的开发者提供了一种类/微型驱动模型(class/mini-driver model)[2]。该模型在功能上将设备驱动程序分为依赖硬件层和不依赖硬件层两层,两层之间使用通用接口。实践结果表明,采用类/微型驱动模型进行设计后,应用软件可以复用绝大部分相似设备的驱动程序,从而提高驱动程序的开发效率。

1 类/微型驱动模型简介

在类/微型驱动模型中,类驱动通常用于完成多线程I/O请求的序列化功能和同步功能,同时对设备实例进行管理。在包括视频系统I/O和异步I/O的典型实时系统中,只有少数的类驱动需要表示出外部设备的类型。

类驱动通过每个外部设备独有的微型驱动对设备进行操作。微型驱动通过控制外设的寄存器、内存和中断资源对外部设备实现控制。微型驱动程序必须将特定的外部设备有效地表示给类驱动。例如:视频显示设备存在一些不同的帧存,应用软件会根据不同的I/O操作进行帧存的分配,此时微型驱动必须映射视频显存,使得类驱动可以对不连续的内存(分别存放RGB或YUV分量)设计特定的I/O请求。

类/微型驱动模型允许发送由开发者定义数据结构的I/O请求包给微型驱动来控制外部设备,此分层结构使设备驱动的复用能力得到加强,并且丰富了发送给微型驱动的I/0请求包的结构。

类/微型驱动模型结构如图1所示。上层的应用程序不直接控制微型驱动,而是使用一个或一个以上的类驱动对其进行控制。每一个类驱动在应用程序代码中表现为一个API[3]函数并且通过微型驱动的接口IOM与微型驱动进行通信。类驱动使用DSP/BIOS中的API函数实现诸如同步等的系统服务。

类驱动通过标准的微型驱动接口调用微型驱动控制硬件设备。到目前为止DSP/BIOS共定义了三种类驱动:流输入输出管理模块(SIO)、管道管理模块(PIP)和通用输入输出模块(GIO)。在PIP和SIO类驱动中,调用的API函数已经存在于DSP/BIOS的PIP和SIO模块中。这些API函数需将参数传给相应的适配模块(adapter),才能与微型驱动交换数据。而在GIO类驱动中,调用的API函数则直接与微型驱动通信(需在CCS2.2以上)。

全文阅读

基于DDK的PCI设备驱动程序设计

摘要:该文以基于PCI9056的某项目设备板卡为例,介绍WDM驱动程序和PCI总线协议,分析利用DDK开发WDM驱动程序的主要例程,实现了识别板卡及测试板卡功能。

关键词:WDM;PCI;DDK;设备驱动程序

中图分类号:TP333文献标识码:A 文章编号:1009-3044(2011)07-1534-03

Designed of PCI Device Driver Based on DDK

ZHAO bin1, TIAN Ze1, CHEN Jia2

(1.Xi'an Shiyou University, Xi'an 710065, China; 2. Xidian University, Xi'an 710072, China)

Abstract: This paper takes a PCI device as an example, describes WDM drivers and PCI bus protocols. And introducing a method of WDM driver design base on DDK(Driver Development Kit), realizing identification and testing function.

Key words: WDM; PCI; DDK; device driver

全文阅读

《ASP.NET程序设计》课程“项目驱动教学法”实践

摘要:《程序设计》作为高等职业院校甚至是应用型本科院校计算机及相近专业的一门重要的职业技能课程,在专业教学中占有重要的地位。在课堂教学中如果单纯采用以教材知识讲授、按部就班的教学方式,将不能有效提高学生的实践应用技能,学生缺乏综合操作技能的训练,培养的学生与企业要求还有很大的差距。在课堂教学中引入“项目驱动教学法”,以一个小型项目的设计与开发过程贯穿课程教学始终,把课程中分散的知识点有机的联系起来,并加以综合应用,充分调动学生的学习积极性,提高学生的实践操作能力、职业能力与团队合作能力,以达到培养高素质、应用型人才的目标,满足企业对人才的需求。

关键词:程序设计;职业技能;项目教学法

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2017)03-0095-02

微软公司推出的.NET是当前主流的软件开发平台和运行环境之一,已经成为面向下一代企业级应用系统开发的首选平台,作为其重要的组成部分,因其功能强大,易于学习,使用方便,开发效率高而受到广大软件设计人员的青睐,成为其软件项目开发的首选工具。由于技术所具有的诸多优点,以及社会对.NET软件设计师需求量的不断增加,很多高等职业院校甚至是应用性本科院校的计算机专业都将其作为一门职业核心技能课程进行开设,以培养学生的Web软件设计与开发能力。由于这门课程的技术性和实用性都比较强,在教学中如果采用传统的“按部就班”的以教材内容为主的讲授方式,将不能很好地培养学生的web软件设计能力,学生仍然不能很好地将所学知识应用于实践,不能将所学知识进行有机的融会贯通。为了改变传统教学方法的缺点,在课堂中通过引入一个小型的案例程序,采用“教”、“学”、“做”一体化的“项目驱动教学”模式,把课程中相对分散的知识点贯穿起来,使知识点不在孤立,将各个知识点分散到项目的设计过程中,在教师的指导下,学生完成案例程序的设计,从而使知识得到综合应用,提高学生的软件设计能力与职业素养能力。

1 程序设计项目驱动教学法

“项目驱动教学法”是师生通过共同实施一个完整的项目工作而进行的教学活动。与传统教学模式的不同在于“项目驱动教学法”能够使学生亲身体验并参与项目的制作与开发过程,学生的学习主动性能够得到有效的发挥。在项目的制作过程中,按照教学任务的不同将项目分解成若干个子项目,将知识点分散到每一个子项目中进行讲授,使教学重点与难点在设计过程中能够轻松突破,学生更加容易掌握与接受教学内容。《程序设计》选取一个学生比较熟悉的内容“新闻管理系统的设计与开发”为例进行讲授,采用任务驱动、项目教学为主的教学模式。

1.1 将教学内容按知识模块进行划分

根据《程序设计》课程教学内容以及结合新闻管理系统的设计与开发的过程,将教学内容按照不同的知识模块进行划分,每一个知R模块为一个教学单元。主要模块及知识点安排如下表1:

全文阅读

Linux下USB设备驱动程序设计

摘要在现代生活中,由于USB接口方便快捷,人们对USB设备的依赖感也越来越强。许多操作系统中也都包含了大量USB设备驱动。Linux系统几乎支持各种各样的USB设备,包括鼠标、键盘、摄像头、游戏杆等各种各样的USB设备。在主机控制器方面,Linux内核不仅支持USB1.1协议的UHCI与OHCI,还支持USB2.0协议的EHCI。本文详细的描述了USB设备的框架结构以及Linux系统下的USB驱动的框架结构。

【关键词】USB 设备驱动 Linux

1 USB总线原理

USB 协议是1994年底由康柏、IBM、英特尔等几家公司联合提出来的外部总线接口协议。USB就是英文中Universal Serial Bus(通用串行总线)的缩写。USB总线具有其他总线所不具备的如:热插拔、数据传输可靠、扩展方便、成本低等一系列特点,因此在嵌入式系统中被广泛使用。

一个USB系统一般是由一个USB主机控制器、一个或多个USB集线器和一个或多个USB设备节点组成。USB系统的物理连接具有层次性。USB总线连接USB设备和USB主机,是一种星型拓扑结构。USB的拓扑结构如图1所示。

在一个USB系统传输数据的过程中有两个非常重要的概念,就是USB传输模式和USB描述符。USB传输模式是指USB设备传输数据的形式。USB设备支持四种传输模式:控制传输模式、同步传输模式、中断传输模式和批量传输模式。控制传输模式是用来处理USB主端口到USB从端口的数据传输,主要是设备控制指令、设备查询状态指令和确认指令。同步传输模式是指传输和时间关系密切的信息所使用的一种传输方式,是一种周期的、连续的单向传输方式。中断传输模式这类传输模式主要用于传输非周期性的、自然发生的、数据量很小的信息,这类数据传输的方向是从设备到主机,适用于键盘、鼠标、操纵杆等设备上。最后一种是批量传输模式,该模式适用于大量的、对时间没有要求的数据传输,如U盘或者移动硬盘等设备。

USB设备在逻辑上分为几个层次,分别是设备层(Device)、配置层(Config)、接口层(Interface)、端点层(Endpoint)。各个层次都有与之相对的描述符,分别是设备描述符、配置描述符、接口描述符和端点描述符。

2 Linux下的USB驱动框架

全文阅读

S3C2410开发板中CF卡的驱动程序设计

摘 要:通过分析Linux设备驱动程序设计步骤,在系统层通过memory寻址访问方式改造CF卡的低层驱动,最终实现以CF卡作为存储设备的嵌入式Linux系统。

关键词:嵌入式;CF卡;低层驱动;存储设备

中图分类号:TB文献标识码:A 文章编号:1672-3198(2012)12-0162-01

0 引言

设备驱动程序是构成Linux内核的主要部分,不合理的驱动设计会导致系统内核出现紊乱,由于不稳定而导致系统崩溃,使行成重要数据丢失或严重后果。因此,设计合理的驱动程序,有助于保障系统的整体稳定性。在S3C2410开发板下设计合理的驱动程序是本文研究的重点。

S3C2410的硬件平台是基于ARM公司的ARM920T处理器核,采用32位微控制器,价格低,功耗低,性能高;软件平台通过u-boot移植和内核编译完成,所有这些特性使S3C2410为 linux操作系统内核驱动程序设计提供了较好的解决方案。

目前,嵌入式系统中应用最广泛的存储卡是CF卡。多数情况下,使用PCMCIA控制器实现CF卡的操作,为了减少设备使用和成本降低,本文在没有PCMCIA控制器情况下,探讨分析设备驱动程序设计步骤,CF卡的配置及底层驱动如何工作等问题,研究实现了利用CF卡作为存储设备的嵌入式Linux系统。

1 系统设计

全文阅读

PCM高速遥测发送卡的WDM驱动程序设计

摘 要:PCM高速遥测数据发送卡是一款基于PCI接口芯片9054的PCM信号源,工作码速率可达10 Mb/s。以在Windows 2000操作系统下设计PCM高速遥测数据发送卡的WDM驱动程序为例,介绍WDM驱动程序的基本特点和遥测数据发送卡的基本结构,详细讨论利用Driver Studio开发WDM驱动程序设计的关键技术,如设备初始化、软件FIFO、中断处理和DMA操作等。

关键词:PCI;WDM;I/O请求包(IRP);软件FIFO

中图分类号:TP311.52

文献标识码:B

文章编号:1004―373X(2008)04―063―03

开发驱动程序的软件主要有:MicroSoft公司的DDK,Jungo公司的Windriver和Compuware NuMega公司的Driver Studio三种。DDK是最基本的驱动程序开发工具,比较复杂,适于专业的驱动程序开发人员,不适于硬件开发人员开发驱动程序。Windriver开发驱动程序不需要熟悉操作系统内核知识,针对硬件PCI/ISA/PCM―CIA/USB开发驱动程序比较方便,但驱动程序的效率不高、缺乏灵活性。Driver Studio把DDK用类的形式进行封装,简化设备驱动程序的开发,方便又不失灵活性。所以这里选择Driver Studio作为驱动程序的开发工具。

在结合PCM高速遥测数据发送卡的基础上,本文介绍WDM驱动程序的结构特点和PCM高速遥测数据发送卡的硬件结构,并阐述针对数据发送卡的特点,详细地讨论驱动程序关键部分的设计。

1 PCM遥测数据发送卡的硬件结构

全文阅读