首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

Windows xp系统下CPCI总线RS422通信驱动方法及系统 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:湖北三江航天万峰科技发展有限公司

摘要:本发明公开一种Windowsxp操作系统下CPCI总线RS422通信驱动方法及系统。系统包括:Windowsxp底层驱动程序、inf文件、dll程序和上层功能测试应用程序;上层测试应用程序调用dll程序提供的API接口函数;dll程序提供上层功能测试应用程序与底层驱动程序通讯所需的API接口函数;inf文件用于提供安装驱动系统所需的资源信息;Windowsxp底层驱动程序包括驱动程序入口函数DriverEntry、AddDevice管理器调用函数、IRP派遣函数。本发明具有模块化、分层次的特点.支持即插即用,使上层功能测试应用程序以一种规范的方式访问硬件,而不必考虑控制硬件的细节。

主权项:1.一种Windowsxp操作系统下CPCI总线RS422通信驱动系统,其特征在于,包括:Windowsxp底层驱动程序、inf文件、dll程序和上层功能测试应用程序;所述上层测试应用程序用于调用dll程序提供的API接口函数实现具体的功能测试;所述dll程序为应用程序与驱动程序通讯之间的桥梁,用于提供上层功能测试应用程序与Windowsxp底层驱动程序通讯所需的API接口函数;所述dll程序用于根据RS422通信板卡主功能芯片的FPGA程序分配好的RS422通信板卡主功能芯片资源列表和RS422芯片手册,将RS422需要实现的不同功能封装成上层功能测试应用程序能访问的API函数;API函数的具体实现是将需要访问的PCI9056物理地址、偏移量和IO控制码一起利用Win32APIDeviceIoControl使操作系统创建一个IRP,然后操作系统将这个IRP转发到驱动程序的派遣函数DeviceControl中对其进行处理,进而完成应用程序与驱动程序之间的通讯;所述inf文件是一个文本文件,用于提供安装驱动系统所需的资源信息;所述Windowsxp底层驱动程序采用WDM式驱动程序框架开发,编译环境为Windows驱动程序开发包DDK,包括驱动程序入口函数DriverEntry、AddDevice管理器调用函数、各个IRP派遣函数;其中,所述驱动程序入口函数DriverEntry为驱动程序的入口函数,用于设置AddDevice管理器调用函数,以及对不同类型的输入输出请求包IRP中不同的IRP主功能码设置对应的IRP派遣函数;所述AddDevice管理器调用函数用于创建设备对象并由即插即用管理器PNP调用,包括创建设备对象FDO、将创建的FDO附加在物理设备对象PDO上、根据全局唯一标识符GUID创建符号链接、获取RS422通信板卡主功能芯片的配置空间、初始化电源设置;所述IRP派遣函数用于处理相应的IRP。

