[发明专利]嵌入式系统多进程交互共用SPI通讯总线的方法有效
申请号: | 201310154550.4 | 申请日: | 2013-04-28 |
公开(公告)号: | CN103218327A | 公开(公告)日: | 2013-07-24 |
发明(设计)人: | 陈定柱;李南山;卓文龙;褚念念 | 申请(专利权)人: | 惠州市德赛西威汽车电子有限公司 |
主分类号: | G06F13/378 | 分类号: | G06F13/378 |
代理公司: | 广州粤高专利商标代理有限公司 44102 | 代理人: | 任海燕 |
地址: | 516006 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 系统 进程 交互 共用 spi 通讯 总线 方法 | ||
技术领域
本发明涉及一种嵌入式系统多进程交互共用SPI通讯总线的方法。
背景技术
在现有技术中,交互式多进程嵌入式多媒体系统的SPI通信多采用如图1的系统设计方案: A系统是个没有显示设备的嵌入式系统,主要实现如Tuner芯片的驱动和管理、CD或者DVD机芯的驱动和管理、电源检测和管理、倒车的检测和管理等功能。而这些功能如果需要显示出来,则需要另外一个基于Arm的多进程多媒体嵌入式B系统来完成,嵌入式B系统需要,除了完成自己的任务之外,还需要显示和处理A系统的所有功能的显示任务。A系统和B系统之间的通信只有一条SPI 通信总线,也就是A系统和B系统之间交互的数据,全部只能够通过唯一的一条SPI 通信总线。传统的设计是因为A,B两个系统只有一条SPI通信总线,则B系统里面只能够有一个进程可以和A 系统进行通信。所以B系统的设计则往往是创建一个独立的通信进程和A系统进行通信, B系统的通信进程收到A系统的消息之后,广播给其它需要使用这条消息的进程,这种方法也能够达到一条消息同时给导航系统多个进程共享的目的。但是这种设计存在明显的设计缺陷,主要的缺点是下面几个:1、只有B系统的SPI通信进程可以接受和处理A系统的SPI消息,一旦通信进程出现异常不能正常工作,则这个系统将会瘫痪,系统的设计稳定性较差。2、B系统所有使用SPI消息的进程都需要时刻等待通信进程是否有SPI消息抛出,接收到之后还需判断是否是自己需要的数据,不是自己需要的数据则丢掉,因此整个系统的资源消耗会比较大,执行效率比较低,造成资源浪费。3、通信进程不能处理消息的优先级,收到消息之后按照收到的先后顺序向系统进行广播,无法满足单个消息使用进程自己定义自己的消息处理优先级。4、当某个SPI 处理线程比较繁忙的时候,则不能及时响应SPI处理进程的系统广播消息,此时又有另外的SPI消息广播,此时容易造成消息丢失,从而造成系统存在严重的质量缺陷。
发明内容
为了解决上述现有交互式多进程嵌入式多媒体系统的SPI通信的问题,本发明提供一种嵌入式系统多进程交互共用SPI通讯总线的设计方案。
嵌入式系统多进程交互共用SPI通讯总线的方法,包括以下步骤:(1)系统初始化并创建进程;(2)系统为各种SPI消息进行一一标记;(3)进程向系统注册自身需要的SPI消息;(4)系统根据收到的SPI消息的标记将SPI消息发送给对应的进程。
所述步骤(2)所述标记的方法为:为每一个不同的SPI消息分配唯一的编号。
步骤(3)的实现方法为:进程通过自身需要的SPI消息对应的编号向系统注册,系统将每个进程对应注册的SPI消息分别进行存储。
步骤(3)还包括进程向系统申请单独的通信消息队列的步骤。
步骤(4)的实现方法为:(41)系统接收到SPI消息,并查询其对应的编号;(42)根据编号查询所有对应的进程;(43)将SPI消息发送到所有对该消息注册的进程。
所述步骤(43)的实现方法为:将SPI消息放入对应的进程向系统申请的消息队列中,并通知该进程。
还包括SPI消息丢弃步骤:若查询不到任何进程注册所接收到的SPI消息,则将该SPI消息丢弃。
还包括SPI消息注销步骤:若某进程不再需要其已注册的SPI消息或者进程退出时,则向系统发送注销请求,系统收到请求后将存储的相关记录删除。
综上所述,本发明具有以下有益效果:(1)应用层的进程有自己独立的SPI通信队列,可根据需要只注册自己关注的SPI消息,对其他SPI消息的交互无需做任何处理;(2)单一进程的SPI通信不再受其他进程的限制,是否需要处理SPI 消息完全不受其他进程的影响,进程的创建和退出也不会影响其他进程的SPI消息处理;(3)某个进程的SPI消息队列堵塞,完全不会影响到其他进程的通信,系统的稳定性得到了提高。
附图说明
图1为本发明所述嵌入式系统多进程交互共用SPI通讯总线的方法系统架构示意图;
图2为本发明所述嵌入式系统多进程交互共用SPI通讯总线的方法实施流程示意图。
具体实施方式
为了让本领域的技术人员能够更好地了解本发明的技术方案,下面结合附图对本发明作进一步的阐述。
如图1和图2所示,本发明揭示了一种嵌入式系统多进程交互共用SPI通讯总线的方法,包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于惠州市德赛西威汽车电子有限公司,未经惠州市德赛西威汽车电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310154550.4/2.html,转载请声明来源钻瓜专利网。