[发明专利]一种基于串口收发的协议自适应识别、跨平台、标准化的软件系统在审
申请号: | 202210005329.1 | 申请日: | 2022-01-04 |
公开(公告)号: | CN114356829A | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 刘召磊;刘会森;黄乾;靳碧耀;畅海峰;李娟伟;梁东建 | 申请(专利权)人: | 中船航海科技有限责任公司 |
主分类号: | G06F13/42 | 分类号: | G06F13/42 |
代理公司: | 上海智力专利商标事务所(普通合伙) 31105 | 代理人: | 周涛 |
地址: | 200136 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 串口 收发 协议 自适应 识别 平台 标准化 软件 系统 | ||
1.一种基于串口收发的协议自适应识别、跨平台、标准化的软件系统,其特征在于,该软件系统的架构包括接口层、驱动层、数据链路层和协议层,所述接口层、驱动层、数据链路层和协议层四个部分分别在操作系统、硬件平台、使用场景及协议系统方面建立快速的适配性,其中:
所述的接口层负责驱动层与数据链路层消息传递机制功能实现及各层统一的数据类型定义,通过参数配置以适配于不同操作系统;
所述的驱动层负责与具体硬件平台寄存器的交互及串口数据的发送与接收,通过修改以适配于不同硬件平台;
所述的数据链路层负责数据链路的构建,通过配置内存块大小及个数适配不同的数据流应用场景,配置信息采用查表的方式;
所述的协议层负责完整数据帧的截取、数据协议的解析以及数据协议的组包,协议的解析及组包采用查表的方式以自适应不同协议;
在进行数据流输入时,由外部对象输入的数据流进入驱动层,由驱动层获得数据的指针和长度,再通过接口层定义的任务、队列函数发送到数据链路层的接收任务,接收任务调用接收回调函数传递至协议层,协议层完成数据流解析;
在进行数据流输出时,待输出的数据流经先后顺序分别为协议层、数据链路层和驱动层。
2.根据权利要求1所述的一种基于串口收发的协议自适应识别、跨平台、标准化的软件系统,其特征在于,所述接口层适配不同操作系统的过程是:在接口层中使用宏定义或数据类型定义的方式定义通用接口函数及通用句柄,并在不同环境下选择不同的库函数,通过修改宏定义或数据类型定义的中函数名称及类型以实现对不同操作系统的配置,与操作系统相关的功能函数包括有任务创建,队列创建、发送和接收,信号量的创建、发送和接收,通用句柄事件句柄以及队列句柄。
3.根据权利要求1所述的一种基于串口收发的协议自适应识别、跨平台、标准化的软件系统,其特征在于,所述驱动层适配不同硬件平台的过程是:使用宏定义或数据类型定义的方式定义通用接口函数及通用句柄,并在不同环境下选择不同的库函数,通过修改宏定义或数据类型定义的中相关函数名及类型进行不同硬件平台,与硬件平台相关的功能函数主要包含GPIO配置、串口初始化和中断设置,建立配置表信息,配置表中包括串口波特率、数据位数、校验类型、停止位数、中断类型及GPIO选择在内的配置信息,通过修改配置表信息及底层驱动信息以适配不同硬件平台。
4.根据权利要求1所述的一种基于串口收发的协议自适应识别、跨平台、标准化的软件系统,其特征在于,所述数据链路层中包括创建接收线程、发送线程以及相应的接收、发送的回调函数;建立的配置表,该配置表中设有包括收发任务名、收发任务优先级、收发任务堆栈、收发队列块数、队列长度、内存块个数及内存块大小在内的配置信息,根据实际资源、内存占用情况合理调整配置表,以适配不同的使用场景。
5.根据权利要求1所述的一种基于串口收发的协议自适应识别、跨平台、标准化的软件系统,其特征在于,所述的协议层中自适应不同协议的操作过程是:(1)初始化以链表的方式建立相应串口的循环buffer作为数据信息接收的缓存区,作为完整数据帧的拼接及协议类型判断的基础;(2)每个串口的收发对应各自的循环buffer,并保证串口的绝对独立性;(3)协议类型根据包括帧首、帧尾和帧长度在内的关键信息自适应不同类型,对十六进制格式及ASCII码格式均能完成自适应识别;(4)协议语句以查找表的方式映射关键字与协议函数关系,快速高效建立不同协议解析方式及组包方式。
6.根据权利要求1所述的一种基于串口收发的协议自适应识别、跨平台、标准化的软件系统,其特征在于,在进行数据流输入时,输入数据流先由中断捕获进入驱动层的中断服务函数,中断服务函数获得数据指针及长度,通过接口层定义的任务、队列接口函数发送至数据链路层接收任务,接收任务调用接收回调函数传递至协议层,协议层对数据流以循环链表的方式缓存和拼帧,并以查表的方式进行协议帧识别,最终完成数据流解析。
7.根据权利要求1所述的一种基于串口收发的协议自适应识别、跨平台、标准化的软件系统,其特征在于,在数据输出流程中:待输出数据经过协议层以查表方式进行组包,调用接口层所定义多任务、队列机制相关接口函数发送至数据链路层的发送函数,发送函数调用发送回调函数,通过回调函数传递至驱动层发送中断服务函数完成发送。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中船航海科技有限责任公司,未经中船航海科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210005329.1/1.html,转载请声明来源钻瓜专利网。