用TMS320DM270在MP4上实现GPS导航

发布者:自在堂最新更新时间:2007-07-09 来源: 电子元器件应用关键字:缓存  片上  编程  解码 手机看文章 扫描二维码
随时随地手机看文章

引言

近年来,电子技术的迅猛发展使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、高端手机等电子产品中,用高速处理器和强大的多媒体功能来实现卫星导航,具有其广阔的发展空间。

关键字:缓存  片上  编程  解码 引用地址:用TMS320DM270在MP4上实现GPS导航

上一篇:基于SPCE061A的车载DVD播放器设计与实现
下一篇:历数N种顶级电子奢侈品 非一般的奢华

推荐阅读最新更新时间:2024-12-18 22:14

用51单片机中断法解码pt2262无线遥控器
/*********************************************** pt2262解码软件修正版 使用了位操作代替前版本的位寻址,使用三个字节变量存储获取的数据,便于以后将地址和数据进行操作 增加了两次数据比对的功能,降低误码的干扰 2007.8.24 接受模块的信号输出端接INT0中断口。。。 P1.0,p1.1上接LED显示接受的情况。。。 用pt2262无线遥控器解码测试通过。。。 注意:使用的是4M的晶振以减少mcu对接受模块的干扰。。。 程序开发:http://www.51hei.com 运行平台:51hei单片机开发板+315m无线模块,用杜邦线连接. 使用时可能要改变检测的特征值,视遥控的
[单片机]
C51编译器-高级编程技巧(6)-绝对存储器访问
Accessing Absolute Memory Locations 绝对存储器访问 C编程语言并不支持明确地提定一个静态或全部变量的存储位置。有三种方法可以明确地参考存储器位置: (1)绝对存储器访问宏 (2)连接器位置控制 (3)关键字_at_ Absolute Memory Access Macros 可以使用作为Cx51库一部分的绝对存储器访问宏。使用以下宏可以直接访问存储器区 CBYTE DBYTE PBYTE XBYTE CWORD DWORD PWORD XWORD CBYTE的宏定义为: #define CBYTE ((unsigned char volatile code *)
[单片机]
工业机器人ABB编程常用指令
在之前的文章中,相信你已经对ABB的MOVE指令以及常用专属名词有一定的了解了,而从这篇文章开始,继续学习新的 常用指令 。 1.Procall调用程序。     在ABB的编程中,一个程序可以被多次调用,而在示教器中,可以通过Procall调用其他的程序。 用法如下: 在主程序中,选中 proccall。 点击PROCCALL之后,会出现如下弹窗: “弹窗中显示的都是可以被调用的程序,如图所示,可调用的程序共2个:main主程序以及一个roune子程序。值得 注意 的是, 在主程序中,也是可以调用主程序的 ” 根据需要来选择程序即可,在这次的讲解中,以调用routine1
[机器人]
步进电机的特点有哪些_步进电机控制器编程
  步进电机的特点有哪些   步进电机是一种特殊的电动机,相较于传统的直流电机或交流电机,其具有以下几个特点:   高精度定位:步进电机可以通过控制脉冲信号来实现准确的位置定位,通常可达到0.9度或更小的步距角度,精度高于传统电机。   不需要位置反馈:传统的伺服电机需要使用编码器等位置反馈装置来实现闭环控制,而步进电机可以通过开环控制实现准确位置控制,简化了系统结构和调试难度。   高扭矩低速驱动:由于步进电机的工作方式,其在低速运动时具有较高的转矩,适用于需要大扭矩低速驱动的场合。   简单控制:步进电机的驱动控制相对简单,只需要向其提供脉冲信号即可控制其运动,控制器和电机的接口简单,易于集成和应用。   低噪音:步进电机通常
[嵌入式]
Sphero推出球形编程教学机器人Bolt
据麦姆斯咨询报道,Sphero刚刚推出了名叫Bolt的新款教学 机器人 ,与此前推出的Spark+相比,Bolt最大的特色,就是配备了红外传感器和可编程的LED点阵显示屏。在完成任务的时候,Bolt可以显示一个眨眼的笑脸、或者正在移动的方向箭头。借助四个红外传感器,小机器人之间可以在大约5米范围内互相通信,这也是该公司首次引入这项特性。 Sphero Bolt还内置了电子罗盘,带来了更好的瞄准、环境光传感、电池续航也更加持久(综合工况两个小时,若执行简单动作,可能会更长久)。 孩子们可以通过Sphero公司提供的两款配套移动应用,对机器人进行控制和学习编程。 Sphero Play支持通过触屏设备,与Bolt滚球机器人进行交互
[嵌入式]
基于TMS320C6713的多路CVSD语音编解码
  64 Kb/s的A律或μ律的对数压扩PCM编码在大容量的光纤通信系统和数字微波系统中已得到广泛应用,但由于占用较大的传输带宽和具有复杂的成帧结构。连续可变斜率增量(Continuously Variable Slope Delta,CVSD)调制以其较低的应用难度、成本和编码速率,较好的语音质量广泛应用于战术通信网、卫星通信、蓝牙等无线语音传输领域。于是不同码制的网络之间的互连对两种码制之间的转换提出了更高的要求。针对近年来FPGA、DSP技术的不断发展,本文提出了一种满足此需求的设计方案,以适应通信技术日新月异的发展。    1 多路数据信号的收发   1.1 McASP(Multichannel Audio Seri
[嵌入式]
利用高效的编程技术发挥多内核架构优势
在整个嵌入式领域,“更多内核”已经成为设计趋势,一些硬件架构可以提供数十个内核,有些架构中的内核甚至多达上千个。然而,多内核设计在软件方面仍存在诸多挑战,在不同架构间进行应用程序的移植并不容易。 在低端嵌入式领域,单内核解决方案仍然存在。通过采用速度更快或带宽更宽的处理器仍有可能提升系统的功能和性能曲线。在高端领域,多内核是必然的发展方向。这正是双精度浮点算法经常出现并在超级计算机中长盛不衰的原因。事实上,台式机和机架安装系统(比如Nvidia的产品)正在将这种处理能力普及化。 在讨论软件和多内核架构时经常提及的另一个问题是虚拟化。并不是所有多内核平台都支持虚拟化,但虚拟化确实能带来更好的机会。虽然虚拟化使得硬件设计面临更多的挑
[单片机]
利用高效的<font color='red'>编程</font>技术发挥多内核架构优势
由可编程逻辑器件与单片机构成的双控制器
    摘要: 介绍一种利用可编程逻辑器件CPLD与单片机AT89C51串行双向通信而构成的双控制器。     关键词: CPLD AT89C51 串行通信 在传统的控制系统中,人们常常采用单片机作为控制核心。但这种方法硬件连线复杂,可靠性差,且单片机的端口数目、内部定时器和中断源的个数都有限,在实际应用中往往需要外加扩展芯片。这无疑对系统的设计带来诸多不便。 现在有很多系统采用可编程逻辑器件CPLD作为控制核心。它与传统设计相比较,不仅简化了接口和控制,提高了系统的整体性能及工作可靠性,也为系统集成创造了条件。但可编程逻辑器件的D触发器资源非常有限,而且可编程逻辑器件在控制时序方面不如单片机那样方便,很多
[工业控制]
小广播
最新手机便携文章

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved