当前位置:首页 > 车载
  • 基于ARM处理器的车载GPS系统无线通信设计方案

    1 引言 车载GPS定位终端在过去十年内已经成为汽车工业发展的焦点。在欧美国家和日本,车载GPS定位终端在最近几年内得以广泛的应用。车载GPS定位终端是融全球卫星定位技术(GPS)和现代无线通信技术于一体的高科技系统。该终端的主要功能是通过GPS模块从卫星获取GPS数据,将移动车辆的动态位置(经度、纬度、时间、速度)等信息实时地通过无线通信链路上传至监控中心,同时接收监控中心发送的控制命令。目前的车辆监控系统中大多采用GSM通信网以短信息的方式进行通信,不能充分满足实际应用的需要。而GPRS(General Packet Radio Service)通用分组无线业务是一种以分组交换技术为基础,采用IP数据网络协议的高效数据传输网络,可以弥补GSM网络的不足。车载GPS定位终端不仅在智能交通系统中担负主要作用,同时还可以提供防盗防抢劫报警,公交车报站,物流车辆调度等多种服务。 2 车载GPS定位系统的硬件设计 本部分介绍车载GPS定位系统硬件系统的设计方案,着重阐述嵌入式处理器AT91RM9200硬件系统的设计,GPS卫星数据采集模块的接口设计和GPRS通信模块接口的设计。如图1所示,车载GPS定位系统的硬件结构主要由GPRS接收模块、GPS接收模块、SDRAM,FLASH存储器模块、串口通信模块,以及外围模块组成。                        图1  车载GPS定位系统的硬件结构组成 2.1  GPRS接收模块电路设计 GPRS模块负责主电路板与监控中心的通信任务,它将处理好了的GPS数据通过网络发送给监控中心,并接收监控中心发送给主电路板的控制命令,该模块直接影响到这个车载终端的实际使用效果。 本系统选用的GPRS模块是由索尼爱立信公司推出的GR47模块,该模块的主要特点是内置TCP/TP协议栈。它允许一个TCP/UDP传输机制以最小的前期配置和操作来被使用。其内嵌控制器方便集成客户的应用,减少外部控制器的需求。GR47支持双频GSM宽带900MHz/1800MHz,可通过SMS短消息服务、CSD、HSCSD或GPRS来发送或接收资料,并可处理语音及传真。其TCP/IP协议栈也可通过AT命令或嵌入式应用进行访问。由于GR47模块内嵌了TCP/IP协议栈,所以可以直接用AT命令对其进行控制,使用起来非常方便。图2描述了GPRS通信模块的串口电路设计。                               图2 GPRS模块的串口电路设计图 2.2 GPRS模块的SIM卡电路设计 GR47模块带有一个SIM卡的接口,遵从IS07816 IC卡标准。通过电线与外部扩展的SIM卡盒相连。图3描述了GPRS模块的SIM卡电路设计。 图3 GPRS模块SIM卡电路设计图 2.3 GPS接收模块电路设计 GPS模块负责接收GPS定位卫星发送的导航电文,他通过串行接口与主电路板相连接,是实现接收GPS数据的关键。 对于GPS模块的选择而言,通常从技术参数,支持的通信协议,控制接口和成本几个方面考虑。目前商用的GPS模块,大都支持12通道,采用C/A编码,NMEA0183协议,通过RS232接口控制。本系统选用的GPS卫星数据采集模块为上海丽浪公司出品的GPS-R25型GPS模块,具有以下特性:12通道C/A码接收控制,可同时监控12路卫星信号;内部集成16位ARM7TDMI处理内核;电池会在正常的使用过程中充电;GPS卫星采集模块的误差范围为1~5米;2种接口连接且用户可自选波特率;达到工业级的标准并且防水。并且该模块即可以通过RS-232的串口与主电路板相连接,也可以通过PS2接口与主电路板相连接,使用起来非常方便。 2.4 FLASH存储器电路设计 Flash存储器是一种可在系统电擦写,掉电后信息不丢失的存储器。作为一种非易失性存储器,Flash在系统中通常用于存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据等。系统采用了一片K9F5608U0A的NAND型Flash,K9F5608U0A是三星公司生产的K9XXXXXU0A系列闪存中的一种,32MB容量,读写速度快,数据保存时间长以及高达10万次的擦除写入寿命等优点。该芯片具有一个八位的I/O端口。在CE为低电平时,把WE置低,地址、命令和数据都可通过该端口写入。数据在WE的上升沿被锁存,CLE和ALE分别用来控制对命令和地址的锁存。同时K9F5608U0A具有较强的纠错功能,能够最大限度地保护用户数据。[!--empirenews.page--] 2.5 SDRAM存储器电路设计 SDRAM存取速度大大高于Flash存储器,具有读/写的属性,因此SDRAM在系统中主要用作程序的运行空间,数据及堆栈区。系统启动时,CPU首先从复位地址0x0处读取启动代码,在完成系统的初始化后,程序代码一般应调入SDRAM中运行,以提高系统的运行速度,系统及用户堆栈、运行数据也都放在SDRAM中。在主电路板中用HY57V281620型SDRAM.。系统采用两片HY57V281620并联构建32位的SDRAM存储器系统,其中一片为高16位,另一片为低16位,可将两片HY57V281620作为一个整体配置到任意一个外部存储器的区域。SDRAM存储器电路设计如图4所示。   图4  HY57V281620的连接框图 3 车载GPS定位系统的软件设计 车载GPS系统的应用程序在功能上可以分为7个功能模块,即初始化模块,控制模块,GPS数据获取模块,上行数据转换模块,用户界面模块,通信模块和下行数据处理模块。 初始化模块主要实现对串口的初始化及把所有的标志位置零;控制模块主要是根据上位机的命令来执行相应的操作,比如采集GPS数据,发送当前行车状态等;用户界面模块主要功能就是把GPS数据,状态数据等在触摸屏上显示出来,同时还要可以响应触摸屏上的中断,以便实现通过触摸屏操作车载终端的功能。 GPS数据获取模块的主要功能就是通过与串口相连接的GPS模块获取当前的GPS信息;在本程序中用的是GPRMC定位语句,将忽略其它信息。提取GPRMC语句的思路是设置一个数据缓冲区,把接收到的GPS数据都放入这个缓冲区,当缓冲区满了的时候就在缓冲区中查找是否接受到GPRMC定位语句,如果没有接收到则重新接收GPS数据。如果找到了GPRMC定位语句则还要判断该语句在缓冲区中的位置离缓冲区的最大字节数是否大于62个字节。(因为本程序中需要的GPRMC定位语句所包含的字节数为62) 上行数据转换模块的主要功能是把接收到的GPS数据或是相关的状态信息转换成约定好的数据格式以便同监控中心的通信。该模块会判断需要转换的数据是GPS数据信息还是相关状态信息或是两者都有,然后选择相应的转换程序。由上面的介绍可以知道接受到的GPS数据都是顺序存放在数据缓冲区当中的,需要什么数据就到缓冲区中相应的位置提取就可以了。数据都是以字符形式存放的,所以实际要用的时候必须先转换成整形数据。下行数据转换模块的功能与上行数据转化模块的功能相反,它将监控中心发送的命令进行识别后发送给车载终端,并送用户界面模块显示。 通信模块的主要任务是完成车载终端与监控中心的通信,它既可以通过GPRS网络实现与监控中心的无线通信,也可以通过网口与笔记本电脑连接进行通信。如果车载终端与上位机的距离隔的很远可以直接通过GPRS网络与监控中心进行连接,而且通过GR47模块连接GPRS网络与监控中心连接也非常方便,只用往GPRS模块发送几条AT命令就可以了,但是监控中心必须有能上因特网的固定IP。启动车载终端的同时GR47模块也会被启动,这是模块会自动连接上GPRS网络进入命令模式。拨号成功以后就连接上了GPRS网络了,然后对于GR47模块连接的串口进行读写操作就可以实现与监控中心的无线通信了。通过网口进行通信则比较简单,直接采用Linux下的socket编程就可以实现。 根据以上各个模块的功能的定义,软件部分主流程图如图5所示: 图5 主程序流程图 4 总结 本文的创新点是采用GPRS通信网络进行无线通信代替了传统的GSM短信息通信模式,不仅节约了整个系统的运行成本,而且提高了数据的传输速度和可靠性;同时选用了工业级的带有内存管理功能的ARM9芯片AT91RM9200作为处理器,并围绕它进行电路设计,使得该终端有很高的可靠性,并且能够适应比较恶劣的环境,因为选用了带内存管理功能的ARM9芯片,所以可以移植Linux操作系统,该操作系统自带的资源十分丰富,使得应用程序的功能更加强大,同时也增加了软件的扩展性;最后本车载定位终端融合了GPS全球定位技术,GPRS无线通信技术,ARM嵌入式技术以及嵌入式Linux系统的移植与编程,属于一个交叉学科的工程项目。自该系统投入市场半年以来,创造了50余万元的经济效益。

    时间:2012-01-18 关键词: 方案 GPS ARM Linux 车载 理器的

  • 基于AVR单片机的实用车载空调控制器电路

    电子设备在汽车中的广泛应用被认为是汽车技术发展进程中的一次革命。随着汽车电子技术的发展和汽车控制单元的增加,汽车电子技术正朝着集中化、智能化、网络化和模块化方向发展。车内CAN/LIN总线网络的使用使得车内各个控制单元的数据可以共享,从而使在汽车嵌入式计算平台上采用多变量多目标的综合协调控制成为可能。另一方面,网络化拓展了汽车的服务领域,为汽车的移动通信、移动办公、娱乐、导航定位和远程诊断与维修提供了技术基础,逐步形成了汽车、家庭、社会一体化的互动体系。汽车嵌入式计算平台在该一体化体系中担当重要角色。 本文介绍了车载嵌入式计算平台,它为完成汽车辅助驾驶和安全监控、远程诊断和维修、在线/离线导航定位、娱乐、与家庭互动等各项功能提供了很好的软硬件平台。下面将从汽车/家庭/社会一体化体系结构、计算平台的硬件体系、软件体系三个方面进行说明。 1 汽车/家庭/社会一体化体系结构 汽车嵌入式计算平台为实现各种功能服务提供了良好的软硬件平台。车外网络和车内网络结合构成了汽车/家庭/社会一体化的互动体系结构。该体系结构示意图见图1,车内计算网络示意图见图2。 在图1中,交通管理中心、汽车服务中心、互联网服务中心和娱乐服务中心等共同组成汽车远程服务平台,家庭/办公室和汽车组成汽车/家庭互动平台体系。其主要提供三类服务: (1)汽车集成服务。主要指汽车远程诊断服务和汽车最优控制方案服务。汽车计算平台通过CAN/LIN总线读取电子控制模块(ECM)诊断产生的故障代码,然后通过汽车网关利用无线通信技术发送至最近的汽车服务中心。汽车服务中心分析故障代码形成诊断方案并以服务的形式发送到汽车嵌入式网关,经过协议解析后再发送到汽车嵌入式计算平台,最后通过人机接口显示给驾驶员。汽车制造商同时向汽车提供下载最佳汽车控制方案的服务,以适合汽车在不同的行驶条件下运行。这些服务主要由汽车远程服务平台或汽车制造商提供。 (2)导航定位服务。运行在车载嵌入式平台上的应用层软件接收GPS接收仪发送的数据,借助车载的地理信息系统(电子地图)实现导航。此外应用层软件还可以把GPS接收的数据发送到远程汽车服务平台或第三方服务提供商,再由他们把导航信息以服务的形式发送给汽车嵌入式平台。这些服务对准确性和及时性要求比较高。如何准确高效地传递这些信息成为决定这类服务质量的关键。 (3) 个人/娱乐信息服务。汽车/家庭互动平台体系使人们可以在驾驶汽车的过程中了解家中的情况,将汽车-家庭连为一体。车载信息处理(Telematics) 系统的地位日益突出。它通过无线通信技术将安全保密信息或娱乐信息以服务(Service)的方式传递至汽车。 2 汽车嵌入式计算平台的硬件体系结构 硬件平台的设计必须根据其要完成的功能来确定。本项目是将汽车嵌入式网关集成到计算平台中,因此,计算平台要完成的功能主要为:与远程服务中心的无线通信功能;导航功能;音视频播放的功能;通过CAN/LIN总线访问车内电子控制模块的功能等。基于32位ARM内核的EP9315处理器具有良好的计算能力和丰富的外围接口,在对其做了适当的外围扩展后设计出如图3所示的汽车嵌入式计算平台。 EP9315是高度集成的片上系统处理器。它拥有200MHz ARM920T处理器及支持Linux、Windows CE和其他许多嵌入式操作系统的存储器管理单元(MMU)。EP9315内置一个高性能1/10/100 Mbps以太网媒体存取控制器(MAC)及外部接口,可连接SPI、I2S音频、Raster/LCD、IDE存储外设、小键盘和触摸屏等。该器件还集成了运行速度为12Mbps的三端口USB 2.0全速主机和3个UART。PCMCIA接口的无线网卡提供远程网络的访问功能,可以实现对远程服务中心网络服务器的访问。IDE接口的电子硬盘用来存放地理信息系统,为导航软件提供电子地图。GPS接收仪通过串口与EP9315处理器相连,提供实时的车辆地理位置信息。触摸屏是人机输入界面,用来完成各种用户信息的设置。LCD显示屏和扬声器是人机输出界面,可以播放MPEG4视频或提示语音报警信息。CAN/LIN总线接口可以挂接汽车内的 CAN/LIN总线,提供对车内CAN/LIN总线的访问。基于上述硬件平台所设计的软件能很好地完成计算平台所要完成的各项功能。 3 汽车嵌入式计算平台的软件体系结构 软件平台采用嵌入式Linux设计。上文已对软件部分要实现的功能进行了一定的描述。其中导航任务是一个实时任务,而Linux不具有实时功能,因此需要改进Linux,使其支持实时任务。基于实时Linux的软件体系结构如图4所示。 系统上电后,首先启动LINux操作系统,然后启动QT引擎,再启动 QT主程序。在LCD显示屏上显示各个应用程序的选择按钮,通过触摸屏按下相应的按钮,即会启动相应的应用程序。下面介绍主要应用程序的执行流程。 (1)导航应用程序。导航程序启动后,用户通过触摸屏输入旅程的起始地点和目的地点。导航软件把该起始地点和目的地点发送到导航服务中心(本项目中为无线局域网中一台计算机),并且每隔一定时间调用导航API从串口1接收GPS接收仪发送的当前车辆的实时地理位置数据,再调用通信API,通过无线网卡把该地理位置数据发送到导航服务中心。导航服务中心根据接收到的旅程起始地点和目的地点计算出最优行使路径,并且每接收到车辆位置信息时,都计算出当前车辆所在的位置,把包含当前车辆位置和应该行使路径的小范围的位置图像发送到车辆。车上的导航软件把接收到的图像在LCD上显示出来,通过该图像司机就可以了解车辆当前的位置和下一步要行使的路线。 (2)诊断应用软件。诊断服务软件启动后,该软件调用诊断API读取连接在CAN/LIN总线上的各个ECU的故障代码,然后再调用通信API把这些代码发送到汽车服务中心(本项目中是与导航服务中心相同的计算机)。汽车服务中心分析故障代码,确定出汽车的具体故障情况,把最终结果通过无线网发送到汽车嵌入式平台。汽车嵌入式平台通过无线网卡接收这些数据,诊断服务软件读取该数据,并在LCD上显示。 (3)汽车/家庭互动应用软件。当在汽车嵌入式平台上运行家庭/汽车互动系统软件时,该软件在LCD上显示家庭中的各个电器及其状态。当用户通过触摸屏发出改变某个电器状态的命令时,汽车/家庭互动软件调用家庭API函数把该命令发送到家庭网关(由社会第三方服务公司提供)。在家庭网关上运行着实现 OSGI协议的软件,该软件可以完成所接收到的命令,并把执行的结果发送到汽车嵌入式平台。 (4)安全监控软件。CCD摄像头把汽车行驶车道的图像输入到DSP处理系统,DSP处理系统对图像数据进行分析,并把分析结果送到在汽车嵌入式平台上运行的安全监控软件,监控软件分析该数据。如果汽车偏离行驶车道,监控软件则调用多媒体API通过扬声器或者在LCD上显示信息提醒驾驶员,从而实现安全监控和报警功能。

    时间:2012-03-06 关键词: Linux 车载 AVR 空调控

  • 基于ARM 和Qt/E的车载HMI终端的设计方案

    摘要:车载HMI是人与车辆之间的关键设备,使人能够对车辆的运行实现控制;设计了一种触摸控制与数字显示合理结合的车载HMI终端,采用ARM作为处理器,通过移植Qt/E对系统加以实现;该终端通过在Polo车CAN总线试验台测试,实现了对基本设备的触摸控制和车辆状态信息的实时显示,表明所设计的终端能够满足车载HMI的基本要求。 0引言 改善HMI(HumanMachineInterface)终端性能可降低车辆控制系统操作的复杂性,也可提高驾驶员对自己车辆的控制力。车载HMI通过单一结构中控台,可以减少零部件数量,提高性价比。传统机械式的控制终端正在逐步向直观、便捷的HMI终端发展。2009年6月29日,美国汽车多媒体与通信研究服务公司StrategyAnalytics发布最新研究报告,认为"车载人机界面市场领先者保持强势地位".报告预测,2015年,车载语音和触摸屏市场规模将达到29亿美元。目前,HMI设备,尤其是语音、触觉控制和触摸屏,在汽车市场上被大量应用。 本文报告了一种基于触摸控制与数字显示理念的车载HMI终端,通过在ARM上移植Qt/E接TFT-LCD触摸面板加以实现。 1系统结构介绍 基于ARM和Qt/E的车载HMI终端主要由两个模块组成,分别是ARM处理器与触摸显示屏组成的HMI触控平台和CAN/RS232协议转换器模块。该终端可接入车载CAN网络中实现车载设备的触摸控制与状态信息显示。其结构框图如图1所示。 图1车载HMI终端结构 HMI触控平台主要是将Qt/E交叉编译后移植到ARM平台,调用GUI在触摸面板显示。通过点击触控界面发送控制字,经CAN/RS232网关发送到CAN网络中对各设备进行控制,同时实时采集各设备运行状态参数并显示,便于驾驶员及时了解车辆运行状态。该平台还预留了UART和USB端口分别可外接GPS模块,无线上网卡或U盘设备,实现导航、无线上网和多媒体播放功能。 CAN/RS232协议转换模块主要由MCU、CAN接口与UART接口组成,其中CAN接口采用CAN控制器SJA1000和CAN收发器PCA82C250设计,RS232接口采用MAX232设计,以此实现两种不同总线协议数据帧的透明转换,是HMI终端与CAN网络中各设备交互的纽带。 车载CAN网络模块主要以Polo车CAN试验台为平台,试验台集成了车灯、电动车窗、雨刷和后视镜CAN节点模块。 2Qt/E在ARM上的移植 Qt/E是Trolltech公司专为嵌入式Linux系统开发的图像用户界面(GUI)工具包。提供了窗口操作系统、开发环境、工作辅助应用程序和个性选项等,是基于C++可跨平台的GUI应用程序框架;还提供给开发者建立艺术级GUI所需的功能,开发者可根据需求定制整个软件解决方案。目前,众多手机、PDA、机顶盒都采用Qt作为图形引擎。因此,选择了Qt/E作为HMI终端的开发工具。 2.1交叉编译环境的搭建 采用宿主机Fedora9.0作为开发平台,移植ARM版Qt/E4.7进行设计。因编译Linux内核和Qt/E都需要交叉编译工具链,交叉编译器版本过高过低都会与Qt/E4.7不兼容,最终导致安装失败,所以一定要根据Qt的版本来选择对应的编译器。本系统采用arm-linux-gcc-4.5.1.安装过程如下: 首先,解压arm-linux-gcc-4.5.1安装包,运行#tarxvzfarm-linux-gcc-4.5.1.tgz命令;然后将编译器所在路径加入系统环境变量,运行#gedit/root/.bashrc编辑该文件,修改最后一行为exportPATH=PATH:/usrt/local/arm/4.5.1/binPATH,此时交叉编译器已经安装好;最后执行#arm-linux-gcc-v显示编译器版本信息,验证是否安装成功。 2.2Qt/E4.7的编译与移植 减压ARM版Qt/E安装包到指定目录,然后进入该目录执行编译配置源码命令#echoyes|./configure-opensource-embeddedarm–xplatformqws/linux-arm-g++-no-webkit-qt-libtiff-qt-libmng-qt-mouse-tslib-qt-mouse-pc-no-mouse-linuxtp-no-neon.其中编译ARM平台的embedded版本配置参数为embeddedarm,使用arm-linux交叉编译器进行编译为xplatformqws/linuxarm-g++,qt-mouse-tslib是使用tslib来驱动触摸屏。然后执行make命令进行编译,当编译完成之后执行安装命令makeinstall.最后把安装文件打包#tarcvzfqt4.7.tgz,下载到ARM开发板,并解压到指定目录。至此Qt/E在ARM开发板上移植完成。 安装Linux环境下X86版QtSDK软件-QtCreator2.0进行Qt程序开发,设置为支持Qt4.7ARM的交叉编译。最后将设计好的程序通过编译,生产二进制文件下载到ARM开发板运行,以此实现HMI界面显示功能。 3车载HMI终端的硬件设计 3.1CAN/RS232协议转换器的硬件设计 CAN/RS232协议转换器主要有主控制器、CAN接口模块与RS232接口模块组成,其中主控制器采用STC89C52单片机负责处理CAN总线与RS232总线的数据接收与发送,实现两种不同协议数据帧的透明转换与传输。 CAN接口模块采用Philips公司的CAN控制器SJA1000和CAN收发器PCA82C250芯片组成,主要实现CAN协议的物理层和数据链路层功能。其中CAN控制器完成数据链路层功能,实现与主控制器的信息读写操作,物理层通过CAN收发器实现电平转换和传输。SJA1000的AD0~AD7与单片机P0口连接,实现地址/数据复用;片选/CS与P2.7相连,则基地址为0x7F00;/RD、/WD、ALE引脚依次与单片机各引脚相连;中断/INT接单片机/INT0,因此可通过中断方式对SJA1000进行实时访问。SJA1000的MODE引脚用于选择CAN控制器在Intel模式还是在Motorola模式工作。由于STC89C52属于Intel系列微控制器,故MODE引脚接+5V高电平设置为Intel模式,以满足89C52的读写时序要求。为了增强节点的抗干扰能力,以及避免当CAN收发器失效时出现过流导致CAN控制器击穿,SJA1000的TX0和RX0引脚通过光耦N6137后与PCA82C250的TXD和RXD连接,以此实现总线上节点间电器隔离;收发器CAN_H和CAN_L引脚通过5Ω电阻与CAN总线端口连接起到限流作用;同时两端接120Ω终端匹配电阻。 RS232接口电路采用MAX232芯片,实现单片机串口TTL电平与RS232电平相互转换,完成HMI终端UART口的信息传输。STC89C52串口端(P3.0和P3.1)与MAX232的T1IN和R1OUT连接,T1OUT与R1IN接九针串口,然后通过交叉线与HMI终端连接实现数据通信。[!--empirenews.page--] 3.2车载HMI触控平台的设计 HMI触控平台以ARM为处理器,接7.0寸LCD触摸屏来实现,可取代传统的(如图2A)机械按键与表盘显示的中控平台。HMI触控平台如图2B所示,由车灯、车窗、后视镜、多媒体、空调、导航以及状态参数显示菜单组成。将该终端嵌入到方向盘,驾驶员可点击触控菜单进入车灯、车窗等控制界面(如图2C和D)实现车灯、车窗等设备的触摸控制,也可实时采集与显示设备状态参数如:车速、故障码等。其中,触控与显示数据需调用ARM底层串口驱动来实现读写操作,触控界面通过Button控件的信号与槽机制来实现数据的发送,状态参数的采集与显示通过事件驱动方式实现。终端可外接GPS模块实现导航功能,设计了Qt媒体媒体播放器实现娱乐功能,也可接入无线网卡来实现无线上网功能。 图2车载HMI终端 4车载HMI终端的软件设计 4.1CAN/RS232网关软件设计 主程序中首先要完成初始化操作,包括单片机、SJA1000、RS232通信以及中断源的初始化。其中SJA1000的初始化是整个设计最重要的部分,也是保证CAN通信的前提。考虑车辆内部网络的兼容性,SJA1000配置为Peli模式,支持CAN2.0A和B规范,实现标准帧和扩展帧两种报文传输。SJA1000初始化寄存器配置流程如图3所示。 图3SJA1000初始化寄存器配置流程 为保证数据实时传输,采用中断方式进行数据收发。 当CAN总线有数据接收时SJA1000会跳入接收中断函数将数据接收并存储到接收缓存,根据数据帧头来判别数据类型和所带数据长度,最后提取CAN数据拆分为单字节通过串口发送,并在HMI终端显示;当HMI终端有控制字发送,串口接收中断函数将所发送的控制字依次接收存入接收缓存,并根据首字节来判别所发数据类型和长度,组装成CAN数据帧格式发送到网络中去,以此实现各节点的控制。具体流程如图4所示。 图4数据接收与发送流程图 4.2车载HMI界面的设计 HMI界面采用QtCreator2.0来设计,因为HMI终端是通过UART接口接入CAN网络中,所以通信时需接上面所介绍的CAN/RS232协议转换器来实现。同时,还需在Linux下编写Qt串口通信程序。 首先,在Linux下利用open函数打开串口设备,用tcsetattr函数来设置串口属性。打开驱动设备UART0进行读写操作:constchar*devName="/dev/ttySAC0";fd=:: open(devName,O_RDWR|O_NONBLOCK);设置波特率等参数:serialAttr.c_cflag=B115200|HUPCL|CS8|CREAD|CLOCAL;serialAttr.c_cc[VMIN]=1;其中串口设备可使用Linux下I/O函数进行Read和Write操作。但是,在数据接收时当数据量过大会导致界面被阻塞(造成界面假死),于是创建了一个线程通过事件驱动实现数据接收。 Qt中可采用QSocketNotifier类来实现设备事件驱动的设计要求。QSocketNotifier类关联Signal/Slot机制,当有数据可读时会触发Ativated信号,LCDNumber控件Slot会被调用来连接到该信号并显示,从而实现数据采集与显示功能。在数据发送时,可通过Button控件Signal/Slot调用QObject对象的connect()函数来实现[3].当按键被按下时触发Signal信号,Slot会调用pressed()函数将定义好的数据通过串口Write函数发送到总线上。函数实现如下: voidGlass::on_lu_pressed(){charmsg[]={160,34,16,0};//定义所发送数据myserial->myCom->write(msg,4);//写发送数据} 通过QPainter类进行对窗体界面和按键图像界面进行设计,达到美观的人机界面。最后将设计好的程序通过交叉编译,生产二进制文件移植到ARM中,然后在文件系统中调用执行,最终在LCD触摸屏上显示,如图2所示。 5系统集成与测试 首先将设计好的HMI终端通过交叉串口线与PC机连接,进行相互通信,测试是否能够进行数据收发,测试成功后通过CAN/RS232网关接入Polo车CAN试验台进行综合测试。试验台设备节点可通过触摸方式控制,同时可实时采集与显示运行状态信息,经过多次实验测试,运行稳定可靠,达到了设计要求。 6结束语 本文所设计的车载HMI终端集车身控制、仪表显示、导航、多媒体和无线上网为一体,简化了车载中控平台,降低了车辆控制系统操作的复杂性。经实验测试实现了车身设备的触摸控制,能够对各设备运行状态信息进行采集与显示。为车载HMI开发提供了一种可行的设计思路与性价比更合理的解决方案。

    时间:2012-04-25 关键词: 方案 ARM Linux 车载 hmi QT 端的设

  • CSR最新车联网应用—双网络、并发车载Wi-Fi网络功能

    CSR公司日前宣布推出CSR6030A11解决方案,这是CSR功能更丰富的独立车载Wi-Fi解决方案。去年4月,CSR推出了CSR6000系列车用平台,并与汽车制造商紧密合作,不断更新公司的Wi-Fi解决方案,以满足并超越用户期待。 CSR新型车载Wi-Fi解决方案在研发方面投入巨大,而且提供了更多的新功能。除了提升Wi-Fi传输性能,CSR6030A11还提供了“并发网络模式”,即同时支持两个网络的Wi-Fi连接。此外,CSR6030A11符合Wi-Fi Direct标准,这就意味着它可以连接到其他具备Wi-Fi Certified认证的Wi-Fi Direct设备上,无需依靠热点可以进行直连。这些功能为系统设计者提供了更大的灵活性,使其可以在快速变化的车载用户通信及娱乐环境中,支持更为广泛的网络拓扑和用户应用。 CSR汽车产品事业部连接市场主管Thomas Carmody表示:“自2009年以来,我们一直就这一平台与汽车客户密切接触,此次推出的CSR6030A11是我们的第三代车载Wi-Fi解决方案,这也显示出我们将必要投资用于帮助客户满足其用户需求的决心。近年来,汽车制造商致力于发展Wi-Fi战略,加强车联网环境中的用户体验。CSR6030A11可以很好地应对这些Wi-Fi需求挑战,同时也证明我们在为汽车市场提供Wi-Fi方案的强劲实力。” 并发模式 只需将CSR6030A11放置在车里,它就能够同时在两个不同的Wi-Fi网络中提供Wi-Fi连接性,这意味着同一台设备既可以在一个网络中充当Wi-Fi客户端,又可以同时在另一个网络中充当Wi-Fi接入点,这一功能是为了提高车载系统无线连接的灵活性。例如,借助这一功能,您可以设想将智能手机获取的互联网数据共享到音响主机,与此同时,音响主机还能成为一个车载Wi-Fi接入点,将智能手机的互联网连接提供给汽车内的各种消费电子设备。并发网络模式不仅支持传统Wi-Fi客户端和接入点,而且还可以提供与Wi-Fi Direct设备相同的功能。 Wi-Fi Direct Wi-Fi Direct是CSR6030A11加入的一款新的连接标准,它能够为Wi-Fi耳机、用户及其他设备提供USB标准有线连接相同的功能。Wi-Fi Direct顾名思义,意味着无线设备间的连接与通信简单便利,而无需担心这些设备的技术细节或特性。Wi-Fi Direct实现了简捷的设备间一键式连接和通信,可以用于从文档、音乐和视频到诊断数据等各种文件进行交换,并且在往返车载系统间更加无缝。 近期迹象表明,Wi-Fi Direct已确定成为手持设备和消费电子产品领域设备Wi-Fi互联的实施标准。根据市场报告,Wi-Fi Direct设备的年复合增长率在2011至2015年将达到79%。依靠CSR6030A11中的Wi-Fi Direct标准,CSR正在帮助汽车制造商为预期的Wi-Fi Direct设备爆发性增长提前做好准备。 CSR Synergy 除上述提到的令人惊喜的新特色之外,基于CSR不间断的Wi-Fi解决方案测试与研究,公司还致力于推出CSR6030A11固件和SynergyWi-Fi主机软件优化,这已为CSR6000之前的解决方案带来15%的Wi-Fi性能提升。对于用户来说,他们当然对这种Wi-Fi性能提升持欢迎态度,因为它提高了扩展的、数据密集型车载Wi-Fi应用的性能。 上市时间与定价 CSR6030A11将于2012年7月批量投产,欲进一步了解价格信息,请联系CSR代理商。 编者提示 CSR6000系列支持所有主流车载操作系统,包括Linux、Android、QNX和Windows Automotive。 CSR6030A11是前几代CSR6000产品的升级版,提供了引脚对引脚兼容,并加入了一些新的、先进的功能。 CSR自有的主机端的Wi-Fi驱动软件 ,支持所有CSR6030A11新功能。  

    时间:2012-06-13 关键词: csr Linux 车联网 车载 fi wi

  • Linux步入黄金时代,能否经受车载等实时应用考验?

    MontaVista日前正在为Linux增添实时功能,提高其速度,使其更强壮,其目的是使Linux能够在瞬间可靠地处理数据和发布结果。由于在包括从服务器到手机在内的各个领域都出现了迅速增长,Linux操作系统已经进入了黄金时间,但它适用于包括车载环境在内的实时应用吗? MontaVista的答案是肯定的。MontaVista正在为Linux增添实时功能,提高其速度,使其更强壮,其目的是使Linux能够在瞬间可靠地处理数据和发布结果。MontaVista的首席执行官Jim Ready表示,新软件是一大进步,它极大地提高了Linux的吸引力。 Linux最初在服务器上获得了成功,现在已经在向包括手机和家庭网络工具在内的各类设备蔓延。它在对实时处理要求较高的设备中还不太普及,对实时处理要求较高的设备的二个例子是:汽车引擎电子设备、导弹导航系统。 LynuxWorks等其它公司也在销售实时版本的Linux。Jim Ready指出,这些公司通常是在Linux上再开发一个独立的实时操作系统,在Linux中增添内置的实时功能则有很大不同之处,这可能使嵌入式Linux的市场翻一番而达到30亿美元。 Wind River的营销总监John Fanelli表示,Linux最终将有强大的实时功能,但MontaVista的方法是错误的:它采用了非标准的代码。John Fanelli认为MontaVista的软件是“专有版Linux”,与Linux社区没有任何联系。它带来的问题比解决的问题还要多。他说,因为MontaVista的功能不是标准Linux的一部分,因此买主将被捆绑到MontaVista的版本上。这与Linux的主要目的之一是相违背的:得到各大高科技厂商支持的业界标准。很少有Linux公司的规模能够提供非标准版本Linux所需要的支持。

    时间:2014-01-03 关键词: Linux 车载 实时应用

  • CSR最新车联网应用—双网络、并发车载Wi-Fi网络功能

    CSR公司日前宣布推出CSR6030A11解决方案,这是CSR功能更丰富的独立车载Wi-Fi解决方案。去年4月,CSR推出了CSR6000系列车用平台,并与汽车制造商紧密合作,不断更新公司的Wi-Fi解决方案,以满足并超越用户期待。 CSR新型车载Wi-Fi解决方案在研发方面投入巨大,而且提供了更多的新功能。除了提升Wi-Fi传输性能,CSR6030A11还提供了“并发网络模式”,即同时支持两个网络的Wi-Fi连接。此外,CSR6030A11符合Wi-Fi Direct标准,这就意味着它可以连接到其他具备Wi-Fi Certified认证的Wi-Fi Direct设备上,无需依靠热点可以进行直连。这些功能为系统设计者提供了更大的灵活性,使其可以在快速变化的车载用户通信及娱乐环境中,支持更为广泛的网络拓扑和用户应用。 CSR汽车产品事业部连接市场主管Thomas Carmody表示:“自2009年以来,我们一直就这一平台与汽车客户密切接触,此次推出的CSR6030A11是我们的第三代车载Wi-Fi解决方案,这也显示出我们将必要投资用于帮助客户满足其用户需求的决心。近年来,汽车制造商致力于发展Wi-Fi战略,加强车联网环境中的用户体验。CSR6030A11可以很好地应对这些Wi-Fi需求挑战,同时也证明我们在为汽车市场提供Wi-Fi方案的强劲实力。” 并发模式 只需将CSR6030A11放置在车里,它就能够同时在两个不同的Wi-Fi网络中提供Wi-Fi连接性,这意味着同一台设备既可以在一个网络中充当Wi-Fi客户端,又可以同时在另一个网络中充当Wi-Fi接入点,这一功能是为了提高车载系统无线连接的灵活性。例如,借助这一功能,您可以设想将智能手机获取的互联网数据共享到音响主机,与此同时,音响主机还能成为一个车载Wi-Fi接入点,将智能手机的互联网连接提供给汽车内的各种消费电子设备。并发网络模式不仅支持传统Wi-Fi客户端和接入点,而且还可以提供与Wi-Fi Direct设备相同的功能。 Wi-Fi Direct Wi-Fi Direct是CSR6030A11加入的一款新的连接标准,它能够为Wi-Fi耳机、用户及其他设备提供USB标准有线连接相同的功能。Wi-Fi Direct顾名思义,意味着无线设备间的连接与通信简单便利,而无需担心这些设备的技术细节或特性。Wi-Fi Direct实现了简捷的设备间一键式连接和通信,可以用于从文档、音乐和视频到诊断数据等各种文件进行交换,并且在往返车载系统间更加无缝。 近期迹象表明,Wi-Fi Direct已确定成为手持设备和消费电子产品领域设备Wi-Fi互联的实施标准。根据市场报告,Wi-Fi Direct设备的年复合增长率在2011至2015年将达到79%。依靠CSR6030A11中的Wi-Fi Direct标准,CSR正在帮助汽车制造商为预期的Wi-Fi Direct设备爆发性增长提前做好准备。 CSR Synergy 除上述提到的令人惊喜的新特色之外,基于CSR不间断的Wi-Fi解决方案测试与研究,公司还致力于推出CSR6030A11固件和SynergyWi-Fi主机软件优化,这已为CSR6000之前的解决方案带来15%的Wi-Fi性能提升。对于用户来说,他们当然对这种Wi-Fi性能提升持欢迎态度,因为它提高了扩展的、数据密集型车载Wi-Fi应用的性能。 上市时间与定价 CSR6030A11将于2012年7月批量投产,欲进一步了解价格信息,请联系CSR代理商。 编者提示 CSR6000系列支持所有主流车载操作系统,包括Linux、Android、QNX和Windows Automotive。 CSR6030A11是前几代CSR6000产品的升级版,提供了引脚对引脚兼容,并加入了一些新的、先进的功能。 CSR自有的主机端的Wi-Fi驱动软件 ,支持所有CSR6030A11新功能。  

    时间:2012-06-13 关键词: csr Android 车联网 车载 fi wi

  • uCOS-II在车载GPS移动终端中的应用

    一、             统概述目前市场上的商用嵌入式系统产品,如Vxwork、PSOS和Windows CE等已经十分成熟,提供有力的开发和调试工具,但开发成本昂贵,而uCOS-II是一种多任务实时操作系统,内核源代码公开,短小精干,移植性较强,非常适用于一些小型系统开发。本系统描述了如何将uCOS-II移植应用到MCS51系列单片机上,并论述了如何把它实际应用到“嵌入式设备—车载GPS”系统中。1、  uCOS-II简介实时嵌入式操作系统uCOS-II是基于优先级的抢占式实时多任务操作系统,包含了实时内核、任务管理、时间管理、任务间通信同步(信号量,邮箱,消息队列)和内存管理等功能。绝大部分代码用C语言写成,与硬件相关部分用汇编语言编写,而且它的源代码是公开免费的。uCOS-II是面向中小型嵌入式系统的,包含全部功能模块的内核大约为10K,如果经过裁减只保留核心代码,则可压缩到3K左右。RAM的占用量与系统中的任务数有关,任务的堆栈要占用大量的RAM空间,堆栈的大小取决于任务的局部变量、缓冲区大小及可能的中断嵌套层数。应用程序的时间精度由系统时钟节拍决定,uCOS-II需要用户提供周期性的时钟信号源,用于实现时间延时和确认超时,一般时钟节拍应在10到100HZ之间(最大精度为10ms),因为uCOS-II在每一个节拍都要检查有没有更高优先级的任务在等待执行,若有,就要进行任务切换,所以时钟节拍率越高,系统的额外负荷就越重。2、系统的设计目标本车载移动终端主要完成以下这些控制功能:(1)位置及相关信息传送,包括实时请求发送、等时间间隔发送、等距离发送,传送方式包括GPRS方式和短信方式,由于用GPRS方式进行数据通讯按流量记费,每1K字节2-3分钱,费用相对短信低很多,因此本系统采用GPRS为主,短信为辅的通讯方式。(2)报警功能,分以下几部分:A、特定区域报警功能:设定报警特定区域后(如控制中心规定的行驶任务区域),当车辆驶出设定区域时,监控中心向车载单元报警,并及时记录车辆的实时位置信息。B、紧急报警功能:当车辆遇到抢劫、交通事故等紧急情况时,司机可以通过紧急求救按钮向控制中心发出求救信号,并上传车辆定位数据。C、防盗报警功能:当车辆设为防盗状态时,任何对车辆的非法移动,车载单元会自动报警并上传车辆定位数据。D、掉电报警功能:当车载单元主电源掉电(或被人为切断)时,车载单元会自动报警并上传车辆定位数据。E、能自动报警与手动报警相结合:系统支持手动的单键报警和智能设备产生的自动报警功能。单键人工报警需要司机进行快速隐蔽的单键操作快速报警。自动报警如智能非法移动报警,系统自动产生报警信息并发送到监控中心,并保存报警数据,监控中心的人员可以根据需要采取措施。(3)电源监控功能,实时监控备用电源,如果发现电量不够,将自动切换到充电模式,直到电量充足后自动切断充电模式。3、  系统的功能块系统结构图如图1所示,有外向内可分三层:硬件电路层、任务层、操作系统层。[!--empirenews.page--]图1 系统结构图二、硬件电路层设计本系统的移动终端主要包括以下四个部分组成:GPS模块、GPRS模块、手柄、单片机控制模块,其大致功能分述如下:(1)       GPS模块——用于卫星定位数据的采集,采集时间间隔可设定,最小间隔为1秒采集一次。(2)       GPRS通信模块——用于实现GPRS数据的收发、短信息收发和语音通话功能。(3)       手柄——用于语音通话。(4)       单片机控制模块——用于控制GPS、GPRS模块的数据接收、发送、语音通话控制、短信息收发、电源监测管理和对汽车进行控油控电等功能。三、任务层的设计1、系统任务层组成及其优先权设置系统任务层并行存在以下六个任务:监视任务、按键处理任务、摘挂机任务、GPRS任务、短消息任务、串口接收任务。每个任务均有以下三部分组成:应用程序、任务堆栈以及任务控制块。其中只有应用程序被烧入ROM,而任务本身则被置于RAM,待系统运行时再建立。任务堆栈用以存储CPU寄存器内容。当某任务由运行态变为其它状态时,CPU寄存器内容压入相应任务堆栈,反之则将相应任务堆栈内容置入CPU寄存器。作为系统中定义的一个数据结构,任务控制块的内容包括任务堆栈的地址、任务当前状态、任务优先权等。操作系统通过查询任务控制块内容实现对任务的管理。优先权的设置由各任务的执行顺序以及对系统安全性影响的大小决定,其优先权从高到低依次为:监视任务、按键处理任务、摘挂机任务、GPRS任务、短消息任务、串口接收任务。本系统采用静态优先权设置,即运行过程中任务优先权不变。2、  任务的状态本系统中各任务的状态有4种:等待态、就绪态、运行态以及中断态。状态的转换关系如图2所示。当一个任务占用CPU时该任务处于运行态,其优先权必较所有就绪态任务优先权高。若系统运行导致就绪态某一任务的优先权高于运行态任务优先权,则调用调度函数,运行态任务将丧失对CPU的占用权而转为就绪态,优先权最高的就绪态任务转为运行态。某一时刻只能有一个任务处于运行态。任务在就绪态和运行态间的转化被称为任务切换。当运行态的任务期待某一消息时(即任务和任务之间的数据传递),该任务将丧失对CPU的占用权而转为等待态,等待时间可由系统设定。若等待时间内该任务收到消息,任务将转为就绪态,否则将被时间管理函数强行转为就绪态。中断发生时运行态的任务将转入中断态,丧失对CPU的占用权。因中断中可能有消息发送使等待态的任务转入就绪态,故中断返回后将首先运行任务调度函数,决定任务状态。[!--empirenews.page--]四、软件层设计本系统选用μC/OS-II操作系统,将其移植到MCS51系列单片机上。系统采用的时钟节拍为Tick=50次/秒(即0.02秒/次),在main中创建所有任务和信号量、消息油箱、消息队列等。void main (void){ OSInit();//创建信号量、消息队列;HookSem = OSSemCreate(0); //唤醒摘挂机任务 GprsQ = OSQCreate(&GprsMsg[0],10);SMsgQ = OSQCreate(&SMsg[0],5);//创建内存区域;Mem20 = OSMemCreate(Part1,20,50,&err);Mem50 = OSMemCreate(Part2,100,10,&err);//任务创建;OSTaskCreate(WatchDogTask,(void*)0,&WatchDogStk[0],2); //监视任务OSTaskCreate((void*) KeyTask,(void*)0,&KeyTaskStk[0],3); //按键处理任务OSTaskCreate((void*)WriteTask,(void*)0,&WriteStk[0],4); //摘挂机任务OSTaskCreate((void*)GPRSTask,(void*)0,&GPRSStk[0],5); //GPRS任务OSTaskCreate((void*)SMsgTask,(void*)0,&SMsgStk[0],6); //短信息任务OSTaskCreate(ReadTask, (void *)0, &ReadStk[0],7); //读串口任务OSStart();}1、监视任务因本系统工作于干扰强烈的汽车环境中,虽已采取多种硬件抗干扰措施如加屏蔽罩、可靠接地、设置软件陷阱等,仍有可能因瞬间扰动使系统陷入混乱,导致系统跑飞而只能依靠看门狗复位重新运行,以致无法实现设计目标。为此,本系统采用监视任务监督其它任务是否正常运行,若某一任务未能正常运行则采取相应措施以尽量减少看门狗复位次数。监视任务设计思路为:被监视任务正常运行时其执行时间是可预估的,被监视任务在其即将运行完毕时向监视任务发送消息说明自身运行正常。被监视任务运行时,监视任务处于等待态,等待被监视任务给它发送消息,等待时间被设定为预计的任务正常运行所需的最大时间。若等待时间内监视任务收到消息,则认为发送消息的任务运行正常,依照各任务执行顺序的先后下一任务开始运行,监视任务等待下一任务发送的消息。若等待时间已过,监视任务仍未收到消息,则系统的时间管理函数将强行把监视任务视为就绪态。因监视任务的优先权是最高的,它将抢占对CPU的控制权并采取相应的纠错方案。2、  按键处理任务按键处理任务主要对防盗报警、抢车报警、打接电话按钮进行处理,当任务循环检测到按键按下时,按键处理任务发送相应的信号量到处理相应按键的程序中。[!--empirenews.page--]3、  摘挂机任务当拿起听筒或放下听筒时,就产生中断。在中断中,调用OSSemPost(HookSem)来唤醒摘/挂机任务,同时清除中断标志。摘挂机任务调用OSSemPend(HookSem,0,&err)来获得信号量。获得信号量后,根椐摘挂机状态标志来判断是摘机还是挂机。在挂机的时候,如果先前是在响铃的时候摘机的,那么摘挂机任务把它当做已接来电处理;如果不是在响铃的时候摘机的,那么在挂机的时候摘挂机任务就把它当做已拨电话处理。4、  GPRS任务当读串口任务接收到GPRS数据时,调用OSQPost(GprsQ,(void *)&Gprs_Buf[0])函数向来唤醒GPRS任务,GPRS任务不断调用gprs_msg =OSQPend(GprsQ,50,&err)来获得从读串口任务中发来的GPRS数据,根据当前的状态决定是否向控制中心发送定位数据及相关信息。5、  短消息处理任务在GPRS网络不可用的情况下,系统启动短消息任务进行数据的通信,当读串口任务接收到短消息时,调用OSQPost(SMsgQ,(void *)&SMsg_Buf[0])向短信息任务发送消息,短信息任务不断调用sm_msg =OSQPend(SMsgQ,100,&err)来获得短消息,然后进行相应的短信收发处理。6、  读串口任务在读串口任务中,从接收缓冲区中读取来自GPRS通讯模块和GPS模块发送的字符串,同时分析接收的字符串坐相应的处理以及向GPRS任务和短消息任务发送消息。结语本文描述了在MCS51的硬件平台上实现uC/OS-II,并针对传统的单片机程序设计方法设计的稳定性不佳的问题,提出了基于uC/OS-II的嵌入式系统设计的方案。但是,使用实时内核来管理这些任务,会增加系统的内存容量和CPU时间的消耗,而且任务调度的优势不能很好地显示出来,因此,该设计有一定局限性。但是,在系统的内存足够大、CPU运行速度足够快的情况下,使用实时内核uC/OS-II设计,可以提高了系统的可靠性和稳定性,有利于系统的后继开发,本系统选用CPU为W78E516,外扩32K RAM,晶振频率为22.1184M,能很好的满足系统的要求。

    时间:2009-05-05 关键词: GPS ii 车载 ucos uc/os 端中的

  • 基于AUl200与OS8104的车载GPS

    摘要:随着国内汽车电子产业的迅速发展,车载导航系统和MOST网络传输系统成为当今汽车电子产业界的两大热点。导航系统与MOST网络结合,使传统的GPS导航仪,不仅增加了流媒体播放功能,而且同时还减少了汽车布线,增加产品的抗电磁干扰性和可扩展性。对车载导航系统和MOST网络进行了研究,改进传统的车载导航系统,并给出设计方案。由于采用低功耗的AUl200和MOST网络设计,提高了系统的性能、集成度以及可扩展性,同时使得该系统具有功能强,功耗低,可靠性高等特点。关键词:MOST;I2S;多媒体;GPS    基于MOST(Media Oriented Systems Transport)车载光纤传输多媒体已成为汽车多媒体的主流,国外已将此技术普及到轿车上,并且对数字多媒体设备进行规范。采用MOST光网络传输不会受到电磁干扰的影响,同时也减少了总线布线。随着汽车光网络技术的发展,会有越来越多的汽车厂家支持MOST协议,因此,可以预测国内的汽车光纤传输多媒体视听产品亦将出现广泛的市场。1 AUl200简介    AMD公司于2005年1月推出了专门为多媒体设计的处理器AUl200。它支持NORFLASH,NAND FLASH启动,支持DDR I和DDR II SDRAM,支持RGB LCD显示,支持I2S,USB 2.0,SD卡等功能,是一款高性能低功耗的MIPS多媒体处理芯片。支持WINCE,Linux操作系统。2 系统工作原理及芯片选型    该系统选用Hynix的HY5DUl21622BT-D4364 MB DDRI内存,三星K9F1208UOB 64 MB NAND FLASH,富士康群创7寸LCD AT070TN83,顶天国际REB3310 GPS模块,板上留有UART调试输出接口,方便调试。    系统通过FLASH启动,将程序拷贝到内存中运行,用户可以通过触摸屏点击菜单选择需要运行的功能,如GPS,播放MP3、MP4,或者选择接收处理来自MOST网络的音频数据。在调试过程中,可以通过预留的DEBUG口外接LVTTL转RS 232电平转换芯片将调试信息输出到PC机,还可以通过USB升级烧录程序。SD卡可以存放电子地图、音视频文件或其他电子文件等。软件采用WINCE操作系统,WINCE带有AUl200 BSP驱动包,裁减方便。系统工作原理框图如图1所示。2.1 I2S音频设计方案及其部分工作流程    I2S芯片选用WM9713L芯片,该芯片的主要作用是将AUl200和OS8104传输过来的音频数据进行D/A转换,变成模拟的音频信号输出。WM-9713L芯片可实现两路I2S音频数据输入,支持AC97音频数据和PCM I2S音频数据输入接口,可以很方便地实现AUl200同WM9713L,OS8104同WM9713相连接。同时WM9713L PCM/I2S功能模块可以工作在四种工作模式:DSP模式,左声道模式,右声道模式和I2S模式,D/A时信噪比为94 dB,支持WINCE嵌入式操作系统。WM9713L同时还可以驱动四线式触摸屏。    功放选用Supec公司的BTL类SA4871功放。该功放工作在电压范围DC 2.5~5.5 V,可以直接用锂电池供电,输出3 W功率。    WM9713L附带BTL功放,由于WM9713L只有400 mW的输出功率,SA4871有3 W的输出功率,考虑到用户对音量的大小要求选择SA4871。播放MP3、MP4等多媒体文件时,声音可以通过AUl200 I2S接口送到WM9713L进行D/A转换。如果需要播放通过MOST光纤传输的音频数据,这时可以通过设置WM9713L内部寄存器18H使音频数据直接通过WM9713L进行D/A输出。[!--empirenews.page--]    WM9713与AUl200 OS8104 I2S数据传输接线示意图如图2所示。2.2 0S8104工作方式    采用OASIS公司生产的OS8104,其主要作用是将光网络上的数据进行分解,输出I2S音频数据到WM9713L进行解码。其控制接口有多种工作方式,I2C,SPI,并口模式等,在这里选择I2C工作模式来配置OS8104的内部寄存器。    OS8104 I2S支持多种数据源格式,如Philips,Sony,Matsushita等。由于WM9713L支持I2S的PCM数据格式,通过对比两者的时序波形图,选择Philips或MatslJshita,WM9713L工作在DSP模式。为了接收整个MOST系统的I2S数据,还需要配置OS8104寄存器来设定I2S的采样频率。这里采用44.1 kHz采样频率。MOST的数据传送使用512 b的帧,以及16个帧的块。每个帧内除了前导码和其他内部管理位以外,还包含有同步、异步和控制数据。MOST网络接口设备的源数据口配置为I2S串行方式,最大的同步数据传输率为:    3 软件界面开发    采用WINCE 5.0嵌入式操作系统,其特点是性能稳定。EVC(Embedded Visual C++,是Windows CE下软件开发工具之一)开发图形界面,其特点是界面美观。EVC开发环境和Visual C++相似,基于VisualC++的开发人员比较容易熟悉并掌握EVC进行嵌入式应用界面开发。有较多的电子地图支持WINCE操作系统,如凯立德、道道通等。    WINCE移植需裁剪,先安装WINCE 5.0 AUl200BSP驱动包再裁减,同时更改部分底层驱动程序。可以通过电脑RS 232串口输入按键来控制系统启动过程,其程序流程图如图3所示。4 测试结果及性能分析    AUl200功耗在400 MHz主频时低于400 mW,本系统AUl200内核在播放MP4或导航时工作在396 MHz主频,DDR工作在198 MHz,整机功耗小于4 W(菜单操作,不含喇叭)。在播放MP3时通过降低系统和DDR频率,关闭GPS模块,使MOST处于零功耗状态模式等方式来降低功耗,经测试可使功耗降低1.5 W播放1 kHz采样率为44.1 kHz的正弦波,信噪比为85 dB,有比较好的音质效果。5 结语    该多媒体播放器,以低功耗、高性能、多用途为主要目标,选择AUl200为主芯片,尽量优化外部电路,降低功耗,增加使用寿命,提高用户体验。    该设计的新颖之处:将MOST网络与多媒体GPS导航相结合,实现了MOST音频和节点流媒体音频的切换;采用WINCE操作系统,界面美观。

    时间:2010-04-12 关键词: WinCE GPS 车载 os8104 aul200

  • 基于Atmega8的实用车载空调控制器电路

    电子设备在汽车中的广泛应用被认为是汽车技术发展进程中的一次革命。随着汽车电子技术的发展和汽车控制单元的增加,汽车电子技术正朝着集中化、智能化、网络化和模块化方向发展。车内CAN/LIN总线网络的使用使得车内各个控制单元的数据可以共享,从而使在汽车嵌入式计算平台上采用多变量多目标的综合协调控制成为可能。另一方面,网络化拓展了汽车的服务领域,为汽车的移动通信、移动办公、娱乐、导航定位和远程诊断与维修提供了技术基础,逐步形成了汽车、家庭、社会一体化的互动体系。汽车嵌入式计算平台在该一体化体系中担当重要角色。  本文介绍了车载嵌入式计算平台,它为完成汽车辅助驾驶和安全监控、远程诊断和维修、在线/离线导航定位、娱乐、与家庭互动等各项功能提供了很好的软硬件平台。下面将从汽车/家庭/社会一体化体系结构、计算平台的硬件体系、软件体系三个方面进行说明。  1 汽车/家庭/社会一体化体系结构  汽车嵌入式计算平台为实现各种功能服务提供了良好的软硬件平台。车外网络和车内网络结合构成了汽车/家庭/社会一体化的互动体系结构。该体系结构示意图见图1,车内计算网络示意图见图2。在图1中,交通管理中心、汽车服务中心、互联网服务中心和娱乐服务中心等共同组成汽车远程服务平台,家庭/办公室和汽车组成汽车/家庭互动平台体系。其主要提供三类服务:  (1)汽车集成服务。主要指汽车远程诊断服务和汽车最优控制方案服务。汽车计算平台通过CAN/LIN总线读取电子控制模块(ECM)诊断产生的故障代码,然后通过汽车网关利用无线通信技术发送至最近的汽车服务中心。汽车服务中心分析故障代码形成诊断方案并以服务的形式发送到汽车嵌入式网关,经过协议解析后再发送到汽车嵌入式计算平台,最后通过人机接口显示给驾驶员。汽车制造商同时向汽车提供下载最佳汽车控制方案的服务,以适合汽车在不同的行驶条件下运行。这些服务主要由汽车远程服务平台或汽车制造商提供。  (2)导航定位服务。运行在车载嵌入式平台上的应用层软件接收GPS接收仪发送的数据,借助车载的地理信息系统(电子地图)实现导航。此外应用层软件还可以把GPS接收的数据发送到远程汽车服务平台或第三方服务提供商,再由他们把导航信息以服务的形式发送给汽车嵌入式平台。这些服务对准确性和及时性要求比较高。如何准确高效地传递这些信息成为决定这类服务质量的关键。  (3) 个人/娱乐信息服务。汽车/家庭互动平台体系使人们可以在驾驶汽车的过程中了解家中的情况,将汽车-家庭连为一体。车载信息处理(Telematics) 系统的地位日益突出。它通过无线通信技术将安全保密信息或娱乐信息以服务(Service)的方式传递至汽车。  2 汽车嵌入式计算平台的硬件体系结构  硬件平台的设计必须根据其要完成的功能来确定。本项目是将汽车嵌入式网关集成到计算平台中,因此,计算平台要完成的功能主要为:与远程服务中心的无线通信功能;导航功能;音视频播放的功能;通过CAN/LIN总线访问车内电子控制模块的功能等。基于32位ARM内核的EP9315处理器具有良好的计算能力和丰富的外围接口,在对其做了适当的外围扩展后设计出如图3所示的汽车嵌入式计算平台。EP9315是高度集成的片上系统处理器。它拥有200MHz ARM920T处理器及支持Linux、Windows CE和其他许多嵌入式操作系统的存储器管理单元(MMU)。EP9315内置一个高性能1/10/100 Mbps以太网媒体存取控制器(MAC)及外部接口,可连接SPI、I2S音频、Raster/LCD、IDE存储外设、小键盘和触摸屏等。该器件还集成了运行速度为12Mbps的三端口USB 2.0全速主机和3个UART。PCMCIA接口的无线网卡提供远程网络的访问功能,可以实现对远程服务中心网络服务器的访问。IDE接口的电子硬盘用来存放地理信息系统,为导航软件提供电子地图。GPS接收仪通过串口与EP9315处理器相连,提供实时的车辆地理位置信息。触摸屏是人机输入界面,用来完成各种用户信息的设置。LCD显示屏和扬声器是人机输出界面,可以播放MPEG4视频或提示语音报警信息。CAN/LIN总线接口可以挂接汽车内的 CAN/LIN总线,提供对车内CAN/LIN总线的访问。基于上述硬件平台所设计的软件能很好地完成计算平台所要完成的各项功能。  3 汽车嵌入式计算平台的软件体系结构  软件平台采用嵌入式Linux设计。上文已对软件部分要实现的功能进行了一定的描述。其中导航任务是一个实时任务,而Linux不具有实时功能,因此需要改进Linux,使其支持实时任务。基于实时Linux的软件体系结构如图4所示。系统上电后,首先启动LINux操作系统,然后启动QT引擎,再启动 QT主程序。在LCD显示屏上显示各个应用程序的选择按钮,通过触摸屏按下相应的按钮,即会启动相应的应用程序。下面介绍主要应用程序的执行流程。   (1)导航应用程序。导航程序启动后,用户通过触摸屏输入旅程的起始地点和目的地点。导航软件把该起始地点和目的地点发送到导航服务中心(本项目中为无线局域网中一台计算机),并且每隔一定时间调用导航API从串口1接收GPS接收仪发送的当前车辆的实时地理位置数据,再调用通信API,通过无线网卡把该地理位置数据发送到导航服务中心。导航服务中心根据接收到的旅程起始地点和目的地点计算出最优行使路径,并且每接收到车辆位置信息时,都计算出当前车辆所在的位置,把包含当前车辆位置和应该行使路径的小范围的位置图像发送到车辆。车上的导航软件把接收到的图像在LCD上显示出来,通过该图像司机就可以了解车辆当前的位置和下一步要行使的路线。  (2)诊断应用软件。诊断服务软件启动后,该软件调用诊断API读取连接在CAN/LIN总线上的各个ECU的故障代码,然后再调用通信API把这些代码发送到汽车服务中心(本项目中是与导航服务中心相同的计算机)。汽车服务中心分析故障代码,确定出汽车的具体故障情况,把最终结果通过无线网发送到汽车嵌入式平台。汽车嵌入式平台通过无线网卡接收这些数据,诊断服务软件读取该数据,并在LCD上显示。  (3)汽车/家庭互动应用软件。当在汽车嵌入式平台上运行家庭/汽车互动系统软件时,该软件在LCD上显示家庭中的各个电器及其状态。当用户通过触摸屏发出改变某个电器状态的命令时,汽车/家庭互动软件调用家庭API函数把该命令发送到家庭网关(由社会第三方服务公司提供)。在家庭网关上运行着实现 OSGI协议的软件,该软件可以完成所接收到的命令,并把执行的结果发送到汽车嵌入式平台。  (4)安全监控软件。CCD摄像头把汽车行驶车道的图像输入到DSP处理系统,DSP处理系统对图像数据进行分析,并把分析结果送到在汽车嵌入式平台上运行的安全监控软件,监控软件分析该数据。如果汽车偏离行驶车道,监控软件则调用多媒体API通过扬声器或者在LCD上显示信息提醒驾驶员,从而实现安全监控和报警功能。

    时间:2009-03-10 关键词: 车载 QT atmega8 空调控

  • 基于嵌入式Qt的车载GUI平台的设计

    1 引言    随着经济社会的不断发展汽车已进入普通家庭,汽车用户对车载娱乐系统的要求不断地提高,希望汽车载娱乐系统的功能更加强大娱乐设施更加完美。嵌入式GUI(Graphical User Interface)可以满足用户需求,人机交互好,作为车载娱乐系统中人机交互界面的开发平台,对整个系统的设计起着决定性作用,越来越受到开发者的青睐。目前比较流行的GUI平台有Qt/Embedded、紧缩的X Windows系统、MicroWindows以及MiniGUI系统。    X Window系统是一个基于客户/服务器(Client/Server)结构的视窗系统,基于X的终端(服务器)上显示出来。此系统配置在大多数的UNIX系统、DEC的VAX/VMS操作系统以及Linux系统中,可以自由拷贝以及传播,但是系统庞大,占用内核资源较多。MicroWindows是一个完全开放源码、分层设计的经典GUI系统,可以替代X Window系统,但是某些关键性代码使用了汇编语言。MiniGUI系统适应于中小型企业的嵌入式GUI平台,采用分层结构,并在核心层采用hash表的方式。本文采用的Qt/Embedded也是分层体系结构,在功能提供方面采用C++类方式。2 嵌入式GUI的实现平台    GUI是图形用户接口,一般用于PC机上人机交互界面的设计。而对于嵌入式GUI来说,由于嵌入式设备对资源的要求很严格,不同的嵌入式设备需要定制不同的嵌入式系统,那么对GUI的要求也就不一样,因此,对于不同的嵌入式系统来说GUI也必须是可定制的。对于嵌入式的硬件来说,要求定制的嵌入式GUI应具有轻型、占用资源少、性能高、可靠性高、可配置等特点。由于Linux操作系统具有源码公开性、可移植性、可裁剪性和灵活性等优点,所以嵌入式GUI的开发常在Linux环境下进行。    Qt/Embedded是著名的Qt库开发商正在进行的面向嵌入式系统的Qt版本。它是专门为嵌入式系统设计图形用户界面的工具包,包括一个完整的窗口系统。它的特点是可移植性比较好,设计者能轻易的加入各种显示设备和硬件输入设备,很多基于Qt的XWindow都可以非常方便的移植到嵌入式版本。    Qt/Embedded为开发者提供了丰富的API调用功能,并公开源代码。Qt/Embedded提供了非常丰富的窗口小部件(Widgets),并且还支持窗口部件的定制,因此它可以为用户提供漂亮的图形界面,但同时丰富的窗口对象也增大了软件的体积,所以,Qt/Embedded一般用于对运行环境不太苛刻的嵌入式设备中。3 嵌入式Qt系统的特点    Qt/Embedded移植了大量的原来基于Qt的XWindows程序,并提供了非常完整的嵌入式GUI解决方案,是一个成熟的GUI平台,具有如下特点:    (1)Qt遵循GPL协议,开放主要的源代码,用户可以在GPL的规定下自由添加新特性。    (2)与其他嵌入式GUI相比,嵌入式Qt不仅是一个完整的窗口系统,而且也是一个应用程序框架,这更有利于应用程序的开发。    (3)Qt具有丰富的API,包括多达250个以上的C++类,支持诸如对图形、网络、数据库、I/O操作、各种控件和XMI等众多功能,可满足大多数嵌入式应用系统开发的需要。    (4)Qt是一个GUI仿真工具包,它使用各自平台上的低级绘图函数仿真MS Windows和Motif(商用Llnix的标准GUI库),因此程序运行速度快。    (5)Qt良好的封装机制使得Qt的模块化程度非常高,可靠性好,易于程序开发。    基于Qt的这些特点,在本车载嵌入式娱乐系统的开发过程中,本文采用了嵌入式Qt作为图形用户界面开发的GUl支持平台,有效提高了应用程序的开发速度。4 基于嵌入式Qt的车载GUI的设计4.1 基于嵌入式Qt的车载GUI的总体设计    基于Linux的车载娱乐系统运行环境如表l所示,底层由Linux内核和驱动程序构成。该内核是经过裁减过的嵌入式Linux2.4,其中包括电源管理系统;驱动程序提供对各种接口硬件的支持;中间层是基于QT/Embedded的嵌入式Qt库。它精简和优化了各种图形操作,程序运行时无需额外系统的支持,可以有效减少内存消耗和CPU负担。QT/Embedded本身是可扩展的,并能不断地升级。开发人员可以根据自己所面对的嵌入式设备的实际需要,对其进行适当的裁减,经过裁减所得到的QT/Embedded可以大约节约800k到3MB的内存空间,这样也就意味着用Qt开发比用其他工具包开发相同的应用程序,在生成可执行文件后,代码所占用的内存空间要小。最顶层是整个车载娱乐应用系统,它是实现车载娱乐具体功能的应用集合。[!--empirenews.page--]    基于嵌入式Qt的车载嵌入式娱乐系统软件,最大限度的满足了车载视听娱乐的要求。提供视频播放、音频播放等多媒体软件,个人信息管理软件,无线网络服务等。其系统架构如图l所示。4.2 基于嵌入式Qt的窗口系统结构设计    本文设计的上层GUI窗口系统采用了客户/服务器系统结构。该窗口系统包括:一个服务器进程、一个或者多个客户进程。服务器负责为客户和本身分配显示区域,生成鼠标、键盘或者触摸屏事件,它通常包含那些启动客户的用户界面。而客户则通过与服务器通信来申请显示区域,接受鼠标或触摸屏事件。客户可以直接访问所分配的显示区域,以便为用户提供GUI服务。服务器和客户通过共享内存的方式来传递所分配显示区域上的信息。窗口系统体系结构如图2所示。    服务器(进程)维护着一组区域,当窗口被创建、移动、改变大小和破坏时,通过这组区域来改变每个客户的申请。该区域存放在共享内存中,在执行绘图操作时,客户可以从中读取信息;服务器连接着一些系统设备,如鼠标、键盘或者触摸屏,服务器负责将这些设备所产生的事件发送到适当的客户进程。服务器能够生成一个设备独立的鼠标或键盘事件,并将其发送到相应的客户进程。触笔设备通常没有鼠标光标,但是触笔操作能转化为设备独立的鼠标事件,然后由客户以标准事件进行处理。    嵌入式Qt为客户(进程)提供API,当客户使用Qt API画线时,QT/Embedded库能直接访问显存,完成画线工作;在一些情况下嵌入式Qt客户库需要与服务器进程建立连接,如在客户进程启动时,发生了会影响到全局后果的操作而与服务器通信时。例如,当客户进行了拖放操作后,由于窗口覆盖而导致显示区域的变化,则从用户那里接收到鼠标和键盘事件时就需要建立这样的连接;嵌入式Qt客户库负责处理所有的绘画操作,包括文本显示和字体处理等。[!--empirenews.page--]4.3 基于嵌入式Qt的事件响应设计    在前述的客户/服务器系统结构中,每个键的按下、释放都以QWSKeyEvent事件发出。一个QWSKeyEvent事件通常包括以下各域:    Unicode:Unicode值。    Keycode:Qt键码值,定义在qnamespace.h头文件中。    Modifier:位域, 包括Qt::ShiftButton,Qt::ControlButton和Qt::AltButton。    Is press:键按下时为真,释放时为假。    Is auto repeat:键处于自动重复状态时为真。    嵌入式Qt处理键事件的过程为:键盘驱动程序负责从设备中读取数据,并将键事件发送到服务器中。当服务器从键盘驱动程序接收到一个键事件时,它首先要经过一个事件过滤器,然后再将其发送至每个客户进程,最后由客户进程负责处理键事件,并将其发送到适当的窗口。具体流程如图3所示。    这里,键事件未必都来自键盘设备,包括触摸屏,触笔都可以产生键事件。服务器在任何时候都可以调用函数QWSServer::sendKeyEvent()产生键事件。根据这个特点,再结合事件过滤器的特性,便可构造出所需的输入服务器平台。    在Qt中,一个事件通过调用QObject::event()被发送到继承自QObject的对象。事件发送就是一个事件已经产生,由QEvent正好去表达,且QObject需要去回应。多数事件来自窗口系统类QWidget,如QMouseEvent,QkeyEvent事件。某些事件来自其他源头,如QTimerEvent,而某些来自应用程序,Qt会一视同仁的处理。    事件过滤器在目标对象处理之前去处理事件。过滤器通过调用QObject::eventFilter()实现,它可以接受或丢弃过滤,也可容许或拒绝进一步去处理事件。如果所有的事件过滤器允许进一步的处理事件,事件自己就被送达目标对象。本文在服务器进程中安排事件过滤器,接收键事件,经过处理后,将结果发送到客户进程。在客户进程中,处理键事件,并发送到适当的窗口中。5 结语    嵌入式Linux是目前流行的嵌入式系统解决方案,而嵌入式GUI是嵌入式Linux不可缺少的组成部分。本文通过分析、比较目前流行的几种嵌入式GUI,选择了嵌入式Qt作为研究对象并对其进行了深入讨论,在此基础上完成了基于嵌入式Qt的车载GUI的设计和实现,具有较高的经济价值,并可为其他嵌入式娱乐系统提供参考价值。

    时间:2009-04-06 关键词: 车载 gui QT 于嵌入

  • 基于S3C2440的车载GPS/GPRS跟踪监控系统研究与实现

    摘要:为了实现个人及集群车辆的安全管理,在S3C2440的硬件平台基础上,利用嵌入式Linux操作系统强大的内核与外设的功能,开发了具有导航跟踪与监控功能的智能终端系统,介绍了该系统各个部分的组成原理与设计方法,优化了通信服务器的性能,解决了同类产品普遍存在的通信服务器性能瓶颈问题。 关键词:ARM;GPS;GPRS;Linux 0 引言     随着交通系统的不断发展和完善,定位导航系统的应用范围和领域也越来越广泛,基于GPS,GPRS/GSM,GIS等的车辆跟踪与监控系统正在受到人们越来越多的青睐,显示出强大的发展潜力。GPS(Global Position System,全球定位系统)是美国从20世纪70年代开始的研制。19 93年正式投入运行,它能够全球、全天候、连续实时地为用户提供高精度的三维坐标、三维速度和时间信息。GPS的出现从根本上改变了人们获取空间信息的方式,特别是在交通工具导航、监控、跟踪等领域具有很大的应用价值和发展潜力。     本文在ARM9的硬件平台基础上,利用嵌入式Linux操作系统强大的管理平台的内核与外设的功能,开发了具有导航跟踪与监控功能的智能终端系统。 1 跟踪系统概述     根据车载系统的实际需要,本文在分析GPS的定位原理与GPRS的无线网络结构及特点的基础上,对硬件平台各器件和模块进行选择,提出了终端硬件电路的设计方案;对实时嵌入式操作系统Linux的启动代码移植、内核定制、根文件系统的制作、驱动开发等方面进行了研究;通过选择导航电子地图数据,坐标转换库和图形用户界面等设计了终端的应用程序,并为服务中心的导航监控程序给出一个可行的方案。 2 硬件设计     本系统的终端是以ARM9TDMI-S内核的三星S3C2440A为中央处理器,外设模块有GPS模块,GPRS模块;使用实时多任务内核为Linux 2.6.14。     本系统硬件设计框图如图1所示,系统结构分为六部分,分别为处理器、存储系统、人机接口系统、GPS定位部分、电源管理、GPRS无线通信部分。使用S3C2440作为主控处理器芯片协调其他四个子系统正常工作,完成GPS定位数据采集、存储、图形显示、音频采集与播放、用户输入,以及与GPRS的通信功能。[!--empirenews.page--] 2.1 S3C2440介绍     S3C2440是三星推出的一款基于ARM920TDMI-S内核的16/32位RISC嵌入微处理器,它是专为手持设备与一般的消费电子而设计的,能满足小型嵌入式系统中低成本低功耗高性能小体积的要求,频率稳定运行在405 MHz,最高可达533 MHz。S3C2440集成了丰富的片上资源,在开发过程中可有效减少外围的设备部件,以降低系统的成本。 2.2 存储系统     本系统使用的SDRAM是由韩国现代公司的HY57V561620芯片,作为数据存储空间。该芯片具有32 MB的存储空间和16 b数据宽度,适合需要大容量和高带宽的嵌入式系统使用,芯片采用3.3 V的外部电源。整个存储空间被分为4个Bank,每个Bank的容量为4M×16 b。     使用的NAND FLASH是三星公司推出的K9F1208芯片,作为程序存储空间。芯片工作电压为3.3 V,该芯片的存储容量为64 MB,整个存储空间被分为4096个Block,每个Block又被分成32个Page,而每个Page的容量为528B(512 B+16B),其中16B空间是作为I/O缓冲器使用的。     考虑到系统需要存储大量的地图信息,而NANDFLASH只有64 MB,其中绝大部分的空间已被Linux操作系统的启动代码及操作系统的镜像和系统根文件系统占用。因此,在设计系统时加入了SD卡接口电路。S3C2440集成了SDI接口,该接口支持各种容量的SD卡,并可工作在DMA模式和中断模式。 2.3 人机接口模块     LCD液晶屏由于具有体积小、重量轻、低电压、低功耗等特点,非常适合本系统的要求。LCD屏显示图像,不但需要LCD驱动器,还需要有相应的LCD控制器。LCD控制器则有专门的外部电路来实现。     S3C2440芯片集成了LCD控制器,可以支持各种单色,伪彩,真彩液晶屏,TFT彩屏,还提供1通道的LCD专用DMA。本系统中所外接的LCD是NEC 3.5寸触摸式、彩色液晶屏,型号为NL2432HC22-23B。 2.4 GPS模块     GPS系统采用高轨测距体制,以观测站至GPS卫星之间的距离作为基本观测量。通过对4颗或4颗以上的GPS卫星同时进行伪距或相位的测量即可推算出接收机的三维位置。根据所接收到的经纬度信息,与电子地图数据进行比较,可在地图上显示出车辆当前的位置和行驶方向。     GPS模块是GPS15L/H。接口特性如下:RS 232输出,可输入RS 232或者具有RS 232极性的TTL电平。可选的波特率为:300 b/s,600 b/s,1 200 b/s,2 400 b/s,4 800 b/s,9 600 b/s,19 200 b/s。     串口输出协议:输出NEMA0183格式的ASCII码语句,输出:GPALM,GPGGA,GPGLL,GPGSA,GPGSV,GPRMC,GPVTG(NMEA标准语句);PGRM B,PGRME,PGRMF,PGRMM,PGRMT,PGRMV(GARMIN定义的语句)。还可将串口设置为输出包括GPS载波相位数据的二进制数据。输入:初始位置、时间、秒脉冲状态、差分模式、NMEA输出间隔等设置信息。在缺省的状态下,GPS模块输出数据的波特率为4 800 b/s,输出信息包括:GPRMC,GPGGA,GPGSA,GPGSV,PGRME等,每秒钟定时输出。 2.5 GPRS模块     考虑到监控车辆是移动的,因此车载终端和监控中心之间的数据传输必须采用无线的方式。本系统采用西门子公司的GPRS模块SIM300,该模块适合工作在环境变化大,周围环境较恶劣的场所。本模块具有标准AT命令接口,可以提供GSM语音、短消息和GPRS上网等业务。根据系统的功能要求,本系统只要实现S3C2440与模块之间的通信,并将GPS的经纬信息发给服务中心,并进行服务中心与客户终端之间的话音信息传送。 3 应用程序的设计 3.1 导航程序的设计思路     开发终端导航应用软件至少做以下几个方面的工作:     (1)导航电子地图一般都是分层的数字矢量地图,具有一定的分层结构,比如道路层、兴趣点层、文本层等。它提供最低层的地理位置经纬度信息,还有对经纬度信息以及每个数据字段进行诠释的相关文档。     (2)平面、球面坐标的转换程序,导航电子地图的原始数据都是经纬度的坐标信息,需要将这些经纬度的坐标信息转换为平面坐标的形式才能制作出电子地图。在开发过程中,实现某种功能还需要平面坐标和球面坐标的来回转换。     (3)图形用户界面。本系统选用QT/Embeded来作为图形用户接口界面。QT Designer是一个跨平台的符合C++规范的图形用户界面程序开发工具。QT本身是一个类库,它遵循C++规范,同时对C++作了一些扩充。它主要用于Linux系统,是构造KDE桌面环境的基础。 3.2 导航程序的开发     导航电子地图数据实际上是分层的矢量地图形式,首先需要使用QT的图形显示函数将矢量地图分层画出,分为道路层、道路名层、交叉结点层、兴趣点层等,然后在此基础上开发出相应的功能。整幅地图可用一个对象来表示,每个矢量地图层可看作是大对象内的一个小对象,它们之间是包含关系。以后的操作是根据不同的功能对不同的矢量层对象进行操作。 3.3 服务中心的程序设计     服务中心的软件,主要负责对车辆的位置进行监控,并对运营车辆进行调控。设计本系统时,为节省开发时间,使用了第三方的地图软件,在开发时主要做的就是在PC机端接上GPRS模块,用于接收终端发送过来的位置信息,把接收到的信息进行解析,并把取得的数据提供给地图软件。[!--empirenews.page--]     车辆跟踪监控是系统最基本、最重要的功能,是指系统有效运行时对车辆行驶状态进行实时监控,在电子地图上实时地显示地图匹配后受控车辆的运行轨迹。监控中心通信服务器接收到车载单元发送来的信息后转发给指定的监控台,监控台系统软件对定位数据解析后,根据位置信息将车辆在电图上显示出来。车辆跟踪监控程序设计流程图如图2所示。 4 Linux交叉编译环境的建立及程序的实现     基于Linux操作系统的应用开发环境一般是由目标系统硬件(开发板)和宿主PC机所构成。目标硬件开发板用于运行操作系统和系统应用软件,而目标板所用到的操作系统的内核编译、应用程序的开发和调试则需要通过宿主PC机来完成(所以称为交叉编译)。双方之间一般通过串口,并口或以太网接口建立连接关系。 4.1 Boot-loader启动代码的原理     在嵌入式系统中,系统引导程序(Boot-loader)可以完成对ARM板上的主要部件如CPU,SDRAM,FLASH,串行口等进行初始化操作,也可以下载文件到系统板,对FLASH进行擦除与编程。Boot-loader主要作用是初始化一些必要的设备,然后调用内核,同时传递参数给内核。其工作流程如下:检测SDRAM的位置和大小并进行初始化;初始化并启动一个串口,作为内核的控制台;检测系统结构,检测机器类型;创建和初始化内核,传递系统内存的大小和位置,以及根文件系统的位置。 4.2 配置MINICOM     在Linux操作系统Xwindow界面下建立终端(在桌面上点击右键→新建终端),在终端的命令行提示符后输入MINICOM,回车,出现WINCOM的启动画面,然后按照提示设置即可。 4.3 编程和调试     在此交叉编译环境下,根据前面提到的GPS定位原理,经过编程和调试,在目标平台的液晶显示屏上可显示本地的地理位置信息。 5 结论     本文在分析课题的研究背景与意义,根据系统的需求,给出系统的总体设计方案,完成了基于S3C2440的ARM9处理器设计的车载GPS/   GPRS系统的设计研究,包括系统硬件平台的设计以及嵌入式操作的移植和上层应用软件开发的总体思路。     基于S3C2440硬件平台,利用Linux嵌入式操作系统进行平台资源的整合,并根据GPS提供的位置信息进行车辆定位,利用GPRS无线通信手段实现终端与服务中心的通信,完成车辆的监控。本系统对通信服务器的性能做了优化,解决了同类产品普遍存在的通信服务器性能瓶颈问题,能够为使用者带来管理和决策的信息化依据,提供管理的科学性与准确性。

    时间:2011-12-19 关键词: GPRS GPS 车载 QT s3c2440

  • 基于AVR单片机的实用车载空调控制器电路

    电子设备在汽车中的广泛应用被认为是汽车技术发展进程中的一次革命。随着汽车电子技术的发展和汽车控制单元的增加,汽车电子技术正朝着集中化、智能化、网络化和模块化方向发展。车内CAN/LIN总线网络的使用使得车内各个控制单元的数据可以共享,从而使在汽车嵌入式计算平台上采用多变量多目标的综合协调控制成为可能。另一方面,网络化拓展了汽车的服务领域,为汽车的移动通信、移动办公、娱乐、导航定位和远程诊断与维修提供了技术基础,逐步形成了汽车、家庭、社会一体化的互动体系。汽车嵌入式计算平台在该一体化体系中担当重要角色。 本文介绍了车载嵌入式计算平台,它为完成汽车辅助驾驶和安全监控、远程诊断和维修、在线/离线导航定位、娱乐、与家庭互动等各项功能提供了很好的软硬件平台。下面将从汽车/家庭/社会一体化体系结构、计算平台的硬件体系、软件体系三个方面进行说明。 1 汽车/家庭/社会一体化体系结构 汽车嵌入式计算平台为实现各种功能服务提供了良好的软硬件平台。车外网络和车内网络结合构成了汽车/家庭/社会一体化的互动体系结构。该体系结构示意图见图1,车内计算网络示意图见图2。 在图1中,交通管理中心、汽车服务中心、互联网服务中心和娱乐服务中心等共同组成汽车远程服务平台,家庭/办公室和汽车组成汽车/家庭互动平台体系。其主要提供三类服务: (1)汽车集成服务。主要指汽车远程诊断服务和汽车最优控制方案服务。汽车计算平台通过CAN/LIN总线读取电子控制模块(ECM)诊断产生的故障代码,然后通过汽车网关利用无线通信技术发送至最近的汽车服务中心。汽车服务中心分析故障代码形成诊断方案并以服务的形式发送到汽车嵌入式网关,经过协议解析后再发送到汽车嵌入式计算平台,最后通过人机接口显示给驾驶员。汽车制造商同时向汽车提供下载最佳汽车控制方案的服务,以适合汽车在不同的行驶条件下运行。这些服务主要由汽车远程服务平台或汽车制造商提供。 (2)导航定位服务。运行在车载嵌入式平台上的应用层软件接收GPS接收仪发送的数据,借助车载的地理信息系统(电子地图)实现导航。此外应用层软件还可以把GPS接收的数据发送到远程汽车服务平台或第三方服务提供商,再由他们把导航信息以服务的形式发送给汽车嵌入式平台。这些服务对准确性和及时性要求比较高。如何准确高效地传递这些信息成为决定这类服务质量的关键。 (3) 个人/娱乐信息服务。汽车/家庭互动平台体系使人们可以在驾驶汽车的过程中了解家中的情况,将汽车-家庭连为一体。车载信息处理(Telematics) 系统的地位日益突出。它通过无线通信技术将安全保密信息或娱乐信息以服务(Service)的方式传递至汽车。 2 汽车嵌入式计算平台的硬件体系结构 硬件平台的设计必须根据其要完成的功能来确定。本项目是将汽车嵌入式网关集成到计算平台中,因此,计算平台要完成的功能主要为:与远程服务中心的无线通信功能;导航功能;音视频播放的功能;通过CAN/LIN总线访问车内电子控制模块的功能等。基于32位ARM内核的EP9315处理器具有良好的计算能力和丰富的外围接口,在对其做了适当的外围扩展后设计出如图3所示的汽车嵌入式计算平台。 EP9315是高度集成的片上系统处理器。它拥有200MHz ARM920T处理器及支持Linux、Windows CE和其他许多嵌入式操作系统的存储器管理单元(MMU)。EP9315内置一个高性能1/10/100 Mbps以太网媒体存取控制器(MAC)及外部接口,可连接SPI、I2S音频、Raster/LCD、IDE存储外设、小键盘和触摸屏等。该器件还集成了运行速度为12Mbps的三端口USB 2.0全速主机和3个UART。PCMCIA接口的无线网卡提供远程网络的访问功能,可以实现对远程服务中心网络服务器的访问。IDE接口的电子硬盘用来存放地理信息系统,为导航软件提供电子地图。GPS接收仪通过串口与EP9315处理器相连,提供实时的车辆地理位置信息。触摸屏是人机输入界面,用来完成各种用户信息的设置。LCD显示屏和扬声器是人机输出界面,可以播放MPEG4视频或提示语音报警信息。CAN/LIN总线接口可以挂接汽车内的 CAN/LIN总线,提供对车内CAN/LIN总线的访问。基于上述硬件平台所设计的软件能很好地完成计算平台所要完成的各项功能。 3 汽车嵌入式计算平台的软件体系结构 软件平台采用嵌入式Linux设计。上文已对软件部分要实现的功能进行了一定的描述。其中导航任务是一个实时任务,而Linux不具有实时功能,因此需要改进Linux,使其支持实时任务。基于实时Linux的软件体系结构如图4所示。 系统上电后,首先启动LINux操作系统,然后启动QT引擎,再启动 QT主程序。在LCD显示屏上显示各个应用程序的选择按钮,通过触摸屏按下相应的按钮,即会启动相应的应用程序。下面介绍主要应用程序的执行流程。 (1)导航应用程序。导航程序启动后,用户通过触摸屏输入旅程的起始地点和目的地点。导航软件把该起始地点和目的地点发送到导航服务中心(本项目中为无线局域网中一台计算机),并且每隔一定时间调用导航API从串口1接收GPS接收仪发送的当前车辆的实时地理位置数据,再调用通信API,通过无线网卡把该地理位置数据发送到导航服务中心。导航服务中心根据接收到的旅程起始地点和目的地点计算出最优行使路径,并且每接收到车辆位置信息时,都计算出当前车辆所在的位置,把包含当前车辆位置和应该行使路径的小范围的位置图像发送到车辆。车上的导航软件把接收到的图像在LCD上显示出来,通过该图像司机就可以了解车辆当前的位置和下一步要行使的路线。 (2)诊断应用软件。诊断服务软件启动后,该软件调用诊断API读取连接在CAN/LIN总线上的各个ECU的故障代码,然后再调用通信API把这些代码发送到汽车服务中心(本项目中是与导航服务中心相同的计算机)。汽车服务中心分析故障代码,确定出汽车的具体故障情况,把最终结果通过无线网发送到汽车嵌入式平台。汽车嵌入式平台通过无线网卡接收这些数据,诊断服务软件读取该数据,并在LCD上显示。 (3)汽车/家庭互动应用软件。当在汽车嵌入式平台上运行家庭/汽车互动系统软件时,该软件在LCD上显示家庭中的各个电器及其状态。当用户通过触摸屏发出改变某个电器状态的命令时,汽车/家庭互动软件调用家庭API函数把该命令发送到家庭网关(由社会第三方服务公司提供)。在家庭网关上运行着实现 OSGI协议的软件,该软件可以完成所接收到的命令,并把执行的结果发送到汽车嵌入式平台。 (4)安全监控软件。CCD摄像头把汽车行驶车道的图像输入到DSP处理系统,DSP处理系统对图像数据进行分析,并把分析结果送到在汽车嵌入式平台上运行的安全监控软件,监控软件分析该数据。如果汽车偏离行驶车道,监控软件则调用多媒体API通过扬声器或者在LCD上显示信息提醒驾驶员,从而实现安全监控和报警功能。

    时间:2012-03-06 关键词: 车载 AVR QT 空调控

  • 基于ARM 和Qt/E的车载HMI终端的设计方案

    摘要:车载HMI是人与车辆之间的关键设备,使人能够对车辆的运行实现控制;设计了一种触摸控制与数字显示合理结合的车载HMI终端,采用ARM作为处理器,通过移植Qt/E对系统加以实现;该终端通过在Polo车CAN总线试验台测试,实现了对基本设备的触摸控制和车辆状态信息的实时显示,表明所设计的终端能够满足车载HMI的基本要求。 0引言 改善HMI(HumanMachineInterface)终端性能可降低车辆控制系统操作的复杂性,也可提高驾驶员对自己车辆的控制力。车载HMI通过单一结构中控台,可以减少零部件数量,提高性价比。传统机械式的控制终端正在逐步向直观、便捷的HMI终端发展。2009年6月29日,美国汽车多媒体与通信研究服务公司StrategyAnalytics发布最新研究报告,认为"车载人机界面市场领先者保持强势地位".报告预测,2015年,车载语音和触摸屏市场规模将达到29亿美元。目前,HMI设备,尤其是语音、触觉控制和触摸屏,在汽车市场上被大量应用。 本文报告了一种基于触摸控制与数字显示理念的车载HMI终端,通过在ARM上移植Qt/E接TFT-LCD触摸面板加以实现。 1系统结构介绍 基于ARM和Qt/E的车载HMI终端主要由两个模块组成,分别是ARM处理器与触摸显示屏组成的HMI触控平台和CAN/RS232协议转换器模块。该终端可接入车载CAN网络中实现车载设备的触摸控制与状态信息显示。其结构框图如图1所示。 图1车载HMI终端结构 HMI触控平台主要是将Qt/E交叉编译后移植到ARM平台,调用GUI在触摸面板显示。通过点击触控界面发送控制字,经CAN/RS232网关发送到CAN网络中对各设备进行控制,同时实时采集各设备运行状态参数并显示,便于驾驶员及时了解车辆运行状态。该平台还预留了UART和USB端口分别可外接GPS模块,无线上网卡或U盘设备,实现导航、无线上网和多媒体播放功能。 CAN/RS232协议转换模块主要由MCU、CAN接口与UART接口组成,其中CAN接口采用CAN控制器SJA1000和CAN收发器PCA82C250设计,RS232接口采用MAX232设计,以此实现两种不同总线协议数据帧的透明转换,是HMI终端与CAN网络中各设备交互的纽带。 车载CAN网络模块主要以Polo车CAN试验台为平台,试验台集成了车灯、电动车窗、雨刷和后视镜CAN节点模块。 2Qt/E在ARM上的移植 Qt/E是Trolltech公司专为嵌入式Linux系统开发的图像用户界面(GUI)工具包。提供了窗口操作系统、开发环境、工作辅助应用程序和个性选项等,是基于C++可跨平台的GUI应用程序框架;还提供给开发者建立艺术级GUI所需的功能,开发者可根据需求定制整个软件解决方案。目前,众多手机、PDA、机顶盒都采用Qt作为图形引擎。因此,选择了Qt/E作为HMI终端的开发工具。 2.1交叉编译环境的搭建 采用宿主机Fedora9.0作为开发平台,移植ARM版Qt/E4.7进行设计。因编译Linux内核和Qt/E都需要交叉编译工具链,交叉编译器版本过高过低都会与Qt/E4.7不兼容,最终导致安装失败,所以一定要根据Qt的版本来选择对应的编译器。本系统采用arm-linux-gcc-4.5.1.安装过程如下: 首先,解压arm-linux-gcc-4.5.1安装包,运行#tarxvzfarm-linux-gcc-4.5.1.tgz命令;然后将编译器所在路径加入系统环境变量,运行#gedit/root/.bashrc编辑该文件,修改最后一行为exportPATH=PATH:/usrt/local/arm/4.5.1/binPATH,此时交叉编译器已经安装好;最后执行#arm-linux-gcc-v显示编译器版本信息,验证是否安装成功。 2.2Qt/E4.7的编译与移植 减压ARM版Qt/E安装包到指定目录,然后进入该目录执行编译配置源码命令#echoyes|./configure-opensource-embeddedarm–xplatformqws/linux-arm-g++-no-webkit-qt-libtiff-qt-libmng-qt-mouse-tslib-qt-mouse-pc-no-mouse-linuxtp-no-neon.其中编译ARM平台的embedded版本配置参数为embeddedarm,使用arm-linux交叉编译器进行编译为xplatformqws/linuxarm-g++,qt-mouse-tslib是使用tslib来驱动触摸屏。然后执行make命令进行编译,当编译完成之后执行安装命令makeinstall.最后把安装文件打包#tarcvzfqt4.7.tgz,下载到ARM开发板,并解压到指定目录。至此Qt/E在ARM开发板上移植完成。 安装Linux环境下X86版QtSDK软件-QtCreator2.0进行Qt程序开发,设置为支持Qt4.7ARM的交叉编译。最后将设计好的程序通过编译,生产二进制文件下载到ARM开发板运行,以此实现HMI界面显示功能。 3车载HMI终端的硬件设计 3.1CAN/RS232协议转换器的硬件设计 CAN/RS232协议转换器主要有主控制器、CAN接口模块与RS232接口模块组成,其中主控制器采用STC89C52单片机负责处理CAN总线与RS232总线的数据接收与发送,实现两种不同协议数据帧的透明转换与传输。 CAN接口模块采用Philips公司的CAN控制器SJA1000和CAN收发器PCA82C250芯片组成,主要实现CAN协议的物理层和数据链路层功能。其中CAN控制器完成数据链路层功能,实现与主控制器的信息读写操作,物理层通过CAN收发器实现电平转换和传输。SJA1000的AD0~AD7与单片机P0口连接,实现地址/数据复用;片选/CS与P2.7相连,则基地址为0x7F00;/RD、/WD、ALE引脚依次与单片机各引脚相连;中断/INT接单片机/INT0,因此可通过中断方式对SJA1000进行实时访问。SJA1000的MODE引脚用于选择CAN控制器在Intel模式还是在Motorola模式工作。由于STC89C52属于Intel系列微控制器,故MODE引脚接+5V高电平设置为Intel模式,以满足89C52的读写时序要求。为了增强节点的抗干扰能力,以及避免当CAN收发器失效时出现过流导致CAN控制器击穿,SJA1000的TX0和RX0引脚通过光耦N6137后与PCA82C250的TXD和RXD连接,以此实现总线上节点间电器隔离;收发器CAN_H和CAN_L引脚通过5Ω电阻与CAN总线端口连接起到限流作用;同时两端接120Ω终端匹配电阻。 RS232接口电路采用MAX232芯片,实现单片机串口TTL电平与RS232电平相互转换,完成HMI终端UART口的信息传输。STC89C52串口端(P3.0和P3.1)与MAX232的T1IN和R1OUT连接,T1OUT与R1IN接九针串口,然后通过交叉线与HMI终端连接实现数据通信。[!--empirenews.page--] 3.2车载HMI触控平台的设计 HMI触控平台以ARM为处理器,接7.0寸LCD触摸屏来实现,可取代传统的(如图2A)机械按键与表盘显示的中控平台。HMI触控平台如图2B所示,由车灯、车窗、后视镜、多媒体、空调、导航以及状态参数显示菜单组成。将该终端嵌入到方向盘,驾驶员可点击触控菜单进入车灯、车窗等控制界面(如图2C和D)实现车灯、车窗等设备的触摸控制,也可实时采集与显示设备状态参数如:车速、故障码等。其中,触控与显示数据需调用ARM底层串口驱动来实现读写操作,触控界面通过Button控件的信号与槽机制来实现数据的发送,状态参数的采集与显示通过事件驱动方式实现。终端可外接GPS模块实现导航功能,设计了Qt媒体媒体播放器实现娱乐功能,也可接入无线网卡来实现无线上网功能。 图2车载HMI终端 4车载HMI终端的软件设计 4.1CAN/RS232网关软件设计 主程序中首先要完成初始化操作,包括单片机、SJA1000、RS232通信以及中断源的初始化。其中SJA1000的初始化是整个设计最重要的部分,也是保证CAN通信的前提。考虑车辆内部网络的兼容性,SJA1000配置为Peli模式,支持CAN2.0A和B规范,实现标准帧和扩展帧两种报文传输。SJA1000初始化寄存器配置流程如图3所示。 图3SJA1000初始化寄存器配置流程 为保证数据实时传输,采用中断方式进行数据收发。 当CAN总线有数据接收时SJA1000会跳入接收中断函数将数据接收并存储到接收缓存,根据数据帧头来判别数据类型和所带数据长度,最后提取CAN数据拆分为单字节通过串口发送,并在HMI终端显示;当HMI终端有控制字发送,串口接收中断函数将所发送的控制字依次接收存入接收缓存,并根据首字节来判别所发数据类型和长度,组装成CAN数据帧格式发送到网络中去,以此实现各节点的控制。具体流程如图4所示。 图4数据接收与发送流程图 4.2车载HMI界面的设计 HMI界面采用QtCreator2.0来设计,因为HMI终端是通过UART接口接入CAN网络中,所以通信时需接上面所介绍的CAN/RS232协议转换器来实现。同时,还需在Linux下编写Qt串口通信程序。 首先,在Linux下利用open函数打开串口设备,用tcsetattr函数来设置串口属性。打开驱动设备UART0进行读写操作:constchar*devName="/dev/ttySAC0";fd=:: open(devName,O_RDWR|O_NONBLOCK);设置波特率等参数:serialAttr.c_cflag=B115200|HUPCL|CS8|CREAD|CLOCAL;serialAttr.c_cc[VMIN]=1;其中串口设备可使用Linux下I/O函数进行Read和Write操作。但是,在数据接收时当数据量过大会导致界面被阻塞(造成界面假死),于是创建了一个线程通过事件驱动实现数据接收。 Qt中可采用QSocketNotifier类来实现设备事件驱动的设计要求。QSocketNotifier类关联Signal/Slot机制,当有数据可读时会触发Ativated信号,LCDNumber控件Slot会被调用来连接到该信号并显示,从而实现数据采集与显示功能。在数据发送时,可通过Button控件Signal/Slot调用QObject对象的connect()函数来实现[3].当按键被按下时触发Signal信号,Slot会调用pressed()函数将定义好的数据通过串口Write函数发送到总线上。函数实现如下: voidGlass::on_lu_pressed(){charmsg[]={160,34,16,0};//定义所发送数据myserial->myCom->write(msg,4);//写发送数据} 通过QPainter类进行对窗体界面和按键图像界面进行设计,达到美观的人机界面。最后将设计好的程序通过交叉编译,生产二进制文件移植到ARM中,然后在文件系统中调用执行,最终在LCD触摸屏上显示,如图2所示。 5系统集成与测试 首先将设计好的HMI终端通过交叉串口线与PC机连接,进行相互通信,测试是否能够进行数据收发,测试成功后通过CAN/RS232网关接入Polo车CAN试验台进行综合测试。试验台设备节点可通过触摸方式控制,同时可实时采集与显示运行状态信息,经过多次实验测试,运行稳定可靠,达到了设计要求。 6结束语 本文所设计的车载HMI终端集车身控制、仪表显示、导航、多媒体和无线上网为一体,简化了车载中控平台,降低了车辆控制系统操作的复杂性。经实验测试实现了车身设备的触摸控制,能够对各设备运行状态信息进行采集与显示。为车载HMI开发提供了一种可行的设计思路与性价比更合理的解决方案。

    时间:2012-04-25 关键词: 方案 ARM 车载 hmi QT 端的设

  • 基于ARM的车载GPS智能导航系统

    1  引言 随着中国的城市化的程度不断加快,使得越来越多的人口与事业单位集中在一个“狭小”范围内生活与工作。城市的迅速“膨胀”直接导致了交通网络的日趋复杂,人员流动的日益频繁也使得每个人对空间信息有了更多的依赖。人们更加关心“当前我在哪里?”“目的地在哪里?”“如何到达?”等问题。而以嵌入式系统为平台的数字地理集成应用方案可以有效地解决这些矛盾。在此背景下,本文给出了基于ARM的嵌入式解决方案。 2 硬件实现 本嵌入式GPS导航系统的硬件核心是三星公司ARM9系列中的16/32位RISC处理器S3C2410A芯片,该芯片强大的实时处理能力和丰富的外围接口非常适合嵌入式系统的开发,本系统正是基于该芯片的这些特点而设计的。系统框图如图1所示。   该系统以S3C2410A微处理器为核心,与2片32M的SDRAM(HY57V561620CT)和一片64M的NAND Flash(K9F1208U0B)组成了最小系统。外部添加了用于接收GPS信号的GPS模块,用于显示的液晶面板以及一片UDA1341TS的声音芯片。此外,为了调试的方便,我们还增加了一片CS8900A的10M网卡芯片。 图1  系统框图 3 系统平台的建立 系统平台的建立主要包括两部分,即宿主机(PC机)上操作系统的选择和交叉编译器工具链的建立。   PC机上的操作系统可以有多种选择:安装Linux发行版、在Windows下使用虚拟机或者使用Cygwin。由于现今Microsoft Windows统领着全球超过半数的PC机(在中国Windows占据近90%的份额),许多开发者开始使用虚拟机等手段来实现在Windows平台下进行嵌入式Linux的开发,但这些方法都会或多或少地带来些兼容性问题。开发嵌入式Linux最好的选择便是在PC机上安装Linux发行版,因为这样与Windows毫无关联,可占有系统全部资源,拥有系统最高性能和最佳的兼容性。   在建立交叉编译器工具链方面必须注意一点的便是C运行库的选择。现在可供选择的C运行库有glibc, uClibc以及newlib等。glibc是由GNU项目提供的标准C运行库,它针对PC应用设计,较庞大,但能提供最优的兼容性。如果一般的嵌入式开发可选用uClibc。uClibc原本是uCLinux开发过程中的一个C语言库,现已经独立于uCLinux项目并且进一步完善。它对glibc的大部分函数进行了重写,并且目标就定位于嵌入式,所以其相对glibc而言要小巧很多。此外由于它的函数与glibc保持一致,这样很多原本基于glibc开发的软件基本无需改动便可改用uClibc编译运行,使得在嵌入式系统上占用的内存和磁盘空间更少。但由于毕竟不是标准的C运行库,因此uClibc拥有着一定的兼容性问题。   本系统选用了Fedora Core 5作为宿主机(PC机)的操作系统以及分别使用buildroot和crosstool建立两条采用不同的C运行库的交叉编译器工具链。由于我们系统开发需要使用U-Boot的TFTP功能下载Linux内核以及Linux的NFS网络文件系统,所以首先需要对Fedora Core 5设置TFTP以及NFS,而后需要设置一个串口通信软件与开发板互动,本系统选择了Kermit。   使用两条采用不同C运行库的交叉编译器工具链的主要原因在于,我们的导航应用程序使用uClibc有兼容性问题,所以不得不采用glibc。而为了减少占用资源,我们U-Boot、Linux内核和Busybox仍然采用的是uClibc。   本课题主要环境设置如下: 课题主目录 /Project 编译器目录 arm-linux-uclibc- /Project/toolchina/uclibc/buildroot/build_arm_nofpu/ staging_dir arm-unknown-linux-gnu- /Project/toolchain/glibc/tools/gcc-4.1.0-glibc-2.3.2/ arm-unknown-linux-gun NFS目录 /Project/nfs TFTP目录 /tftpboot PC机的IP地址 192.168.0.110 开发板的IP地址 192.168.0.3 4 应用软件的开发 在系统平台建立之后,Linux操作系统提供了底层的操作,包括文件系统的管理、内存分配以及基本flash的烧录读取,但并没有提供友好的显示界面。同时也为了实现地理数据的显示和导航,就需要在操作系统上放入图形用户界面支持系统和地理信息开发平台。为此我们分别选择了MiniGUI和mGIS。               图3是应用软件的流程图 整个软件系统依靠响应不同窗口或者控件发出的事件,来实现各种功能。通过主窗口建立后注册mGIS控件,可以较为方便的实现一些常用的地图操作。主窗口建立后,将会创建许多用于子窗口,包括用于显示经纬度信息,时间。速度的静态框,用于实现快速便捷操作的工具栏,用于实现GPS功能关闭和地图数据加载的菜单栏。            图4 GPS接收模块流程图 5 总结和展望 “Find My Way”(完成项目的名称)嵌入式移动地图导航系统经过最初设计、实现及应用检验,已经具备基本的功能,可初步满足个人移动导航信息系统的需求。能完成数字地图的加载、缩放、拖动、搜索、简易导航、测距、GPS功能开闭等功能。同时我们也摸索出了一整套较为可行的矢量地图的制作方法,能依据使用的场合不同,较快速的完成地图数据源的制作及相关信息的添加,有一定的扩展能力。当然由于时间和能力的有限,这款产品也有其一定的不足,值得进一步的深入研究,例如:在打开GPS接收模块之后,系统的响应速度将有显著的下降,虽然已经对Linux核心和编译器经过适当的优化,但情况并没有显著的改善。问题可能在硬件平台的处理速度和可调用的资源有限,也有可能在软件接收上的程序结构不合理,嵌套过多。GPS接收信号有时会发生信号接收的不稳定,出现信号的偏移,超过标称的误差值。问题可能在开发平台的设计电路中对于数据信号线的排版上,没有使信号线等距,也没有设置合理的信号隔离和保护带,导致最终出现了不应有的误差。但从软件上着手,如何纠正这样的误差也是值得研究的一个方向。在本课题中只实现了固定点的导航,并不能完成从任意点至任意点的导航。导航功能可以从软件方面继续深入的研究,包括对地图格式的选择等。这些都是将来值得完善之处。 图5 硬件平台 图6 最终效果图 参考文献 1  飞漫软件,MiniGUI 技术白皮书 Ver 1.6.2,www.minigui.org, 2004.3.29 2  飞漫软件,mGIS技术文档,www.minigui.org, 2005.3 3  飞漫软件,mGIS产品介绍,www.minigui.org, 2005.3 4   MapInfo Corporation, MapInfo7.5用户指南,www.mapinfo.com,2003.12 5  HOLUX,GR-87使用手册,www.holux.com.cn,2006.2.21 6  HOLUX,GR-86 manual,www.holux.com.cn,2005.5 7   邓滔,徐勇,GPS与嵌入式Linux平台串行通信研究,湖南大学电气与信息工程学院,2004.11.2,全文 8  孙天泽,袁文菊,张海峰. 嵌入式设计及Linux驱动开发指南. 北京:电子工业出版社,2005 9  马忠梅,李善平,康慨等. ARM & Linux嵌入式系统教程. 北京:航空航天出版社,2004 10  廖日坤. ARM嵌入式应用开发技术白金手册. 北京:中国电力出版社,2005 11  Samsung Electronics Co., Ltd. S3C2410X 32-Bit RISC Microprocessor User's Manual. Revision 1.2. 2003 12  Samsung Electronics Co., Ltd. K9F1208U0B Datasheet. Revision 0.1. 2004 13  Corbet J, Rubini A, Kroah-Hartman G. Linux设备驱动程序. 魏永明,耿岳,钟书毅译. 第三版. 北京:中国电力出版社,2006 14  Love R. Linux内核设计与实现. 陈莉君,康华,张波译. 第二版. 北京:机械工业出版社,2006 15  Philips Semiconductors. UDA1341TS Product Specification. 2002 16  Sharp Corporation. LQ080V3DG01 Product Specification. 2003

    时间:2006-10-13 关键词: GPS ARM 车载 设计教程

  • 基于ARM处理器的车载GPS系统设计方案

    概述:本文设计了一套基于ARM处理器的车载GPS系统,采用AT91RM9200处理器为硬件平台,在该处理器上移植Linux操作系统,利用操作系统的资源编写程序实现GPS和GPRS的功能在车载GPS系统中的应用。本文提供了一套切实可行的具有实时监控能力的车载GPS卫星定位系统设计方案。 1 引言车载GPS定位终端在过去十年内已经成为汽车工业发展的焦点。在欧美国家和日本,车载GPS定位终端在最近几年内得以广泛的应用。车载GPS定位终端是融全球卫星定位技术(GPS)和现代无线通信技术于一体的高科技系统。该终端的主要功能是通过GPS模块从卫星获取GPS数据,将移动车辆的动态位置(经度、纬度、时间、速度)等信息实时地通过无线通信链路上传至监控中心,同时接收监控中心发送的控制命令。目前的车辆监控系统中大多采用GSM通信网以短信息的方式进行通信,不能充分满足实际应用的需要。而GPRS(General Packet Radio Service)通用分组无线业务是一种以分组交换技术为基础,采用IP数据网络协议的高效数据传输网络,可以弥补GSM网络的不足。车载GPS定位终端不仅在智能交通系统中担负主要作用,同时还可以提供防盗防抢劫报警,公交车报站,物流车辆调度等多种服务。2 车载GPS定位系统的硬件设计本部分介绍车载GPS定位系统硬件系统的设计方案,着重阐述嵌入式处理器AT91RM9200硬件系统的设计,GPS卫星数据采集模块的接口设计和GPRS通信模块接口的设计。如图1所示,车载GPS定位系统的硬件结构主要由GPRS接收模块、GPS接收模块、SDRAM,FLASH存储器模块、串口通信模块,以及外围模块组成。                       图1  车载GPS定位系统的硬件结构组成2.1  GPRS接收模块电路设计GPRS模块负责主电路板与监控中心的通信任务,它将处理好了的GPS数据通过网络发送给监控中心,并接收监控中心发送给主电路板的控制命令,该模块直接影响到这个车载终端的实际使用效果。本系统选用的GPRS模块是由索尼爱立信公司推出的GR47模块,该模块的主要特点是内置TCP/TP协议栈。它允许一个TCP/UDP传输机制以最小的前期配置和操作来被使用。其内嵌控制器方便集成客户的应用,减少外部控制器的需求。GR47支持双频GSM宽带900MHz/1800MHz,可通过SMS短消息服务、CSD、HSCSD或GPRS来发送或接收资料,并可处理语音及传真。其TCP/IP协议栈也可通过AT命令或嵌入式应用进行访问。由于GR47模块内嵌了TCP/IP协议栈,所以可以直接用AT命令对其进行控制,使用起来非常方便。图2描述了GPRS通信模块的串口电路设计。                              图2 GPRS模块的串口电路设计图2.2 GPRS模块的SIM卡电路设计GR47模块带有一个SIM卡的接口,遵从IS07816 IC卡标准。通过电线与外部扩展的SIM卡盒相连。图3描述了GPRS模块的SIM卡电路设计。图3 GPRS模块SIM卡电路设计图2.3 GPS接收模块电路设计GPS模块负责接收GPS定位卫星发送的导航电文,他通过串行接口与主电路板相连接,是实现接收GPS数据的关键。对于GPS模块的选择而言,通常从技术参数,支持的通信协议,控制接口和成本几个方面考虑。目前商用的GPS模块,大都支持12通道,采用C/A编码,NMEA0183协议,通过RS232接口控制。本系统选用的GPS卫星数据采集模块为上海丽浪公司出品的GPS-R25型GPS模块,具有以下特性:12通道C/A码接收控制,可同时监控12路卫星信号;内部集成16位ARM7TDMI处理内核;电池会在正常的使用过程中充电;GPS卫星采集模块的误差范围为1~5米;2种接口连接且用户可自选波特率;达到工业级的标准并且防水。并且该模块即可以通过RS-232的串口与主电路板相连接,也可以通过PS2接口与主电路板相连接,使用起来非常方便。2.4 FLASH存储器电路设计Flash存储器是一种可在系统电擦写,掉电后信息不丢失的存储器。作为一种非易失性存储器,Flash在系统中通常用于存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据等。系统采用了一片K9F5608U0A的NAND型Flash,K9F5608U0A是三星公司生产的K9XXXXXU0A系列闪存中的一种,32MB容量,读写速度快,数据保存时间长以及高达10万次的擦除写入寿命等优点。该芯片具有一个八位的I/O端口。在CE为低电平时,把WE置低,地址、命令和数据都可通过该端口写入。数据在WE的上升沿被锁存,CLE和ALE分别用来控制对命令和地址的锁存。同时K9F5608U0A具有较强的纠错功能,能够最大限度地保护用户数据。[!--empirenews.page--]2.5 SDRAM存储器电路设计SDRAM存取速度大大高于Flash存储器,具有读/写的属性,因此SDRAM在系统中主要用作程序的运行空间,数据及堆栈区。系统启动时,CPU首先从复位地址0x0处读取启动代码,在完成系统的初始化后,程序代码一般应调入SDRAM中运行,以提高系统的运行速度,系统及用户堆栈、运行数据也都放在SDRAM中。在主电路板中用HY57V281620型SDRAM.。系统采用两片HY57V281620并联构建32位的SDRAM存储器系统,其中一片为高16位,另一片为低16位,可将两片HY57V281620作为一个整体配置到任意一个外部存储器的区域。SDRAM存储器电路设计如图4所示。 图4  HY57V281620的连接框图3 车载GPS定位系统的软件设计车载GPS系统的应用程序在功能上可以分为7个功能模块,即初始化模块,控制模块,GPS数据获取模块,上行数据转换模块,用户界面模块,通信模块和下行数据处理模块。初始化模块主要实现对串口的初始化及把所有的标志位置零;控制模块主要是根据上位机的命令来执行相应的操作,比如采集GPS数据,发送当前行车状态等;用户界面模块主要功能就是把GPS数据,状态数据等在触摸屏上显示出来,同时还要可以响应触摸屏上的中断,以便实现通过触摸屏操作车载终端的功能。GPS数据获取模块的主要功能就是通过与串口相连接的GPS模块获取当前的GPS信息;在本程序中用的是GPRMC定位语句,将忽略其它信息。提取GPRMC语句的思路是设置一个数据缓冲区,把接收到的GPS数据都放入这个缓冲区,当缓冲区满了的时候就在缓冲区中查找是否接受到GPRMC定位语句,如果没有接收到则重新接收GPS数据。如果找到了GPRMC定位语句则还要判断该语句在缓冲区中的位置离缓冲区的最大字节数是否大于62个字节。(因为本程序中需要的GPRMC定位语句所包含的字节数为62)上行数据转换模块的主要功能是把接收到的GPS数据或是相关的状态信息转换成约定好的数据格式以便同监控中心的通信。该模块会判断需要转换的数据是GPS数据信息还是相关状态信息或是两者都有,然后选择相应的转换程序。由上面的介绍可以知道接受到的GPS数据都是顺序存放在数据缓冲区当中的,需要什么数据就到缓冲区中相应的位置提取就可以了。数据都是以字符形式存放的,所以实际要用的时候必须先转换成整形数据。下行数据转换模块的功能与上行数据转化模块的功能相反,它将监控中心发送的命令进行识别后发送给车载终端,并送用户界面模块显示。通信模块的主要任务是完成车载终端与监控中心的通信,它既可以通过GPRS网络实现与监控中心的无线通信,也可以通过网口与笔记本电脑连接进行通信。如果车载终端与上位机的距离隔的很远可以直接通过GPRS网络与监控中心进行连接,而且通过GR47模块连接GPRS网络与监控中心连接也非常方便,只用往GPRS模块发送几条AT命令就可以了,但是监控中心必须有能上因特网的固定IP。启动车载终端的同时GR47模块也会被启动,这是模块会自动连接上GPRS网络进入命令模式。拨号成功以后就连接上了GPRS网络了,然后对于GR47模块连接的串口进行读写操作就可以实现与监控中心的无线通信了。通过网口进行通信则比较简单,直接采用Linux下的socket编程就可以实现。根据以上各个模块的功能的定义,软件部分主流程图如图5所示:图5 主程序流程图4 总结本文的创新点是采用GPRS通信网络进行无线通信代替了传统的GSM短信息通信模式,不仅节约了整个系统的运行成本,而且提高了数据的传输速度和可靠性;同时选用了工业级的带有内存管理功能的ARM9芯片AT91RM9200作为处理器,并围绕它进行电路设计,使得该终端有很高的可靠性,并且能够适应比较恶劣的环境,因为选用了带内存管理功能的ARM9芯片,所以可以移植Linux操作系统,该操作系统自带的资源十分丰富,使得应用程序的功能更加强大,同时也增加了软件的扩展性;最后本车载定位终端融合了GPS全球定位技术,GPRS无线通信技术,ARM嵌入式技术以及嵌入式Linux系统的移植与编程,属于一个交叉学科的工程项目。自该系统投入市场半年以来,创造了50余万元的经济效益。

    时间:2010-03-26 关键词: 方案 GPS ARM 车载 理器的 设计教程

  • 基于ARM处理器的车载GPS系统无线通信设计方案

    1 引言 车载GPS定位终端在过去十年内已经成为汽车工业发展的焦点。在欧美国家和日本,车载GPS定位终端在最近几年内得以广泛的应用。车载GPS定位终端是融全球卫星定位技术(GPS)和现代无线通信技术于一体的高科技系统。该终端的主要功能是通过GPS模块从卫星获取GPS数据,将移动车辆的动态位置(经度、纬度、时间、速度)等信息实时地通过无线通信链路上传至监控中心,同时接收监控中心发送的控制命令。目前的车辆监控系统中大多采用GSM通信网以短信息的方式进行通信,不能充分满足实际应用的需要。而GPRS(General Packet Radio Service)通用分组无线业务是一种以分组交换技术为基础,采用IP数据网络协议的高效数据传输网络,可以弥补GSM网络的不足。车载GPS定位终端不仅在智能交通系统中担负主要作用,同时还可以提供防盗防抢劫报警,公交车报站,物流车辆调度等多种服务。 2 车载GPS定位系统的硬件设计 本部分介绍车载GPS定位系统硬件系统的设计方案,着重阐述嵌入式处理器AT91RM9200硬件系统的设计,GPS卫星数据采集模块的接口设计和GPRS通信模块接口的设计。如图1所示,车载GPS定位系统的硬件结构主要由GPRS接收模块、GPS接收模块、SDRAM,FLASH存储器模块、串口通信模块,以及外围模块组成。                        图1  车载GPS定位系统的硬件结构组成 2.1  GPRS接收模块电路设计 GPRS模块负责主电路板与监控中心的通信任务,它将处理好了的GPS数据通过网络发送给监控中心,并接收监控中心发送给主电路板的控制命令,该模块直接影响到这个车载终端的实际使用效果。 本系统选用的GPRS模块是由索尼爱立信公司推出的GR47模块,该模块的主要特点是内置TCP/TP协议栈。它允许一个TCP/UDP传输机制以最小的前期配置和操作来被使用。其内嵌控制器方便集成客户的应用,减少外部控制器的需求。GR47支持双频GSM宽带900MHz/1800MHz,可通过SMS短消息服务、CSD、HSCSD或GPRS来发送或接收资料,并可处理语音及传真。其TCP/IP协议栈也可通过AT命令或嵌入式应用进行访问。由于GR47模块内嵌了TCP/IP协议栈,所以可以直接用AT命令对其进行控制,使用起来非常方便。图2描述了GPRS通信模块的串口电路设计。                               图2 GPRS模块的串口电路设计图 2.2 GPRS模块的SIM卡电路设计 GR47模块带有一个SIM卡的接口,遵从IS07816 IC卡标准。通过电线与外部扩展的SIM卡盒相连。图3描述了GPRS模块的SIM卡电路设计。 图3 GPRS模块SIM卡电路设计图 2.3 GPS接收模块电路设计 GPS模块负责接收GPS定位卫星发送的导航电文,他通过串行接口与主电路板相连接,是实现接收GPS数据的关键。 对于GPS模块的选择而言,通常从技术参数,支持的通信协议,控制接口和成本几个方面考虑。目前商用的GPS模块,大都支持12通道,采用C/A编码,NMEA0183协议,通过RS232接口控制。本系统选用的GPS卫星数据采集模块为上海丽浪公司出品的GPS-R25型GPS模块,具有以下特性:12通道C/A码接收控制,可同时监控12路卫星信号;内部集成16位ARM7TDMI处理内核;电池会在正常的使用过程中充电;GPS卫星采集模块的误差范围为1~5米;2种接口连接且用户可自选波特率;达到工业级的标准并且防水。并且该模块即可以通过RS-232的串口与主电路板相连接,也可以通过PS2接口与主电路板相连接,使用起来非常方便。 2.4 FLASH存储器电路设计 Flash存储器是一种可在系统电擦写,掉电后信息不丢失的存储器。作为一种非易失性存储器,Flash在系统中通常用于存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据等。系统采用了一片K9F5608U0A的NAND型Flash,K9F5608U0A是三星公司生产的K9XXXXXU0A系列闪存中的一种,32MB容量,读写速度快,数据保存时间长以及高达10万次的擦除写入寿命等优点。该芯片具有一个八位的I/O端口。在CE为低电平时,把WE置低,地址、命令和数据都可通过该端口写入。数据在WE的上升沿被锁存,CLE和ALE分别用来控制对命令和地址的锁存。同时K9F5608U0A具有较强的纠错功能,能够最大限度地保护用户数据。[!--empirenews.page--] 2.5 SDRAM存储器电路设计 SDRAM存取速度大大高于Flash存储器,具有读/写的属性,因此SDRAM在系统中主要用作程序的运行空间,数据及堆栈区。系统启动时,CPU首先从复位地址0x0处读取启动代码,在完成系统的初始化后,程序代码一般应调入SDRAM中运行,以提高系统的运行速度,系统及用户堆栈、运行数据也都放在SDRAM中。在主电路板中用HY57V281620型SDRAM.。系统采用两片HY57V281620并联构建32位的SDRAM存储器系统,其中一片为高16位,另一片为低16位,可将两片HY57V281620作为一个整体配置到任意一个外部存储器的区域。SDRAM存储器电路设计如图4所示。   图4  HY57V281620的连接框图 3 车载GPS定位系统的软件设计 车载GPS系统的应用程序在功能上可以分为7个功能模块,即初始化模块,控制模块,GPS数据获取模块,上行数据转换模块,用户界面模块,通信模块和下行数据处理模块。 初始化模块主要实现对串口的初始化及把所有的标志位置零;控制模块主要是根据上位机的命令来执行相应的操作,比如采集GPS数据,发送当前行车状态等;用户界面模块主要功能就是把GPS数据,状态数据等在触摸屏上显示出来,同时还要可以响应触摸屏上的中断,以便实现通过触摸屏操作车载终端的功能。 GPS数据获取模块的主要功能就是通过与串口相连接的GPS模块获取当前的GPS信息;在本程序中用的是GPRMC定位语句,将忽略其它信息。提取GPRMC语句的思路是设置一个数据缓冲区,把接收到的GPS数据都放入这个缓冲区,当缓冲区满了的时候就在缓冲区中查找是否接受到GPRMC定位语句,如果没有接收到则重新接收GPS数据。如果找到了GPRMC定位语句则还要判断该语句在缓冲区中的位置离缓冲区的最大字节数是否大于62个字节。(因为本程序中需要的GPRMC定位语句所包含的字节数为62) 上行数据转换模块的主要功能是把接收到的GPS数据或是相关的状态信息转换成约定好的数据格式以便同监控中心的通信。该模块会判断需要转换的数据是GPS数据信息还是相关状态信息或是两者都有,然后选择相应的转换程序。由上面的介绍可以知道接受到的GPS数据都是顺序存放在数据缓冲区当中的,需要什么数据就到缓冲区中相应的位置提取就可以了。数据都是以字符形式存放的,所以实际要用的时候必须先转换成整形数据。下行数据转换模块的功能与上行数据转化模块的功能相反,它将监控中心发送的命令进行识别后发送给车载终端,并送用户界面模块显示。 通信模块的主要任务是完成车载终端与监控中心的通信,它既可以通过GPRS网络实现与监控中心的无线通信,也可以通过网口与笔记本电脑连接进行通信。如果车载终端与上位机的距离隔的很远可以直接通过GPRS网络与监控中心进行连接,而且通过GR47模块连接GPRS网络与监控中心连接也非常方便,只用往GPRS模块发送几条AT命令就可以了,但是监控中心必须有能上因特网的固定IP。启动车载终端的同时GR47模块也会被启动,这是模块会自动连接上GPRS网络进入命令模式。拨号成功以后就连接上了GPRS网络了,然后对于GR47模块连接的串口进行读写操作就可以实现与监控中心的无线通信了。通过网口进行通信则比较简单,直接采用Linux下的socket编程就可以实现。 根据以上各个模块的功能的定义,软件部分主流程图如图5所示: 图5 主程序流程图 4 总结 本文的创新点是采用GPRS通信网络进行无线通信代替了传统的GSM短信息通信模式,不仅节约了整个系统的运行成本,而且提高了数据的传输速度和可靠性;同时选用了工业级的带有内存管理功能的ARM9芯片AT91RM9200作为处理器,并围绕它进行电路设计,使得该终端有很高的可靠性,并且能够适应比较恶劣的环境,因为选用了带内存管理功能的ARM9芯片,所以可以移植Linux操作系统,该操作系统自带的资源十分丰富,使得应用程序的功能更加强大,同时也增加了软件的扩展性;最后本车载定位终端融合了GPS全球定位技术,GPRS无线通信技术,ARM嵌入式技术以及嵌入式Linux系统的移植与编程,属于一个交叉学科的工程项目。自该系统投入市场半年以来,创造了50余万元的经济效益。

    时间:2012-01-18 关键词: 方案 GPS ARM 车载 理器的 设计教程

  • 基于AVR单片机的实用车载空调控制器电路

    电子设备在汽车中的广泛应用被认为是汽车技术发展进程中的一次革命。随着汽车电子技术的发展和汽车控制单元的增加,汽车电子技术正朝着集中化、智能化、网络化和模块化方向发展。车内CAN/LIN总线网络的使用使得车内各个控制单元的数据可以共享,从而使在汽车嵌入式计算平台上采用多变量多目标的综合协调控制成为可能。另一方面,网络化拓展了汽车的服务领域,为汽车的移动通信、移动办公、娱乐、导航定位和远程诊断与维修提供了技术基础,逐步形成了汽车、家庭、社会一体化的互动体系。汽车嵌入式计算平台在该一体化体系中担当重要角色。 本文介绍了车载嵌入式计算平台,它为完成汽车辅助驾驶和安全监控、远程诊断和维修、在线/离线导航定位、娱乐、与家庭互动等各项功能提供了很好的软硬件平台。下面将从汽车/家庭/社会一体化体系结构、计算平台的硬件体系、软件体系三个方面进行说明。 1 汽车/家庭/社会一体化体系结构 汽车嵌入式计算平台为实现各种功能服务提供了良好的软硬件平台。车外网络和车内网络结合构成了汽车/家庭/社会一体化的互动体系结构。该体系结构示意图见图1,车内计算网络示意图见图2。 在图1中,交通管理中心、汽车服务中心、互联网服务中心和娱乐服务中心等共同组成汽车远程服务平台,家庭/办公室和汽车组成汽车/家庭互动平台体系。其主要提供三类服务: (1)汽车集成服务。主要指汽车远程诊断服务和汽车最优控制方案服务。汽车计算平台通过CAN/LIN总线读取电子控制模块(ECM)诊断产生的故障代码,然后通过汽车网关利用无线通信技术发送至最近的汽车服务中心。汽车服务中心分析故障代码形成诊断方案并以服务的形式发送到汽车嵌入式网关,经过协议解析后再发送到汽车嵌入式计算平台,最后通过人机接口显示给驾驶员。汽车制造商同时向汽车提供下载最佳汽车控制方案的服务,以适合汽车在不同的行驶条件下运行。这些服务主要由汽车远程服务平台或汽车制造商提供。 (2)导航定位服务。运行在车载嵌入式平台上的应用层软件接收GPS接收仪发送的数据,借助车载的地理信息系统(电子地图)实现导航。此外应用层软件还可以把GPS接收的数据发送到远程汽车服务平台或第三方服务提供商,再由他们把导航信息以服务的形式发送给汽车嵌入式平台。这些服务对准确性和及时性要求比较高。如何准确高效地传递这些信息成为决定这类服务质量的关键。 (3) 个人/娱乐信息服务。汽车/家庭互动平台体系使人们可以在驾驶汽车的过程中了解家中的情况,将汽车-家庭连为一体。车载信息处理(Telematics) 系统的地位日益突出。它通过无线通信技术将安全保密信息或娱乐信息以服务(Service)的方式传递至汽车。 2 汽车嵌入式计算平台的硬件体系结构 硬件平台的设计必须根据其要完成的功能来确定。本项目是将汽车嵌入式网关集成到计算平台中,因此,计算平台要完成的功能主要为:与远程服务中心的无线通信功能;导航功能;音视频播放的功能;通过CAN/LIN总线访问车内电子控制模块的功能等。基于32位ARM内核的EP9315处理器具有良好的计算能力和丰富的外围接口,在对其做了适当的外围扩展后设计出如图3所示的汽车嵌入式计算平台。 EP9315是高度集成的片上系统处理器。它拥有200MHz ARM920T处理器及支持Linux、Windows CE和其他许多嵌入式操作系统的存储器管理单元(MMU)。EP9315内置一个高性能1/10/100 Mbps以太网媒体存取控制器(MAC)及外部接口,可连接SPI、I2S音频、Raster/LCD、IDE存储外设、小键盘和触摸屏等。该器件还集成了运行速度为12Mbps的三端口USB 2.0全速主机和3个UART。PCMCIA接口的无线网卡提供远程网络的访问功能,可以实现对远程服务中心网络服务器的访问。IDE接口的电子硬盘用来存放地理信息系统,为导航软件提供电子地图。GPS接收仪通过串口与EP9315处理器相连,提供实时的车辆地理位置信息。触摸屏是人机输入界面,用来完成各种用户信息的设置。LCD显示屏和扬声器是人机输出界面,可以播放MPEG4视频或提示语音报警信息。CAN/LIN总线接口可以挂接汽车内的 CAN/LIN总线,提供对车内CAN/LIN总线的访问。基于上述硬件平台所设计的软件能很好地完成计算平台所要完成的各项功能。 3 汽车嵌入式计算平台的软件体系结构 软件平台采用嵌入式Linux设计。上文已对软件部分要实现的功能进行了一定的描述。其中导航任务是一个实时任务,而Linux不具有实时功能,因此需要改进Linux,使其支持实时任务。基于实时Linux的软件体系结构如图4所示。 系统上电后,首先启动LINux操作系统,然后启动QT引擎,再启动 QT主程序。在LCD显示屏上显示各个应用程序的选择按钮,通过触摸屏按下相应的按钮,即会启动相应的应用程序。下面介绍主要应用程序的执行流程。 (1)导航应用程序。导航程序启动后,用户通过触摸屏输入旅程的起始地点和目的地点。导航软件把该起始地点和目的地点发送到导航服务中心(本项目中为无线局域网中一台计算机),并且每隔一定时间调用导航API从串口1接收GPS接收仪发送的当前车辆的实时地理位置数据,再调用通信API,通过无线网卡把该地理位置数据发送到导航服务中心。导航服务中心根据接收到的旅程起始地点和目的地点计算出最优行使路径,并且每接收到车辆位置信息时,都计算出当前车辆所在的位置,把包含当前车辆位置和应该行使路径的小范围的位置图像发送到车辆。车上的导航软件把接收到的图像在LCD上显示出来,通过该图像司机就可以了解车辆当前的位置和下一步要行使的路线。 (2)诊断应用软件。诊断服务软件启动后,该软件调用诊断API读取连接在CAN/LIN总线上的各个ECU的故障代码,然后再调用通信API把这些代码发送到汽车服务中心(本项目中是与导航服务中心相同的计算机)。汽车服务中心分析故障代码,确定出汽车的具体故障情况,把最终结果通过无线网发送到汽车嵌入式平台。汽车嵌入式平台通过无线网卡接收这些数据,诊断服务软件读取该数据,并在LCD上显示。 (3)汽车/家庭互动应用软件。当在汽车嵌入式平台上运行家庭/汽车互动系统软件时,该软件在LCD上显示家庭中的各个电器及其状态。当用户通过触摸屏发出改变某个电器状态的命令时,汽车/家庭互动软件调用家庭API函数把该命令发送到家庭网关(由社会第三方服务公司提供)。在家庭网关上运行着实现 OSGI协议的软件,该软件可以完成所接收到的命令,并把执行的结果发送到汽车嵌入式平台。 (4)安全监控软件。CCD摄像头把汽车行驶车道的图像输入到DSP处理系统,DSP处理系统对图像数据进行分析,并把分析结果送到在汽车嵌入式平台上运行的安全监控软件,监控软件分析该数据。如果汽车偏离行驶车道,监控软件则调用多媒体API通过扬声器或者在LCD上显示信息提醒驾驶员,从而实现安全监控和报警功能。

    时间:2012-03-06 关键词: 车载 AVR 空调控 设计教程

  • 恒颐车载/便携GPS及GPSOne 定位智能终端解决方案

    随着通信的发展和民用GPS 的推广,移动定位成为一个逐渐升温的应用。移动目标的定位信息,结合电子地图、地理信息系统(GIS),可以帮助我们获得各种基于位置的服务(LBS),如特殊人群监护、特种车辆监控、车辆导航调度、紧急救援、智能物流、智能交通、位置查询等。北京恒颐高科技术有限公司凭借自身的嵌入式应用优势,综合GPS 和GPRS/CDMA 技术,为各种行业客户定制定位型智能终端,提供最恰当的GPS 定位解决方案。 方案介绍 GPS 应用请参照下图1 所示架构,系统由全天候卫星、GPS 定位终端、移动通信运营商网络、公网、自建运营中心构成。恒颐GPS 型应用重点在智能终端方面,即面向行业集成商或产品制造商,提供定位终端解决方案。   图1:GPS/GPSOne 运营架构 依据客户需求不同,我们提供两种GPS 终端方案。 一种是采用独立的GPS 定位模块和独立的无线数传模块(GPRS 或CDMA),由32 位ARM 处理器协调两个模块的工作,将GPS 模块接受到的定位信息交由无线数传模块发送到运营中心。在某些场合,客户不愿租用运营商网络的情况下,我们也可以用无线数传电台来代替GPRS 或CDMA。 另一种方案采用支持GPSOne 定位的CDMA 无线模块,由32 位ARM 处理器管理其工作,通过卫星定位和CDMA 网络辅助定位达到没有充足卫星信号时仍可获取位置信息的目的。 两种方案均支持第三方发起的定位。终端内部构成如下图2 所示。   图2:GPS/GPSOne 智能终端架构比较 这样的定位终端可以支持多种应用,如:定位、移动轨迹记录、超速记录、突发事件汇报、报警、遥控、视频、音频采集播放、其他数据采集、互联网接入、短信、通话等,满足构建超级智能终端的各种要求。 两种方案对比简表. 应用场合 车载导航、汽车综合智能终端; 长途大巴、公交车辆、出租车辆、运输车队、特种运输车车载终端; 邮政、物流企业智能终端; 限制行为能力人群便携定位终端; 中小学生、老人便携定位终端;行业移动岗位人员监控、反欺诈; 重要资产运送安防;宠物看护、防丢防盗; 电力、石化、环保、水利、地质等行业中需要定位信息的应用;

    时间:2012-03-17 关键词: 方案 GPS 车载 gpsone 解决 设计教程

  • 基于ARM 和Qt/E的车载HMI终端的设计方案

    摘要:车载HMI是人与车辆之间的关键设备,使人能够对车辆的运行实现控制;设计了一种触摸控制与数字显示合理结合的车载HMI终端,采用ARM作为处理器,通过移植Qt/E对系统加以实现;该终端通过在Polo车CAN总线试验台测试,实现了对基本设备的触摸控制和车辆状态信息的实时显示,表明所设计的终端能够满足车载HMI的基本要求。 0引言 改善HMI(HumanMachineInterface)终端性能可降低车辆控制系统操作的复杂性,也可提高驾驶员对自己车辆的控制力。车载HMI通过单一结构中控台,可以减少零部件数量,提高性价比。传统机械式的控制终端正在逐步向直观、便捷的HMI终端发展。2009年6月29日,美国汽车多媒体与通信研究服务公司StrategyAnalytics发布最新研究报告,认为"车载人机界面市场领先者保持强势地位".报告预测,2015年,车载语音和触摸屏市场规模将达到29亿美元。目前,HMI设备,尤其是语音、触觉控制和触摸屏,在汽车市场上被大量应用。 本文报告了一种基于触摸控制与数字显示理念的车载HMI终端,通过在ARM上移植Qt/E接TFT-LCD触摸面板加以实现。 1系统结构介绍 基于ARM和Qt/E的车载HMI终端主要由两个模块组成,分别是ARM处理器与触摸显示屏组成的HMI触控平台和CAN/RS232协议转换器模块。该终端可接入车载CAN网络中实现车载设备的触摸控制与状态信息显示。其结构框图如图1所示。 图1车载HMI终端结构 HMI触控平台主要是将Qt/E交叉编译后移植到ARM平台,调用GUI在触摸面板显示。通过点击触控界面发送控制字,经CAN/RS232网关发送到CAN网络中对各设备进行控制,同时实时采集各设备运行状态参数并显示,便于驾驶员及时了解车辆运行状态。该平台还预留了UART和USB端口分别可外接GPS模块,无线上网卡或U盘设备,实现导航、无线上网和多媒体播放功能。 CAN/RS232协议转换模块主要由MCU、CAN接口与UART接口组成,其中CAN接口采用CAN控制器SJA1000和CAN收发器PCA82C250设计,RS232接口采用MAX232设计,以此实现两种不同总线协议数据帧的透明转换,是HMI终端与CAN网络中各设备交互的纽带。 车载CAN网络模块主要以Polo车CAN试验台为平台,试验台集成了车灯、电动车窗、雨刷和后视镜CAN节点模块。 2Qt/E在ARM上的移植 Qt/E是Trolltech公司专为嵌入式Linux系统开发的图像用户界面(GUI)工具包。提供了窗口操作系统、开发环境、工作辅助应用程序和个性选项等,是基于C++可跨平台的GUI应用程序框架;还提供给开发者建立艺术级GUI所需的功能,开发者可根据需求定制整个软件解决方案。目前,众多手机、PDA、机顶盒都采用Qt作为图形引擎。因此,选择了Qt/E作为HMI终端的开发工具。 2.1交叉编译环境的搭建 采用宿主机Fedora9.0作为开发平台,移植ARM版Qt/E4.7进行设计。因编译Linux内核和Qt/E都需要交叉编译工具链,交叉编译器版本过高过低都会与Qt/E4.7不兼容,最终导致安装失败,所以一定要根据Qt的版本来选择对应的编译器。本系统采用arm-linux-gcc-4.5.1.安装过程如下: 首先,解压arm-linux-gcc-4.5.1安装包,运行#tarxvzfarm-linux-gcc-4.5.1.tgz命令;然后将编译器所在路径加入系统环境变量,运行#gedit/root/.bashrc编辑该文件,修改最后一行为exportPATH=PATH:/usrt/local/arm/4.5.1/binPATH,此时交叉编译器已经安装好;最后执行#arm-linux-gcc-v显示编译器版本信息,验证是否安装成功。 2.2Qt/E4.7的编译与移植 减压ARM版Qt/E安装包到指定目录,然后进入该目录执行编译配置源码命令#echoyes|./configure-opensource-embeddedarm–xplatformqws/linux-arm-g++-no-webkit-qt-libtiff-qt-libmng-qt-mouse-tslib-qt-mouse-pc-no-mouse-linuxtp-no-neon.其中编译ARM平台的embedded版本配置参数为embeddedarm,使用arm-linux交叉编译器进行编译为xplatformqws/linuxarm-g++,qt-mouse-tslib是使用tslib来驱动触摸屏。然后执行make命令进行编译,当编译完成之后执行安装命令makeinstall.最后把安装文件打包#tarcvzfqt4.7.tgz,下载到ARM开发板,并解压到指定目录。至此Qt/E在ARM开发板上移植完成。 安装Linux环境下X86版QtSDK软件-QtCreator2.0进行Qt程序开发,设置为支持Qt4.7ARM的交叉编译。最后将设计好的程序通过编译,生产二进制文件下载到ARM开发板运行,以此实现HMI界面显示功能。 3车载HMI终端的硬件设计 3.1CAN/RS232协议转换器的硬件设计 CAN/RS232协议转换器主要有主控制器、CAN接口模块与RS232接口模块组成,其中主控制器采用STC89C52单片机负责处理CAN总线与RS232总线的数据接收与发送,实现两种不同协议数据帧的透明转换与传输。 CAN接口模块采用Philips公司的CAN控制器SJA1000和CAN收发器PCA82C250芯片组成,主要实现CAN协议的物理层和数据链路层功能。其中CAN控制器完成数据链路层功能,实现与主控制器的信息读写操作,物理层通过CAN收发器实现电平转换和传输。SJA1000的AD0~AD7与单片机P0口连接,实现地址/数据复用;片选/CS与P2.7相连,则基地址为0x7F00;/RD、/WD、ALE引脚依次与单片机各引脚相连;中断/INT接单片机/INT0,因此可通过中断方式对SJA1000进行实时访问。SJA1000的MODE引脚用于选择CAN控制器在Intel模式还是在Motorola模式工作。由于STC89C52属于Intel系列微控制器,故MODE引脚接+5V高电平设置为Intel模式,以满足89C52的读写时序要求。为了增强节点的抗干扰能力,以及避免当CAN收发器失效时出现过流导致CAN控制器击穿,SJA1000的TX0和RX0引脚通过光耦N6137后与PCA82C250的TXD和RXD连接,以此实现总线上节点间电器隔离;收发器CAN_H和CAN_L引脚通过5Ω电阻与CAN总线端口连接起到限流作用;同时两端接120Ω终端匹配电阻。 RS232接口电路采用MAX232芯片,实现单片机串口TTL电平与RS232电平相互转换,完成HMI终端UART口的信息传输。STC89C52串口端(P3.0和P3.1)与MAX232的T1IN和R1OUT连接,T1OUT与R1IN接九针串口,然后通过交叉线与HMI终端连接实现数据通信。[!--empirenews.page--] 3.2车载HMI触控平台的设计 HMI触控平台以ARM为处理器,接7.0寸LCD触摸屏来实现,可取代传统的(如图2A)机械按键与表盘显示的中控平台。HMI触控平台如图2B所示,由车灯、车窗、后视镜、多媒体、空调、导航以及状态参数显示菜单组成。将该终端嵌入到方向盘,驾驶员可点击触控菜单进入车灯、车窗等控制界面(如图2C和D)实现车灯、车窗等设备的触摸控制,也可实时采集与显示设备状态参数如:车速、故障码等。其中,触控与显示数据需调用ARM底层串口驱动来实现读写操作,触控界面通过Button控件的信号与槽机制来实现数据的发送,状态参数的采集与显示通过事件驱动方式实现。终端可外接GPS模块实现导航功能,设计了Qt媒体媒体播放器实现娱乐功能,也可接入无线网卡来实现无线上网功能。 图2车载HMI终端 4车载HMI终端的软件设计 4.1CAN/RS232网关软件设计 主程序中首先要完成初始化操作,包括单片机、SJA1000、RS232通信以及中断源的初始化。其中SJA1000的初始化是整个设计最重要的部分,也是保证CAN通信的前提。考虑车辆内部网络的兼容性,SJA1000配置为Peli模式,支持CAN2.0A和B规范,实现标准帧和扩展帧两种报文传输。SJA1000初始化寄存器配置流程如图3所示。 图3SJA1000初始化寄存器配置流程 为保证数据实时传输,采用中断方式进行数据收发。 当CAN总线有数据接收时SJA1000会跳入接收中断函数将数据接收并存储到接收缓存,根据数据帧头来判别数据类型和所带数据长度,最后提取CAN数据拆分为单字节通过串口发送,并在HMI终端显示;当HMI终端有控制字发送,串口接收中断函数将所发送的控制字依次接收存入接收缓存,并根据首字节来判别所发数据类型和长度,组装成CAN数据帧格式发送到网络中去,以此实现各节点的控制。具体流程如图4所示。 图4数据接收与发送流程图 4.2车载HMI界面的设计 HMI界面采用QtCreator2.0来设计,因为HMI终端是通过UART接口接入CAN网络中,所以通信时需接上面所介绍的CAN/RS232协议转换器来实现。同时,还需在Linux下编写Qt串口通信程序。 首先,在Linux下利用open函数打开串口设备,用tcsetattr函数来设置串口属性。打开驱动设备UART0进行读写操作:constchar*devName="/dev/ttySAC0";fd=:: open(devName,O_RDWR|O_NONBLOCK);设置波特率等参数:serialAttr.c_cflag=B115200|HUPCL|CS8|CREAD|CLOCAL;serialAttr.c_cc[VMIN]=1;其中串口设备可使用Linux下I/O函数进行Read和Write操作。但是,在数据接收时当数据量过大会导致界面被阻塞(造成界面假死),于是创建了一个线程通过事件驱动实现数据接收。 Qt中可采用QSocketNotifier类来实现设备事件驱动的设计要求。QSocketNotifier类关联Signal/Slot机制,当有数据可读时会触发Ativated信号,LCDNumber控件Slot会被调用来连接到该信号并显示,从而实现数据采集与显示功能。在数据发送时,可通过Button控件Signal/Slot调用QObject对象的connect()函数来实现[3].当按键被按下时触发Signal信号,Slot会调用pressed()函数将定义好的数据通过串口Write函数发送到总线上。函数实现如下: voidGlass::on_lu_pressed(){charmsg[]={160,34,16,0};//定义所发送数据myserial->myCom->write(msg,4);//写发送数据} 通过QPainter类进行对窗体界面和按键图像界面进行设计,达到美观的人机界面。最后将设计好的程序通过交叉编译,生产二进制文件移植到ARM中,然后在文件系统中调用执行,最终在LCD触摸屏上显示,如图2所示。 5系统集成与测试 首先将设计好的HMI终端通过交叉串口线与PC机连接,进行相互通信,测试是否能够进行数据收发,测试成功后通过CAN/RS232网关接入Polo车CAN试验台进行综合测试。试验台设备节点可通过触摸方式控制,同时可实时采集与显示运行状态信息,经过多次实验测试,运行稳定可靠,达到了设计要求。 6结束语 本文所设计的车载HMI终端集车身控制、仪表显示、导航、多媒体和无线上网为一体,简化了车载中控平台,降低了车辆控制系统操作的复杂性。经实验测试实现了车身设备的触摸控制,能够对各设备运行状态信息进行采集与显示。为车载HMI开发提供了一种可行的设计思路与性价比更合理的解决方案。

    时间:2012-04-25 关键词: 方案 ARM 车载 hmi QT 端的设 设计教程

  • Mentor Graphics Hypervisor可为多核处理器带来高性能和安全性 实现多操作系统的整合

    21ic讯  Mentor Graphics公司今天宣布,推出针对车载信息娱乐系统(IVI)、车载资讯系统、高级辅助驾驶系统与数字仪表而开发的新版Mentor® Embedded Hypervisor产品。Mentor Embedded Hypervisor是针对嵌入式应用程序和智能连接设备而特别研发的占用内存小的Type 1型虚拟机产品。 借助Mentor Embedded Hypervisor,研发人员可将应用程序集成和整合到多核处理器上,并利用ARM® TrustZone®技术,开发出高性能系统。通过使用Linux,可以利用开源生态系统,同时重复利用现有的私有软件,并积极保护知识产权,可提高新系统的开发速度。 借助新版的Hypervisor产品,汽车制造商和一级供应商便可拥有独一无二的系统设计能力,可开发出整合Linux、AUTOSAR,实时系统、裸机系统和子系统的系统产品。Mentor Embedded Hypervisor支持兼容Yocto项目的Mentor嵌入式Linux®、符合GENIVI标准的Mentor嵌入式汽车技术平台,未来还将支持Android系统,Mentor Volcano AUTOSAR软件,以及Nucleus® RTOS。Mentor公司将继续跟踪并采用包括Yocto项目和GENIVI在内的最新技术和标准。 Robert Bosch汽车多媒体有限公司副总裁、工程业务部AI(汽车导航和信息娱乐系统)主管Andree Zahir博士认为,“Mentor公司对Mentor Embedded Hypervisor等技术的持续投资,不但使汽车供应商能够对即将成为现实的多核SoC进行利用,而且既增强了单一硬件设备的功能和连接性,又使关键功能保持了独立和分离。” Mentor Embedded Hypervisor既可支持ARM TrustZone,也可支持对内存、加密块、键盘/显示器等基于硬件进行分区的资源有要求的应用程序,创建了一个完全独立的安全操作环境。其特点是有一个灵活的设备模型,支持虚拟设备接入,或对性能要求较高的应用提供直接设备接入,并可为不同的系统之间的通信提供多种机制。 “基于ARM Cortex®-A处理器的特性,嵌入式虚拟平台可以实现对不同的工作量进行分区,提高了系统的安全性,”ARM处理器部嵌入式软件与安全主管Keith Clarke说。“Mentor Embedded Hypervisor研发过程中一直关注安全性,它可帮助系统设计师进行功能整合,提高服务价值,缩小嵌入式设备的规模、重量功耗和成本。” Mentor Embedded Hypervisor的架构具有极强的灵活性,可在单核或多核处理器体系结构上运行,支持非对称多处理(AMP)、对称多处理(SMP)以及二者兼而有之的系统。Mentor Embedded Hypervisor和芯片供应商提供的最新SoC的有机结合,可作为集成式解决方案加快新兴硬件平台的研发速度。 “TI的高性能多核Jacinto平台很好地满足了信息娱乐系统和数字仪表对丰富和动态图形界面的需求。”德州仪器公司音频与娱乐系统部总经理Matt Watson说。“Mentor Embedded Hypervisor将和Mentor公司的AUTOSAR以及基于Linux的汽车软件专业技术一道,使汽车一级供应商和汽车制造商能够充分利用Jacinto 6等高级平台的优势,将娱乐、数字仪表和远程信息处理功能集中到一个集成式SoC上。” 借助Mentor Embedded Hypervisor嵌入式系统,研发人员可: · 在单一多核计算平台上集成多种功能,减少测试和调试时间 · 对对称和非对称多处理以及二者兼而有之的系统(AMP/SMP)加以利用 · 打造具有最高特权级别的安全的高性能嵌入式系统 · 利用ARM TrustZone安全系统架构,保证单一嵌入式应用程序的安全启动和安全PIN访问等操作的安全性和正常运行 · 对设备和内存进行分区,防止未经授权访问敏感资源 “Mentor Embedded Hypervisor具有强大的功能和灵活性,开发人员可借其进行功能整合,从而满足当今复杂且具有高度连接性的设备的各种要求。”Mentor Graphics公司嵌入式软件部运行解决方案总经理Scot Morrison说。“内置的安全功能为可靠性和数据完整性提供了保证,而集运行时、工具和服务于一身的综合性解决方案则可使客户实现产品差异化,并在各自的市场上占据领导地位。” Mentor Embedded Hypervisor产品将于2013年12月上市。更多产品信息,请联系Mentor嵌入式软件部销售代表或致电800-547-3000。

    时间:2013-11-07 关键词: 操作系统 系统 处理器 安全性 车载 信息 整合 娱乐 hypervisor

首页  上一页  1 2 3 4 5 6 7 8 9 10 下一页 尾页
发布文章

技术子站

更多

项目外包

更多

推荐博客