一种基于linux下操作串口及HID外设的通讯方法技术

技术编号:23343211 阅读:37 留言:0更新日期:2020-02-15 03:50
本发明专利技术公开了一种基于linux下操作串口及HID外设的通讯方法,包括串口通信部分的封装:使用<fcntl.h>提供的open函数打开设备,设置文件为读写方式和阻塞方式;借助<termios.h>中的tcsetattr函数配置与硬件通讯的参数;借助<select.h>中的select函数设置读取超时时间;使用<unistd.h>中的read、write接口发送和读取;使用<unistd.h>中的close接口关闭设备;HID‑USB通讯部分的封装:使用hid_init、hid_open接口打开指定VID、PID的设备;使用hid_write接口和hid_read_timeoout接口实现数据的发送和接收;使用hid_close、hid_exit接口关闭设备并退出。通过上述方式,本发明专利技术开发了兼容串口、HID设备的通讯库,能够实现主机单元与不同外设模块的自由通信。

A communication method based on Linux operating serial port and hid peripheral

【技术实现步骤摘要】
一种基于linux下操作串口及HID外设的通讯方法
本专利技术涉及计算机通讯
,特别是涉及一种基于linux下操作串口及HID外设的通讯方法。
技术介绍
目前的金融设备需要主机单元与外设模块进行通信来实现相关任务,常见的外设模块有凭条打印机、密码键盘、发卡模块等,这些模块通讯方式大都以HID、串口为主,因此开发一套通用的通讯库来实现硬件通讯的桥梁,只需清楚硬件模块的通讯协议即可完成复杂功能的调用,无需再依赖厂家提供的软件开发包来进行驱动开发。国产化与自主可控的需求日益迫切,基于linux下的设备通讯库可完全适用于采用国产操作系统金融自助设备。在实际的金融自助设备驱动开发过程中,若想实现硬件功能的调用,大多数采用硬件厂家提供的SDK(软件开发包),这种方式需要依赖厂家的开发进度,且如果出现问题无法自主进行修改;而且传统的通讯库大多只能兼容一种通讯方式,金融自助设备一般需要连接不同通讯方式的外设模块。
技术实现思路
本专利技术主要解决的技术问题是提供一种基于linux下操作串口及HID外设的通讯方法,基于linux本文档来自技高网...

【技术保护点】
1.一种基于linux下操作串口及HID外设的通讯方法,其特征在于,包括:串口通信部分的封装流程、HID-USB通讯部分的封装流程和执行流程;/n所述串口通信部分的封装流程包括以下步骤:/nA1、使用<fcntl.h>提供的open函数实现设备的打开,设置文件为读写方式和阻塞方式;/nA2、借助<termios.h>中的tcsetattr函数配置与硬件通讯的相关参数,参数包括波特率、数据位、校验位、停止位、流控方式以及字节间的超时读取时间;/nA3、借助<select.h>中的select函数设置读取超时时间;/nA4、使用<unistd.h>中...

【技术特征摘要】
1.一种基于linux下操作串口及HID外设的通讯方法,其特征在于,包括:串口通信部分的封装流程、HID-USB通讯部分的封装流程和执行流程;
所述串口通信部分的封装流程包括以下步骤:
A1、使用<fcntl.h>提供的open函数实现设备的打开,设置文件为读写方式和阻塞方式;
A2、借助<termios.h>中的tcsetattr函数配置与硬件通讯的相关参数,参数包括波特率、数据位、校验位、停止位、流控方式以及字节间的超时读取时间;
A3、借助<select.h>中的select函数设置读取超时时间;
A4、使用<unistd.h>中的read、write接口进行发送和读取操作;
A5、使用<unistd.h>中的close接口关闭设备终止通信;
所述HID-USB通讯部分的封装流程包括以下步骤:
B1、使用hid_init、hid_open接口打开指定生产厂商ID(VID),产品ID(PID)的设备;
B2、使用hid_write接口实现数据的发送;
B3、使用hid_read_timeoout接...

【专利技术属性】
技术研发人员:孙成通李凯强生伟孙浩亮
申请(专利权)人:浪潮金融信息技术有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1