From 3d97a70c9aec8661ddca4de2ac6f1eab9a75de19 Mon Sep 17 00:00:00 2001 From: DMchen Date: Wed, 25 Oct 2023 11:26:19 +0800 Subject: [PATCH] 1.首次上传 通讯协议-SDK_DLL部分[内部].md --- 通讯协议-SDK_DLL部分[内部].md | 256 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 256 insertions(+), 0 deletions(-) create mode 100644 通讯协议-SDK_DLL部分[内部].md diff --git a/通讯协议-SDK_DLL部分[内部].md b/通讯协议-SDK_DLL部分[内部].md new file mode 100644 index 0000000..45cb6ab --- /dev/null +++ b/通讯协议-SDK_DLL部分[内部].md @@ -0,0 +1,256 @@ +
+
+
+ +
+SunVote Dll协议接口说明 +
+ + +
+Ver5.1.1 +
+
+
+
+
+
+
+ +
+长沙中天电子设计开发有限公司 +
+ +
+ +
+二〇二三年十月 +
+ +
+
+
+
+ +文件控制: + +文件名:SunVote Dll接口说明 + +起草人:陈定敏 + +最新版本作者: 陈定敏 +
+
+| 文档版本 | 日期 | 作者 | 版本说明 | +|---|---|---|---| +|5.1.1| 2023年10月09日|陈定敏|1. 初始版| + +
+ +[TOC] + +# 系统概述 + + + +# 设计目的 + + + +# 通讯接口设计概要 + + + +# 通信方式 +数据交互采取发送<-->应答的方式。应用程序发送数据到WSCmdApp,WSCmdApp收到后执行完成后回复。 + +应用程序没有数据发送给WSCmdApp时,需要发送心跳,WSCmdApp收到心跳后会回复心跳,用于判断与应用程序的连接状态。(配置文件中,如果启用了心跳检查,应用程序如果未按要求发送心跳,WSCmdApp会断开当前连接,重新尝试连接) + +# 编程流程说明 + +# 基站参数部分 +##键盘关机设置 + +获取键盘关机时间等级 +函数名称:GetKeyboardAutoPowerOffLevel +参数说明: + +| **参数名称** | **参数说明** | **范围** | **备注** | +| --- | --- | --- | --- | +|UCHAR iBaseID|基站ID|0~32|| + +接口代码: +```C++ +extern"C" __declspec(dllexport) bool GetKeyboardAutoPowerOffLevel(UCHAR iBaseID); +``` + +设置键盘关机时间等级 +函数名称:SetKeyboardAutoPowerOffLevel +参数说明: + +| **参数名称** | **参数说明** | **范围** | **备注** | +| --- | --- | --- | --- | +|UCHAR iBaseID|基站ID|0~32|| +|UCHAR Level|关机时间等级|0:30秒
1:2分钟
2:15分钟
3:45分钟
255:不自动关机|| + +接口代码: +```C++ +extern"C" __declspec(dllexport) bool SetKeyboardAutoPowerOffLevel(UCHAR iBaseID, UCHAR Level); +``` + + +## 异常处理 + +### WSCmdApp收到数据异常 + +WSCmdApp收到异常数据,会不做处理,并返回以下错误信息描述。 + +接收: +fun: "error" //功能错误 +baseId: //无该值 +infos:{ "funId":"F0001","code":"10002"}// + + +指令样例: +```json +{ + "fun": "error", + "infos": { + "funId": "F0001", + "code": "10002" + }, + "packetTag": "1" +} +``` + +| **code** | **含义** | +| --- | --- | +|10001|不能正确解析的JSON数据| +|10002|解析JSON错误| +|20001|基站未连接| +|20002|功能不支持| +|20003|基站ID为负数,应用可以不传ID,默认为0| +|20004|参数错误| +|30001|找不到对应的SN| +|40001|升级功能只能支持一个基站在线| +|50001|此功能必须指定基站ID| +|60001|此功能必须指定键盘SN| + +| **funId** | **含义** | +| --- | --- | +|F0001|基站未连接| +|F0002|读基站信道| +|F0003|写基站信道| +|F0004|读取基站baseId 、信道、RF功率等级| +|F0005|写基站baseId| +|F0006|读基站名称| +|F0007|写基站名称| +|F0008|读键盘关机时间等级| +|F0009|写键盘关机时间等级| +|F0010|读基站配对码| +|F0011|写基站配对码| +|F0012|读基站序列号| +|F0013|写基站序列号| +|F0014|读取基站的型号、硬件版本、软件版本、设备SN号| +|F0015|写基站硬件版本| +|F0016|读基站类型| +|F0017|写基站类型| +|F0018|读基站键盘容量和Lock| +|F0019|写基站键盘容量和Lock| +|F0020|读手动获取返回在线信息| +|F0021|写手动获取返回在线信息| +|F0022|读基站设备RF功率| +|F0023|写基站设备RF功率| +|F0024|基站设备配对模式或基站名称(自定义)| +|F0025|预留| +|F0026|读基站快速配对低功率模式| +|F0027|写基站快速配对低功率模式| +|F0028|读键盘登录菜单显示允许[S6适用]| +|F0029|写键盘登录菜单显示允许[S6适用]| +|F0030|读键盘登录密码[S6适用]| +|F0031|写键盘登录密码[S6适用]| +|F0032|读基站名称隐藏开关| +|F0033|写基站名称隐藏开关| +|F0034|读基站和键盘之间的心跳开关| +|F0035|写基站和键盘之间的心跳开关| +|F0036|读基站语言| +|F0037|写基站语言| +|F0038|读基站CRC| +|F0039|写基站CRC| +|F0040|写广播投票标题| +|F0041|核对投票开启密码| +|F0042|读基站获取投票开启密码| +|F0043|写基站获取投票开启密码| +|F0044|读基站用户自定义字符串| +|F0045|写基站用户自定义字符串| +|F0046|读基站UID| +|F0047|写基站UID| +|F0048|读键盘反馈模式参数| +|F0049|写键盘反馈模式参数| +|F0050|读基站当前是开启升级状态| +|F0051|写基站当前是开启升级状态| +|F0052|手动停止键盘升级状态| +|F0053|写键盘当前是开启升级状态| +|F0054|写踢出单只键盘| +|F0055|写清掉所有键盘| +|F0056|写锁定键盘| +|F0057|写解锁键盘| +|F0058|写T2键盘第二行文本【空闲模式】| +|F0059|读考勤基站时钟设置| +|F0060|写考勤基站时钟设置| +|F0061|读考勤键盘每秒发送考勤信号次数| +|F0062|写考勤键盘每秒发送考勤信号次数| +|F0063|读考勤键盘发送考勤信号功率| +|F0064|写考勤键盘发送考勤信号功率| +|F0065|写修改键盘配对码| +|F0066|写键盘功能提示预设字符串反馈| +|F0067|写空闲模式| +|F0068|单选多选带计时模式| +|F0069|判断题带计时模式| +|F0070|抢答题带计时模式| +|F0071|数字题带计时模式| +|F0072|绑定带计时模式| +|F0073|基站快速配对| +|F0074|读基站特征数据| +|F0075|遥控关机| +|F0076|读键盘在线SN| +|F0077|写基站复位| +|F0078|写键盘外设指令| +|F0079|写键盘配对码| +|F0080|写锁定键盘,解锁键盘| +|F0081|填空题模式| +|F0082|读NFC信息 姓名| +|F0083|写NFC信息 姓名| +|F0084|写NFC配对码| +|F0085|NFC清除指令| +|F0086|多题题型开始| +|F0087|多题题型暂停| +|F0088|多题题型继续上一次| +|F0089|多题题型正确答案下发| +|F0090|多题题型已答题结果转移| +|F0091|写白名单| +|F0092|读白名单| +|F0093|写基站黑名单| +|F0094|读基站黑名单| +|F0095|C100B+S6[旧款]写键盘姓名| +|F0096|C100B+S6[旧款]读键盘姓名| +|F0097|键盘暂停休眠操作| +|F0098|异步测试模式| +|F0099|Tcp参数读| +|F0100|Tcp参数写| +|F0101|自定义题型参数| +|F0102|写S6短信| +|F0103|写S6键盘FSN| +|F0104|自由题模式| +|F0105|基站AES| +|F0106|基站AES 克隆| +|F0107|基础参数配置| +|F0108|删除指定白名单SN| +|F0109|追加指定SN 到白名单| +|F0110|语音题模式| +|F0111|多题快答模式| +|F0112|快速配对模式| +|F0113|键盘测试模式| +|F0114|写入积分和第二行文本| +|F0115|写入键盘姓名| +|F0116|键盘关机时间等级| -- libgit2 0.21.4