【工业串口和网络软件通讯平台(SuperIO)教程】七.二次开发服务驱动
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf
1.1 服务接口的作用
围绕着设备驱动模块采集的数据,根据需求提供多种应用服务,例如:数据上传服务、数据请求服务、4-20mA服务、短信服务、LED服务以及OPC服务等。保障数据实时性、稳定性的前提下,服务接口可以提供丰富的功能服务机制,方便开发者进行二次开发。
1.2 接口功能说明
开发设备输出接口,主要考虑到在集成项目中,集成过程中或被集成过程的各种数据格式的输出。需要继承SuperIO.Export.IExportData接口,接口包括:
1) StartService
当服务的启动方式(IsAutoStart)为"自动启动"的时候,平台加载服务的时候,会自动调用这个接口函数。
2) ReleaseService
释放服务资源接口。
3) OnClick
当服务类型(ServiceType)为“显示模式“的时候,服务的名称会显示在”服务“菜单里,当单击服务菜单项的时候,会调用这个单击接口函数,可以在这个接口函数里调用窗体。
4) WriteLogHandler
日志事件接口,可以通过此事件,把日志信息显示在”运行监视器“里。
5) ServiceType
服务类型,分为:显示模式和隐藏模式。显示模块的服务会在”服务“菜单中显示服务名称;隐藏模式在”菜单“菜单中不会显示,可以把此类服务设置为自动启动,软件在加载过程中会自动启动服务。
6) IsAutoStart
服务启动类型,标识是否自动启动。
7) ThisKey
返回窗体ID,且唯一,如果有相同的窗体存在,不会再次显示该窗体了。
8) ThisName
窗体名称。
9) UpdateDevice
更新设备数据,接收设备OnDeviceObjectChangedHandler事件传入的对象实例。
10) RemoveDevice
移除设备,当删除设备的时候会调用这个函数接口。
11) Dispose
释放资源函数。
1.3 开发服务驱动
1)增加对SuperIO组件的引用。
2)新建类,继承SuperIO.Services.AppService抽象类,并且实现接口功能。
3)可以通过UpdateDevice接口函数更新设备的缓存数据。
1.4 调试服务驱动
界面方式测试是有窗体界面的,必须继承“SuperIO.UI .MainForm”类,并用代码把软件平台设置成调试模式“SuperIO.Device.DebugDevice.IsDebug = true;”,如图:
在Form_Load中初始化实例,并且加载调试图形显示模块,主要是创建实例,如:this.DebugAppService((SuperIO.Services.IAppService)_service)语句。如下图:
1.5 挂载服务驱动
在“工业串口和网络软件通讯平台_SuperIO”目录下找到【ConfigTool.exe】应用程序,选择【服务配置】选卡,单击【挂载服务】按钮,把刚才开发的服务驱动模块挂载到平台下。如下图:
1.6 在软件平台下运行
服务类型和启动类型配合使用,服务类型为显示模式,手动启动和自动启动模式均可以;服务类型为隐藏模式,设置为自动启动模式,以便在程序在加载过程中自动启动服务。
如下图:
作者QQ:504547114
交流QQ群:54256083
官方网址:http://www.bmpj.net
源文章地址:http://www.bmpj.net/index.php?m=article&f=view&id=7
【工业串口和网络软件通讯平台(SuperIO)教程】七.二次开发服务驱动的更多相关文章
- 【工业串口和网络软件通讯平台(SuperIO)教程】二.架构和组成部分
1.1 架构结构图 1.1.1 层次示意图 1.1.2 模型对象示意图 1.2 IO管理器 IO管理器是对串口和网络通讯链路的管理.调度.针对串口和网络通讯链路的特点,在IO管 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】六.二次开发导出数据驱动
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 导出数据接口的作用 在数据集成系统项目中,要么是自已集成其他厂家的设备,要么是其他厂家集成自己 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】五.二次开发图形显示界面
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 图形显示接口的作用 用于显示采集终端设备的数据,可以把不同类型设备的数据以多种形式集成显示在不 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】四.开发设备驱动
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 开发准备 把“开发包”内的所有文件复制到项目的“bin”目录下,或项目下的专用生成目录.开发包 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】八.SuperIO通讯机制与设备驱动对接的说明
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 通讯机制说明 通讯的总体机制采用呼叫应答方式,就是上位机软件主动发送请求数据命令,下位机终端接 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】九.重写通讯接口函数,实现特殊通讯方式
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 统一的IO接口 开发一套设备驱动同时具备串口和网络通讯能力,通讯接口在逻辑上是统一的,在此基础 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】一.通讯机制
1.1 应用场景 通讯平台的交互对象包括两方面:第一.与硬件产品交互.第二.与软件产品交互.基本这两方面考虑,通讯平台一般会应用在两个场景: 1)通讯平台应用在PC机上 主要应用在自动站的工控机 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】三.二次开发流程
1.1 二次开发流程图 1.2 引用相关组件 找到“开发包”,引用里边的相关组件.如下图: 1.3 开发设备驱动模块 1.3.1 开发发送协议驱动 继承SuperIO.Devi ...
- 工业串口和网络软件通讯平台(SuperIO 2.0)发布
下载:SuperIO 2.0(开发手册.Demo.组件包) 官网:进入 交流群:54256083 SuperIO 2.0版本正式发布.把SCL正式更改名称为SuperIO. 一.此次升级主要包括两个方 ...
随机推荐
- AngularJS2 + ASP.NET MVC项目
环境:VS2015, NodeJS:v 6.5, npm: v3.10, AngularJs 2 通过将ASP.NET MVC项目与Angualr 2官网上的quick start整合的过程中遇到些问 ...
- Nginx负载均衡的详细配置及使用案例详解.
感谢看过这一些列博文和评论的小伙伴, 我把自己所看到的学到的拿到这里来分享是想和大家一起学习进步, 想听听园友给出的意见, 也是对自己学习过程的一个总结. 技术无止境, 我们仍需努力! 1,话不多说, ...
- MFC的定时器OnTimer
本文总结来源出自鸡啄米,感谢鸡啄米.来源:http://www.jizhuomi.com/software/232.html 定时器简介 定时器,可以帮助开发者或者用户定时完成某项任务.在使用定时器时 ...
- SQL Server 数据库子查询基本语法
一.SQL子查询语句 1.单行子查询 select ename,deptno,sal from emp where deptno=(select deptno ...
- CoreData和SQLite多线程访问时的线程安全
关于CoreData和SQLite多线程访问时的线程安全问题 数据库读取操作一般都是多线程访问的.在对数据进行读取时,我们要保证其当前状态不能被修改,即读取时加锁,否则就会出现数据错误混乱.IOS中常 ...
- ASP.NET MVC5 网站开发实践(二) Member区域 - 用户部分(3)修改资料、修改密码
在上一篇博客中实现了用户的注销和登录,其实代码里落了点东西,就是用户登录要更新最后一次登录时间和登录IP,这次补上.今天做修改资料和修改密码,TryUpdateModel是新用到的东西. 目录: AS ...
- 构建自己的PHP框架--实现Model类(3)
在之前的博客中,我们实现并完善了Model类的findOne方法,下面我们来实现其中的其他方法. 先来看findAll方法,这个方法和findOne很相似. public static functio ...
- SPRING多个占位符配置文件解析源码研究--转
原文地址:http://www.cnphp6.com/archives/85639 Spring配置文件: <context:property-placeholder location=&quo ...
- 关于BFC不会被浮动元素遮盖的一些解释
简介 在清除浮动一文中提到BFC不会被浮动元素遮盖,并没有详细探究表现行为.规范中指出,在同一个BFC内,作为子元素的BFC的border-box不应该覆盖同为子元素的浮动元素的margin-box. ...
- 重温JSP学习笔记--三大指令九大内置对象
最近在温习javaweb的相关基础知识,鉴于我弄丢了记满了整整一本的笔记,决定以后把笔记和一些学习上的心得以及碰到的一些问题统统都放在网上,今天看了一下jsp的相关基础,以下是笔记: JSP三大指令: ...