资料介绍
电子设备的故障诊断系统大多采用由传感器、工业PC、工业以太网、远程专家组成的诊断模式。现有诊断现场仪器众多、连接复杂,使得系统可靠性和稳定性难以得到保证。另一方面,要求诊断人员具备专业知识,其中包括各类传感器的固定、连接与信号处理,难以实现“现场无人,远程诊断”目标。因此有必要从现有的硬件和软件组成模式的角度出发,探索一种新的诊断系统组成模式。本文设计了基于嵌入式的故障诊断专家系统,使得对电子设备的检测及维修变得更为方便有效。
本文根据实际需要选取Windows CE.Net作为本系统的操作系统平台。在Windows CE嵌入式系统的平台开发中,设备驱动程序的开发是其很重要的一部分,它们用于驱动嵌入式系统硬件平台上的各个设备接口。根据定制的硬件系统,本文对操作系统的键盘驱动程序、触摸屏、LCD驱动、电源管理及其它的相关驱动程序进行了开发。
1 Windows CE.Net操作系统
Windows CE.Net是微软公司在嵌入式操作系统市场上一个重要产品,第1个版本于1996年发布。Windows CE.Net是针对有限资源的平台而设计的32位、多线程、完整优先权、多任务的嵌入式操作系统。
Windows CE.Net一个突出的特点——模块化。利用这个特点,选择、组合和配置Windows CE.Net的各个模块和组件来创建用户版的操作系统,即Windows CE.Net的模块化设计使得它能够在大量的平台上定制使用,从客户电子设备到专用的工业控制器。
Window CE.Net操作系统的基本内核需要至少200 kB的ROM,它支持Win32 API子集、多种用户界面硬件、多种的串行和网络通讯技术、COM/OLE和其他的进程间通讯的先进方法,借助Windows CE开发者就能利用大量其他的编程资源、工具、软件例子以及文档来进行Windows CE.Net开发工作。Micmsoft公司为Windows CE.Net提供了PlatformBuilder和Embedded Visual Studio开发工具。
Windows CE.Net有五个主要的模块:内核模块、内核系统调用接口模块、文件系统模块、图形窗口和事件子系统模块、通讯模块。其最大的特点是能提供与PC机类似的图形界面和主要的应用程序。Windows CE.Net嵌入式操作系统的界面显示大多数在Windows里出现的标准部件,包括桌面、任务栏、窗口、图标和控件等。这样只要是对PC机上的Windows比较熟悉的用户,可以很快地使用基于Windows CE.Net嵌入式操作系统的嵌入式设备。
2 WindOWS CE.Net平台下的驱动开发
Windows CE.Net的分层结构给驱动程序的开发带来极大的方便,使得驱动开发只需要针对不同的BSP进行修改,很大程度上减少了开发的工作量。而完成这一工作需要了解两部分的内容,分别是:Windows CE.Net的中断机制和Windows CE.Net.的层次模型。
2.1 Windows CE.Net的中断机制
Windows CE.Net系统的大多数外围设备都是通过产生中断从操作系统获得服务的,如PC卡、板上定时器、键盘、触摸屏等。当设备需要驱动程序服务时,基于Windows CE.Net的平台使用中断信号通知操作系统。
Windows CE.Net把中断处理分成两部分:内核模式的中断服务程序(Interrupt Serice RouTIne,ISR)和用户模式的中断服务线程(Int-errupt Setice Thread,IST)。ISR通常都比较短,是快速的汇编代码,一般在0AL层代码中,能够直接访问硬件注册表。ISR的唯一任务就是向操作系统返回逻辑中断标志符。中断服务线程(IST)是用户模式线程,在IST中完成大多数中断处理。IST在大多数时间里是空闲的,只有当从函数WaitForSingeObiect()得到中断已经发生的信号后,IST被唤醒去处理它需要处理的中断。通过相关联的带有中断标志的事件可以完成这些。IST需要首先创建一个事件并且用逻辑中断与它相联系。当中断过程完成时,IST应该通知内核重新使能中断。
2.2 Windows CE.Net的驱动模型
Windows CE.Net所有驱动都以动态链接库(DLL)的形式存在,在驱动的实现过程中可以调用Windows CE.Net支持的所有标准API函数。
Windows CE.Net的驱动程序有2种模型:本机设备驱动程序和流接口设备驱动程序。
1)本机设备驱动 在Windows CE.Net中.通用LED驱动、电源驱动、显示驱动、键盘驱动等都可以用本机设备驱动来开发。微软提供了定制接口的方式来支持内部设备驱动程序,这意味着绝大多数开发人员不必大量地编写本机设备驱动代码。但把Windows CE.Net定制到新平台的原始设备制造商(OEM)除外,它们可以创建自己的本机设备驱动程序到新的平台。通常,当Windows CE.Net系统启动时,本机设备驱动程序就被加载到系统的内存中。
2)流接口驱动程序 在Windows CE.Net中,流接口驱动程序以DLL形式存在,是运行在用户模式下的动态连接库,由一个叫做设备管理程序的特殊应用程序加载、管理和卸载。与具有单独目的接口的内部设备驱动程序相比,所有流接口驱动程序使用同一个接口并调用同一个函数集——流接口函数。流接口驱动程序的主要任务是把外设的使用传递给应用程序,这是通过把设备表示为文件系统的一个特殊文件实现的。在流接口驱动程序模型中,应用程序通过文件系统的API函数调用流接口函数,然后由流接口驱动程序调用本机驱动或者通过设备管理器与系统内核或外围设备打交道。每个流接口驱动程序必须实现一组标准的函数,用来完成标准的文件I/O函数和电源管理函数,这些函数提供给Windows CE.Net操作系统的内核使用。一般,这些函数被称为流接口驱动程序的DLL接口。
3 驱动程序的开发
在Windows CE嵌入式系统的平台开发中,设备驱动程序的开发是其很重要的一部分,它们用于驱动嵌入式系统硬件平台上的各个设备接口。下面针对在项目中完成的几个主要的设备驱动,来了解一下具体设备驱动程序的开发过程。
3.1 触摸屏
在嵌入式故障诊断专家系统中,为了方便用户输入数据,进行方便的人机交互,触摸屏是必不可少。触摸屏按技术原理分为:电熔电感触摸屏、红外线触摸屏、电阻式触摸屏、矢量压力传感式触摸屏等。S3C2410的触摸屏采用的是电阻式触摸屏。S3C2410支持触摸屏接口,它由一个触摸屏面板,四个外部晶体管,一个外部电源,通道AIN[7]及通道AIN[5]等组成,触摸屏接口如图l所示。主要的设计流程如图2所示。
在本设计中主要完成A/D的转换、触摸屏上触摸点坐标的显示、XY轴方向的确定以及有效坐标范围的确定。整个程序设计包括环境变量初始化、对LCD控制器和串行口的初始化以及触摸屏控制与显示程序。触摸屏的控制与显示程序包括串口数据传送、液晶显示控制、触摸屏定位、中断处理程序等。中断处理程序中又包括A/D转换、坐标计算、坐标检测、坐标存储与显示。
本文根据实际需要选取Windows CE.Net作为本系统的操作系统平台。在Windows CE嵌入式系统的平台开发中,设备驱动程序的开发是其很重要的一部分,它们用于驱动嵌入式系统硬件平台上的各个设备接口。根据定制的硬件系统,本文对操作系统的键盘驱动程序、触摸屏、LCD驱动、电源管理及其它的相关驱动程序进行了开发。
1 Windows CE.Net操作系统
Windows CE.Net是微软公司在嵌入式操作系统市场上一个重要产品,第1个版本于1996年发布。Windows CE.Net是针对有限资源的平台而设计的32位、多线程、完整优先权、多任务的嵌入式操作系统。
Windows CE.Net一个突出的特点——模块化。利用这个特点,选择、组合和配置Windows CE.Net的各个模块和组件来创建用户版的操作系统,即Windows CE.Net的模块化设计使得它能够在大量的平台上定制使用,从客户电子设备到专用的工业控制器。
Window CE.Net操作系统的基本内核需要至少200 kB的ROM,它支持Win32 API子集、多种用户界面硬件、多种的串行和网络通讯技术、COM/OLE和其他的进程间通讯的先进方法,借助Windows CE开发者就能利用大量其他的编程资源、工具、软件例子以及文档来进行Windows CE.Net开发工作。Micmsoft公司为Windows CE.Net提供了PlatformBuilder和Embedded Visual Studio开发工具。
Windows CE.Net有五个主要的模块:内核模块、内核系统调用接口模块、文件系统模块、图形窗口和事件子系统模块、通讯模块。其最大的特点是能提供与PC机类似的图形界面和主要的应用程序。Windows CE.Net嵌入式操作系统的界面显示大多数在Windows里出现的标准部件,包括桌面、任务栏、窗口、图标和控件等。这样只要是对PC机上的Windows比较熟悉的用户,可以很快地使用基于Windows CE.Net嵌入式操作系统的嵌入式设备。
2 WindOWS CE.Net平台下的驱动开发
Windows CE.Net的分层结构给驱动程序的开发带来极大的方便,使得驱动开发只需要针对不同的BSP进行修改,很大程度上减少了开发的工作量。而完成这一工作需要了解两部分的内容,分别是:Windows CE.Net的中断机制和Windows CE.Net.的层次模型。
2.1 Windows CE.Net的中断机制
Windows CE.Net系统的大多数外围设备都是通过产生中断从操作系统获得服务的,如PC卡、板上定时器、键盘、触摸屏等。当设备需要驱动程序服务时,基于Windows CE.Net的平台使用中断信号通知操作系统。
Windows CE.Net把中断处理分成两部分:内核模式的中断服务程序(Interrupt Serice RouTIne,ISR)和用户模式的中断服务线程(Int-errupt Setice Thread,IST)。ISR通常都比较短,是快速的汇编代码,一般在0AL层代码中,能够直接访问硬件注册表。ISR的唯一任务就是向操作系统返回逻辑中断标志符。中断服务线程(IST)是用户模式线程,在IST中完成大多数中断处理。IST在大多数时间里是空闲的,只有当从函数WaitForSingeObiect()得到中断已经发生的信号后,IST被唤醒去处理它需要处理的中断。通过相关联的带有中断标志的事件可以完成这些。IST需要首先创建一个事件并且用逻辑中断与它相联系。当中断过程完成时,IST应该通知内核重新使能中断。
2.2 Windows CE.Net的驱动模型
Windows CE.Net所有驱动都以动态链接库(DLL)的形式存在,在驱动的实现过程中可以调用Windows CE.Net支持的所有标准API函数。
Windows CE.Net的驱动程序有2种模型:本机设备驱动程序和流接口设备驱动程序。
1)本机设备驱动 在Windows CE.Net中.通用LED驱动、电源驱动、显示驱动、键盘驱动等都可以用本机设备驱动来开发。微软提供了定制接口的方式来支持内部设备驱动程序,这意味着绝大多数开发人员不必大量地编写本机设备驱动代码。但把Windows CE.Net定制到新平台的原始设备制造商(OEM)除外,它们可以创建自己的本机设备驱动程序到新的平台。通常,当Windows CE.Net系统启动时,本机设备驱动程序就被加载到系统的内存中。
2)流接口驱动程序 在Windows CE.Net中,流接口驱动程序以DLL形式存在,是运行在用户模式下的动态连接库,由一个叫做设备管理程序的特殊应用程序加载、管理和卸载。与具有单独目的接口的内部设备驱动程序相比,所有流接口驱动程序使用同一个接口并调用同一个函数集——流接口函数。流接口驱动程序的主要任务是把外设的使用传递给应用程序,这是通过把设备表示为文件系统的一个特殊文件实现的。在流接口驱动程序模型中,应用程序通过文件系统的API函数调用流接口函数,然后由流接口驱动程序调用本机驱动或者通过设备管理器与系统内核或外围设备打交道。每个流接口驱动程序必须实现一组标准的函数,用来完成标准的文件I/O函数和电源管理函数,这些函数提供给Windows CE.Net操作系统的内核使用。一般,这些函数被称为流接口驱动程序的DLL接口。
3 驱动程序的开发
在Windows CE嵌入式系统的平台开发中,设备驱动程序的开发是其很重要的一部分,它们用于驱动嵌入式系统硬件平台上的各个设备接口。下面针对在项目中完成的几个主要的设备驱动,来了解一下具体设备驱动程序的开发过程。
3.1 触摸屏
在嵌入式故障诊断专家系统中,为了方便用户输入数据,进行方便的人机交互,触摸屏是必不可少。触摸屏按技术原理分为:电熔电感触摸屏、红外线触摸屏、电阻式触摸屏、矢量压力传感式触摸屏等。S3C2410的触摸屏采用的是电阻式触摸屏。S3C2410支持触摸屏接口,它由一个触摸屏面板,四个外部晶体管,一个外部电源,通道AIN[7]及通道AIN[5]等组成,触摸屏接口如图l所示。主要的设计流程如图2所示。
在本设计中主要完成A/D的转换、触摸屏上触摸点坐标的显示、XY轴方向的确定以及有效坐标范围的确定。整个程序设计包括环境变量初始化、对LCD控制器和串行口的初始化以及触摸屏控制与显示程序。触摸屏的控制与显示程序包括串口数据传送、液晶显示控制、触摸屏定位、中断处理程序等。中断处理程序中又包括A/D转换、坐标计算、坐标检测、坐标存储与显示。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 嵌入式故障诊断专家系统解析 0次下载
- 裁断机实时监控与故障诊断专家系统_杨世凤 0次下载
- 在线分析仪器故障诊断专家系统通信协议解析_高喜奎 0次下载
- 基于专家系统的故障诊断方法的研究与改进 13次下载
- 基于专家系统和神经网络的雷达伺服系统故障诊断方法 17次下载
- 嵌入式故障诊断专家系统中WindowsCE系统的定制
- 基于Web矿井局部通风设备故障诊断专家系统的建立
- 基于嵌入式的故障诊断专家系统驱动程序设计
- 基于流程工业的故障诊断专家系统设计
- 智能故障诊断专家系统开发平台
- 基于混合推理机制的故障诊断专家系统
- 机械设备故障诊断专家系统的构建
- 协同式变电站故障诊断专家系统
- 武器故障诊断专家系统的知识库的建造
- 某型飞机发动机故障诊断专家系统的研制
- 分布式故障诊断装置 141次阅读
- 继电器故障诊断与智能维护技术 556次阅读
- 什么是嵌入式系统?嵌入式系统的具体应用 2096次阅读
- ECU故障诊断系统概述 1125次阅读
- FANUC-β伺服报警的故障诊断及处理 2269次阅读
- 基于SX52BD和24LC256芯片实现数据采集与诊断系统的设计 2636次阅读
- 故障预测与故障诊断在电子系统中的应用研究 3784次阅读
- 嵌入式系统的全面解析 3146次阅读
- 基于神经网络专家系统的结构、功能及在火电厂故障诊断中的应用研究 1304次阅读
- 基于嵌入式软件的JNI技术应用解析 1020次阅读
- 数控系统常见的故障诊断与维修方法有哪些 9328次阅读
- 以嵌入式Linux为基础的机车状态实时检测系统设计详解 1067次阅读
- 主轴伺服系统的故障诊断方法有哪些 6299次阅读
- 嵌入式系统调试方法介绍 提高诊断能力 2128次阅读
- 传感器的主要故障分类及其诊断方法 2814次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多