当前位置: 首页 > 资源下载  > 恒远工具

恒远协议开发SDK

DLL通信库文件说明 C# DLL库使用说明 1、DLL库名 AsySocket2、服务类名Server使用定义AsySocket.Server sever = null; 3、指令状态CommandStateCMD_STATE_OK ——0CMD_STATE_FAIL ——1CMD_STATE_SEND ——2 4、基本命令结构类CmdTagCmdTag结构类是事件和发送数据最小…

DLL通信库文件说明

 

 

C# DLL库使用说明

 

1、DLL库名 AsySocket

2、服务类名Server

使用定义AsySocket.Server sever = null;

 

3、指令状态CommandState

CMD_STATE_OK  ——0

CMD_STATE_FAIL  ——1

CMD_STATE_SEND  ——2

 

4、基本命令结构类CmdTag

CmdTag结构类是事件和发送数据最小单位。

结构内容:

    public byte[] CMD_SRC_DATA; ——指令原始数据

         public byte CmdCode;  --指令码

         public ushort CmdIndex;  --指令序号(可不填)

       public byte CmdState; --指令状态

       public byte CmdType; --指令类型

       public long DeviceID;  --设备ID

       public ushort ExMessage;  --扩展信息(备用)

       public byte[] Param;  --指令数据内容

         public object Socket;

       public long Token; ——备用

 

 

 

5、事件

 (1)onClose事件,socket关闭时触发的事件

   (2) onCmdRecv事件,收到设备数据时触发的事件;

 (3) OnRegist事件,收到设备注册时的事件,该事件需要SetOnLine方法响应该事件。

SetOnLine (long deviceID, int allow)参数deviceID表示设备ID,参数allow 允许登录与否(0表示禁止登录,1表示允许登录)

(4) onError事件,服务信息输出触发事件

 

6、启动服务Start方法

Start(int severType, int port) 参数severType表示服务类型(1表示TCP,0表示UDP)

 

启动服务示例

     AsySocket.Server sever = new AsySocket.Server();

       sever.onClose += new AsySocket.onClose(sever_onClose);

       sever.OnRegist += new AsySocket.onRegist(sever_OnRegist);

       sever.onCmdRecv += new AsySocket.onCmdRecv(sever_onCmdRecv);

sever.onError += new AsySocket.onError(sever_onError);       

sever.Start(Service_Type.TCP, 10001);  //TCP服务监听10001端口

 

private void sever_onClose(AsySocket.CmdTag cmd)

        {

           Debug.print("设备" + cmd.DeviceID + "断开。");

         }

 

        private void sever_OnRegist(AsySocket.CmdTag cmd)

        {

            Debug.print("收到设备" + cmd.DeviceID + "注册登录信息。");         

            sever.SetOnLine(cmd.DeviceID, 1); //允许登录

           

        }

 

        private void sever_onCmdRecv(AsySocket.CmdTag cmd)

        {

            Debug.print(string.Format("收到设备{0}数据。", cmd.DeviceID));

     }

private void sever_onError(string msg)

        {

            Debug.print(msg));

 

       }

7、停止服务Stop方法 sever.Stop();

8、发送数据Send方法

Send(CmdTag cmd)

发送命令示例如下[读设备服务器信息]:

 AsySocket.CmdTag cmd = new AsySocket.CmdTag();

         cmd.CmdCode = 0xAA;

         cmd.CmdType = 0xF0;

         cmd.DeviceID = 123456;

         cmd.CmdState = AsySocket.CommandState.CMD_STATE_SEND;

         cmd.Param =new byte[2];

         cmd.Param[0]=0x05;

  cmd.Param[0]=0x00;

 

  sever.Send(cmd);


附件下载

  • 下载

    AsySocket.rar

    文件类型:rar 大小: 32KB

上一篇:没有了

下一篇:SDK_Demo(MBUS集中器版)

相关资源

  • 恒远物联通用配置工具-V2019

    恒远物联通用配置工具,支持DTU/RTU/MBUS集中器等系列产品在使用过程中有何疑问,请随时与我们联系:028-87657875

  • SDK_Demo(DTU-RTU通用版)

    开发平台:VS2012及以上版本 .Net 4.0using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Configuration;namespace Test…

  • SDK_Demo(MBUS集中器版)

    开发平台:VS2012及以上版本,.Net 4.0using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Configuration;namespace Te…

DTU(12) RTU(12) 物联网(12) MBUS(11) HERY(6) 4G全网通(5) 智慧工地(3) IOT(2) DI(2) DO(2) 集中器(2) PLC(2) RS485(2) RS232(1) GPRS(1) GPRS2G(1) 采集器(1) AI(1) AO(1) SCADA(1) NBIOT(1) 智慧水务(1) 5G(1) MQTT(1) HTTP(1) 抄表(1) WiFi(0) BLE(0) PWM(0) 污水处理(0)
咨询反馈
扫码关注

恒远物联 微信公众号

返回顶部
网站客服