KSJXS SDK · 初始化与设备管理
SDK 初始化/反初始化、日志、版本查询、设备枚举与句柄生命周期管理。
本组对应头文件 @defgroup Base 基本功能。设备必须先枚举再创建句柄,句柄用完必须销毁。
KSJXS_SetLog
int KSJXS_SetLog(bool bEnable, const char* pszFolder = 0, int nLevel = 2)
设置 Log 日志是否输出、输出目录与日志等级。
| 参数 | 方向 | 说明 |
|---|---|---|
bEnable |
in | 是否打开 Log 日志输出功能 |
pszFolder |
in | 日志保存目录;可为 NULL |
nLevel |
in | 日志等级,默认 2 |
返回:成功返回 KSJXS_RET_SUCCESS
说明
- 可在任意时刻调用,建议在
KSJXS_Inital()之前调用。 pszFolder为 NULL 时,日志自动输出到程序目录下的ApiLogs目录。- 不支持使能后修改日志等级;需改等级时先禁用再重新使能。
KSJXS_Inital
int KSJXS_Inital()
初始化 SDK。
返回:成功返回 KSJXS_RET_SUCCESS
说明
- ⚠️ 本函数名在头文件中的原始拼写为
KSJXS_Inital(Initial少写了一个i),调用时须照抄头文件,写成常规拼写会链接失败。 - 每次
Inital会重新枚举 USB 接口的 UC3D 设备。
KSJXS_UnInitial
int KSJXS_UnInitial()
反初始化 SDK,释放资源。
返回:成功返回 KSJXS_RET_SUCCESS;失败返回错误码
KSJXS_GetSDKVersion
unsigned int KSJXS_GetSDKVersion()
获取 SDK 版本号,返回 4 字节版本号。
返回:返回 4 字节版本号(非错误码)
说明
- 字节排列为
|主 8bits|次 8bits|修正 8bits|测试 8bits|。 - 例:返回
0x01000001表示 SDK 版本 V1.0.0.1。
KSJXS_EnumDevices
int KSJXS_EnumDevices(IN OUT KSJXS_DEVICE_INFO_LIST* pstDevInfoList)
枚举当前可连接的设备,结果写入设备列表。
| 参数 | 方向 | 说明 |
|---|---|---|
pstDevInfoList |
in/out | 设备列表,接收枚举结果(最多 256 台) |
返回:成功返回 KSJXS_RET_SUCCESS
说明
- 设备列表内每台设备信息的内存由 SDK 内部管理,建议避免多线程同时枚举。
- 每次调用都会重新枚举可连接的设备。
- USB 接口的 UC3D 设备需
UnInitial再Inital后才会重新枚举,否则返回结果保持不变。
KSJXS_SetDeviceInfo
int KSJXS_SetDeviceInfo(IN int nIndex, IN KSJXS_DEVICE_INFO* pstDevInfo)
设置设备信息(IP 地址、Serial 号等)。
| 参数 | 方向 | 说明 |
|---|---|---|
nIndex |
in | 设备在枚举列表中的索引号 |
pstDevInfo |
in | 要修改的设备信息 |
返回:成功返回 KSJXS_RET_SUCCESS
说明
- 做法:先从
KSJXS_DEVICE_INFO_LIST复制一份设备信息,改完要修改的字段(IP / Serial 等)再传入。
KSJXS_CreateDeviceHandle
int KSJXS_CreateDeviceHandle(IN void** phandle, IN KSJXS_DEVICE_INFO* pstDevInfo)
根据设备信息创建设备句柄。
| 参数 | 方向 | 说明 |
|---|---|---|
phandle |
out | 接收返回的设备句柄指针 |
pstDevInfo |
in | 要创建句柄的设备信息(应为枚举列表中的某个设备信息指针) |
返回:成功返回 KSJXS_RET_SUCCESS;失败返回错误码
KSJXS_OpenDevice
int KSJXS_OpenDevice(IN void* handle)
打开(占用)设备。
| 参数 | 方向 | 说明 |
|---|---|---|
handle |
in | 设备句柄 |
返回:成功返回 KSJXS_RET_SUCCESS
说明
- 打开后设备被独占,其他进程将无法再打开。
KSJXS_CloseDevice
int KSJXS_CloseDevice(IN void* handle)
关闭设备,释放独占,允许其他进程使用。
| 参数 | 方向 | 说明 |
|---|---|---|
handle |
in | 设备句柄 |
返回:成功返回 KSJXS_RET_SUCCESS;失败返回错误码
KSJXS_DestroyDeviceHandle
int KSJXS_DestroyDeviceHandle(IN void* handle)
销毁设备句柄,释放资源。
| 参数 | 方向 | 说明 |
|---|---|---|
handle |
in | 设备句柄 |
返回:成功返回 KSJXS_RET_SUCCESS
说明
- 销毁前应先
KSJXS_CloseDevice。
这份文档对您有帮助吗?
发现错误、表述不清或缺少内容?请告诉我们,我们会尽快补充。
您可以通过以下方式反馈: 发送邮件至 service@catchbest.com