1.1 二次开发流程图
1.2 引用相关组件
找到“开发包”,引用里边的相关组件。如下图:
1.3 开发设备驱动模块
1.3.1 开发发送协议驱动
继承SuperIO.Device.DeviceSendProtocol接口,覆盖相关的FunctionXX接口函数,进行数据打包,“XX”代表16进制的数据,例如:Function31函数通过this.SendProtocol.GetSendCmdBytes(addr, new byte[] { 0x32 }, null, false)函数进行调用。
接口函数可以与接收协议中的接口函数相对应。
1.3.2 开发接收协议驱动
继承SuperIO.Device.DeviceReceiveProtocol接口,覆盖相关的FunctionXX接口函数,进行数据打包,“XX”代表16进制的数据,例如:Function31函数通过this.ReceiveProtocol.GetAnalysisData(data, null, -1)函数进行调用。
接口函数可以与发送协议中的接口函数相对应。
1.3.3 参数数据、实时数据持久化
可以继承SuperIO.Device.DeviceParameter和SuperIO.Device.DeviceRealTimeData类,在子类中增加新的属性,覆盖SaveSerializePath属性指定保存数据的路径,进行序列化和反序列化操作进行保存和获得数据。
二次开发者可以SuperIO.SerializeOperation.SerializeOperation类型自定义数据持久化类。
1.3.4 开发运行设备驱动
继承SuperIO.Device.RunDevice1抽象类,重写相应的函数接口完成相应的功能。
具体的函数功能说明请看后续的开发实例。
1.3.5 创建ContextMenu菜单
通过设备接口的ShowContextMenu函数显示上下文菜单,当在软件平台的列表中右键单击时会显示这个菜单界面。
1.4 开发图形显示模块
图形显示界面要同时继承Form窗体类和SuperIO.Show.IGraphicsShow接口,用于显示窗体和驱动数据。
可以把不同的数据信息集成到一个界面下显示,查看更直观、方便。
1.5 开发数据异出模块
对于同一类设备,在不改变设备驱动模块的情况下,输出不同格式的数据,更多的用于与其他集成系统对接。
1.6 开发服务模块
在这里可以开发针对设备、平台的各种服务,例如:平台采集完数据信息后上传到服务中心等,利用此类接口接口应用比较广泛。
1.7 调试驱动、模块
可以继承MainForm窗体,调用调试接口,在有界面的情况下进行调试;也
可以,通过DebugDevice. GetDebugInstance()获得调试实例,在*面的情况下进行调试。
1.8 挂载驱动、模块
运行ConfigTool.exe配置工具,对开发好的驱动、模块进行挂载。如下图:
作者QQ:504547114
交流QQ群:54256083
官方网址:http://www.bmpj.net
源文章地址:http://www.bmpj.net/index.php?m=article&f=view&id=3