组态王软件驱动程序开发
04监控组态软件Kingview

系统预设变量
预设变量中有8个时间变量是系统已经在数据库中定义的, 用户可以直接使用这些变量。 $年:返回系统当前日期的年份。 $月:返回1到12之间的整数,表示一年之中的某一月。 $日:返回1到31之间的整数,表示一月之中的某一天。 $时:返回0到23之间的整数,表示一天之中的某一钟点。 $分:返回0到59之间的整数,表示一小时之中的某分钟。 $秒:返回0到59之间的整数,表示一分钟之中的某个秒。 $日期:返回系统当前日期。 $时间:返回系统当前时间。 以上变量由系统自动更新,工程人员只能读取时间变量,而不能改变它 们的值。
组态王采用面向对象的编程技术,使用户可 以方便地建立画面的图形界面。用户构图时可 以象搭积木那样利用系统提供的图形对象完成 画面的生成。
工程浏览器是组态王软件的核心部分和管理开发系统, 它将画面制作系统中已设计的图形画面、命令语言、设 备驱动程序管理、配方管理、数据报告等工程资源进行 集中管理,并在一个窗口中进行树形结构排列。
组态王是运行在Windows98/NT/2000/XP 上的一种组态软件。使用组态王,用户可 以方便地构造适应自己需要的“数据采集 系统”,在任何需要的时候把生产现场的 信息实时地传送到控制室,保证信息在全 厂范围内的畅通。
组态王的网络功能使企业的基层和其它 部门建立起联系,现场操作人员和工厂 管理人员都可以看到各种数据。管理人 员不需要深入生产现场,就可以获得实 时和历史数据,优化控制现场作业,提 高生产率和产品质量。
结构变量
当组态王工程中定义了结构变量时,在变量 类型的下拉列表框中会自动列出已定义的结 构变量,一个结构变量做为一种变量类型, 结构变量下可包含多个成员,每一个成员就 是一个基本变量,成员类型可以为:内存离 散、内存整型、内存实型、内存字符串、IO 离散、IO整型、IO实型、IO字符串。
组态王驱动开发详解

组态王驱动开发详解组态王驱动开发详解⼀、为什么需要编写组态王驱动程序?组态王是监控和操作底层控制器(PLC,单⽚机等)的软件,在组态王和底层控制器间有数据的交换,对于⼀些常⽤设备,组态王已经内置了设备连接的驱动,⽐如西门⼦、ABB等,这些设备可以直接通过在串⼝处添加即可,但是对于那些在列表中⽆法找到的设备,就需要通过⾃⼰编写驱动程序,以实现组态王和底层硬件的通信。
⼆、驱动程序(接⼝)主要完成哪些事情?(1)定义设备的变量(2)定义驱动类型:串⼝or⽹络,什么通讯⽅式(3)通讯包的属性等三、怎么进⾏驱动程序的开发?亚控提供了3.0的驱动程序开发包,这是⼀个使⽤VC开发DLL驱动的⼯具此为开发包⽤户⼿册,可参考;开发包可注册亚控论坛后让群组发过来/doc/53427d88a0116c175f0e489b.html /view/19f24f5f804d2b160b4ec0de.html编写驱动程序就是完成组态王touchexplore.exe和touchview.exe调⽤的底层函数,在开发前⾸先需要确定安装了组态王驱动开发包3.0和visual /doc/53427d88a0116c175f0e489b.html 2003;安装时可能碰到的问题与解决可参见/doc/53427d88a0116c175f0e489b.html /weizier/blog/item/72bf942bd75539fae6cd409d.html开发主要分为以下6个步骤:1、分析通讯协议需要确定数据包的格式,即驱动程序是接受怎么样的数据,怎么检验数据,并把它传给组态王,组态王⼜怎么根据得到的数据去解析各变量。
如可以确定协议如下的类型2、制定驱动规格主要包括三部分:定义设备选择(在组态王设备列表⾥⾯怎么找到这个设别)、设备地址(设备地址的范围,在接⼝程序中有检测)、寄存器列表说明(是接⼝函数主要传递的数据,由下位机采集传输给组态王,也可由组态王发送到下位机)如下为西门⼦S700的寄存器列表说明3、编写代码3.0提供了驱动的框架,包括数据、类和函数的定义,主要需要修改接⼝函数部分,以使得驱动和下位机、通信协议匹配。
组态王教程

