CN104697513B - 多媒体导航仪 - Google Patents
多媒体导航仪 Download PDFInfo
- Publication number
- CN104697513B CN104697513B CN201310692041.7A CN201310692041A CN104697513B CN 104697513 B CN104697513 B CN 104697513B CN 201310692041 A CN201310692041 A CN 201310692041A CN 104697513 B CN104697513 B CN 104697513B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- external
- emulation
- equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C25/00—Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manufacturing & Machinery (AREA)
- Navigation (AREA)
Abstract
本发明涉及一种多媒体导航仪,其包括仿真模块,该仿真模块通过共享内存的方式与逻辑模块及中间件通信模块交换数据,数据交换的双方在数据交换过程中通过系统事件通知对方进行数据更新,其还通过嵌入式串行通信接口与外接计算机设备通信,将从逻辑模块和中间件通信模块接收到的数据发送给外接计算机设备,解析从外接计算机设备获取的数据并发送给逻辑模块或中间件通信模块。本发明的多媒体导航仪可实现对逻辑模块、操作系统、处理器、车身内其他硬件以及导航的外接设备的仿真。大大减少项目的开发时间和测试人力投入。同时解决减少软件开发团队成员在开发进度上相互依赖对方的问题。
Description
技术领域
本发明涉及多媒体导航仪。
背景技术
目前多媒体导航仪的开发和测试都需要完整硬件支持才能运行,为此,研发人员需要搭建一专用的硬件测试平台来对多媒体导航仪进行测试。不同的汽车其硬件平台有所不同,就需要建立多个相应的硬件平台,费时费力,成本高,开发和测试的进度慢。此外,有一些基于人力的测试光靠搭建的硬件测试平台也是无法完成的,例如压力测试、健壮测试、随机测试等,还需要搭建其他测试设备。
发明内容
本发明的目的在于提供一种内设仿真模块的、使得开发的过程中在缺乏部分硬件的条件下也能够进行开发和测试的多媒体导航仪。
一种多媒体导航仪,包括人机交互模块,逻辑模块、中间件通信模块和仿真模块。逻辑模块会根据接收到的系统事件从共享内存中读取相关数据,执行预设操作后通知所述人机交互模块显示对应人机交互界面。逻辑模块具有一逻辑层通信模块。中间件通信模块可获取外接设备通过处理器发送过来的通讯信息,并在预设条件下藉由逻辑层通信模块与逻辑模块通过共享内存的方式交换数据,两者在数据交换过程中通过系统事件通知对方进行数据更新。仿真模块通过嵌入式串行通信接口与外接计算机设备通信,其用于配合外接计算机设备实现对所述逻辑模块、处理器及其操作系统、以及连接到处理器的外接设备的仿真。仿真模块的仿真方法包括以下步骤:
从所述外接计算机设备接收数据,解析所述数据,如果是模拟所述处理器或操作系统或外接设备的数据,则所述仿真模块将该数据写入共享内存,并通过系统事件通知逻辑模块进行数据更新;如果是模拟所述逻辑模块的数据,则所述仿真模块将该数据写入共享内存,并通过系统事件通知中间件通信模块进行数据更新;以及
所述仿真模块接收到来自逻辑模块和中间件通信模块的系统通知时,从共享内存中读取相应的数据,并将该数据发送给外接计算机设备。
优选的,所述仿真模块与所述外接计算机设备通信的数据中包括与共享内存中的一数据唯一对应的一个枚举值,且每个枚举值唯一对应一个共享内存数据。所述仿真模块接收到来自外接计算机设备的数据时,以解析出来的枚举值判定其所对应的数据的属性,并根据该属性将该数据通过共享内存的方式发送给逻辑模块和中间件通信模块中的一个。
优选的,所述仿真模块和外接计算机设备在接收到对方的数据后会向对方返回一确认信号,所述确认信号包括接收到的数据中包含的枚举值。如果所述仿真模块和外接计算机设备在发送数据后没有收到所述确认信号,则在延迟预定时间后再次发送数据,如果发送预定次数后任然未收到确认信号,则判断通讯失败。所述仿真模块将通过通讯失败的信息通过共享内存的方式通知逻辑模块,所述逻辑模块通知人机交互模块发出通讯失败的信息。
在一实施例中,所述处理器包括ARM处理器和MCU处理器,两者通过串行外设接口相连。本实施例中优选的,所述中间件通信模块进行数据更新的步骤包括:中间件通信模块根据系统事件从共享内存中读取相关数据;以及解析数据类型并根据数据类型判断执行下列操作中的一种:1)给MCU处理器发送与所述数据相关的命令,2)对ARM处理器的操作系统进行操作。
一些实施例中,与ARM处理器相连的外接设备包括作为外接存储器用的设备、外接DVD和外接空气净化器中的一种;与MCU处理器相连的外接设备包括车载收音机、多媒体导航仪的控制按键、触控输出部件以及通过CAN总线与多媒体导航仪相连的其他车载设备。
优选的,在所述嵌入式串行通信接口与外接计算机通信过程中采用数据缓冲机制以保证数据能够及时的保存和完整的使用。
本发明的多媒体导航仪内设有仿真模块,可通过嵌入式串行通信接口与外接计算机设备实时通讯交换数据。仿真模块通过共享内存的方式与中间件通信模块及逻辑模块交换数据,并通过串口将获取的数据实时发送给外接计算机设备保存或显示,实现了对逻辑模块、操作系统、处理器、车身内其他硬件以及导航的外接设备的仿真。大大减少项目的开发时间和测试人力投入。同时解决减少软件开发团队成员在开发进度上相互依赖对方的问题。采用系统事件通知的方式避免持续询问导致系统性能消耗,效率更高。
附图说明
图1为本发明一实施例的多媒体导航仪的结构示意图。
图2为一实施例中多媒体导航仪接收到外接计算机设备的数据时的处理流程图。
图3为一实施例中多媒体导航仪向外接计算机设备发送数据的流程图。
具体实施方式
下面将结合具体实施例及附图对本发明多媒体导航仪作进一步详细描述。
本发明的多媒体导航仪内设有仿真模块,其可以给导航仪开发人员用于调试设备,它可以给测试人员在没有外部硬件支持的情况下对软件进行测试,比如在没有车的情况下台架模拟测试CAN总线数据。同时也可以代替部分实验室测试功能,比如屏幕、按键随机点击压力测试。该多媒体导航仪实现该功能所涉及到的单元包括人机交互模块、逻辑模块、操作系统、处理器和仿真模块,如图1所示。
其中人机交互模块主要功能是将用户的操作结果反馈给用户,并可提示用户当前系统状态,或提示用户操作,具体由逻辑模块控制它的刷新显示。
逻辑模块具有一逻辑层通信模块。逻辑模块可根据接收到的系统事件通知人机交互模块显示或更新相应的人机交互界面。
处理器包括ARM(Advanced RISC Machines, 意即高级精简指令集机器)处理器和MCU(Micro Controller Unit,微控制单元)处理器,两者通过串行外设接口SPI(SerialPeripheral Interface)相连。本实施例中,ARM处理器采用的操作系统为WINCE操作系统。
ARM处理器具有一中间件通信模块。该中间价通信模块可获取外接设备通过ARM处理器发送过来的通讯信息。MCU处理器具有一MCU通信模块,该MCU通信模块可获取外接设备通过MCU处理器发送过来的通讯信息。连接在ARM处理器上的外接设备包括但不限于SD(Secure Digital Memory Card,安全数码卡)存储卡、USB存储设备、可作为外接存储器的其他移动存储设备(如苹果公司的ipod产品)等,还可以包括外接DVD播放器和外接空气净化器等。连接在MCU处理器上的外接设备包括但不限于车载收音机、多媒体导航仪的硬控制按键、触控输出部件以及通过CAN总线与多媒体导航仪相连的其他车载设备等,还可以包括外接DVD播放器和外接空气净化器等。
MCU处理器在预设条件下通过MCU通信模块和串行外设接口SPI与中间件通信模块进行通信。而中间件通信模块可藉由逻辑层通信模块与逻辑模块通过共享内存的方式交换数据,两者在数据交换过程中通过系统事件通知对方进行数据更新。
如此,当用户点击触控屏,或有外接存储设备插拔事件发生时,ARM处理器的操作系统会通过中间件通信模块在共享内存中写入数据并通过系统事件通知逻辑模块,则逻辑模块根据该系统事件从共享内存中读取相关数据,并进行音源切换、电源初始化操作等动作,然后将数据(例如触控屏点击的坐标)给到人机交互模块响应、刷新,显示对应的人机交互界面。再例如,用户触发硬按键,MCU处理器响应后将解析出的数据通过SPI消息发到中间件通信模块,中间件通信模块再用共享内存方式给到逻辑模块,逻辑模块处理后,通知人机交互模块更新界面。
仿真模块也通过共享内存的方式与逻辑模块和中间件通信模块交换数据,数据交换的双方在数据交换过程中通过系统事件通知对方进行数据更新,其还通过嵌入式串行通信接口,例如WINCE串口与外接计算机设备通信。具体的,仿真模块将从逻辑模块和中间件通信模块接收到的数据发送给外接计算机设备;当接收到来自外接计算机设备的数据时,解析获取到的数据并发送给逻辑模块或中间件通信模块。这个过程中,仿真模块配合外接计算机设备实现了对逻辑模块、操作系统、处理器、外接设备的仿真。采用系统事件通知的方式避免持续询问导致系统性能消耗。通过内存数据共享方式还提高了数据传输的可靠性和数据获取的速度。特别的,可以在WINCE串口与外接计算机通信过程中采用数据缓冲机制,保证数据能够及时的保存和完整的使用。
其中仿真模块与外接计算机设备的通信所采用的数据包中包括发送的数据(DATA)以及一个与共享内存中的一数据唯一对应的枚举值(ID),且每个枚举值唯一对应一个共享内存数据。例如,数据格式可如表一所示。其中HEAD为数据头,ID为枚举值,LENGTH为数据包的长度,DATA为数据包携带的要发给对方的数据,CHECKSUM为校验和。
表一 数据格式定义:Package
HEAD | ID | LENGTH | DATA | CHECKSUM |
仿真模块与外接计算机设备在接收到对方的数据后会向对方返回一确认信号(帧同步ACK信号)。该确认信号包括接收到的数据中包含的枚举值。本实施例中,还包括代表接收到的DATA的长度的十六进制数(0xff)。例如,确认信号的数据格式可如表二所示。
表二 帧同步ACK
HEAD | ID | 0xff | CHECKSUM |
如果仿真模块和外接计算机设备在发送数据后没有收到所述确认信号,则在延迟预定时间后再次发送数据,如果发送预定次数后任然未收到确认信号,则判断通讯失败。仿真模块将通过通讯失败的信息通过共享内存的方式通知逻辑模块,逻辑模块通知人机交互模块发出通讯失败的信息。
具体的,仿真模块的仿真方法包括以下几个步骤:
步骤一,通过串口从外接计算机设备接收数据,接收数据后向外接计算机设备返回一确认信号。
步骤二,解析接收到的数据,以解析出来的枚举值判定其所对应的数据的属性,并根据该属性将该数据通过共享内存的方式发送给逻辑模块和中间件通信模块中的一个。
具体的,如果判断接收到的数据是模拟处理器或对应的操作系统或中间件通信模块或对应的外接设备或与多媒体导航仪相连的其他车载电子设备的数据,则仿真模块将该数据写入共享内存,并向逻辑模块发出系统事件,通知逻辑模块进行数据更新。逻辑模块则根据系统事件从共享内存中读取相关数据,根据程序执行相关操作,并控制人机交互模块显示相应界面。例如,接收到的数据是仿真有IPOD设备插入,则逻辑模块会将当前音源切入IPOD模式、初始化IPOD设备,并从IPOD设备获取信息,然后通知人机交互模块显示IPOD的相关界面。
如果判断接收到的数据是模拟逻辑模块的数据,则仿真模块将该数据写入共享内存,并向中间件通信模块发出系统事件,通知中间件通信模块/相关处理器进行数据更新。中间件通信模块根据系统事件从共享内存中读取相关数据,根据数据类型判断是否要给MCU处理器发送SPI命令(例如:设置FM频点、控制功放静音等)或是否需要操作ARM处理器的WINCE操作系统(比如:读取USB数据、发送播放等命令给IPOD等)。数据接收流程请参考图2。
步骤三,当用户执行相关操作后,逻辑模块根据程序在共享内存中写入数据,并通过系统事件通知中间件通信模块或仿真模块。当仿真模块接收到系统事件时,其根据系统事件从共享内存中读取相关数据,并将给数据打包后发送到外接计算机设备进行存储或显示。类似的,当中间件通信模块被触发要与仿真模块交换数据时,其在共享内存中写入数据,并通过系统事件通知仿真模块,仿真模块根据系统事件从共享内存中读取相关数据,并将给数据打包后发送到外接计算机设备进行存储或显示。数据发送流程请参考图3。
如此,导航仪开发人员在调试多媒体导航仪时利用该仿真模块。例如在开发阶段没有硬按键时,在外接计算机设备上预设好硬按键的值通过串口发送给仿真模块,仿真模块模拟中间件通信模块在共享内存中写入硬按键值,并发送出系统事件通知逻辑模块有硬按键值触发。同理,它可以给测试人员在没有外部硬件支持的情况下测试软件,比如在没有车的情况下台架模拟测试CAN总线数据。同时也可以代替部分实验室测试功能,比如屏幕、按键随机点击压力测试。如此大大减少项目的开发时间和测试人力投入。同时解决减少软件开发团队成员在开发进度上相互依赖对方的问题。
虽然对本发明的描述是结合以上具体实施例进行的,但是,熟悉本技术领域的人员能够根据上述的内容进行许多替换、修改和变化、是显而易见的。因此,所有这样的替代、改进和变化都包括在附后的权利要求的精神和范围内。
Claims (6)
1.一种多媒体导航仪,其特征在于,包括:
人机交互模块;
逻辑模块,其根据接收到的系统事件从共享内存中读取相关数据,执行预设操作后通知所述人机交互模块显示对应人机交互界面,其具有一逻辑层通信模块;
中间件通信模块,其可获取外接设备通过处理器发送过来的通讯信息,并在预设条件下藉由逻辑层通信模块与逻辑模块通过共享内存的方式交换数据,两者在数据交换过程中通过系统事件通知对方进行数据更新;以及
仿真模块,其通过嵌入式串行通信接口与外接计算机设备通信,其用于配合外接计算机设备实现对所述逻辑模块、处理器及其操作系统、以及连接到处理器的外接设备的仿真,其仿真方法包括以下步骤:
从所述外接计算机设备接收数据,解析所述数据,如果是模拟所述处理器或操作系统或外接设备的数据,则所述仿真模块将该数据写入共享内存,并通过系统事件通知逻辑模块进行数据更新;如果是模拟所述逻辑模块的数据,则所述仿真模块将该数据写入共享内存,并通过系统事件通知中间件通信模块进行数据更新;以及
所述仿真模块接收到来自逻辑模块和中间件通信模块的系统通知时,从共享内存中读取相应的数据,并将该数据发送给外接计算机设备;所述处理器包括ARM处理器和MCU处理器,两者通过串行外设接口相连。
2.根据权利要求1所述的多媒体导航仪,其特征在于,所述仿真模块与所述外接计算机设备通信的数据中包括与共享内存中的一数据唯一对应的一个枚举值,且每个枚举值唯一对应一个共享内存数据;所述仿真模块接收到来自外接计算机设备的数据时,以解析出来的枚举值判定其所对应的数据的属性,并根据该属性将该数据通过共享内存的方式发送给逻辑模块和中间件通信模块中的一个。
3.根据权利要求2所述的多媒体导航仪,其特征在于,所述仿真模块和外接计算机设备在接收到对方的数据后会向对方返回一确认信号,所述确认信号包括接收到的数据中包含的枚举值;如果所述仿真模块和外接计算机设备在发送数据后没有收到所述确认信号,则在延迟预定时间后再次发送数据,如果发送预定次数后任然未收到确认信号,则判断通讯失败;所述仿真模块将通过通讯失败的信息通过共享内存的方式通知逻辑模块,所述逻辑模块通知人机交互模块发出通讯失败的信息。
4.根据权利要求1所述的多媒体导航仪,其特征在于,与ARM处理器相连的外接设备包括作为外接存储器用的设备、外接DVD和外接空气净化器中的一种;与MCU处理器相连的外接设备包括车载收音机、多媒体导航仪的控制按键、触控输出部件以及通过CAN总线与多媒体导航仪相连的其他车载设备。
5.根据权利要求1所述的多媒体导航仪,其特征在于,在所述嵌入式串行通信接口与外接计算机通信过程中采用数据缓冲机制以保证数据能够及时的保存和完整的使用。
6.根据权利要求1所述的多媒体导航仪,其特征在于,所述中间件通信模块进行数据更新的步骤包括:
中间件通信模块根据系统事件从共享内存中读取相关数据;
解析数据类型并根据数据类型判断执行下列操作中的一种:1)给MCU处理器发送与所述数据相关的命令,2)对ARM处理器的操作系统进行操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310692041.7A CN104697513B (zh) | 2013-12-10 | 2013-12-10 | 多媒体导航仪 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310692041.7A CN104697513B (zh) | 2013-12-10 | 2013-12-10 | 多媒体导航仪 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104697513A CN104697513A (zh) | 2015-06-10 |
CN104697513B true CN104697513B (zh) | 2017-12-22 |
Family
ID=53344882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310692041.7A Active CN104697513B (zh) | 2013-12-10 | 2013-12-10 | 多媒体导航仪 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104697513B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108092978A (zh) * | 2017-12-19 | 2018-05-29 | 贵州数据宝网络科技有限公司 | 一种数据安全交换系统及方法 |
CN112765018B (zh) * | 2021-01-12 | 2022-09-13 | 武汉光庭信息技术股份有限公司 | 一种仪器仪表调试系统及方法 |
CN115080158B (zh) * | 2021-03-12 | 2024-07-09 | Oppo广东移动通信有限公司 | 界面显示方法、装置、终端设备及计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230295B1 (en) * | 1997-04-10 | 2001-05-08 | Lsi Logic Corporation | Bitstream assembler for comprehensive verification of circuits, devices, and systems |
CN101782778A (zh) * | 2010-01-29 | 2010-07-21 | 天津大学 | 车载信息系统多功能测试平台及主控制器的控制结构 |
CN102506901A (zh) * | 2011-11-25 | 2012-06-20 | 北京航空航天大学 | 一种多串口导航信息模拟集成系统 |
CN103335662A (zh) * | 2013-05-20 | 2013-10-02 | 江苏新科软件有限公司 | 一种车载导航装置及其故障诊断方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7739562B2 (en) * | 2007-08-17 | 2010-06-15 | International Business Machines Corporation | Programmable diagnostic memory module |
-
2013
- 2013-12-10 CN CN201310692041.7A patent/CN104697513B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230295B1 (en) * | 1997-04-10 | 2001-05-08 | Lsi Logic Corporation | Bitstream assembler for comprehensive verification of circuits, devices, and systems |
CN101782778A (zh) * | 2010-01-29 | 2010-07-21 | 天津大学 | 车载信息系统多功能测试平台及主控制器的控制结构 |
CN102506901A (zh) * | 2011-11-25 | 2012-06-20 | 北京航空航天大学 | 一种多串口导航信息模拟集成系统 |
CN103335662A (zh) * | 2013-05-20 | 2013-10-02 | 江苏新科软件有限公司 | 一种车载导航装置及其故障诊断方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104697513A (zh) | 2015-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101782778B (zh) | 车载信息系统多功能测试平台及主控制器的控制结构 | |
CN110110174A (zh) | 数据可视化页面的生成、监听及展示方法、浏览器及服务器 | |
CN105824729B (zh) | 一种具备通用性的虚拟验证平台及实现方法 | |
CN105738854A (zh) | 智能电表嵌入式应用的模拟存储器测试板系统及测试方法 | |
CN101499937A (zh) | 一种基于fpga的软硬件协同仿真验证系统及方法 | |
CN104050332A (zh) | 航空电子系统分布式实时综合仿真方法 | |
CN104697513B (zh) | 多媒体导航仪 | |
CN113407393B (zh) | 芯片验证方法、终端设备、验证平台以及存储介质 | |
CN110502861B (zh) | 基于卫星信息流的全数字化仿真系统 | |
CN104050333A (zh) | 航空电子系统分布式实时综合仿真系统 | |
CN104461813A (zh) | 利用功能覆盖率负反馈加速uvm验证收敛的方法 | |
CN114444422A (zh) | 芯片验证系统、方法及存储介质 | |
CN117075570A (zh) | 数据处理方法、设备及系统 | |
CN103514074A (zh) | Mvb网卡开发方法及平台 | |
CN108228965B (zh) | 一种存储单元的仿真验证方法、装置和设备 | |
CN104597462A (zh) | 基于gpu的gnss信号模拟器及其实现方法 | |
CN102564776B (zh) | 机车司机显示单元试验系统 | |
Lin et al. | Functional verifications for SoC software/hardware co-design: From virtual platform to physical platform | |
CN101609412A (zh) | 车载信息娱乐系统模拟装置 | |
CN102436186B (zh) | 执行器模拟器及具有该执行器模拟器的卫星闭环仿真系统 | |
CN103440133A (zh) | 一种芯片测试软件的开发方法和系统 | |
CN107346622A (zh) | 一种高集成度的汽车驾驶模拟系统 | |
CN104199776B (zh) | 二乘二取二车载软件的测试平台 | |
CN204633810U (zh) | 一种应用于校园网的投票系统 | |
CN111142139B (zh) | 模拟定位信息获取方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 516006 Guangdong province Huizhou City Zhongkai high tech Zone and five West Road No. 103 Applicant after: HUIZHOU DESAY SV AUTOMOTIVE CO., LTD. Address before: 516006 Guangdong province Huizhou City Zhongkai high tech Zone and five West Road No. 103 Applicant before: Huizhou Desay SV Auto. Electronics Co., Ltd. |
|
COR | Change of bibliographic data | ||
GR01 | Patent grant | ||
GR01 | Patent grant |