卫星定位系统、嵌入式系统、芯片及嵌入式设备的制作方法

文档序号:36487208发布日期:2023-12-26 05:18阅读:53来源:国知局
卫星定位系统的制作方法

本发明涉及消息处理领域,具体涉及卫星定位系统、嵌入式系统、芯片及嵌入式设备。


背景技术:

1、在多任务嵌入式系统中,消息通信是一个非常重要的问题。在多个任务之间进行通信时,可能会遇到多播通信的场景,即一个任务发送的消息,有多个其他任务需要获取。遇到这种多播需求,为了降低发送和接收消息的任务的实现复杂度,一般会采用集中式消息通信方案,即构建一个特殊的任务(称为分发者),该任务的核心功能就是负责消息通信,生产者生产消息,消费者接收使用消息,分发者负责将生产者生产的消息分发给消费者。

2、然而,现有嵌入式系统的消息通信方式不够完善。


技术实现思路

1、基于上述现状,本发明的主要目的在于提供卫星定位系统、嵌入式系统、芯片及嵌入式设备,以使系统在具有不同优先级的消费者的情况下,合理处理消息。

2、为实现上述目的,本发明采用的技术方案如下:

3、一种卫星定位系统,包括粗定位模块、呈现模块和分发者,所述粗定位模块计算得到粗定位信息后,向操作系统维护的消息队列发送属于定位消息的第一定位消息;其中,所述第一定位消息包含所述粗定位信息,并指定第一优先级和第二优先级的消费者均可以接收所述第一定位消息,第二优先级高于第一优先级;在所述卫星定位系统不具有精定位模块的情况下:所述呈现模块向所述分发者登记为定位消息的第一优先级的消费者;所述分发者从所述消息队列获取所述第一定位消息后,根据优先级顺序向第一优先级的所述呈现模块发送所述第一定位消息中的粗定位信息;所述呈现模块将接收到的所述粗定位信息进行呈现;在所述卫星定位系统具有精定位模块的情况下:所述呈现模块和精定位模块分别向所述分发者登记为定位消息的第一优先级和第二优先级的消费者;所述分发者从所述消息队列获取所述第一定位消息后,根据优先级顺序先向第二优先级的所述精定位模块发送所述第一定位消息中的粗定位信息;所述精定位模块通知所述分发者停止将所述第一定位消息的粗定位信息发送给所述呈现模块;所述精定位模块根据所述粗定位信息计算得到精定位信息后,向所述消息队列发送属于定位消息的第二定位消息,其中,所述第二定位消息包含精定位信息,并指定接收所述第二定位消息的消费者为所述呈现模块;所述分发者从所述消息队列获取所述第二定位消息后,向指定的所述呈现模块发送所述第二定位消息中的精定位信息;所述呈现模块将接收到的所述精定位信息进行呈现。

4、优选的,所述粗定位模块计算得到粗定位信息后,向所述操作系统申请得到第一同步量,向所述消息队列发送包含所述第一同步量的第一定位消息,并等待所述第一同步量;在所述呈现模块接收到所述第一定位消息的粗定位信息后,所述分发者向所述操作系统申请释放所述第一同步量;所述操作系统接收到所述第一同步量的释放申请后,通知所述粗定位模块可以开始生成新的消息;所述粗定位模块收到可以开始生成新的消息的通知后,向所述操作系统申请删除第一同步量;在所述精定位模块接收到所述第一定位消息的粗定位信息后,所述分发者向所述操作系统申请释放所述第一同步量;所述操作系统接收到所述第一同步量的释放申请后,通知所述粗定位模块可以开始生成新的消息;所述粗定位模块收到可以开始生成新的消息的通知后,向所述操作系统申请删除第一同步量;所述精定位模块计算得到精定位信息后,向所述操作系统申请得到第二同步量,向所述消息队列发送包含所述第二同步量的第二定位消息,并等待所述第二同步量;在所述呈现模块接收到所述第二定位消息的精定位信息后,所述分发者向所述操作系统申请释放所述第二同步量;所述操作系统接收到所述第二同步量的释放申请后,通知所述精定位模块可以开始生成新的消息;所述精定位模块收到可以开始生成新的消息的通知后,向所述操作系统申请删除第二同步量。

5、优选的,所述精定位模块向所述分发者登记在定位消息发送给所述精定位模块后停止将定位消息发送给其他消费者,从而通知所述分发者停止将所述第一定位消息的粗定位信息发送给所述呈现模块。

6、优选的,所述精定位模块向所述分发者登记精定位回调函数;所述分发者通过调用所述精定位回调函数向所述精定位模块发送所述第一定位消息中的粗定位信息,所述精定位模块通过所述精定位回调函数的返回值通知所述分发者停止将所述第一定位消息的粗定位信息发送给所述呈现模块。

7、优选的,所述呈现模块和精定位模块分别向所述分发者登记呈现回调函数和精定位回调函数;所述分发者通过调用所述呈现回调函数向所述呈现模块发送所述第一定位消息中的粗定位信息;所述分发者通过调用所述精定位回调函数向所述精定位模块发送所述第一定位消息中的粗定位信息;所述分发者通过调用所述呈现回调函数向所述呈现模块发送所述第二定位消息中的精定位信息。