6
二、组态软件的发展(续)
公司名称 产品名称 国别
Intellution Wonderware 西门子 Rock-well National Instruments Citech Iconics PC Soft A-B
FIX, iFIX InTouch WinCC RSView32 Labview Citech Genesis WizCon controlview
11
图1 模拟量I/O点的参数点表
图2 开关量I/O点的参数点表
12
四、使用组态软件的一般步骤(续)
5、根据表1,建立实时数据库,正确组态各种变量参数。
6、根据表1和表2,在实时数据库中建立实时数据库变 量与I/O点的一一对应关系,即定义数据连接。
7、根据前面设计的画面结构和画面草图,组态每一幅 静态的操作画面(主要是绘图)。 8、将操作画面中的图形对象与实时数据库变量建立动 画连接关系,规定动画的属性和幅度。 9、对组态的内容进行分段和总体调试。 10、系统投入运行。
36
2.4 定义外部设备变量
--数据词典中变量的类型(续)
基本类型的变量也可以按照数据类型分为离散型、 模拟型、长整数型和字符串型。 内存离散变量、I/O离散变量 内存实型变量、I/O实型变量 内存整数变量、I/O整数变量 内存字符串型变量、I/O字符串型变量 特殊变量类型有报警窗口变量、报警组变量、历 史趋势曲线变量、时间变量四种。这几种特殊类 型的变量正是体现了“组态王”系统面向工控软 件自动生成人机接口的特色。
六、组态王概述—如何获取帮助
组态王帮助文档分组态王产品帮助文档和I/O 驱动帮 助文档两部分,可以通过如下几种方法打开: 方法一:单击桌面“开始”-“所有程序”-“组态 王6.52”-“组态王文档”,此选项中包括组态王帮助文 档、I/O 驱动帮助文档和使用手册电子版、函数手册电子 版。 方法二:在工程浏览器中单击“帮助”菜单中的“目 录”命令,此帮助文档中只包含组态王软件帮助文档。 方法三:在工程浏览器中任何时候通过“F1”快捷键 弹出组态王软件帮助文档。
第二章 组态王与软件

北京亚控科技有限公司
25
基于广域网的软件应用
驱动分为 Client 和 Server 两个部分,其中中心计算机安装 Modbus TCPIP Client 驱动程序,分控计算机安装 Modbus TCPIP Server 驱动程序。中心计算机主动采集 各分控计算机的数据。
使用说明:
Modbus TCPIP Server
使用说明:
KingNetServer:
组态王中设备定义:智能模块>北京亚控>KingNetServer>网络 设备地址: 0。中心 计算机上只能定义一个 KingNetServer,,负责接受其他计算机传输过来的数据。 寄存器列表:
寄存器 xxx 取值范围 数据类型 变量类型 读写属性
Bxxx 0--1023
第一节 MODBUS TCPIP 连接
简介:
此为组态王提供的基于 INTERNET 广域网络的软件互联驱动。本驱动基于标准 的 Modbus TCPIP 协议,支持组态王间通过以太网网络进行软件间的互联通讯。因 为此协议是基于标准的 Modbus TCPIP 协议开发的,所以如果第三方软件能提供 Modbus 接口,也可以作为与第三方软件进行互联的一种方式。
寄存器列表:
寄存器 xxx 取值范围 数据类型 变量类型 读写属性
0xxx 0--50000
BIT I/O 离散 读写
1xxx
0--9999
3xxx
0--9999
4xxx
0ቤተ መጻሕፍቲ ባይዱ-9999
8xxx 0--50000
9xxx 0--50000
Timeout
0
BIT INT INT FLOAT FLOAT UINT
组态软件概述组态王软件安装组态王使用入门

