diff --git a/通讯协议-SDK_DLL部分[内部].md b/通讯协议-SDK_DLL部分[内部].md
index 31d2361..ae4e888 100644
--- a/通讯协议-SDK_DLL部分[内部].md
+++ b/通讯协议-SDK_DLL部分[内部].md
@@ -180,7 +180,35 @@ extern"C" __declspec(dllexport) char* GetSDKVer();
```C++
extern"C" __declspec(dllexport) void SetThread_Exit(void); //退出线程释放资源
```
+
+## 获取基站列表
+函数名称:GetHidList_len
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) int GetHidList_len();
+```
+
# 投票业务部分
+## 设置广播投票是标题
+函数名称:Set_Custom_Title
+功能:设置广播投票是标题
+说明:配合广播启动业务使用
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32||
+|UCHAR Title_Len|标题字符串长度|||
+|const char* Title|标题字符串|||
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool Set_Custom_Title(
+ UCHAR iBaseID,
+ UCHAR Title_Len,
+ const char* Title);
+```
+
## 设置空闲模式功能[广播]
函数名称:EndFreeEvent
功能:设置空闲模式功能[广播]
@@ -598,8 +626,8 @@ extern"C" __declspec(dllexport) bool Start_TextAnswer_Event_SN(
|---|---|---|---|
|UCHAR iBaseID|基站ID|0~32||
|int Moed1|模式|||
-|UCHAR KeyTime|按键开启时间|||
-|UCHAR GapTime|按键间隔时间|||
+|UCHAR KeyTime|按键开启时间|启动后,多少秒内随机模拟按下按键,0=马上||
+|UCHAR GapTime|按键间隔时间|提交成功后,多少秒内再重新提交,模拟修改按键,0=不测试||
接口代码:
@@ -631,6 +659,131 @@ extern"C" __declspec(dllexport) bool TestMode_Event(
USHORT TestNum);
```
+## 多题型模式
+### 启动多题型模式
+函数名称:Start_Multiple_Questions_Event
+功能:启动多题型模式功能[广播]
+说明:把SDK管理的所有基站的在线键盘设置为启动多题型模式功能模式
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+|---|---|---|---|
+|UCHAR iBaseID|基站ID|0~32||
+|USHORT EXAMNO|测验编号|||
+|USHORT TOTAL|题目总数|||
+|UCHAR SELMAX|单选多选缺省选项数目|||
+|UCHAR QUES_MODE|题号显示类型|||
+|const char* str|题号+题型类型字符串|1,1,1,1,1;2,1,1,1,4;||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool Start_Multiple_Questions_Event(
+ UCHAR iBaseID,
+ USHORT EXAMNO,
+ USHORT TOTAL,
+ UCHAR SELMAX,
+ UCHAR QUES_MODE,
+ const char* str);
+```
+### 暂停多题型模式
+函数名称:Pause_Multiple_Questions_Event
+功能:暂停多题型模式功能[广播]
+说明:把SDK管理的所有基站的在线键盘设置为暂停多题型模式功能模式
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+|---|---|---|---|
+|UCHAR iBaseID|基站ID|0~32||
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool Pause_Multiple_Questions_Event(UCHAR iBaseID);
+```
+### 继续多题型模式
+函数名称:Continue_Multiple_Questions_Event
+功能:启动多题型模式功能[广播]
+说明:把SDK管理的所有基站的在线键盘设置为启动多题型模式功能模式
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+|---|---|---|---|
+|UCHAR iBaseID|基站ID|0~32||
+|USHORT EXAMNO|测验编号|||
+|USHORT TOTAL|题目总数|||
+|UCHAR SELMAX|单选多选缺省选项数目|||
+|UCHAR QUES_MODE|题号显示类型|||
+|const char* str|题号+题型类型字符串|1,1,1,1,1;2,1,1,1,4;||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool Continue_Multiple_Questions_Event(
+ UCHAR iBaseID,
+ USHORT EXAMNO,
+ USHORT TOTAL,
+ UCHAR SELMAX,
+ UCHAR QUES_MODE,
+ const char* str);
+```
+### 正确答案下发
+函数名称:Ok_Multiple_Questions_Event
+功能:启动多题型模式功能[广播]
+说明:把SDK管理的所有基站的在线键盘设置为启动多题型模式功能模式
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+|---|---|---|---|
+|UCHAR iBaseID|基站ID|0~32||
+|USHORT TOTAL|题目总数|||
+|const char* str|答案字符串|||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool Ok_Multiple_Questions_Event(
+ UCHAR iBaseID,
+ USHORT TOTAL,
+ char* str);
+```
+### 键盘数据转移
+函数名称:Ok_Multiple_Questions_Event
+功能:启动多题型模式功能[广播]
+说明:把SDK管理的所有基站的在线键盘设置为启动多题型模式功能模式
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+|---|---|---|---|
+|UCHAR iBaseID|基站ID|0~32||
+|ULONG KeySN|键盘SN|||
+|USHORT EXAMNO|测验编号|||
+|USHORT TOTAL|题目总数|||
+|const char* str|答案字符串|||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool Copy_Multiple_Questions_Event(
+ UCHAR iBaseID,
+ ULONG KeySN,
+ USHORT EXAMNO,
+ USHORT TOTAL,
+ char* str);
+```
+## 自定义题型
+### 自定义题型
+函数名称:Custom_Questions_Event
+功能:启动自定义题型功能[广播]
+说明:把SDK管理的所有基站的在线键盘设置为启动自定义题型功能模式
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+|---|---|---|---|
+|UCHAR iBaseID|基站ID|0~32||
+|const char* sInfo|题目字符串|||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool Custom_Questions_Event(
+ UCHAR iBaseID,
+ const char* sInfo);
+```
+
# 键盘设置
## 键盘自定义姓名
### 设置键盘自定义姓名
@@ -955,7 +1108,7 @@ extern"C" __declspec(dllexport) bool SetKeyRemoteShutdown_Pro(
| **参数名称** | **参数说明** | **范围** | **备注** |
| --- | --- | --- | --- |
|UCHAR iBaseID|基站ID|0~32||
-| keySn | 键盘SN |空字符串,为所有在线键盘|
+| ULONG KeySN | 键盘SN |空字符串,为所有在线键盘|
接口代码:
@@ -965,6 +1118,786 @@ extern"C" __declspec(dllexport) bool SetKeyFactory(
ULONG KeySN);
```
+## 显著显示表决器信息
+
+设置显著显示表决器信息
+函数名称:SetKey_SignificantlyDisplay
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32||
+| UCHAR Mode | 显示模式 |1 大字体显示表决器编号
2 液晶闪烁显示,利于查找|
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetKey_SignificantlyDisplay(
+ UCHAR iBaseID,
+ UCHAR Mode);
+```
+
+## 无线修改键盘配对码(解绑)
+
+无线修改键盘配对码(解绑)
+函数名称:SetKeyUnbind
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32||
+|ULONG KeySN| 键盘SN |0:为所有在线键盘|
+|const char* MatchCode| 配对码 ||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetKeyUnbind(
+ UCHAR iBaseID,
+ ULONG KeySN,
+ const char* MatchCode);
+```
+
+## 设置OEM型号显示名称
+
+设置OEM型号显示名称
+函数名称:SetKeyOEMModel
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32||
+|ULONG KeySN| 键盘SN |0:为所有在线键盘|
+|UCHAR Model_Len| OEM字符串长度 ||
+|const char* Model| OEM字符串 ||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetKeyOEMModel(
+ UCHAR iBaseID,
+ ULONG KeySN,
+ UCHAR Model_Len,
+ const char* Model);//设置键盘OEM型号名称
+```
+
+## 锁定键盘,解锁键盘
+
+锁定键盘,解锁键盘
+函数名称:KeySN_Manage
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32||
+|UCHAR Mode|模式|4:锁定指定键盘
5:锁定当前在线键盘
6:解锁指定键盘
7:解锁所有锁定的键盘|
+|UCHAR NUM| 键盘数组有效个数 ||
+|ULONG KeySN[250]| 键盘列表数组 ||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool KeySN_Manage(
+ UCHAR iBaseID,
+ UCHAR Mode,
+ UCHAR NUM,
+ ULONG KeySN[250]);
+```
+
+## 键盘的出厂日期
+
+设置键盘的出厂日期
+函数名称:SetKeyDate
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|ULONG KeySN| 键盘SN ||
+|UCHAR Date[12]| 出厂日期 |2022-01-01|
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetKeyDate(
+ UCHAR iBaseID,
+ ULONG KeySN,
+ UCHAR Date[12]);//设置键盘的出厂日期2022-01-01
+```
+
+## 键盘的ID[S6使用]
+
+设置键盘的ID[S6使用]
+函数名称:SetKeyID
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|ULONG KeySN| 键盘SN ||
+|USHORT ID| 键盘的ID ||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetKeyID(
+ UCHAR iBaseID,
+ ULONG KeySN,
+ USHORT ID);//设置键盘的ID
+```
+
+# 基站参数设置
+## 基站的设备ID
+
+设置基站的设备ID
+函数名称:SetDevBaseId
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|int pathAdd|USB设备地址|可以通过GetDevBaseId()获取到||
+|UCHAR iBaseID|基站ID|1~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevBaseId(
+ int pathAdd,
+ UCHAR iBaseID); //设置基站的设备ID
+```
+
+获取基站的设备ID
+函数名称:GetDevBaseId
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevBaseId(UCHAR iBaseID); //获取基站的设备ID
+```
+
+## 基站黑名单
+设置基站到基站黑名单
+函数名称:SetDevBaseBlacklist
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|int pathAdd|USB设备地址|可以通过GetDevBaseId()获取到||
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevBaseBlacklist(int pathAdd); //设置基站到基站黑名单
+```
+
+获取基站黑名单列表
+函数名称:GetDevBaseBlacklist
+参数说明:
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevBaseBlacklist(); //获取基站黑名单列表
+```
+
+## 基站的设备RF功率
+设置基站的设备RF功率
+函数名称:SetDevRFPWR
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR RFPWR|设备RF功率|1:低功率
2:中功率
3:高功率|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevRFPWR(
+ UCHAR iBaseID,
+ UCHAR RFPWR); //设置基站的设备RF功率
+```
+
+获取基站的设备RF功率
+函数名称:GetDevRFPWR
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevRFPWR(UCHAR iBaseID); //获取基站的设备RF功率
+```
+
+## 基站信道
+设置基站的设备信道
+函数名称:SetDevCHAN
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR chans|信道数量|1~4|
+|UCHAR * chan信道数组||
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevCHAN(
+ UCHAR iBaseID,
+ UCHAR chans,
+ UCHAR * chan); //设置基站的设备信道
+```
+
+获取基站的设备信道
+函数名称:GetDevCHAN
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevCHAN(UCHAR iBaseID);
+```
+
+## 基站配对码
+设置基站配对码
+函数名称:SetDevSYSCODE
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR code[4]|配对码||
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevSYSCODE(
+ UCHAR iBaseID,
+ UCHAR code[4]); //设置基站配对码
+```
+
+获取基站配对码
+函数名称:GetDevSYSCODE
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevSYSCODE(UCHAR iBaseID); //获取基站配对码
+```
+
+## 基站配对模式
+设置基站配对模式
+函数名称:SetDevPairMode
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR mode|配对模式|1:固定模式
2:自由模式
3:免配对模式
4:配对SN号模式
5:自由SN号模式
6:免配对SN号模式
7:免配对同频点SN模式
8:白名单模式
9:免配对白名单模式|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevPairMode(
+ UCHAR iBaseID,
+ UCHAR mode); //设置基站配对模式
+```
+
+获取基站配对模式
+函数名称:GetDevPairMode
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevPairMode(UCHAR iBaseID); //获取基站配对模式
+```
+
+## 基站名称
+设置基站名称
+函数名称:SetDevNmae
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR Len| 基站名称字符串长度 ||
+|const char *Name| 基站名称字符串 ||
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevNmae(
+ UCHAR iBaseID,
+ UCHAR Len,
+ const char *Name); //设置基站名称
+```
+
+获取基站名称
+函数名称:GetDevNmae
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevNmae(UCHAR iBaseID); //获取基站名称
+```
+
+## 基站键盘容量
+设置基站键盘容量
+函数名称:SetDevKPNUMS
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|USHORT kPnums| 键盘数量 |B200_5.8G+T2 :1~70|
+|UCHAR Lock| 预留 |0:默认|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevKPNUMS(
+ UCHAR iBaseID,
+ USHORT kPnums,
+ UCHAR Lock=0); //设置基站键盘容量
+```
+
+获取基站键盘容量
+函数名称:GetDevKPNUMS
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevKPNUMS(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);
+```
+
+获取键盘关机时间等级
+函数名称:GetKeyboardAutoPowerOffLevel
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetKeyboardAutoPowerOffLevel(UCHAR iBaseID);
+```
+
+## 键盘登录菜单显示允许[S6适用]
+设置键盘登录菜单显示允许[S6适用]
+函数名称:SetKeyboardLoginMenu
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR OnOff| 登录模式 |0:不允许登录
1:允许登录|
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetKeyboardLoginMenu(
+ UCHAR iBaseID,
+ UCHAR OnOff);
+```
+
+获取键盘登录菜单显示允许[S6适用]
+函数名称:GetKeyboardLoginMenu
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetKeyboardLoginMenu(UCHAR iBaseID);
+```
+
+## 键盘和基站之间开启或关闭心跳
+设置键盘和基站之间开启或关闭心跳
+函数名称:SetKeyboardHeartbeat
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR OnOff| 登录模式 |0:关闭
1:开启|
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetKeyboardHeartbeat(
+ UCHAR iBaseID,
+ UCHAR OnOff);
+```
+
+获取键盘和基站之间开启或关闭心跳
+函数名称:GetKeyboardHeartbeat
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetKeyboardHeartbeat(UCHAR iBaseID);
+```
+
+## 键盘登录密码[S6适用]
+设置键盘登录密码[S6适用]
+函数名称:SetKeyboardLoginPW
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|USHORT PW| 登录密码 |范围0~9999,0:不用核对密码|
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetKeyboardLoginPW(
+ UCHAR iBaseID,
+ USHORT PW);
+```
+
+获取键盘登录密码[S6适用]
+函数名称:GetKeyboardLoginPW
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetKeyboardLoginPW(UCHAR iBaseID);
+```
+
+## 基站手动登录开关
+设置基站手动登录开关
+函数名称:SetDevBaseManualLogin
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR OnOff| 登录模式 |0:不允许键盘查看基站信道或名称
1:允许键盘查看基站信道或名称|
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevBaseManualLogin(
+ UCHAR iBaseID,
+ UCHAR OnOff);
+```
+
+获取基站手动登录开关
+函数名称:GetDevBaseManualLogin
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevBaseManualLogin(UCHAR iBaseID);
+```
+
+## 基站配套的语言
+设置基站配套的语言
+函数名称:SetDevLanguage
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR Language| 语言 |0:默认
1:中文
2:英文|
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevLanguage(
+ UCHAR iBaseID,
+ UCHAR Language);
+```
+
+获取基站配套的语言
+函数名称:GetDevLanguage
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevLanguage(UCHAR iBaseID);
+```
+
+## 基站和键盘之间开启CRC
+设置基站和键盘之间开启CRC
+函数名称:SetDevCRC
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR CRC| 语言 |0:不启用
1:启用|
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevCRC(
+ UCHAR iBaseID,
+ UCHAR CRC);
+```
+
+获取基站和键盘之间开启CRC
+函数名称:GetDevCRC
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevCRC(UCHAR iBaseID);
+```
+
+## 基站软件狗功能
+设置基站软件狗密码[内部使用]
+函数名称:SetDevCRC
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR Len| 密码长度 ||
+|char* buf| 密码字符串 ||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevVotePW(
+ UCHAR iBaseID,
+ UCHAR Len,
+ char* buf);
+```
+
+获取基站软件狗密码[内部使用]
+函数名称:GetDevVotePW
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevVotePW(UCHAR iBaseID);
+```
+校验基站软件狗密码
+函数名称:CheckDevVotePW
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR Len| 密码长度 ||
+|char* buf| 密码字符串 ||
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool CheckDevVotePW(UCHAR iBaseID, UCHAR Len, char* buf);
+```
+
+## 基站用户自定字符串
+
+设置基站用户自定字符串
+函数名称:SetDevUserTxt
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR id| 字符串下标 |1~2|
+|UCHAR Len| 密码长度 ||
+|char* buf| 密码字符串 ||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevUserTxt(
+ UCHAR iBaseID,
+ UCHAR id,
+ UCHAR Len,
+ char* buf);
+```
+获取基站用户自定字符串
+函数名称:GetDevVotePW
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR id| 字符串下标 |1~2|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevUserTxt(UCHAR iBaseID, UCHAR id);
+```
+
+## 基站唯一硬件编号UID
+获取基站唯一硬件编号UID
+函数名称:GetDevUID
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevUID(UCHAR iBaseID);
+```
+## 基站反馈参数设置
+
+设置空闲模式-反馈参数设置
+函数名称:SetFeedbackMode
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR Mode| 反馈模式 ||
+|UCHAR KeyValue| 反馈键值 ||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetFeedbackMode(
+ UCHAR iBaseID,
+ UCHAR Mode,
+ UCHAR KeyValue);
+```
+获取空闲模式-反馈参数设置
+函数名称:GetFeedbackMode
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR id| 字符串下标 |1~2|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetFeedbackMode(UCHAR iBaseID);
+```
+
+## 基站SN
+
+设置基站SN
+函数名称:SetDevBaseSn
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+|UCHAR SN[5]| 基站SN ||
+
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool SetDevBaseSn(
+ UCHAR iBaseID,
+ UCHAR SN[5]);
+```
+获取基站SN
+函数名称:GetDevBaseSn
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevBaseSn(UCHAR iBaseID);
+```
+
+## 基站软件版本
+获取基站软件版本
+函数名称:GetDevBaseVer
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevBaseVer(UCHAR iBaseID);
+```
+
+## 基站型号
+获取基站型号
+函数名称:GetDevBaseModel
+参数说明:
+
+| **参数名称** | **参数说明** | **范围** | **备注** |
+| --- | --- | --- | --- |
+|UCHAR iBaseID|基站ID|0~32|
+
+接口代码:
+```C++
+extern"C" __declspec(dllexport) bool GetDevBaseModel(UCHAR iBaseID);
+```
+
+extern"C" __declspec(dllexport) bool SetKeyDate(
+ UCHAR iBaseID,
+ ULONG KeySN,
+ UCHAR Date[12]);//设置键盘的出厂日期2022-01-01
+```
## 异常处理
### WSCmdApp收到数据异常
diff --git a/通讯协议-SDK应用部分.md b/通讯协议-SDK应用部分.md
index 600eec6..90c6d4d 100644
--- a/通讯协议-SDK应用部分.md
+++ b/通讯协议-SDK应用部分.md
@@ -8,7 +8,7 @@ WSCmdApp协议接口说明