全文数据:Windowsxp系统下CPCI总线RS422通信驱动方法及系统技术领域[0001] 本发明属于CPCI总线驱动技术领域,具体涉及一种Windowsxp操作系统下CPCI总线RS422通信驱动方法及系统。背景技术[0002] CompactPCI是一种开放式、国际性工业计算机标准。它融合了电脑与工业设备诸多已经过广泛验证的标准,是PCI总线技术和成熟的欧式卡组装技术的组合。CPCI总线具有高开放性、高可靠性、可热插拔等特点,与传统工业PC相对比有耐用性、抗震性、通风性等优点。CPCI总线技术除了可以广泛应用在通讯、网络、计算机电话整和,也适合实时系统控制、产业自动化、实时数据采集、军事系统等需要高速运算、智能交通、航空航天、医疗器械、水利等模块化及高可靠度、可长期使用的应用领域。由于CPCI拥有较高的带宽,它也适用于一些高速数据通信的应用,包括服务器、路由器、交换机等,具有较大的市场需求量和极高的市场价值。[0003] 随着计算机技术的迅速发展,计算机通信方式已经逐步向更快速、更远距离、更稳定的方向发展。计算机通信方式可以分为并行通信和串行通信,而以RS422通信协议为代表的串行通信在数据通信吞吐量不是很大的微处理电路中更加简易、方便、灵活,特别是在远距离信息传输中串行总线发挥着不可替代的作用。在军事领域、工业监控、数据采集和实时控制系统中,串行通信往往能够发挥其连接简单、使用灵活方便、数据传递可靠等优点。因此RS422通信板卡的研究是通信领域的热门课题。目前,以CPCI+FPGA器件为串行系统架构逐渐成为实现高速串行通信的主流方案,但因为Windows驱动程序的编写需要开发人员对Windows内核有深入了解和大量的内核调试技巧,稍有不慎就会造成系统崩溃,而Windowsxp系统内核源码并不公开,涉及Windowsxp系统内核操作的驱动程序开发很难入门,现多为VXWorks等系统下的CPCI驱动程序开发实现,而驱动程序又不具有通用性,不同的RS422通讯板卡需要不同的驱动程序,目前没有为新研制的RS422通讯板卡在Windowsxp系统下的而开发的CPCI驱动程序,为新研制的RS422通讯板卡进行驱动程序开发成为生产活动中亟待解决的问题。发明内容[0004] 针对现有技术存在的问题,本发明提供了一种Windowsxp操作系统下CPCI总线RS422通信功能驱动方法,其目的在于,驱动CPCI总线架构的RS422通讯板卡,实现访问RS422通讯板卡资源以及RS422通讯功能;具有模块化、分层次的特点.支持即插即用,使上层功能测试应用程序以一种规范的方式访问硬件,而不必考虑控制硬件的细节。[0005] 一种Windowsxp操作系统下CPCI总线RS422通信驱动系统,包括:Windowsxp底层驱动程序、inf文件、dll程序和上层功能测试应用程序;[0006] 所述上层测试应用程序用于调用dll程序提供的API接口函数实现具体的功能测试;[0007] 所述dll程序为应用程序与驱动程序通讯之间的桥梁,用于提供上层功能测试应用程序与Windowsxp底层驱动程序通讯所需的API接口函数;[0008] 所述inf文件是一个文本文件,用于提供安装驱动系统所需的资源信息;[0009] 所述Windowsxp底层驱动程序采用WDM式驱动程序框架开发,编译环境为Windows驱动程序开发包DDK,包括驱动程序入口函数DriverEntry、AddDevice管理器调用函数、各个IRP派遣函数;其中,[0010] 所述驱动程序入口函数DriverEntry为驱动程序的入口函数,用于设置AddDevice管理器调用函数,以及对不同类型的输入输出请求包IRP中不同的IRP主功能码设置对应的IRP派遣函数;[0011] 所述AddDevice管理器调用函数用于创建设备对象并由即插即用管理器PNP调用,包括创建设备对象FD0、将创建的roo附加在物理设备对象roo上、根据全局唯一标识符⑶ID创建符号链接、获取RS422通信板卡主功能芯片的配置空间、初始化电源设置;[0012] 所述IRP派遣函数用于处理相应的IRP。[0013] 进一步地,所述入口函数DriverEntry分配的IRP主功能码包括:IRP_MJ_PNP、IRP_MJ_CREATE、IRP_MJ_CL0SE、IRP_MJ_CLEANUP、IRP_MJ_WRITE、IRP_MJ_READ、IRP_MJ_P0WER、IRP_MJ_DEVICE_C0NTR0L和IRP_MJ_SYSTEM_C0NTR0L;[0014] IRP_MJ_PNP、IRP_MJ_DEVICE_C0NTR0L和IRP_MJ_P0WER的派遣函数分别为DispatchPnp、DeviceControI和DispatchPower;IRP_MJ_PNP的派遣函数DispatchPnp用于针对RS422通讯板卡即插即用时的不同情况所产生的不同次功能码进行不同的处理;IRP_MJ_DEVICE_C0NTR0L的派遣函数DeviceControI用于处理应用程序通过Win32APIDeviceloControl来操作设备时产生的IRP,实现应用程序和驱动程序进行通信;IRP_MJ_POWER的派遣函数DispatchPower用于实现对RS422通讯板卡的电源管理。[0015] IRP_MJ_CREATE的派遣函数DispatchCreate用于实现创建设备;IRP_MJ_CL0SE的派遣函数DispatchClose用于实现关闭设备;IRP_MJ_CLEANUP的派遣函数DispatchCleanup用于实现在设备关闭时的清除工作;IRP_MJ_WRITE的派遣函数Dispatchffrite用于实现向设备写入数据;IRP_MJ_READ的派遣函数DispatchRead用于实现读取设备内容;IRP_MJ_SYSTEM_C0NTR0L的派遣函数DispatchSystemControl用于实现系统内部产生的控制信息的处理。[0016] 进一步地,所述dll程序用于根据RS422通信板卡主功能芯片的FPGA程序分配好的RS422通信板卡主功能芯片资源列表和RS422芯片手册,将RS422需要实现的不同功能封装成上层功能测试应用程序能访问的API函数;API函数的具体实现是将需要访问的PCI9056物理地址、偏移量和10控制码一起利用Win32APIDeviceloControl使操作系统创建一个IRP,然后操作系统将这个IRP转发到驱动程序的派遣函数DeviceControl中对其进行处理,进而完成应用程序与驱动程序之间的通讯。[0017] 进一步地,所述dll程序提供的API接口函数包括打开板卡、关闭板卡、清除RS422缓存、设置波特率、使能中断、查询RS422缓存中是否有数据。[0018] 进一步地,所述上层功能测试程序采用MFC中dialog框架进行编程。[0019] 一种Windowsxp操作系统下CPCI总线RS422通信驱动系统的驱动方法,包括以下步骤:[0020] I上层功能测试应用程序调用dll程序提供的API接口函数;[0021]⑵ dll程序调用由Win32子系统中Kernel32.dll实现的DeviceloControlAPI函数;[0022] 3DeviceloControlAPI函数调用Ntdll.dll中的NtDevice1Control函数;[0023] 4NtDevice1Control函数穿越用户模式边界进入内核模式,调用系统服务函数;[0024] 5系统服务函数通过IO管理器,创建IRP并传输到底层驱动程序中;[0025] 6底层驱动程序根据入口函数DriverEntry中不同的IRP对应不同的派遣函数调用具体实现的派遣函数DeviceControl;[0026] 7在派遣函数DeviceControl中根据IRP中不同的IO控制码调用硬件抽象层所提供的宏对RS422通讯板卡主功能芯片映射到操作系统中的虚拟内存进行操作;[0027] 8操作系统根据映射关系通过CPCI总线将操作传递给RS422通讯板卡主功能芯片,RS422通讯板卡主功能芯片通过本地总线根据RS422通讯板卡的FPGA资源分配关系实现对RS422的相应操作。[0028] 本发明有益效果体现在:[0029] 1、本发明中底层驱动程序采用WDM式驱动程序框架开发,具有模块化、分层次的特点.支持即插即用、电源管理等功能,使上层功能测试应用程序以一种规范的方式访问硬件,而不必考虑控制硬件的细节。[0030] 2、本发明中底层驱动程序采用分层次结构模型,不同层的驱动程序完成不同操作,各层之间相互调用,使得驱动程序设计可以模块化。[0031] 3、本发明底层驱动程序在开发时充分考虑了通用性,不仅可以实现RS422通讯板卡的驱动,还可以实现10脉冲驱动,仅需很少的改动便可以实现其它PCI设备的驱动。[0032] 4、本发明中dll程序将上层功能测试应用程序所需的函数全部封装好,使得用户在使用时不必关心驱动细节便可实现测试软件开发。[0033] 5、本发明中底层驱动程序、dll程序和上层功能测试程序均采用C++语言编码,可移植性强。[0034] 6、本发明交付用户使用时仅需要.sys文件、inf文件、dll文件、Iib文件和dll程序提供的API函数列表的.h文件,驱动安装简单方便,用户操作简单。[0035] 本发明设计的一种Windowsxp操作系统下CPCI总线RS422通信功能单元驱动程序设计方法,可解决新研制的RS422通讯板卡无驱动程序的问题,为新研制的RS422通讯板卡提供驱动程序和API函数访问并实现功能测试。本发明使用于复杂产品批量生产过程中,仅需很少的修改便可实现同一类型设备驱动,具有较好的应用价值和推广前景。附图说明[0036]图1为本发明的应用程序到访问驱动程序的原理框图;[0037]图2为本发明实例中的RS422通讯板卡结构框图;[0038] 其中,I一上层功能测试应用程序、2—dll程序所提供的AP1、3—底层驱动程序。具体实施方式[0039] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。[0040] 一种Windowsxp操作系统下CPCI总线RS422通信驱动系统包括:Windowsxp底层驱动程序、inf文件、为上层应用程序提供API函数接口的dll程序和上层功能测试应用程序,为RS422通讯板卡提供驱动,实现资源分配、测试RS422通讯的功能。[0041] 请参见图2,在该实例中RS422通讯板卡主功能芯片为PCI9056,作为功能板卡工作于C模式下的从模式,硬件资源分配在FPGA程序中实现,底层驱动程序和dlI程序根据FPGA分配的资源实现资源访问的函数,在上层测试应用程序中调用dll程序提供的API函数实现具体的功能测试。[0042] 底层驱动程序采用WDM式驱动程序框架开发,支持即插即用、电源管理等功能,编译环境为微软公司提供的Windows驱动程序开发包DDKDriverDevelopmentkit。主要的构成包括驱动程序入口函数DriverEntry、AddDevice函数、各个IRP派遣函数。[0043] DriverEntry为驱动程序的入口函数,主要实现设置AddDevice函数、将驱动程序接收到不同类型的IRP输入输出请求包中不同的IRP主功能码设置不同的IRP派遣函数。[0044] AddDevice函数主要实现创建设备对象并由PNP即插即用管理器调用,包括创建设备对象FDO、将创建的roo附加在PDO物理设备对象上、根据GUID创建符号链接并设置、获取PCI9056的配置空间、初始化电源设置等。[0045] IRP派遣函数主要实现处理相应IRP。在入口函数DriverEntry分配的IRP主功能码主要有:IRP_MJ_PNP、IRP_MJ_CREATE、IRP_MJ_CL0SE、IRP_MJ_CLEANUP、IRP_MJ_WRITE、IRP_MJ_READ、IRP_MJ_P0WER、IRP_MJ_DEVICE_C0NTR0L和IRP_MJ_SYSTEM_C0NTR0L,而其中最重要的是IRP_MJ_PNP、IRP_MJ_DEVICE_CONTROL和IRP_MJ_P0WER所对应的派遣函数DispatchPnp、DeviceControI和DispatchPower。IRP_MJ_PNP的派遣函数DispatchPnp针对RS422通讯板卡即插即用时的不同情况所产生的不同次功能码进行不同的处理,例如RS422通讯板卡启动时产生的IRP_MN_START_DEVICE在函数PnpStartDeviceHandler中进行处理,包括获取PCI9056芯片资源,而RS422通讯板卡突然被拔出时产生的IRP_MN_SURPRISE_REMOVAL在函数PnpSurpriseRemovaIHandIer函数中进行处理。IRP_MJ_DEVICE_C0NTR0L的派遣函数DeviceControl主要用来处理应用程序通过Win32APIDeviceloControl来操作设备时产生的IRP,实现应用程序和驱动程序进行通信。具体实现时在驱动程序中定义了多种10控制码,在调用Win32APIDeviceloControl时将10控制码和请求一起传递给驱动程序,在IRP_MJ_DEVICE_C0NTR0L的派遣函数DeviceControl中分别对不同的10控制码进行处理。IRP_MJ_P0WER的派遣函数DispatchPower实现对RS422通讯板卡的电源管理,例如在闲时设置RS422通讯板卡进入低电源消耗状态。IRP_MJ_CREATE的派遣函数DispatchCreate用来实现创建设备;IRP_MJ_CL0SE的派遣函数DispatchClose用来实现关闭设备;IRP_MJ_CLEANUP的派遣函数DispatchCleanup用来实现在设备关闭时的清除工作;IRP_MJ_WRITE的派遣函数Dispatchffrite用来实现向设备写入数据;IRP_MJ_READ的派遣函数DispatchRead用来实现读取设备内容;IRP_MJ_SYSTEM_C0NTR0L的派遣函数DispatchSystemControl用来实现系统内部产生的控制信息的处理。[0046] inf文件是一个文本文件,由若干个节组成,这些节包括版本区域、安装磁盘节、安装类别节、目标文件节、制造商节等节,提供安装驱动程序所需的资源等信息,包括⑶ID、硬件号、驱动名称、硬件图标、制造厂家、驱动安装路径等信息,其中GUID与驱动程序中的GUID一致,驱动名称与生成的驱动程序sys文件名称一致。[0047] dll程序相当于应用程序与驱动程序通讯之间的桥梁,上层功能测试应用程序与驱动程序通讯所需的接口函数都由DLL提供。dll程序根据硬件FPGA程序分配好的PCI9056资源列表和RS422芯片手册,将RS422需要实现的不同功能封装成上层功能测试应用程序能访问的API函数,API函数的具体实现是将需要访问的PCI9056物理地址、偏移量和I0控制码一起利用Win32APIDeviceloControl使操作系统创建一个IRP,然后操作系统将这个IRP转发到驱动程序的派遣函数DeviceControl中对其进行处理,进而完成应用程序与驱动程序之间的通讯。dll程序提供的API函数包括打开板卡、关闭板卡、清除RS422缓存、设置波特率、使能中断、查询RS422缓存中是否有数据等。[0048] 上层功能测试程序采用MFC中dialog框架进行编程,加载dll程序生成的dll文件和Iib文件后,将dll程序提供的.h文件加载到工程后调用dll程序中提供的API函数实现RS422功能测试,验证底层驱动程序和dll程序的正确性。[0049] 本发明中上层功能测试应用程序访问驱动程序的流程图如图1所示,上层功能测试应用程序调用dll程序提供的API函数,dll程序调用由Win32子系统中Kernel32.dll实现的DeviceloControlAPI,DeviceloControlAPI函数调用Ntdll.dll中的NtDevice1Control函数,NtDevice1ControI函数穿越用户模式边界进入内核模式,调用系统的服务函数,系统的服务函数通过10管理器,创建IRP并传输到底层驱动程序中,底层驱动程序根据入口函数DriverEntry中不同的IRP对应不同的派遣函数调用具体实现的派遣函数DeviceControl,在派遣函数DeviceControl中根据IRP中不同的10控制码调用硬件抽象层所提供的宏对PCI9056映射到操作系统中的虚拟内存进行操作,如图2所示,操作系统根据映射关系通过CPCI总线将操作传递给PCI9056,PCI9056通过本地总线根据FPGA资源分配关系实现对RS422的相应操作。[0050] 底层驱动程序安装时点击相应的.1nf文件进行安装,将.1nf文件中的字符串节中ProviderName设置为WanFengCorporat1n,MfgName设置为WanFengCorporat1n,DeviceDesc设置为WANFENG-CPCI,DeviceClassName设置为WanFengCorporat1n,将安装类别节中图标信息设置为“HKR,,Icon,,〃-5〃”。[0051]上层功能测试应用软件测试RS422功能时分为内部自环收发测试、外部自环收发测试、外部互收发测试和与其它RS422通讯板卡进行通讯测试以此来验证底层驱动程序和dll程序的正确性和稳健性,验证测试均通过,进行连续数小时收发时也通讯正常,无丢数、内存冲突的情况发生,证明底层驱动程序和dll程序运行正常,验证了其正确性、稳定性和可行性。[0052] 本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

