祝莹莹 刘 丹
摘 要:本系统率先采用ADSP-BF533[4]嵌入式处理器为核心设计的嵌入式系统解决方案,充分利用了该芯片强大的运算功能,控制功能和低成本、易推广的特性,实现了触摸式地图导航系统。该系统设计了方便的触摸式交通信息查询系统,可以简便的让用户获取所需的咨询。针对公交系统的工作环境大多处于公共场所而采用适应能力强的设计方案,充分考虑实用性,不易损坏和低价性。
关键词:BF533 触摸感应 导航 网络文件系统
引言
在现代社会中,发展以公交和地铁为主的公共交通才是解决之道,但是公交越开越多,也越来越难确定应该坐哪一路才能到目的地。因此,我们萌发了做出一个查询简单直观的乘车导航系统得想法。采用触摸界面的系统亲和度很高,利用系统得强大特性迅速查到出行路线。
我们的系统做到了无论单击任意两个地点都能够查询出一条以上的公交路线,提供一次以内的中转交通方式。这个系统查询方便,操作简单,成本较低,维护方便,是城市交通查询的一种很好的解决方案。
组成模块
Blackfin[5]系列BF533嵌入式处理器可以完成多媒体应用中很普遍的实时数据流处理和通常由MCU完成的控制任务。BF533 EZ-Kit开发平台以BF533处理器为核心,可以通过USB接口进行在线调试,同时板上集成了大量实用的外设接口资源,是能够发挥出BF533优异特性的良好平台。触摸地图模块中四线电阻式触摸屏是利用压力感应进行控制的,当手指触摸屏幕时,两层导电层在触摸点位置就有了接触,电阻发生变化,在X和Y两个方向上产生信号,然后送触摸屏控制器。ADS7843芯片是TI公司生产的4线电阻触摸屏转换接口芯片。ADS7843是一款连续近似记录(SAR)的A/D转换器。ADS7843具有低功耗和高速速率等特性。鉴于开发板没有提供很多通用I/O,我们采用一块AT89S52单片机进行ADS7843的初始化和驱动,并将读到数据通过UART异步串行接口传给BF533 EZ-KIT。液晶显示模块硬件部分购买亿旗公司的3.5inch液晶屏和驱动板。TFT液晶模块通过PPI接口连接到扩展板上的LCD接口实现液晶显示。网络接口硬件部分采用扩展板上自带的以太网控制芯片和接口。CS8900A是Cirrus Logic公司生产的低功耗、性能优良的16位以太网控制器,它的封装是100p in TQFP。该芯片的突出特点是使用灵活。其物理层接口、数据传输模式和工作模式等都能根据需要进行动态调整,通过内部寄存器的设置来适应不同的应用环境。扩展板RJ45网线接口是相连着的,所以将系统联入交换机即可实现系统入网。
触摸屏控制驱动模块是根据触摸屏控制芯片ADS7843结构搭好芯片的外部电路来完成的。ADS7843有差分和单端两种工作模式。相比较于单端模式,差分模式有着很多优势。软件设计还包括公交乘车方案查询模块和模块流程图部分。另外还有TFT液晶显示界面,其原理是在系统初始化之后在SDRAM中定义一块视频缓冲区,并通过PLL寄存器设置定义一个时钟,然后按设定的时钟中断频率打开DMA将缓冲区中的内容送到PPI接口,下层的驱动和转换由驱动板完成。这样就实现了图像在LCD上的显示。网络接口包括链路层网卡芯片驱动、采用Socket编程结合UDP协议实现的网络功能。本系统的网络功能主要包括网络文件系统和更新功能。
本系统具有以下特点:
(1)查询方便直接,操作简便
(2)查询系统具有很大的模糊度
(3)提供信息完整,实用性强,升级及时
(4)系统相对于PC系统更耐用,在公共环境中不宜损坏,维护方便
(5)系统可靠,功耗低
实现触摸屏驱动需要控制外围设备,而路径查询算法,则需要强大的实时运算功能,这正是DSP所擅长的,因此我们的设计选择了ADI公司的新一代嵌入式处理器BF533[1],它将MUC的控制功能和DSP的运算功能相结合,使用同一套指令集的设计使得设计非常精简,方便。而且ADI公司提供的BF533评估板上集成了很多使用的接口,使我们能够专注于算法开发。他还是一款性价比很高的芯片,。所以我们采用BF533为核心平台,外扩触摸地图、触摸屏控制芯片、液晶显示屏等设备实现系统功能。
地图模块在硬件上触摸板、ADS7843芯片电路、8051接口电路组成;软件上由ADS7843驱动程序、8051数据读取和传输程序、UART接口程序、地图位置信息辨识程序组成[2]。
我们把整张地图分为很多小方块,然后每个车站控制其周围的一些方块,当用户点击这些方块中的任何一个时,系统获得位置信息后认为用户要求抵达相应的车站。
信息查询模块主要是软件设计。该模块主要包括公交路线数据库、查询算法。
我们自己建立了公交路线数据库,存储在网络服务器上。开机初始化时终端系统向服务器提交请求,服务器发送数据库、显示文件等数据给终端系统。终端系统收到数据后将其缓存在SDRAM中并等待用户操作。同时服务器可以通过网络向终端系统发送更新的数据,比如站点信息的更新。
用户通过触摸模块进行操作后,系统将触摸模块传来的坐标信息转化为站点信息,再以站点信息为关键字在数据库中进行路径查询。
查询算法是我们自己开发和优化的,采用了直接查询和热点站中转的方式,保证了所有站点在一次转车内可达。查询结果放在特定的结构体中交由液晶显示模块处理并生成中文菜单界面,通过液晶屏显示出来。
液晶显示模块硬件由TFT液晶屏、驱动板、扩展板LCD接口芯片组成;软件由液晶显示驱动程序、字库文件、背景文件等部分组成[3]。
我们购买了亿旗公司的3.5inch带驱动板的TFT液晶屏。并自己编写了显示驱动程序和供上层调用的应用函数,包括刷新区域、指定位置填充字符、指定位置擦除字符等。
硬件直接采用扩展板上所带的网络接口,网络控制芯片CS8900A;服务器软件采用Socket编程实现。这个方案,扩展了数据存储空间和范围,简化了数据更新。
我们通过PC上的Socket和在开发板上实现的网络驱动进行数据传输系统编程,实现了基于UDP协议而设计的保证交付的协议并建立了实用可靠的网络文件系统,可以通过该系统存储文件并实现服务器与终端系统的文件传输。◆
参考文献:
[1]王东清.导航电子地图基础平台的技术设计[M].地理空间信息,2007.