新闻  |   论坛  |   博客  |   在线研讨会
用TMS320DM270在MP4上实现GPS导航
yanqin | 2009-06-24 16:45:19    阅读:1269   发布文章

 

引言

近年来,电子技术的迅猛发展使pda、mp4、高端手机等电子产品已经走进寻常百姓生活中。人们对这些产品的要求越来越高,而在mp4上实现gps卫星导航功能,可以使持有者在享受音乐、图片、电影、网络通讯、邮件等娱乐功能之外,又多一个实用功能。通过把gps (global positionsystem-全球定位系统)导航系统嵌人到mp4中,可以实现交通导航,卫星定位,获得星历时间,也可以放置在车辆中用于车载导航,并可为出游者提供掌上电子地图等。本文以法国某公司的一款mp4 (爱可视av700)为原型来说明将gps导航系统嵌人到mp4硬件平台的系统原理、结构、软件模块化设计及实现过程。

1 系统硬件要求

av700型mp4中的核心芯片tms320dm270是一款基于多处理器架构,并集成有dsp和arm7risc处理器的双核结构。其中80mhz arm7tdmi32位risc微控制器作为整个系统的主控制器.以满足控制和接口方面的处理需要。该控制器具有一级缓存(8 k字节)和片上程序/数据存储器(32k字节),ti公司的90 mhz dsp芯片可编程tms320c54xtm则具有片上程序/数据存储器(128 k字节),可用于处理音频编码与解码。

tms320dm270集成有专门用于高计算量要求的可编程协处理器,其中simd图像处理引擎(imx)可执行dct、反向dct以及众多其它处理运算中的运动估计与补偿。其它协处理器则执行可变长度编码/解码、量化与逆量化等。

该器件带有用于实时查看和数字放大的预览引擎(preview engine)、用于dsc系统的硬件像素预处理器、多功能屏幕显示(osd)、彩色lcd数字接口、支持高达64mb和32/16位接口的120mhz sdram、用于ntsc/pal混合视频输出的10位dac、8/16位数字rgb/yuv输出、串行音频编解码接口(mcbsp)、usb1.1功能控制器设备等,另外,arm7还有一个jtag接口,并提供了一个功能完善的调试手段。tms320dm270以其强大的处理能力和多媒体性能可以满足将cps导航功能嵌入到mp4设备的需要。

综上考虑,用嵌入式系统实现该gps导航系统是一个上佳选择。av700的核心芯片是tms320dm270应用处理器,辅之以一定的外部设备,构成一个功能完整的系统。

2 gps系统原理和结构

整个gps系统南空间卫星、gps模块和用户设备三部分组成。空间部分即gps卫星群,由21颗定位卫星和3颗备份卫星组成。这些卫星可以覆盖全球,从而使地球上任何一点基本上都可以接收到4颗星的卫星信号,从而实现三维定位和测速。gps模块部分是接收卫星信号,并经过调制分离出经纬度、高度、速度和时间等信息,最后通过串口发送到数字处理芯片进行处理。用户设备则通过接收卫星信号来实现自身定位,并通过预装在芯片中的电子导航地图实现路标指示,以引导使用者到达目的地。

图1所示一个gps导航系统的总体结构组成框图。其中用户设备部分有以下几个模块组成:gps接收模块、数字信号处理模块、按键输入模块、液晶屏和音频输出模块等组成。

核心硬件电路模块以tms320dm270处理器为核心和必要的附加设备组成,其结构如图2所示。内存采用64 mb的sdram。为保证运算空间足够大,系统还配置了64 mb的flash闪存以用于存储操作系统、应用程序和数据。此外还配置了相关的接口电路。

gps模块和tms320dm270之间通过串口(u-atr)进行通信。由于gps导航系统被嵌入到mp4上,而实现定位导航功能只是增加了mp4的一个辅助功能,所以,本系统通过扩展按键来输入键盘信号,以控制mp4功能的切换。

该软件可在主机上开发,然后通过usb接口将程序和数据下载到系统中。

3 软件模块的设计与开发

本系统的软件设计模块如图3所示。该软件以电子地图分析模块和数据库为中心,包括gps模块、通讯模块以及显示和声音输出模块。

数据库中记录着各种地理信息和数据。事实上,整个城市可以看成一个以各路口和转折点为节点的有向图。各路段可用折线段表示,并可设立各转折点的经纬度坐标,然后分配一定的“属性字段”。当打开mp4且处于gps接收状态时,系统将由gps模块接收和分析卫星信号,同时计算当前的经纬度、速度、方向等数值,以得到mp4持有者在电子地图上的当前位置。若能定时记录位置移动情况,就可以在lcd上显示直观的运行路线。此外,可以得到精确的星历时间,以便为出行、旅游提供极大的方便。

对于导航系统的软件,考虑到uclinux已经在90%以上的mp4中采用,而且uclinux的开放性特点使得很大一部分软件可以免费进行移植修改,这样就可以节约大量的授权费用,许多lin-ux高手也已经开发出非常丰富的应用数据包,如网络浏览、电子邮件、游戏、个人事务处理甚至gps电子地图等。如果可以得到他们的支持,就能节省很多开发时间。所以本设计采用uclinux作为操作系统,用hitool for uclilux作为软件开发工具。其开发流程如图4所示。

hitool for uclinux是hitool system公司的开发套件,整个开发过程可以在windows环境下完成,并采用jtac方式来调试。这种方式可以调试内核和驱动程序,同时也可以调试应用程序。在硬件平台(基于arm7处理器)建立后,可以通过仿真器将已经准备好的uclinux内核(linux.elf)下载到ram上。可以像调试一个普通的嵌入式程序一样调试linux内核,再编译生成“合身”的操作平台(linux_bootrom.bin),最后烧录到flash中。

该系统软件编译好后,便可通过usb口把编译好的软件下载到目标板的文件中。经调试运行正常,即可投入试用,并可以开发新的功能。

4 结束语

gps是当今世界应用最广泛的导航定位系统,无论在车载导航系统还是在手持式导航设备,特别是在pda、mp4、高端手机等电子产品中,用高速处理器和强大的多媒体功能来实现卫星导航,具有其广阔的发展空间。

  


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客