请选择 进入手机版 | 继续访问电脑版

[SuperIO教程]9.重写通讯接口函数,实现特殊通讯方式

2015-9-1 20:04| 发布者: admin| 查看: 2475| 评论: 0

SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf

1.1    统一的IO接口

开发一套设备驱动同时具备串口和网络通讯能力,通讯接口在逻辑上是统一的,在此基础上串口和网络也有自己的IO通讯特点,根据不同的通讯方式,可以把IIOChannel实例转换成ISessionSocketISessionCom实例。如下图:

1.2     通讯要求

一个请求命令分两次发送,每次发送数据时的串口校验位不同。先发送地址信息,这时串口的配置为Baud,m,8,1;再发送请求命令信息,这时的串口配置为Baud,s,8,1。这样完成一次请求数据的命令。如下图:

1.3    重写通讯接口

设备驱动继承SuperIO.Device.RunDevice1抽象类,里边有一个虚函数Send(IIOChannel io, byte[] sendbytes)io参数为通讯操作实例,sendbytes参数为要发送的数据信息,可以重写这个接口函数,完成特殊的发送数据要求。如下图:

接收完数据,需要把串口设置修改成默认的配置,避免影响其他设备驱动的通讯,如下图:


鲜花

握手

雷人

路过

鸡蛋

最新评论

相关分类

Copyright © 2016 Comsenz Inc. All Rights Reserved. By Discuz! X3.2 ( 11010902000139 ) 

扫描二维码关注我:
确 认
返回顶部