[发明专利]一种移动终端处理器之间的串口通信方法有效

专利信息
申请号: 200710113088.8 申请日: 2007-11-03
公开(公告)号: CN101179790A 公开(公告)日: 2008-05-14
发明(设计)人: 姚利刚 申请(专利权)人: 青岛海信移动通信技术股份有限公司
主分类号: H04Q7/32 分类号: H04Q7/32;H04L29/02
代理公司: 青岛联智专利商标事务所有限公司 代理人: 崔滨生
地址: 266555山东省青*** 国省代码: 山东;37
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 移动 终端 处理器 之间 串口 通信 方法
【说明书】:

技术领域

发明属于移动终端技术领域,具体的说是涉及到移动终端中两个处理器之间进行串口通信的方法。

背景技术

在当前的移动终端产品中经常集成有两个以上的处理器,处理器之间通常使用串口连接以进行信息交互来实现某些功能。交互使用的通信协议通常有两种,一种为AT命令,另一种为串口复用协议如GSM 07.10等。串口通信并非完全可靠,因为通信受到干扰、接收端休眠或接收缓冲器溢出等原因,传输的数据时有丢失。

为了保证数据可靠传输,目前串口通信常用的技术方式是发送端发送完AT命令后通常会等待接收端发回确认信息。只有在收到确认信息后发送端才会发送下一条AT命令。而接收方需要对收到的数据进行解析后才能发回确认信息,这就造成了传输效率低下。

串口通信常用的技术方式除了传输效率低下的缺点,还有另一个缺点就是接收方确认信息容易发生整体错乱,因为所有AT命令的确认信息都一样。如果第一次发送的AT命令没有收到确认,发送端会重发该命令。发送端重发AT命令后收到的第一条确认信息很可能是针对第一次发送的,然后发送端发送下一条AT命令收到的确认信息很可能是对应上一条重发的AT命令。这就造成了确认信息的整体错乱。而且重发时,接收端有可能收到两条重复的AT命令,对其进行判断和处理程序也很复杂。

保证AT命令可靠传输的另一种方法是打开回显,所有发送的数据会全部通过串口返回,发送端据此判断该次发送是否成功。这种打开回显的方法无疑使通信量倍增,且增加了软件实现的复杂度。

AT命令为字符串,使用固定的开始与结束符,因此需要处理转义字符。其最大问题是处理速度慢。最长的AT命令长度超过1K字节,解析时间很长。用户与移动终端设备进行人机交互时,如果等待操作完成的时间过长,将会降低用户的满意度。而且因为需要对字符串进行解析,解析出错的机率较高,增加了系统的风险。

在实现数据业务功能时,AT命令并不适合。这时就需要使用串口复用协议如GSM 07.10,在同一个串口上实现多种应用。此时数据将组帧发送,每个应用对应一个通道,AT命令与网络数据可同时传输。但GSM 07.10协议需要考虑到各种应用,其实现比较复杂,会造成系统额外的负担。

GSM 07.10只适合比较稳定的串口通信。其数据帧头包含数据长度,但其校验数据在数据帧的最后。如果数据长度信息发生错误,则接收端需要将错误长度的数据全部接收后才有可能发现错误,这中间可能包括很多个数据帧了。这种情况可能造成大量数据丢失,系统很长时间恢复不过来。虽然这种情况不经常碰到,但如果串口受到干扰系统长期运行不可避免会出现数据丢失的严重问题。

基于此,该发明需要解决的问题就是针对上述串口通信的缺点,提出一种稳定可靠并且传输效率高的两个处理器之间串口通信的方法。

发明内容

本发明的目的在于提供一种移动终端处理器之间的新的串口通信方法,使用二进制数据传输代替了字符串的AT命令,同时支持串口复用,支持全双工式异步收发。

为了实现本发明的目的,本发明采用以下技术方案予以实现:

一种移动终端处理器之间的串口通信方法,包括以下步骤:

第一处理器发送由二进制数据组成的数据包,包含指令、校验值以及与该数据包唯一对应的句柄值;

第二处理器接收第一处理器发送的数据包后进行校验;

如果校验值一致,则第二处理器向第一处理器返回一个应答包,所述应答包中包含所接收到数据包的句柄值,如果校验值不一致,则放弃接收该数据包直接搜索下一个数据包;

如果第一处理器在规定时间内没有收到应答包,则重新发送所述的数据包,重新发送的数据包内有一个重发包的标识值。

在本发明的技术方案中,还具有以下技术特征:所述的数据包和应答包还包含优先级值,所述应答包的优先级值为最高值,所述的应答包只有10个字节。

在本发明的技术方案中,还具有以下技术特征:数据包中数据区段为字节型二进制数据,可以是AT命令、数据结构或者上层应用传来的数据。所述的数据包的头部有整个数据包的信息长度值,结尾处有校验值和结束字节,数据包的最大长度为512字节。所述的校验值是对数据包长度的低8位值和高8位值的和取反。

在本发明的技术方案中,还具有以下技术特征:第一处理器和第二处理器均有三种先进先出队列,分别为发送队列、已发送队列和接收队列,其中发送队列用于缓存上层应用送来的数据包和响应收到该数据包的应答包,已发送队列用于存放发送后的数据包,接收队列用于存放接收到的数据包。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛海信移动通信技术股份有限公司,未经青岛海信移动通信技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200710113088.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top