8、通过上述方案,在卫星定位系统不具有精定位模块的情况下,分发者可以将粗定位发送的第一消息中的粗定位信息发送给第一优先级的呈现模块(例如显示模块或语音提示模块),呈现模块接收并对粗定位信息进行呈现,该粗定位信息能够满足用户的基本的定位需求。在卫星定位系统具有精定位模块的情况下,分发者将粗定位模块发送的第一消息中的粗定位信息发送给第二优先级的精定位模块,而精定位模块通知分发者不再将该粗定位信息发送给第一优先级的呈现模块,以防止呈现粗定位信息,并且精定位模块根据粗定位信息生产出精度更高的精定位信息,并指定消费者为呈现模块,分发者将包含该精定位信息的第二消息发送给呈现模块,呈现模块接收呈现精度更高的精定位信息,从而能满足用户更高精度的定位需求。

9、本发明还提供了一种嵌入式系统,包括生产者、第一消费者和分发者,所述生产者产生第一信息后,向操作系统维护的消息队列发送属于设定消息类型的第一消息;其中,所述第一消息包含所述第一信息,并指定第一优先级和第二优先级的消费者均可以接收所述第一消息,第二优先级高于第一优先级;在所述嵌入式系统不具有第二消费者的情况下:所述第一消费者向所述分发者登记为所述设定消息类型的第一优先级的消费者;所述分发者从所述消息队列获取所述第一消息后,根据优先级顺序向第一优先级的所述第一消费者发送所述第一消息中的第一信息;所述第一消费者接收并处理所述第一信息;在所述嵌入式系统具有第二消费者的情况下:所述第一消费者和第二消费者分别向所述分发者登记为所述设定消息类型的第一优先级和第二优先级的消费者;所述分发者从所述消息队列获取所述第一消息后,根据优先级顺序先向第二优先级的所述第二消费者发送所述第一消息中的第一信息;所述第二消费者通知所述分发者停止将所述第一消息的第一信息发送给所述第一消费者;所述第二消费者根据所述第一信息生成得到第二信息后,向所述消息队列发送属于所述设定消息类型的第二消息,其中,所述第二消息包含所述第二信息,并指定接收所述第二消息的消费者为所述第一消费者;所述分发者从所述消息队列获取所述第二消息后,向指定的所述第一消费者发送所述第二消息中的第二信息;所述第一消费者接收并处理所述第二信息。

10、优选的,所述生产者产生第一信息后,向所述操作系统申请得到第一同步量,向所述消息队列发送包含所述第一同步量的第一消息,并等待所述第一同步量;在所述第一消费者接收到所述第一消息的第一信息后,所述分发者向所述操作系统申请释放所述第一同步量;所述操作系统接收到所述第一同步量的释放申请后,通知所述生产者可以开始生产新的消息;所述生产者收到可以开始生成新的消息的通知后,向所述操作系统申请删除第一同步量;在所述第二消费者接收到所述第一消息的第一信息后,所述分发者向所述操作系统申请释放所述第一同步量;所述操作系统接收到所述第一同步量的释放申请后,通知所述生产者可以开始生产新的消息;所述生产者收到可以开始生成新的消息的通知后,向所述操作系统申请删除第一同步量;所述第二消费者产生第二信息后,向所述操作系统申请得到第二同步量,向所述消息队列发送包含所述第二同步量的第二消息,并等待所述第二同步量;在所述第一消费者接收到所述第二消息的第二信息后,所述分发者向所述操作系统申请释放所述第二同步量;所述操作系统接收到所述第二同步量的释放申请后,通知所述第二消费者可以开始生产新的消息;所述第二消费者收到可以开始生成新的消息的通知后,向所述操作系统申请删除第二同步量。

11、优选的,所述第二消费者向所述分发者登记在所述设定消息类型发送给所述第二消费者后停止将所述设定消息类型发送给其他消费者,从而通知所述分发者停止将所述第一消息的第一信息发送给所述第一消费者。

12、优选的,所述第二消费者向所述分发者登记第二消费者回调函数;所述分发者通过调用所述第二消费者回调函数向所述第二消费者发送所述第一消息中的第一信息,所述第二消费者通过所述第二消费者回调函数的返回值通知所述分发者停止将所述第一消息的第一信息发送给所述第一消费者。

13、优选的,所述第一消费者和第二消费者分别向所述分发者登记第一消费者回调函数和第二消费者回调函数;所述分发者通过调用所述第一消费者回调函数向所述第一消费者发送所述第一消息中的第一信息;所述分发者通过调用所述第二消费者回调函数向所述第二消费者发送所述第一消息中的第一信息;所述分发者通过调用所述第一消费者回调函数向所述第一消费者发送所述第二消息中的第二信息。

14、本发明还提供了一种芯片,包括任一所述的卫星定位系统,或者任一所述的嵌入式系统。

15、本发明还提供了一种嵌入式设备,包括任一所述的卫星定位系统,或者任一所述的嵌入式系统。

16、通过上述方案,在嵌入式系统不具有第二消费者的情况下,分发者可以将生产者发送的第一消息中的第一信息发送给第一优先级的第一消费者,第一消费者接收并处理第一信息,该第一信息能够满足用户的基本需求。在嵌入式系统具有第二消费者的情况下,分发者将生产者发送的第一消息中的第一信息发送给第二优先级的第二消费者,而第二消费者通知分发者不再将该第一信息发送给第一优先级的第一消费者,并且第二消费者根据第一信息生产出更优的第二信息,并指定消费者为第一消费者,分发者将包含该第二信息的第二消息发送给第一消费者,第一消费者接收并处理该更优的第二信息,从而能满足用户更高的需求。

17、本发明的其他有益效果,将在具体实施方式中通过具体技术特征和技术方案的介绍来阐述,本领域技术人员通过这些技术特征和技术方案的介绍,应能理解所述技术特征和技术方案带来的有益技术效果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1