1.1 组态软件概述
① InTouch:Wonderware 的InTouch 软件是最早进入我国的组态软 件。在20 世纪80 年代末、90 年代初,基于Windows 3.1 的InTouch 软件曾让我们耳目一新,并且InTouch 提供了丰富的图库。但是,早 期的InTouch 软件采用DDE 方式与驱动程序通讯,性能较差,最新 的InTouch 7.0 版已经完全基于32 位的Windows 平台,并且提供了 OPC 支持。
启动Install.exe 安装程序,如图1−1 所示,只要按照提示点击安装即 可。
返回
1.3 组态王的使用入门
1. 认识组态王程序成员
1)开发版 有64 点、128 点、256 点、512 点、1 024 点和不限点共六种规格。内
置编程语言,支持网络功能内置高速历史库,支持运行环境在线运行 8 小时。 2)运行版 有64 点、128 点、256 点、512 点、1 024 点和不限点共六种规格。支 持网络功能,可选用通讯驱动程序。 3)NetView 有512 点、不限点共两种规格。支持网络功能,不可选用通讯驱动程 序。
上一页 下一页 返回
1.1 组态软件概述
在实际应用中,作为服务器的数据采集程序往往由硬件设备制造商随 硬件提供,可以发挥硬件的全部效能,而作为客户的组态软件可以通 过OPC 与各厂家的驱动程序无缝连接,故从根本上解决了以前采用 专用格式驱动程序总是滞后于硬件更新的问题。同时,组态软件同样 可以作为服务器为其他的应用系统(如MIS 等)提供数据。OPC 现 在已经得到了包括Intellution、Simens、GE、ABB 等国外知名厂商 的支持。随着支持OPC 的组态软件和硬件设备的普及,使用PC 进行 数据采集必将成为组态中更合理的选择。
组态王软件介绍

3、系统软件3.1组态王软件介绍本系统采集控制软件选用中国本土软件厂商北京亚控科技发展有限公司生产的,国内最早的商用组态软件“组态王”。
截止到2009年底,“组态王”已在国内装机量有10万套,成功地应用于我国工业领域的各行各业,例如石油、化工、电力、冶金、造纸、橡胶、环保、机械制造等等,在中国使用的监控软件中,组态王拥有国内最多的用户。
像国外众多的软件一样,组态王软件也经过了一个发展例程:1995年——组态王V1.01996年——组态王V1.21997年——组态王V1.511998年——组态王V2.01999年——组态王V5.12000年——组态王V5.1 for Internet2001年——组态王V6.0、组态王电力专业版6.02002年——组态王V6.022003年——组态王V6.52005年——组态王V6.512006年——组态王V6.522007年——组态王V6.53下面介绍组态王通用强大的功能。
3.1.1基本人机界面功能通过本功能完成画面组态。
1.快速便捷的应用设计用组态软件构造“监控和数据采集系统”的好处之一就是能大大缩短开发时间,并能保证系统的质量。
能快速便捷地进行图形维护和数据采集是此类系统的关键点。
组态王正是提供了丰富的快速应用设计的工具。
(1)方便实用的工程管理组态王6.53提供方便实用的管理工具——工程管理器。
工程管理器是一个独立的可执行文件,用来管理本机的所有组态王工程,可以实现工程的压缩备份,备份恢复,数据词典的导出导入,实现开发和运行系统的切换等。
(2).集成的开发环境最新设计的组态王工程浏览器为用户提供了便利的集成开发环境。
工程设计者可以在工程浏览器中查看工程的各个部分,可以查看画面、数据库、配置通讯驱动程序、设计报表;可以完成系统的大部分配置。
工程浏览器采用树形结构,操作简单方便,容易接受。
在工程浏览器中,用户也可以方便地切换到组态王开发环境和运行环境。
(3).功能强大、易用的绘图工具目前用简单的示意性图形已经不足以表示工业现场复杂的生产过程,用户普遍要求更加丰富多彩、生动逼真的画面。
组态王软件

色调色板和绘图工具、十几个常用图库和多达几百种组件。此外,组 态王还提供多达21种动画连接,使构造丰富多彩、生动逼真的监控画 面变得便捷迅速。
上一页 下一页 返回
6. 2 组态王软件的组成
• (2)命令语言:组态王允许用户定义类似C语言的命令语言来驱动应用 程序,提供了五种命令语言,极大地增强了应用程序的灵活性。
上一页 下一页 返回
6. 1 组态王软件简介
• (6)监控和记录所有报警信息。 • (7)设计多级安全控制和访问权限。 • 组态王软件配置要求:Windows 98/ Windows 2000/ Windows • NT4. 0及以上中文操作系统。
上一页 返回
6. 2 组态王软件的组成
• “组态王工程管理器”界面工具栏按钮功能如下: • 搜索:搜索指定目录下的组态王所有版本的工程。 • 新建:新建立一个组态王工程。该命令不是真正建立一个组态王工程,
只是建立了工程信息,只有启动了组态王开发系统后,才能建立工程。
上一页 下一页 返回
6. 2 组态王软件的组成
• 删除:将所有的工程文件和工程信息全部删除,不可恢复。 • 属性:定义工程的描述信息。 • 备份:将选定的工程进行压缩备份。 • 恢复:将备份的工程进行恢复,在备份后新产生的工程信息将被删除。 • DB导出:将选定工程的数据词典导出到EXCEL格式的文件中,供用户
第六章 组态王软件
• 6. 1组态王软件简介 • 6 .2组态王软件的组成 • 6. 3组态王软件对工业现场数据监控系统的建立 • 6. 4组态王监控工程项目开发实例
返回
6. 1 组态王软件简介
组态王教程——很实用

