[发明专利]一种嵌入式操作系统下串口设备高速率数据传输方法有效
申请号: | 202011095529.8 | 申请日: | 2020-10-14 |
公开(公告)号: | CN112231265B | 公开(公告)日: | 2022-09-13 |
发明(设计)人: | 唐亮 | 申请(专利权)人: | 天津津航计算技术研究所 |
主分类号: | G06F13/42 | 分类号: | G06F13/42;G06F8/41;H04L49/90 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 辛海明 |
地址: | 300308 天津*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 操作系统 串口 设备 速率 数据传输 方法 | ||
1.一种嵌入式操作系统下串口设备高速率数据传输方法,其特征在于,该方法包括如下步骤:
S1、增加读写串口芯片寄存器的函数;
S2、在串口打开函数中添加自定义接收缓存;
S3、采用添加专用缓存和一次性读空的方式,重新编写串口中断服务函数和接收函数;
S4、将重新编写的中断服务函数和接收函数注册到设备驱动列表中;
S5、重新编译驱动,新的串口系统生效;
所述步骤S3具体包括如下步骤:
S31、定义中断服务函数;
S32、定义接收函数;
S33、在中断服务函数中,判断中断类型,如果是接收中断则调用接收函数,然后清中断;
S34、在接收函数中,通过读寄存器函数获取接收缓存中的数据个数;
S35、根据数据个数控制for循环次数,每一次读取一个字节数据到步骤S2创建的接收缓存中。
2.如权利要求1所述的嵌入式操作系统下串口设备高速率数据传输方法,其特征在于,所述步骤S1具体包括如下步骤:
S11、编写读寄存器函数REG_GET,用于获取芯片寄存器数值;
S12、编写读寄存器函数REG_SET,用于向芯片寄存器写入数值。
3.如权利要求1所述的嵌入式操作系统下串口设备高速率数据传输方法,其特征在于,所述步骤S2具体包括:找到串口打开函数,在创建设备描述符时,自定义一个N字节的接收缓存,用于从芯片FIFO中读取串口数据,并注册到设备资源列表中。
4.如权利要求3所述的嵌入式操作系统下串口设备高速率数据传输方法,其特征在于,N大于等于32M。
5.如权利要求1所述的嵌入式操作系统下串口设备高速率数据传输方法,其特征在于,所述步骤S4具体包括如下步骤:
S41、找到设备驱动函数列表数据结构;
S42、将中断服务函数和接收函数添加到数据结构中。
6.如权利要求5所述的嵌入式操作系统下串口设备高速率数据传输方法,其特征在于,所述步骤S5具体包括如下步骤:
S51、打开VxWorks开发shell,定位到sio驱动所在的路径;
S52、执行make命令。
7.如权利要求1所述的嵌入式操作系统下串口设备高速率数据传输方法,其特征在于,所述串口芯片为Ns17D158串口扩展芯片。
8.一种嵌入式操作系统下串口设备高速率数据传输方法,其特征在于,该方法包括如下步骤:
S1、增加读写串口芯片寄存器的函数;
S2、在串口打开函数中添加自定义接收缓存;
S3、采用添加专用缓存和一次性读空的方式,重新编写串口中断服务函数和接收函数;
S4、将重新编写的中断服务函数和接收函数作为回调函数添加到串口初始化列表中;
S5、重新编译驱动,新的串口系统生效;
所述步骤S3具体包括如下步骤:
S31、定义中断服务函数;
S32、定义接收函数;
S33、在中断服务函数中,判断中断类型,如果是接收中断则调用接收函数,然后清中断;
S34、在接收函数中,通过读寄存器函数获取接收缓存中的数据个数;
S35、根据数据个数控制for循环次数,每一次读取一个字节数据到步骤S2创建的接收缓存中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011095529.8/1.html,转载请声明来源钻瓜专利网。