方式一接口库
概述
文档中API接口适用于公司自研硬件平台。动态库以设备/usr/lib/libcswapi.so为准,其中个别函数只能在特定平台或者特定客户定制的产品中使用。
API函数
打开设备
| 函数原型 |
int csw_open(void **pdev) |
| 函数参数 |
pdev[in] |
指针 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
关闭设备
| 函数原型 |
void csw_close(void **pdev) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
获取API版本
| 函数原型 |
int csw_version(void *pdev, char *version) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| version[out] |
返回API的版本信息 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
使能看门狗
| 函数原型 |
int csw_watchdog_enable(void *pdev, int timeouts) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| timeouts[out] |
看门狗超时时间,设置0为缺省60秒(部分平台最大仅15) |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
关闭看门狗
| 函数原型 |
int csw_watchdog_disable(void *pdev) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
喂狗
| 函数原型 |
int csw_watchdog_feed(void *pdev) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
蜂鸣器函数
| 函数原型 |
int csw_beep(void *pdev, bool on) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| on[in] |
true:蜂鸣器响,false:蜂鸣器不响 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
控制灯状态
| 函数原型 |
int csw_ledpanel_write(void *pdev, int channel, int op) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| channel[in] |
需要设置的灯序号,0:全控,1对应第一个LED依次类推 |
| op[in] |
0:灭,1:亮 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取灯状态
| 函数原型 |
int csw_ledpanel_read(void *pdev, int *val) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| val[out] |
按位显示灯状态:1亮,0灭 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
软复位外设
| 函数原型 |
int csw_reset(void *pdev, int channel, int op) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| channel[in] |
需要设置的外设序号,0:全控 |
| op[in] |
0:置为复位,1:置为使用 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取DI状态
| 函数原型 |
int csw_di_read(void *pdev, int *val) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| val[out] |
返回DI全部状态,按位获取DI状态 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
设置DI消抖时间
| 函数原型 |
int csw_di_debounce(void *pdev, int val) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| val[in] |
设置全局DI消抖时间,单位ms |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取DI消抖时间
| 函数原型 |
int csw_di_debounce_read(void *pdev, int *val) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| val[out] |
获取全局DI消抖时间,单位ms |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
控制DO状态
| 函数原型 |
int csw_do_write(void *pdev, int channel, int op) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| channel[in] |
需要设置的DO,0:全控,1对应第一个DO依次类推 |
| op[in] |
0:DO不闭合,1:DO闭合 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取DO状态
| 函数原型 |
int csw_do_read(void *pdev, int *val) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| val[out] |
返回DO全部状态,按位获取DO状态 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
控制电源状态
| 函数原型 |
int csw_power_write(void *pdev, int channel, int op) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| channel[in] |
需要设置的外设电源,0:全控,1对应第一个外设依次类推 |
| op[in] |
0:外设断电,1:外设通电 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取电源状态
| 函数原型 |
int csw_power_read(void *pdev, int *val) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| val[out] |
返回外设电源全部状态,按位获取通电状态,0:断电,1:通电 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取设备序列号
| 函数原型 |
int csw_read_serialnum(char *serialnum) |
| 函数参数 |
serialnum[out] |
设备序列号唯一编码,字符串ascii码 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取温度
| 函数原型 |
int csw_temperature_read(void *pdev, int position, int *temp) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| position[in] |
0:CPU温度,1:主板温度 |
| temp[out] |
温度,单位℃ |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
设置客户序列号
| 函数原型 |
int csw_write_usrsn(void *usrsn, int size) |
| 函数参数 |
usrsn[in] |
客户自定义序列号,64字节以内,推荐字符串ascii码 |
| size[in] |
usrsn有效字节数,≤64 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取客户序列号
| 函数原型 |
int csw_read_usrsn(void *usrsn, int size) |
| 函数参数 |
usrsn[out] |
客户自定义序列号,64字节以内,推荐字符串ascii码 |
| size[in] |
usrsn有效字节数,≤64,推荐使用最大值64读取全部 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取外部电源状态
| 函数原型 |
int csw_power_stat_read(void *pdev, int *val) |
| 函数参数 |
pdev[in] |
csw_open执行成功返回的参数 |
| val[out] |
按位显示外部电源状态:1有电,0失电 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
使能事件功能
| 函数原型 |
int csw_event_enable(int *fd) |
| 函数参数 |
fd[out] |
int型变量,int fd指针 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
禁用事件功能
| 函数原型 |
int csw_event_disable(int fd) |
| 函数参数 |
fd[in] |
csw_event_enable执行成功返回的参数 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |
获取事件描述
| 函数原型 |
int csw_event_read(int fd, char *event, int *size) |
| 函数参数 |
fd[in] |
csw_event_enable执行成功返回的参数 |
| event[out] |
事件缓冲区,字符串 |
| size[in/out] |
入参:表示event空间大小 出参:表示event的有效字节数 |
| 返回值 |
0 |
成功 |
| 非 0 |
标准 errno |