新版嵌入式公交查询系统的设计汇编摘要由于城市化进程迅速,交通越来越拥挤。为了缓解交通压力,公共交通工具将起到关键作用,而其人性化服务并不完善。本论文研究如何利用嵌入式系统作为平台、Qt做图形化的人机交互界面设计、SQLite数据库对后台数据进行支持,而最终完成公交的线路查询等功能。关键词嵌入式;Qt;SQLiteTP212文献标识码A1674-6708(202x)43-0211-02TheDesignofEmbeddedBusQuerySystemDAIYanjiongSchoolofComputerandCommunicationHNU,ChangSha414000,HunnaProvince,ChinaAbstractDuetotherapidurbanization,thepopulationincrease,trafficmoreandmorecrowded.Inordertoalleviatetrafficpressure,publictransportwillplayakeyrole,andthehumanizedserviceisnotperfect.Thispaperstudieshowtouseembeddedsystemastheplatform,usingQtdographicalinterfacedesign,useofbackenddataSQLitedatabasesupport.Andfinallycompletefunctionssuchasthelineinquiresbus.Keywordsembedded;Qt;SQLite0引言汽车尾气中还含有大量的NOx、HC及CO等污染物,是大气中形成光化学烟雾和酸雨的主要原因[1]。目前对于尾气污染问题有以下几种解决方向:安装排气净化装置、采用新的动力源、倡导更健康的出行方式[2]。尽量更多的选择公共交通工具,对于缓解城市的交通压力起到关键的作用。本论文的着重点在于如何为公交乘客提供更加人性化的服务,利用嵌入式技术在公交车上安装终端系统,实现用乘客的人机交互。通过简单便捷的操作方式,便能实现如公交线路查询、公交换乘、查询站点周边银行、酒店、餐饮、超市、药店等服务。1系统整体框架首先,选择一个适当的硬件平台,移植适当的嵌入式操作系统。再在系统里面移植用于人机交互的GUI(GraphicalUserInterface,图形用户界面),以及用于存储、查询数据的数据库。数据库为查询系统提供数据支持,GUI为查询系统提供界面支持。整体框架见图1。2硬件选择及框架在这里我们选择了采用ARM920t内核的S3C2440A微处理器,S3C2440A是三星公司推出的16/32位RISC微处理器,它价格较低、低功耗、高性能。选择LCD显示及触摸屏作为显示与交互模块。本系统考虑到不同需求,设计了串口通信、USB、以太网接口,以满足不同的需要。系统硬件整体设计框图如下图2所示:3软件平台的选择1)嵌入式系统的选择。Linux操作系统作为开源的嵌入式操作系统,被人们广泛应用。其支持众多嵌入式平台,并支持各种GUI各种工具和数据库的操作系统;2)GUI的选择。Qt作为一个跨平台的C++图形用户界面库,为应用程序开发者建立艺术级的GUI(图形用户界面)所需要的功能。本系统选择的是Qt4.5.0版本;3)数据库的选择。本系统选择的数据库是SQLite,SQLite是一款轻型的数据库,是为嵌入式产品量身打造的数据库。占用资源非常的低,可能只需要几百K的内存就够了。4公交查询系统的设计4.1数据库建立系统的目标是完成公交线路的查询以及站点的查询。根据这个要求建立一个bus.db的数据库,里面设计两个表。一个表名Route(线路),另一个表明BusStop(公交站点)。Route里面以BusRoute(公交线路)作为主键,BusStop里面以Initial(首字母)作为主键。以下为创建表过程:createtableRoute(BusRouteprimarykey,bp1,bp2,bp3……………);表1的内容以1路公交车为例:1,站名1,站名2,站名3,站名4………。CreatetableBusStop(Initialprimarykey,busstop,rt1,rt2,rt3……);表2的内容以”雷锋镇”站为例:L,雷锋镇,线路1,线路2………。将公交的信息输入Route,BusStop后数据库就完成了。4.2Qt程序的设计Qt为数据库操作提供了专门的多个类,提供了查询、插入、创建等功能。下面是Qt访问数据库的代码:ui->setupUi(this);QSqlDatabasedb=QSqlDatabase::addDatabase("QSQLITE");db.setDatabaseName("bus.db");db.open();公交查询系统的界面是用Qt提供的Designer工具编写的。查找Route表的代码如下:QStringrm=ui->find_comboBox->currentText();QSqlQueryquery("select*fromRoutewhereBusRoute="QStringname1,name;while(query.next()){for(inti=0;ifind_textEdit->setText(name1);以上就完成了对Route表的线路查询,实现见图3。4.3其它功能本系统出来完成查询功能外,还可以提供电子地图、景点介绍、餐饮、超市、商场查询。设计的过程与原理和上节讲述基本相同,这里不再说明。实现见图4。参考文献[1]周小霞,刘作华.汽车尾气净化技术现状及发展[J].压声与声光,202x(10).[2]张国勇,王卫友.浅谈汽车尾气危害及控制措施[J].长江大学学报自然科学版,202x(6).注:“本文中所涉及到的图表、公式、注解等请以PDF格式阅读”