[发明专利]一种嵌入式实时操作系统的同步通信系统和方法在审
申请号: | 201911393142.8 | 申请日: | 2019-12-30 |
公开(公告)号: | CN111240828A | 公开(公告)日: | 2020-06-05 |
发明(设计)人: | 王宜怀;刘长勇;蔡闯华;许粲昊;罗喜召 | 申请(专利权)人: | 苏州大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54 |
代理公司: | 苏州见山知识产权代理事务所(特殊普通合伙) 32421 | 代理人: | 袁丽花 |
地址: | 215000 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 实时 操作系统 同步 通信 系统 方法 | ||
1.一种嵌入式实时操作系统的同步通信系统,其特征在于,包括主控制模块和PC机,所述主控制模块包括:
内存创建模块,用于创建内存池,任务根据内存池ID从私有内存池中分配内存块;
分配模块,用于在发送消息前,从内存池中得到一块分配好的内存空间;
释放模块,用于在从消息队列获取消息之后,将消息所占用的内存块还给内存池;
消息队列模块,用于创建接收消息的消息队列;
存放模块,从消息队列接收消息,若消息队列非空,则将消息队列中首个消息出队,此消息变为该任务的资源;若消息队列为空,则任务阻塞,直到消息队列接收到消息或者等待时间超过中的规定;
获取模块,将消息放入消息队列,若消息阻塞队列中有等待消息的线程,则将消息直接给线程并不进入消息队列;否则给消息分配内存,并放入消息队列中;若无可分配内存,则返回等待超时或资源不可用;
移除模块,用于在消息队列中的某个消息被获取之后,将该消息从消息队列中移除。
2.根据权利要求1所述的一种嵌入式实时操作系统的同步通信系统,其特征在于,所述内存池为消息信封的集合,任务需要发送消息时,从内存池中分配消息信封,填写好消息的内容及消息的源地址与目标地址,将填写好的消息发往消息队列。
3.根据权利要求2所述的一种嵌入式实时操作系统的同步通信方法,其特征在于,所述消息信封是消息分配与传递的单位,多个消息信封组成消息队列。
4.根据权利要求3所述的一种嵌入式实时操作系统的同步通信系统,其特征在于,所述消息队列是在消息的传输过程中保存消息的容器,不同的消息队列由消息队列号来区分。
5.根据权利要求4所述的一种嵌入式实时操作系统的同步通信系统,其特征在于,所述主控制模块的内核为MCU芯片,包括串口、USB端口,所述串口作为默认通信设备与外界通信,USB端口接PC机的USB口。
6.根据权利要求5所述的一种嵌入式实时操作系统的同步通信系统,其特征在于,还包括测试硬件和MUC评估板,所述串口与MUC评估板连接,所述测试硬件连接于MUC评估板并由主控制模块控制。
7.根据权利要求6所述的一种嵌入式实时操作系统的同步通信系统,其特征在于,所述测试硬件为三色灯硬件,所述MUC评估板AHL-IOT-GEC评估板,MCU芯片的串口连接于AHL-IOT-GEC评估板上的MicroUSB口。
8.一种基于上述同步通信系统的同步通信方法,其特征在于,包括以下步骤,
步骤1:为所要创建的消息队列分配空间,在为消息队列分配空间后,对其进行初始化,设置队列中消息的最大数目及消息的类型;
步骤2:在发送消息前,创建内存池,为消息提供内存块;
步骤3:在创建内存池后,为消息分配空间;
步骤4:在空间分配好后,先将消息队列成员分别赋值,再将数据放入消息队列,并返回消息队列操作状态;
步骤5:消息存放后,获取消息队列中的消息,并且返回操作状态,再得到对应消息队列的地址赋值给新的变量,并且将消息队列成员赋值给新的变量;
步骤6:获得消息队列的数据后,释放内存块。
9.根据权利要求8所述的一种嵌入式实时操作系统的同步通信方法,其特征在于,所述步骤1中,初始化消息队列时确定消息结构体即包含多少种成员。
10.根据权利要求8所述的一种嵌入式实时操作系统的同步通信方法,其特征在于,所述步骤4中,每次存放消息时先申请消息控制块的内存,消息控制块的地址存放在消息队列中,消息的地址存放在消息控制块中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州大学,未经苏州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911393142.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:电动摩托车用嵌入式软件内存分配算法
- 下一篇:一种手术室三方核查方法