责任编辑:万翀
基于AT89C52的GPS车辆导航设备研制
Development of GPS Car Navigation Equipment Based on AT89C52
林粤伟 青岛海信移动通信技术股份有限公司(山东 青岛266000) 吴则举 青岛理工大学通信与电子工程学院(山东 青岛266000)
摘要:本文论述了GPS车辆导航系统的车载台的电子电路设计与实现,详细论述了基于单片机的嵌入式系统设计方法。介绍了GPS、GSM短信息以及液晶显示技术。自行定制了车载台与监控中心的通信协议。关键词:GPS;单片机;液晶显示模块;AT89C52DOI: 10.3969/j.issn.1005-5517.2012.10.011
星发送的导航电文,获得实时定位数据,通过串行方式输出数据。
将GPS-OEM板的输出引脚接至单片机的RxD引脚,GPS-OEM板上电后自动输出NMEA-0183格式的GPS语句。单片机串口采用中断方式接收数据,波特率9600bps,与GPS-OEM板的串行输出一致。在单片机的串口中断服务程序中接收GPS数据流,按照NMEA-0183协议将经度、纬度等数据提取出来,根据车载台与监控中心的通信协议重新编帧,通过短信息发往监控中心。
与监控中心通信
使用GSM短信息的无线通信方式与监控中心通信[3],车载台与监控中心各配置一台GSM终端,用以收发短信息,采用法国Wavecom公司的GSM终端,型号为Fastrack M1206[4]。
单片机通过串口发送AT指令控制GSM终端,AT89C52单片机只有一个串口,前文已介绍使用该串口接收GPS数据,因此用8251A串口扩展芯
片将单片机的P2口扩展成一个串口,用于单片机和GSM终端间的通信,示意如图3。单片机为TTL电平,GSM终端为RS232
系统的特点与功能
如图1所示,本设计中GPS车辆导航系统将“全球卫星定位技术”(GPS)、“蜂窝移动通信技术”(GSM)和“地理信息技术”(GIS)结合在一起,分为监控中心与车载台两部分,两者间采用GSM短信息的无线通信方式传输数据。车载台属GPS车辆导航系统中的下位机部分,完成的主要功能有:1)接收GPS卫星定位信号;2)以GSM短信息方式与监控中心通信;3)使用软件狗技术,防止死机现象等。
GPS-OEM板、单片机、液晶显示模块、GSM终端、电源模块。车载台主要部件组成如图2。
单片机
采用ATMEL公司的AT89C52单片机作为车载台的中央控制芯片,目前单片机编程可以选择的开发语言主要是汇编语言与单片机C语言,即C51语言[2]。在对单片机进行编程时,主要功能采用C51语言实现,液晶驱动、显示部分采用汇编语言实现。
接收GPS信号
车载台的定位功能是由GPS天线和Conexant公司的GPS-OEM板(型号Jupiter TU30-D410)一起提供的。GPS-OEM板记录天线传来的GPS信号,对信号进行解调和滤波,还原出GPS卫
设计实现
车载台分为车外的GPS天线部分与车内部分两部分,车内部分包括
图1 系统结构图2 车载台组成框图
7848
2012.10www.eepw.com.cnCopyright©博看网 www.bookan.com.cn. All Rights Reserved.责任编辑:万翀
Automotive Electronics
(a)由监控中心到车载台的数据通信协议(b)由车载台到监控中心的数据通信协议
图4 数据通信协议
如图4。%%和%分别为语句开始和结束标志。采用基于ASCII字符的Text
图3 串口扩展示意图
电平,因此把8251A的RxD(串口输入)、TxD(串口输出)引脚接至MAX232芯片的对应引脚,经过TTL-RS232电平转换后接至GSM终端的串口。
825lA工作时,每当收到外部发来的数据或对外发送数据工作已准备就绪时,均会引起状态寄存器中的RxRDY或TxRDY标志位置位,且使对应信号输出脚为高电平。根据8251A这一特性,发送串行数据时单片机定时检测8251A的状态寄存器,并根据状态位的变化情况作出相应的处理。接收串行数据采用中断方式,把RxRDY作为中断条件,把RxRDY引脚连到AT89C52的中断输入端脚INT1上,这样,正常情况下单片机处理其它事情,只有当8251A接收外部发来的数据后,才使单片机进入中断程序处理。
我们自行制定了数据通信协议,
模式收发短信息,传输16进制数对应的ASCII码。由于短信息技术本身的限制使传输的定位信息存在延时。在传输GPS定位导航数据时,我们先对数据进行处理,只把时间、经度、纬度、速度填充到我们通信协议的数据包中,使得数据包尽可能的短。另外,我们对通信协议进行了优化,有效地减少了信道的拥挤情况,可以缩小短信息的传输时延。在实验中测试
数据包从车载台发送到监控中心的平均时间约为6秒。这表明了,我们采用的数据通信协议符合民用车辆导航系统的要求。
液晶显示
使用杭州清达光电公司的AHG-320240F液晶显示模块,该模块有320x240点阵,可以显示各种图形和文本信息,内置SED1335控制器,在液晶显示器和单片机之间存在一接口电路,由SED1335液晶控制器完成,与控制GSM终端的AT指令类似,单片机通过向液晶模块发送指令完成对模块的初始化与显示控制。SED1335有13条指令,多数指令带有参数,参数值由用户根据所控制的液晶显示模块的特征和显示的需要来设置。常用指令有系统控制指令SYSTEM SET,操作码为40H,用于初始化;存贮操作指令MWRITE,操作码为42H,用于数据写入。发送指令时先送命令口或数据口地址,后送操作码,参数或数据值。语法为:
MOV DPTR,#XXXXH;XXXXH为命令口或数据口地址
MOV A,#XXH;XXH为指令操作码、参数、数据
MOVX @DPTR,A
对AT89C52而言,所有对LCD操作的指令均为访问外部I/O指令MOVX。如图5所示,采用总线的方式(直接访问方式)对液晶模块进行访问,单片机P0口对应的外部数据总线
图5 SED1335控制器与单片机接口示意图
图6 车载台主程序流程图P0.0-P0.7接到SED1335下转60
www.eepw.com.cn2012.10Copyright©博看网 www.bookan.com.cn. All Rights Reserved.79495830
安防电子
责任编辑:万翀
“AT+CMGS”(发送短消息)等。
AT指令发送程序的实现
//将发送的数据存入U1THR,并返回
}
结语
基于TC35短消息模块的瓦斯浓度报警器使用全球移动通讯系统来传递瓦斯报警信息,具有高效性,快速性,稳定性以及传播距离广的优势,并且短消息服务费极低。无论身在何处,总能第一时间接收到相应的警告信息,以便做出快速的、正确的处理。设计可以广泛应用于对瓦斯浓度有严格限制的环境。
参考文献:
[1] 杜春雷.ARM体系结构与编程[M].北京:清华大学出版社,2003[2] 周立功.ARM嵌入式系统基础教程(第二版)[M].北京:北京航空航天大学出版社,2008
[3] TC35_TC37 Hardware Interface Description[Z].Siemens Inc.,2001
[4] LPC21xx and LPC22xx User manual[Z].NXP Inc.,2008
因为AT指令是微控制器通过串口发送给TC35模块的,因此AT指令的发送是通过串口数据发送来实现的,发送代码如下所示。
sendchar函数
函数功能:发送数据到串口1 入口参数:ch 发送的数据返回值 :U1THRint sendchar (int ch) {
while (!(U1LSR & 0x20)); return (U1THR = ch);
//等待发送保持寄存器U1THR为空闲
应。
针对小房间,我们将报警浓度设定为250ppm。当浓度高于250ppm时,蜂鸣器鸣叫,但这时,可能主人已经熟睡;立即将报警信息以短消息的方法,发给亲友,做到最大程度避免危险事件。
上接49控制器的八位数据实验分析
北方农村喜欢用煤球取暖,用烟筒排放一氧化碳,但是烟筒是耗材,用一段时间就会锈掉,发生人中毒的事情,严重时会出现生命危险。
具体数据可参照表1 人对CO的反
秒)把GPS数据循环显示到液晶显示屏上。6.如果有新的短信息到来,数据流经8251串口扩展芯片后触发单片机外中断,执行相应的中断服务程序。在该服务程序中接收短信息,提取短信息数据包中的SIM卡号、内容,对SIM卡号进行鉴权,如果是来自监控中心的短信息,则根据自定义的数据通信协议从短信内容中提取出命令,根据命令执行相应操作:若是“开始监控”命令,则把接收的GPS定位数据打包,将该数据包作为短信息内容按照设置的时间间隔循环发送到监控中心。若是“停止监控”命令,则停止向监控中心发送短信息,并向监控中心发送1条表示“停止监控命令执行成功”的短信息,然后删除这条最新接收到的短信息,以免出现SIM卡容量满后无法接收新短信的现象;如果经鉴权后发现SIM卡号不是监控中
心的号码,则视为垃圾短信,直接删除该条短信息。
D0~D7上,AT89C52的P2.7(A15)经反相器反相后接SED1335的片选CS,AT89C52的P0.0(A0)接SED1335的A0,所以液晶模块的命令口地址为1XXX XXXX XXXX XXX1B,数据口地址为1XXX XXXX XXXX XXX0B。X取0时命令口地址为8001H,数据口地址为8000H。
程序流程
车载台主程序流程如图6。按程序执行顺序解释如下:
1.车载台上电启动,液晶显示欢迎信息。
2.单片机关中断。
3.初始化GSM终端和LCD模块,若成功则在液晶上显示初始化成功的提示信息。
4.单片机开中断,准备接收GPS数据。
5.通过单片机串口接收GPS定位数据,按照设置的时间间隔(如10
结束语
本系统设计的车载台与监控中心进行了联合测试。测试结果表明,车载台工作较为稳定,基本符合设计要求,达到了预期的设计目标,具有较广阔的应用前景。考虑到成本控制因素,本设计采用了经济实用的AT89C52单片机和2G终端实现,下一步可以考虑将其移植到基于ARM/DSP的高级嵌入式系统中,并采用3G/4G等高速率移动通信技术进行实时路况视频等数据传输,以进一步提高系统性能和稳定性。
参考文献:
[1] Elliott D.Kaplan (著),寇艳红(译).GPS原理与应用(第2版)[M],北京:电子工业出版社,2007-07
[2] 金杰,MCS-51单片机C语言程序设计与实践[M],北京:电子工业出版社,2011-11
[3] 李一君.水质监测中基于GSM短消息的应用[J].电子产品世界,2011,18,(11)
[4] 林粤伟,魏权利,基于GSM短信息的无线网络环保监测系统的研制[J].微计算机信息,2005,(1)
[5] 廖义奎,ARM与DSP综合设计及应用[M].北京:中国电力出版社,2009-09
9060
2012.10www.eepw.com.cnCopyright©博看网 www.bookan.com.cn. All Rights Reserved.
因篇幅问题不能全部显示,请点此查看更多更全内容