- 1、本文档共86页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
vxworks下设备驱动
VxWorks下设备驱动程序;设备驱动程序是直接控制设备操作的那部分程序,也是设备上层的一个软件接口。设备驱动程序的功能是对IO进行操作,实际上从软件角度来说就是对IO端口地址进行读写操作。
只要系统访问设备就会调用驱动。驱动程序不能自动执行,只能被系统或应用程序调用。;设备分为如下几类:
字符设备,大多数的传输设备以及显示终端。
随机存储块设备,这种设备主要是指磁盘。
虚拟设备,比如管道,套接字都属于这种设备。
控制见识设备,一般是指用于控制数模变换的IO设备。
网络设备,那些与网络协议挂接的通信设备。;VxWorks下设备驱动程序在系统中的层次;在Tornado环境下,成功安装BSP开发包之后,可以在../target/src/drv目录下找到一些设备驱动程序源代码文件。
配置这些VxWorks自带驱动程序,只需要在config.h文件中,添加这些设备驱动程序的宏定义就行。;在嵌入式系统中调用设备驱动通常有三种方式:应用程序直接调用,应用程序通过操作系统内核调用,应用程序通过操作系统的扩展模块进行调用。
不同的调用方式各有自己的优缺点,下面分别描述他们的优缺点:;优点:可以高效访问设备(因为绕过操作系统,而直接访问设备,减少了系统开销时间),减少了系统代码开销,适合简单的嵌入式系统。
缺点:所编写的应用程序移植性差(因为应用程序直接与设备驱动相关联),且用户自己来管理设备,不适合复杂的嵌入式系统。;优点:所编写的应用程序移植性好(统一的标准接口函数),且设备由操作系统管理,适合复杂的嵌入式系统。
缺点:操作系统管理设备,增加了系统开销。;扩展模块是嵌入式操作系统可供用户选择的模块。当用户需要某个扩展模块时才把该模块加入到操作系统中,如网络模块,文件模块等。它的优点类似于第二种调用方式,但这些扩展模块依赖于操作系统内核。;(1)对设备进行初始化。初始化的目的是使设备处于某种工作状态,以便用户程序访问该设备。譬如串口初始化包括设置串口波特率,数据位,奇偶校验位,停止位等。
(2)打开设备操作。打开设备操作实际上是查询用户指定的设备,并查看用户是否可以使用该设???。因为设备时共享资源,当设备正在使用时,系统要对它进行保护,禁止其他任务对设备进行操作,直到设备资源被释放。;(3)关闭设备操作。关闭设备操作就是释放设备资源。任务对设备完成操作之后,必须进行关闭设备操作,否则设备总是处于被占用状态,其他任务无法使用。与打开设备操作相对应,有打开操作就有关闭操作。
(4)从设备上接收数据并提交给系统。这项功能就是通常所说的读操作,接收外部传输来的数据。接收数据采用的方式有查询方式,中断方式和DMA方式。;(5)把数据从主机上发送给设备。这项功能对应通常的写操作,把主机上的数据传送给外界。通常系统主动调用该操作进行数据发送,有时也采取中断方式发送数据。
(6)对设备进行控制操作。在使用设备过程中,有时根据应用的需要对设备进行控制,而控制操作就能提供这种功能。;应用程序对设备进行操作是通过操作系统的IO管理子系统来进行的。而IO管理子系统对设备的管理在系统中是通过一张表来操作,通常把这张表成为“设备驱动程序表”。设备驱动程序表实际上是一个数组,它的每一个数组项是一个设备驱动程序地址表结构体,这个结构体包含初始化,打开,关闭,读写,控制等操作函数的入口地址。如果哪一个操作函数空缺,那么它的入口地址是NULL。;操作系统通常提供了给设备命名的功能,系统可以调用相关的系统服务给设备注册一个名字。应用程序可以根据这个名字获得对应设备的主从设备号以及对设备进行打开,关闭,读,写等操作。
下面是一个注册设备名的函数示例。
status xx_io_register_name(char *name,int major,int minor);
Major 主设备号;minor 从设备号;VxWorks下设备驱动程序通常要调用一些基本的函数,对设备进行安装,卸载,读,写,控制等操作。;设备驱动程序是控制硬件运转的软件解决方案。当硬件发生时间或状态改变时,软件必须知道这些情况以便应用程序可以做出相应反应。
设备驱动程序通常采用两种方式来获得这些状态的改变或事件的发生:
(1)轮询方式
(2)中断处理方式;当使用不支持中断方式的设备时,可以通过轮询方式对设备进行管理。而轮询方式采用下面几种实现方式:
驱动程序任务在系统空闲时进行设备轮询;
驱动程序任务周期性进行设备轮询;
驱动程序通过辅助时钟进行设备轮询。;在微处理器的中断机制中,包含两类中断源:一类是外部中断源,它是通过外部设备接口向CPU的中断请求引脚“INTR”和“NMI”发出中断请求信号引起的中断。另一类是内部中断,内部中断是CPU通过执行中断指令产生的,或者是CPU在执行程序时遇到一些异常情况产
您可能关注的文档
- Visio2003使用指南-简易版.ppt
- 在口腔诊所经营中谈谈如何做好客户管理增加客户体验概要.ppt
- VLAN中继、单臂路由、小型企业网综合配置 OK.ppt
- VHDL文本输入设计流程(maxlplusII).ppt
- VLSI3 器件设计技术.ppt
- visonic安防主机编程手册.doc
- VLSI8 全定制设计模式.ppt
- 在农历的天空下:二十四节气之春分概要.ppt
- 在山的那边_PPT课件概要.ppt
- 在学校的最后一天PPT概要.ppt
- 2024年湖南省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年江西省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年安徽省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年福建省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年广东省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年河北省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年河南省高考英语试卷(含答案解析)+听力音频.docx
- 2024年湖北省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年湖南省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年江苏省高考英语试卷(含答案解析)+听力音频+听力原文.docx
文档评论(0)