智能电法仪的设备驱动程序的设计与实现 测控技术与仪器毕业论文.doc
《智能电法仪的设备驱动程序的设计与实现 测控技术与仪器毕业论文.doc》由会员分享,可在线阅读,更多相关《智能电法仪的设备驱动程序的设计与实现 测控技术与仪器毕业论文.doc(105页珍藏版)》请在三一文库上搜索。
1、毕 业 设 计 ( 论 文 )题 目:智能电法仪的设备驱动程序的设计与实现TITLE: The Design and Implementation of the Intelligent Electrical Apparatus Device Drivers姓 名: 陈石明学 号: 08022101指导教师: 黎正根专 业: 测控技术与仪器二 零 一 二 年 六 月摘 要外部设备可以大大的增加仪器的功能,使仪器更加的智能,更加的完善。典型的外部设备,如显示屏、键盘、打印机等,对于仪器是非常重要的。因此,设计设备驱动程序,使主机与外部设备正常的通信也是非常重要的工作。本文主要设计了智能电法仪的设备
2、驱动程序。主要包括显示屏的驱动程序、USB口的驱动程序和极化补偿中D/A模块的驱动程序。运用这些驱动程序,可以使智能电法仪与人之间的通讯更加的方便。本文设计的设备驱动程序,都是以ARM7单片机为主机。显示屏的驱动程序是通过ARM7单片机控制T6963C芯片,使显示屏显示。USB口的设备驱动程序设计了两种方法,分别是以ISP1161芯片为基础的驱动程序和以CH376芯片基础的驱动程序,使电法仪测得的数据能够正确的存盘。D/A模块的驱动程序是以TLC5620C芯片为基础的驱动程序,使D/A模块可以输出正确的模拟电压。设计中利用C/OS-操作系统优化设备驱动程序的设计,使设计的程序更加的科学。程序设
3、计中都是以模块化的设计方法,把整个驱动程序模块化,使程序的设计更加的简单。经测试,所设计的智能电法仪的设备驱动满足设计要求,外部设备与主机的通讯正常。关键词:智能电法仪; 设备驱动; 显示屏;USB;D/AABSTRACTExternal divice can greatly increase the function of the apparatus and be more intelligent and more perfect. The typical external devices, such as screen, keyboard, printer,are very importa
4、nt to the device. Therefore, the design of the device driver, which makes communication between host and external device more accurate,is also very important work.This paper mainly designed the device drivers of intelligent electric apparatus. Mainly include display driver, the driver of USB port an
5、d the driver of D/A module in polarization compensation. The drivers can make the communication between intelligent electric apparatus and people more convenient.The design of device drivers in this paper are based on ARM7 single chip. Display driver makes the screen shows through the ARM7 MCU (micr
6、o controller unit) control T6963C chip.There are two methods to design the USB port device driver,respectively based on ISP1161 chip and CH376 chip. D/A module driver is based on TLC5620C chip, which makes the D/A module output the proper analog voltage. The use of C/OS-operating system make the dev
7、ice driver more scientific. The modular design method makes the program more simple and pellucid. By test, the design of the intelligent electric apparatus device driver meet the design requirements and the communication between external device and host is perfect.Key words:Intelligent Electrical Ap
8、paratus; Device Driver; Display Screens; USB; D/A目 录绪论11.1课题研究目的和意义11.2电法仪的研究进展及现状11.3主要研究内容及论文结构21.4课题来源22设备驱动程序概述32.1Windows的设备驱动程序概述32.2Linux 的设备驱动程序概述32.3C/OS-的设备驱动程序概述42.4LPC2210的IO模块与EMC42.4.1LPC2210概述42.4.2IO模块介绍42.4.3EMC模块介绍53LCD显示屏的驱动程序的设计113.1T6963C控制器介绍113.1.1概述113.1.2特性113.1.3封装123.1.4引脚
9、描述123.1.5接口时序133.1.6指令说明143.2LCD模块与ARM7的连接143.3LCD的驱动程序154基于ISP1161的USB的驱动程序的设计174.1ISP1161芯片介绍174.1.1概述174.1.2特性174.1.3封装184.1.4引脚描述194.2ISP1161 PAKE板与ARM7的连接224.3USB驱动程序设计235基于CH376的USB的驱动程序的设计255.1CH376芯片介绍255.1.1概述255.1.2特点255.1.3封装265.1.4引脚描述275.1.5命令285.1.6CH376与单片机通讯接口305.1.7并行接口315.2CH376 评估
10、板与ARM7的连接325.2.1CH376 评估板概述325.2.2连接图345.3USB的驱动程序356D/A的驱动程序的设计376.1TLC5620C芯片介绍376.1.1概述376.1.2特性376.1.3封装376.1.4引脚描述386.2D/A的硬件电路386.3D/A的驱动程序396.4测试数据39结论41致 谢42参考文献43附录144附录245附录360附录465附录568II东华理工学院毕业设计(论文)绪论绪论1.1 课题研究目的和意义随着后 PC时代的到来 ,各种嵌入式系统发展迅速。对于嵌入式电子产品来说 ,嵌入式操作系统是它的灵魂。操作系统不但使嵌入式产品获得了更加复杂、
11、 更加人性化的功能 ,还方便了应用程序的开发。C/OS- 是适用于嵌入式系统的实时操作系统。自从 1992年发布以来 ,在世界各地获得了广泛应用。该系统目前已经被移植到 40多种不同结构的 CPU上 ,运行在从 8位到 64位的各种系统上。该系统自从2 . 51版本之后 ,就通过了美国 FAA认证 ,可以运行在诸如航天器等对安全性要求极为苛刻的系统上。纵观目前的各种嵌入式电子产品 ,外部设备是不可或缺的组成部分。外部设备必须有配套的驱动程序才能正常工作,由于嵌入式设备的种类繁多特点决定了不同的嵌入式产品在开发时都必须设计自己的设备驱动程序,使得设备驱动程序的开发在整个嵌入式系统开发工作中占有举
12、足轻重的地位。因此,对嵌入式 C/OS-设备驱动的研究是一个很好的课题,具有重要的社会和商业价值。驱动程序的开发,对智能电法仪的设计与实现也有很重要的意义。1.2 电法仪的研究进展及现状 早期的电法仪器是简单的机械式电压表和电流表。50年代,有了由电子管和晶 体管组成的电法仪器,数据的是以机械指针的方式读取,手工记录的方式保存。到了 60年代,虽然集成电路已经应用到了电法仪器中,但在数据的读取和存储方面没有实质的突破。这无疑增大了数据的误差,同时数据的保存与处理也存在很大的难度。进入70年代,电子技术的快速发展,集成电路得到广泛应用,数据的读取形式 变成了数字式,这样就比指针式的数据读取方式有
13、了更高分辨率。80年代,电法仪器技术进入快速发展时期,这一时期,仪器更加智能化和多功能化,这主要得益于微控制器、模数(A/D)和数模(D/A)转换技术的应用。90年代以后,电子技术 和计算机技术的快速发展,使得数据处理软件与基于嵌入式系统的新电法仪器的直接数据交换成为可能,这必然大大提高电法勘探的工作效率和野外数据的可靠性。 如今国内生产的电法仪器,比较多的有高密度电法仪、时间域与频率域激电仪和瞬变电磁仪。国外主要的电法仪器公司也相继推出新一代电法仪器,主要有高密 度电法仪、电磁法仪、多功能电法仪和通用发送机。目前,国内外的电法仪器正朝 着多通道、多分量、高精度、大功率、多参数、数据处理、图形
14、绘制自动化、资料解释智能化的方向发展。1.3 主要研究内容及论文结构主要研究内容是在ARM7内核芯片LPC2210的基础上,利用C/OS-II嵌入式实时 操作系统,设计与实现智能电法仪的设备驱动程序。全文共分七章,具体内容组织如下:第1章 :绪论。概述了课题的研究目的和意义,电法仪的研究现状,及本文主要研究的工作。第2章 :设备驱动程序的概述.。介绍了Windows,Linux,C/OS-的设备驱动程序。及设计驱动程序所需要的LPC2210的IO模块与EMC模块。第3章 :LCD显示屏的驱动程序的设计。介绍了T6963C控制器及LCM模块与ARM7的连接,实现了LCD的驱动程序。第4章 :基于
15、ISP1161的USB的驱动程序的设计。介绍了ISP1161芯片及ISP1161模块与ARM7的连接,实现了基于ISP1161的USB的驱动程序。第5章 :基于CH376的USB的驱动程序的设计。介绍了CH376的芯片及CH376开发板与ARM7的连接,实现了基于CH376的USB的驱动程序。第6章 :D/A的驱动程序的设计。介绍了TLC5620芯片及D/A的硬件电路,实现了D/A的驱动程序,并且用测试数据证明了驱动程序的正确性。第7章 :结论。总结了设计与实现过程中遇到的难题及克服的办法。并且提出了进一步改进的办法。1.4 课题来源本课题依附于东华理工大学核技术学院测控教研室“智能电法仪的研
16、发”项目。1东华理工学院毕业设计(论文)设备驱动程序概述2 设备驱动程序概述2.1 Windows的设备驱动程序概述在Windows 98操作系统上驱动程序叫作虚拟设备驱动,简称 vxd,执行程序的后缀名是 vxd。在 Windows 2000及以后的 Windows XP等系统下,驱动程序采用了WDM (Windows Driver Model)模式,该模式是由 WindowsNT的驱动模式改进而来。Windows下的程序有用户态和内核态两种运行模式,驱动程序属于操作系统的一部分,运行在内核态,可以访问系统的全部资源。用户态的程序只能访问属于自己的内存空间,不能直接访问 I O端口,也不能直
17、接处理硬件中断,应用程序都是运行在用户态。其优点很明显,减少了应用程序对底层程序和硬件设备的干预,也就降低了破坏系统的风险。通俗地讲,大多数情况下,即使应用程序出错,操作系统也可以继续正常运行。和 Unix一样, Windows系统中的设备在操作系统中被抽象成一个文件。设备的相关操作被操作系统和驱动程序封装起来,以统一形式的接口提供给应用程序。在驱动程序中,DriverEntry作为整个函数的入口,相当于应用程序的 main函数或者 WinMain。编译完成之后,需要分发两个文件: .sys和. inf。其中sys是动态链接库,即执行文件; inf是安装指导文件。对于应用程序来说,操作系统的文
18、件系统提供了统一的程序接口,主要包括:CreateFile、Read、Write、Device IoControl、CloseHandle,与操作系统和驱动程序通信。2.2 Linux 的设备驱动程序概述在Linux操作系统上,设备驱动程序是应用程序和实际设备之间的一个软件层,它向下负责和硬件设备的交互,向上通过一个通用的接口挂接到文件系统上,从而使用户或应用程序可以按操纵普通文件的方式进行访问控制硬件设备。作为 Linux 内核的重要组成部分,设备驱动程序主要完成以下的功能:1) 对设备初始化和释放。2) 把数据从内核传送到硬件和从硬件读取数据。3) 读取应用程序传送给设备文件的数据和回送应
19、用程序请求的数据。4) 检测错误和处理中断。Linux 内核有三种类型的设备驱动程序:字符设备驱动程序、块设备驱动程序和网络设备驱动程序。字符设备是以字节为单位逐个进行 I/O 操作的设备,在对字符设备发出读写请求时,实际的硬件 I/O 紧接着就发生了,一般来说字符设备中的缓存是可有可无的,而且也不支持随机访问。块设备主要是针对磁盘等慢速设备设计的,其目的是避免耗费过多的 CPU 时间来等待操作的完成。它利用一块系统内存作为缓冲区,当用户进程对设备进行读写请求时,驱动程序先查看缓冲区中的内容,如果缓冲区中的数据能满足用户的要求就返回相应的数据,否则就调用相应的请求函数来进行实际的 I/O 操作
20、。网络设备是一个能够和其他主机交换数据的设备,它通常是个物理设备,但也可能是个软件设备,如回环设备(loopback)。网络驱动程序负责驱动设备发送和接收数据包。除了设备类型以外,内核还使用了一个主设备号和一个次设备号来唯一标识设备,主设备号标识了设备对应的驱动程序,而次设备号仅由驱动程序解释,一般用于识别在若干可能的硬件设备中,I/O 请求所涉及到的那个设备。2.3 C/OS-的设备驱动程序概述C/OS-是一个小型化的实时操作系统内核 ,适合小型控制系统。它具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2 kB。它允许应用程序直接访问硬件资源而不必使用专用的 A
21、PI函数集。因此 ,在C /OS2- 系统平台上可以开发出更加灵活、 更加高效的程序。在 C/OS-一类的微内核操作系统中,设备驱动一般都是由应用程序在内核外部实现的。不过,由于不分系统空间和用户空间,这些设备驱动程序仍在系统态执行。从系统结构的角度看, 设备驱动的实现可以有两种方式。一种是把特定设备的驱动做成一个服务进程,需要访问该设备的进程,通过进程间通信机制向服务进程发出请求,由服务进程独家代理完成对设备的操作。另一种是把对设备的操作做成一组函数调用,以库函数的形式向各个进程提供设备驱动。从设备驱动的实现方式看也有两种。一种是轮询,另一种是中断。本设计是基于C/OS-系统在ARM7平台上
22、设计设备的驱动程序。2.4 LPC2210的IO模块与EMC2.4.1 LPC2210概述LPC2210是基于一个支持实时仿真和嵌入式跟踪的16/32位ARM7TDMI-STM CPU的微控制器。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降低超过30%,而性能的损失却很小。由于LPC2210的144脚封装、极低的功耗、多个32位定时器、8路10位ADC、PWM输出以及多达9个外部中断使它们特别适用于工业控制、医疗系统、访问控制和POS机。通过配置总线,LPC2210最多可提供76个GPIO。由于内置了宽范围的串行通信接口,它们也非常适合于通信网关、协议转换器、嵌入式软mod
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能电法仪的设备驱动程序的设计与实现 测控技术与仪器毕业论文 智能 电法仪 设备 驱动程序 设计 实现 测控 技术 仪器 毕业论文
链接地址:https://www.31doc.com/p-3934957.html