组态王简明教程组态王软件的结构“组态王”是运行于Microsoft Windows 98/NTxx文平台的xx 界面的组态软件,采用了多线程、COM组件等新技术,实现了实时多任务,软件运行稳定可靠。
组态王具有一个集成开发环境“组态王工程浏览器”,在工程浏览器xx您可以查看工程的各个组成部分,也可以完成构造数据库、定义外部设备等工作。
画面的开发和运行由工程浏览器调用画面制作系统TOUCHMAK和画面运行系统TOUCHVEW来完成的。
TOUCHMAK是应用程序的开发环境。
您需要在这个环境xx完成设计画面、动画连接等工作。
TOUCHMAK具有先进完善的图形生成功能;数据库xx有多种数据类型,能合理地抽象控制对象的特性;对变量报警、趋势曲线、过程记录、安全防范等重要功能都有简单的操作办法。
TOUCHVEW是“组态王”软件的实时运行环境,在TOUCHMAKxx 建立的图形画面只有在TOUCHVEWxx才能运行。
TOUCHVEW从工业控制对象xx采集数据,并记录在实时数据库xx。
它还负责把数据的变化用动画的方式形象地表示出来,同时完成变量报警、操作记录、趋势曲线等监视功能,并生成历史数据文件。
组态王怎样和下位机通讯“组态王”把第一台下位机看作是外部设备,在开发过程中您可以根据“设备配置向导”的提示一步步完成连接过程。
在运行期间,组态王通过驱动程序和这些外部设备交换数据,包括采集数据和发送数据/指令。
每一个驱动程序都是一个COM对象,这种方式使通讯程序和组态王构成一个完整的系统,既保证了运行系统的高效率,也使系统能够达到很大的规模。
怎样产生动画效果开发者在TOUCHMAKxx制作的画面都是静态的,那么它们如何以动画方式反映工业现场的状况呢?这需要通过实时数据库,因为只有数据库xx的变量才是与现场状况同步变化的。
数据库变量的变化又如何导致画面的动画效果呢?通过“动画连接”就是建立画面的图素与数据库变量的对应关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
组态王驱动开发包用户手册北京亚控科技发展有限公司1. 版权本开发包版权属于北京亚控科技发展有限公司,任何组织、团体、个人,未经亚控公司允许,不得擅自拷贝,使用,对于购买本开发包的组织、团体、个人,只能内部使用,不得擅自泄漏给第三方。
2. 概述本开发包采用微软标准的COM组件技术,采用该技术,在创建接口时,可以创建多个互相独立对象,每个对象都可以拥有自己的变量。
最后的结果是一个DLL文件。
接口中的各函数,是被组态王的两个应用程序---TouchExplorer.exe和TouchVew.exe调用的。
如果这两个应用程序都不启动,函数中的代码将永远没有机会执行。
组态王的驱动程序是组态王和硬件设备连接的桥梁,本开发包用于开发组态王的驱动程序。
只要拥有硬件的通讯协议,即可以使用本开发包开发组态王的驱动程序。
本开发包只能使用VC++开发。
3. 开发包3.0修订目的a)通用版和嵌入版统一到一套代码中,通用版和嵌入版实现同步更新。
b)生成设备类,为多设备型号驱动提供解决方法。
c)详尽、稳健的基类代码。
d)完善的功能与向导。
e)规范各类帮助函数。
f)规范编码格式、统一使用英文版。
g)修改部分功能的实现方法。
4. 开发包使用我们提供一个开发向导工具“DriverToolKit3.0.0.0.exe”,使用这个工具,能够自动地生成驱动代码框架。
运行工具,如下图:请在下页输入您的目标文件夹点击“安装”,开发包即安装完成。
使用开发包向导创建驱动的过程:(1)启动Visual 2003。
(2)新建一个工程,“项目类型”选择“Visual C++项目”,“模板”选择“KingView Wizard”,在下面的编辑框中输入工程的名字以及存储路径,点击“确定”。
(3)这个创建向导分3页,第一页是“概述”,显示的是默认的设置信息,如果您不需要改变这些,直接点击“确定”即可成功的创建驱动框架。
(4)第二页是“驱动类型和编译选项”,包含如下部分:驱动类型:o串口驱动(适用于查询式设备)这个类型,是我们一般常用的,适合于普通的上位查询,设备应答的通讯类型。
o串口驱动(适用于实时上发数据的设备,非重叠IO)这种方式,适用于下位设备实时上发数据的情况,驱动中需要创建一个线程来监视串口事件的通讯类型,采用非重叠IO方式。
o串口驱动(适用于实时上发数据的设备,重叠IO,WinCE不支持)这种方式,同上一种,也是适用于下位设备实时上发数据的情况,驱动中需要创建一个线程来监视串口的通讯类型。
与前一种不同的是:采用了重叠IO方式。
我们不推荐使用这种方式,因为WINCE系统不支持这种方式,使用这种方式开发的驱动,将不能在WINCE系统的嵌入式设备中运行。
o以太网驱动(TCP服务器端)这是针对于TCP方式通讯的驱动,适用于设备为客户端,组态王为Server,组态王查询,设备应答的通讯类型。
如果遇到设备主动实时上发数据的情况,驱动中提供了相应的函数,可以直接调用函数,启动线程来监听网络事件。
o以太网驱动(TCP客户端)这是TCP方式通讯客户端的驱动,适用于组态王查询、设备应答的通讯类型。
这种方式需要驱动主动去连接设备。
如果遇到设备主动实时上发数据的情况,驱动中提供了相应的函数,可以直接调用函数,启动线程来监听网络事件。
o以太网驱动(UDP服务器端)目前还没有实现,参考TCP方式,代码中需要改动的地方有标注。
o以太网驱动(UDP客户端)目前还没有实现,参考TCP方式,代码中需要改动的地方有标注。
设备名称:默认的设备名称是“Name1”,可以自由填写,但须注意应该与设备列表中的设备名称保持一致。
尝试连接类型:当组态王与设备通讯失败了,组态王会周期性的尝试与设备通讯,这个过程,我们称之为“尝试连接”。
尝试连接,目前准备了如下几种类型:o永远为True,常用于板卡驱动。
o程序员自由定义,常用于网络通讯或实时上发数据的设备。
o使用“PACKET”进行通讯,适用于普通的驱动。
(5)第三页是“驱动基本信息”,包含如下条目:驱动基本信息o驱动名称o版本o描述o程序员o项目经理这些信息将被自动保存到历史文件(History.txt)中,同时也是保存在工程的ReadMe文件中,可以随工程浏览。
其他支持:o USB 通讯o ADO 数据库操作(6)点击“确定”后,将完成驱动工程的创建工作。
5. 工程转换工具我们要求通用版和嵌入版使用同一套代码,做到通用版和嵌入版驱动实现同步更新,这就需要一个工具来将通用版工程文件转换为嵌入版工程文件。
同时,考虑到有的开发者习惯使用Visual Studio 98进行开发编译,我们也要有一个工具来将Visual Studio 2003的工程文件转换成Visual Studio 98的工程文件。
我们提供一个转换工具kvdriver(包含3个文件,kvdriver.exe, vc7tovc6.exe,vc7toevc.exe),使用这个工具,可以根据Visual Studio 2003的工程文件,创建成Visual Studio 98和EVC的工程文件,开发者可以在不同的开发环境间自由选择。
驱动开发包安装完成后,这个工具存放在目录KingViewDriver下。
在使用的时候,可以把这个工具放在系统文件夹C:\WINDOWS\system32中,这样可以在命令行中输入“kvdriver”,然后把需要转换的Visual Studio 2003工程文件拖动过来运行即可,如下所示:6. 驱动信息结构所有的结构都定义在文件“Data类型.h”中。
_DevAddr该结构定义了设备地址格式.类型def struct _DevAddr{UINT nDevAddr;TCHAR sDevAddr[MAX_DEV_LEN];}DEVADDR, * PDEVADDR;成员:sDevAddr:用户在组态王中输入的原地址格式字符串。
nDevAddr:实际转换后的设备地址数字.ComDevice这是串口设置信息的结构体.struct ComDevice{short nFlag;WORD deviceKind;TCHAR deviceName[32];int baudRate;short dataBits;short stopBits;short parity;short timeOut;short failTimes;short retryInterval;short isRs232;};成员:nFlag:串口标志,目前没有用到.DeviceKind:设备类型,'1'代表串口设备DeviceName:逻辑名称 =={COM1,COM2...}BaudRate:波特率,范围是从 110到256000。
DataBits:数据位StopBits:停止位.TimeOut:超时,单位是毫秒FailTimes:失败次数RetryInterval:尝试间隔isRs232:通讯模式,'1'代表RS232, '2'代表RS422, '3'代表RS485. PLCVAR该结构定义了用户变量的属性.类型def struct var{WORD wVarID;WORD wVarType;TCHAR szVarName[32];short nDeviceIndex;short nUnitNo;DEVADDR *pDevAddr;TCHAR *pszRegName;short nRegType;short nSubType;short nSubType1;short nSubType2;short nNo;short nDataType;short nAccessMode;long nFrequency;long nTimerCount;CWinThread* pComThread;DDEValue maxRaw;DDEValue minRaw;short bConvertion;short isBad;short isUnvalid;}PLCVAR, * PPLCVAR;成员:wvarID:变量IDwVarType:变量类型,为如下几种:Bit, byte, int, uint, BCD, long, float, longbcd, string szVarName:变量名nDeviceIndex:设备索引nUnitNo:设备地址单元pDevAddr:设备地址pszRegName:寄存器名称nRegType;寄存器类型nSub Type:nSub Type1:nSub Type2:子类型,没有用到,如在驱动中有其他需要,可以自己定义使用。
nNo:寄存器通道nData Type:数据类型nAccessMode:读写属性nFrequency:采集频率nTimerCount:超时次数pComThread:通讯线程maxRaw:最大原始值minRaw:最小原始值PACKET该结构定义了通讯包的属性类型def struct Packet{short nDeviceIndex;short nUnitNo;DEVADDR * pDevAddr;TCHAR * pszDevName;TCHAR *pszRegName;short nRegType;short nSubType;short nSubType1;short nSubType2;int nStartNo;int nEndNo;short nPacketType;CPtrList varList;}PACKET,* PPACKET;成员:nDeviceIndex:设备索引nUnitNo:设备地址单元pDevAddr:设备地址结构指针pszDevName:设备地址nRegType:寄存器类型nSubType:nSubType1:nSubType2:子类型,没有用到,自己可以使用nStartNo:开始通道nEndNo:结束通道nPacketType:包读写类型VarList:变量列表,存储ID_NO和ID_NO2两种类型变量ID_NO该结构定义了老的接口的变量类型def struct IdNo{WORD wVarId;WORD wNo;WORD wDataType;BYTE Special[4];PlcValue plcValue;}ID_NO;成员:wVarId:变量IDwNo:通道wDataType:数据类型Special:目前没有使用plcValue:PLCVAR结构体指针ID_NO2该结构定义了新的接口的变量类型def struct IdNo2{WORD wVarId;WORD wNo;WORD wData Type;PlcValue plcValue;BYTE Special[4];WORD wQualities;FILETIME ftTimeStamps;}ID_NO2;成员:wVarId:变量IDwNo:通道wDataType:数据类型Special:目前没有用到plcValue:PLCVAR结构体指针wQualities:质量戳,0xc0代表GOOD, 0代表BAD.ftTimeStamps:时间戳,在驱动中一般设置当前的时间DEVICE_INFO该结构定义了设备信息类型def struct deviceinfo{TCHAR sDeviceName[32];}DEVICE_INFO;成员:SDeviceName:设备名称,最大允许长度是32,使用TCHAR字符REG_INFO该结构定义了寄存器信息类型def struct reginfo{TCHAR sRegName[8];int nLowIndex;int nUpperIndex;WORD wDataType;int nData;}REG_INFO;成员:sRegName:寄存器名称nLowIndex:开始通道nUpperIndex:结束通道7. 接口函数7.1 接口描述组态王与驱动交互,包括2个COM接口: IprotocolImp(老接口) 和IProtocolImp2(新接口)IProtocolImp::StrToDevAddrXProtocolImp::StrToDevAddr(const TCHAR* str, LPVOID lpDevAddr)类型:Public目的:实现对地址输入的整理,判断用户输入的地址是否合法,并将地址的数值传给组态王,如果必要,也可以将地址以字符串的形式传给组态王。