权利要求:1.一种WindowsXP操作系统下CPCI总线RS422通信驱动系统,其特征在于,包括:Windowsxp底层驱动程序、inf文件、dll程序和上层功能测试应用程序;所述上层测试应用程序用于调用dll程序提供的API接口函数实现具体的功能测试;所述dll程序为应用程序与驱动程序通讯之间的桥梁,用于提供上层功能测试应用程序与Windowsxp底层驱动程序通讯所需的API接口函数;所述inf文件是一个文本文件,用于提供安装驱动系统所需的资源信息;所述Windowsxp底层驱动程序采用WDM式驱动程序框架开发,编译环境为Windows驱动程序开发包DDK,包括驱动程序入口函数DriverEntry、AddDevice管理器调用函数、各个IRP派遣函数;其中,所述驱动程序入口函数DriverEntry为驱动程序的入口函数,用于设置AddDevice管理器调用函数,以及对不同类型的输入输出请求包IRP中不同的IRP主功能码设置对应的IRP派遣函数;所述AddDevice管理器调用函数用于创建设备对象并由即插即用管理器PNP调用,包括创建设备对象roo、将创建的roo附加在物理设备对象roo上、根据全局唯一标识符GUID创建符号链接、获取RS422通信板卡主功能芯片的配置空间、初始化电源设置;所述IRP派遣函数用于处理相应的IRP。2.根据权利要求1所述的Windows xp操作系统下CPCI总线RS422通信驱动系统,其特征在于,所述入口函数DriverEntry分配的IRP主功能码包括:IRP_MJ_PNP、IRP_MJ_CREATE、IRP_MJ_CL0SE、IRP_MJ_CLEANUP、IRP_MJ_ffRITE、IRP_MJ_READ、IRP_MJ_POWER、IRP_MJ_DEVICE_C0NTR0L和IRP_MJ_SYSTEM_CONTROL;IRP_MJ_PNP、IRP_MJ_DEVICE_CONTROL和IRP_MJ_POWER的派遣函数分另Ij为DispatchPnp、DeviceControl^PDispatchPower;IRP_MJ_PNP的派遣函数DispatchPnp用于针对RS422通讯板卡即插即用时的不同情况所产生的不同次功能码进行不同的处理;IRP_MJ_DEVICE_CONTROL的派遣函数DeviceControI用于处理应用程序通过Win32APIDeviceloControl来操作设备时产生的IRP,实现应用程序和驱动程序进行通信;IRP_MJ_POWER的派遣函数DispatchPower用于实现对RS422通讯板卡的电源管理。IRP_MJ_CREATE的派遣函数DispatchCreate用于实现创建设备;IRP_MJ_CLOSE的派遣函数DispatchClose用于实现关闭设备;IRP_MJ_CLEANUP的派遣函数DispatchCleanup用于实现在设备关闭时的清除工作;IRP_MJ_WRITE的派遣函数Dispatchffrite用于实现向设备写入数据;IRP_MJ_READ的派遣函数DispatchRead用于实现读取设备内容;IRP_MJ_SYSTEM_CONTROL的派遣函数DispatchSystemControl用于实现系统内部产生的控制信息的处理。3.根据权利要求1或2所述的Windows xp操作系统下CPCI总线RS422通信驱动系统,其特征在于,所述dll程序用于根据RS422通信板卡主功能芯片的FPGA程序分配好的RS422通信板卡主功能芯片资源列表和RS422芯片手册,将RS422需要实现的不同功能封装成上层功能测试应用程序能访问的API函数;API函数的具体实现是将需要访问的PCI9056物理地址、偏移量和IO控制码一起利用Win32APIDeviceloControl使操作系统创建一个IRP,然后操作系统将这个IRP转发到驱动程序的派遣函数DeviceControl中对其进行处理,进而完成应用程序与驱动程序之间的通讯。4.根据权利要求3所述的Windows xp操作系统下CPCI总线RS422通信驱动系统,其特征在于,所述dll程序提供的API接口函数包括打开板卡、关闭板卡、清除RS422缓存、设置波特率、使能中断、查询RS422缓存中是否有数据。5.根据权利要求1所述的Windows xp操作系统下CPCI总线RS422通信驱动系统,其特征在于,所述上层功能测试程序采用MFC中dialog框架进行编程。6.一种基于权利要求1-5任意一种Windowsxp操作系统下CPCI总线RS422通信驱动系统的驱动方法,包括以下步骤:1上层功能测试应用程序调用dll程序提供的API接口函数;2 dll程序调用由Win32子系统中Kernel32.dll实现的DeviceloControlAPI函数;⑶DeviceloControlAPI函数调用Ntdll.dll中的NtDevice1Control函数;⑷NtDevice1Control函数穿越用户模式边界进入内核模式,调用系统服务函数;⑶系统服务函数通过IO管理器,创建IRP并传输到底层驱动程序中;6底层驱动程序根据入口函数DriverEntry中不同的IRP对应不同的派遣函数调用具体实现的派遣函数DeviceControl;7在派遣函数DeviceControl中根据IRP中不同的IO控制码调用硬件抽象层所提供的宏对RS422通讯板卡主功能芯片映射到操作系统中的虚拟内存进行操作;8操作系统根据映射关系通过CPCI总线将操作传递给RS422通讯板卡主功能芯片,RS422通讯板卡主功能芯片通过本地总线根据RS422通讯板卡的FPGA资源分配关系实现对RS422的相应操作。

百度查询: 湖北三江航天万峰科技发展有限公司 Windows xp系统下CPCI总线RS422通信驱动方法及系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。