北斗卫星定位系统的研究.doc

上传人:sk****8 文档编号:4316519 上传时间:2019-10-21 格式:DOC 页数:55 大小:12.14MB
下载 相关 举报
北斗卫星定位系统的研究.doc_第1页
第1页 / 共55页
北斗卫星定位系统的研究.doc_第2页
第2页 / 共55页
北斗卫星定位系统的研究.doc_第3页
第3页 / 共55页
北斗卫星定位系统的研究.doc_第4页
第4页 / 共55页
北斗卫星定位系统的研究.doc_第5页
第5页 / 共55页
点击查看更多>>
资源描述

1、哈尔滨理工大学学士学位论文哈 尔 滨 理 工 大 学毕 业 设 计 题 目: 北斗定位系统研究 院、 系: 荣成学院 电气工程系 姓 名: 朱瑞锋 指导教师: 侯甲童 系 主 任: 王哈力 2016年6月24日北斗定位系统研究摘 要全球卫星导航系统已经成为重要的信息产业之一,越来越多的国家注意到其巨大的潜在价值。并成为衡量一个国家综合实力强弱的工具,成为各国研究的重点。本设计主要对基于STC89C52单片机的北斗定位接收机的软硬件系统展开了研究。首先,研究了北斗导航系统的发展现状、原理和特点;其次,选用和芯星通的UM220-N芯片为北斗模块的核心芯片;然后,研究了接收机芯片的工作原理和特征,确

2、定了北斗导航接收机的硬件和软件整体方案;最后,在此方案的基础上进行了软硬件的调试。本次设计的接收机首先通过北斗模块接收定位信息,然后发送给单片机进行信息处理,最终在显示模块显示且在语音模块播报。本设计所做的北斗导航接收机实现了精准定位。可以用LCD12864显示经纬度、速度、时间、日期,并且用YS-M3语音播报模块播放经纬度。关键词 卫星定位系统;北斗;STC89C52;UM220-N芯片50The Research of Beidou Positioning System AbstractThe global satellite navigation system has become on

3、e of the important information industry.More and more countries pay attention to its huge potential value.It has become the tool to measure a nations comprehensive strength , and a focus of research.In this design, the hardware and software system of the Beidou positioning receiver based on STC89C52

4、 single chip microcomputer is studied. Firstly, the paper studies the development, principle and characteristic of the Beidou navigation system; secondly, choose the He Xin Xing Tong UM220- III N chip as the core chip of Beidou module; then, study the working principle and characteristics of the rec

5、eiver chip, determine the Beidou navigation receiver hardware and software of the overall program; finally, on the basis of this scheme were the debugging of the hardware and software. The design of the receiver first through the Beidou module to receive positioning information, and then sent to the

6、 microcontroller for information processing, and finally in the display module display and broadcast in the voice module.This design for the Beidou navigation receiver has realized the accurate positioning. It can be used LCD12864 display latitude and longitude, speed, time, date, and with YS-M3 spe

7、ech module play the latitude and longitude.Keywords Satellite positioning system; Beidou; STC89C52; UM220-N chip目 录摘 要IAbstractII第1章 绪论11.1 课题研究背景及意义11.2 国内外发展现状11.2.1 国外发展现状11.2.2 国内发展现状21.3 本课题主要研究内容3第2章 北斗定位系统42.1 北斗定位系统概述42.1.1 北斗定位系统组成42.1.2 北斗定位系统的定位原理42.2 UM220-N模块52.2.1 UM220-N芯片介绍52.2.2 UM2

8、20-N引脚功能描述62.2.3 UM220-N输出语句格式72.3 本章小结8第3章 总体方案设计93.1 单片机最小系统93.2 北斗定位模块电路103.3 液晶显示单元电路123.4 语音模块电路133.4.1 语音模块工作原理133.4.2 语音模块工作模式133.5 本章小结14第4章 定位系统软件设计154.1 开发环境及软件方案设计154.1.1 Vision4154.1.2 软件设计流程154.2 定位信息接收与处理154.2.1 数据接收154.2.2 数据处理164.3 模块软件设计184.3.1 语音播报模块184.3.2 液晶显示模块194.3.3 中断函数214.4

9、本章小结21第5章 系统调试与分析225.1 系统调试225.1.1 北斗模块调试225.1.2 软件调试245.2 结果分析245.3 本章小结26结论27致谢28参考文献29附录A31附录B33附录C34第1章 绪论1.1 课题研究背景及意义全球导航卫星系统(Global Navigation Satelite System,GNSS)是一种为人们提供全球、全时段高精度定位导航信息的卫星系统。作为一个国家的基础设施,GNSS标志着一个国家的综合实力,是保障国家安全、提高人民幸福指数的重要设施。众所周知,20世纪70年代以来。以美国和苏联为首的各国认识到太空资源的重要性,相继启动各自的卫星导

10、航计划。为紧随经济和科技迅速发展的步伐,我国于1980年开始创立一个独立的北斗卫星导航系统。2003年,随着将第三颗北斗卫星顺利送入太空,我国组建了完整的卫星导航定位系统,可以确保全天候、全天时提供卫星导航通信信息。标志着继美国和前苏联后,我国成为世界上第三个建立了完善卫星导航系统的国家。改变了我国长期缺少高精度、实时定位的局面,填补了我国卫星导航定位系统的领域空白1。1.2 国内外发展现状1.2.1 国外发展现状目前,世界上已建成的全球卫星导航体系有美国的“全球定位系统”(GPS)和俄罗斯的“格洛纳斯”(GLONASS)系统。而欧洲也正在抓紧建设“伽利略”(Galileo)系统2。1995年

11、4月27日,美国成功实现了GPS系统的完全组网运行。在空间部分,GPS的星座由24颗卫星组成,这24颗卫星等距地分布在6个近圆轨道上,每个轨道上有4颗卫星。接收部分由1个主控站和5个监控站组成。用户在同一时刻精准计算4颗卫星信号的传播时间,可得到高精度的三维定位数据。现役的第二代GPS卫星增加了星钟、星间链路和自主导航三大功能,大大增强了GPS的导航精度、GPS系统的生存能力。1995年12月,俄罗斯(前苏联)的GLONASS卫星定位系统落成。但由于美国压制和后期资金紧缺,补网卫星没有及时发射,系统还满足不了导航和定位的要求。GLONASS系统由24颗卫星组成,散布在三个轨道上。GLONASS

12、系统的民用标准定位精度是50m。伽利略卫星导航系统(Galileo)是由欧盟牵头开发的全球卫星导航体系。该体系内共有30颗卫星,包括27颗运行星,3颗备用星。2014年8月,随着第二批的一颗卫星成功进入预定轨道,太空中已有6颗正式的伽利略卫星,可初步施展地面定位的作用。Galileo系统与GPS系统、GLONASS系统相兼容的全球定位系统。它吸收了GPS的经验,具有很多优点。Galileo系统实施了三载波模糊度解算技术(Three-carrier Ambiguity Resolution,TCAR),较好地处理了加密、密钥和拒用三者的关系。该系统定位精度10m,定时精度33ns3。当今,卫星导

13、航系统正在向多系统组合导航和差分导航方向发展。卫星导航定位技术与惯性导航技术、无线电导航技术相结合,并且即将应用数字化铯钟技术。这对我国北斗导航系统提出了更严格的要求和更新的挑战。1.2.2 国内发展现状中国北斗卫星导航系统(BeiDou Navigation Satellite System,BDS)由空间段、地面段和用户段三部分构成。目前为止,中国已成功发射22颗北斗导航卫星。已成功覆盖亚太大部分地区,具备区域无源导航服务能力。预计2020年前后,北斗导航系统将形成全球无源服务能力。随着我国综合实力水平的提高,“北斗”产品越来越多地在工业制造、军用领域、生活服务领域发挥着不可替代的作用。北

14、斗定位系统在陆地上的开发应用方面具有极其重要的地位,体现在诸多方面,如:车辆行驶状态监测和导航;旅游景点导航;应急车辆最快路线引导;大气物理观测;工程建设的施工测算;板内运动状态和地壳形变测量;智能火车网建设;智能放牧;气象监测等4。北斗定位系统在海洋方面有着同样重要的作用,例如:提供远洋船只的定位;计算最短航程,提高运输安全和效率;远洋船队在航行中的实时调度和检测;提供两船之间、船与陆地的短报文通信;海洋救援的搜救和定点测量;海底管道铺设测量;水文监测等。2014年11月23日,国际海事组织海上安全委员会审议通过了对北斗卫星导航系统认可的航行安全通函,这标志着北斗卫星导航系统正式成为全球无线

15、电导航系统的组成部分,取得面向海事应用的国际合法地位5。北斗定位系统在航空方面的应用主要体现在:民航飞机的自主导航;飞机精密着陆;飞机空中加油等。北斗系统已经在我国许多领域发挥着重要作用。利用这套系统,最基本的就是接收北斗系统发出的信号并能够实时输出显示。输出的信息包括定位地点的经纬度、天线高程、UTC(协调世界时)时间、地面速度、日期、时间、卫星个数等。由于北斗系统发展时间较短,与GPS和GLONASS系统在精度方面有一些差距。但相信北斗卫星系统在未来会大放异彩。1.3 本课题主要研究内容本设计采用STC89C52单片机为核心,研究北斗卫星工作原理,读取北斗卫星导航模块的标准数据,在LCD1

16、2864屏幕上显示当前的经纬度、日期、时间和速度信息,并且使用语音模块播报经纬度。能够正确画出系统原理图,并且能够正确调试电路,最终完成导航系统的实物制作,为今后开发北斗卫星导航仪打下基础。第2章 北斗定位系统2.1 北斗定位系统概述北斗卫星导航定位系统是中国正在努力实施的自主研发、独立运行的全球卫星导航定位系统。系统建设目标是:建成独立自主、开放兼容、技术先进、稳定可靠的覆盖全球的北斗卫星导航系统。促进卫星产业链形成,具有完善的国家卫星导航系统。2.1.1 北斗定位系统组成北斗卫星导航定位系统由空间段、地面段和用户段三部分构成。空间段包括5颗静止轨道卫星和30颗非静止轨道卫星。地球静止轨道卫

17、星分别位于58.75E、80 E、110.5 E、140 E和160 E。非静止轨道卫星由3颗倾斜同步轨道卫星和27颗中圆轨道卫星组成5。地面段包括主控站、注入站和监控站等若干个地面站。主控站主要作用是收集每个监测站的观测数据,分析数据,生成卫星导航电文和差分完好性信息,完成任务规划与调度,实现系统运行与控制等。注入站主要任务是在主控站的统一调度下,完成卫星导航电文、差分完好性信息注入和有效载荷的控制管理。监测站接收卫星信号,发送给主控站,实现对卫星的跟踪、监测,为卫星轨道确定和时间同步提供观测资料。用户段包含北斗系统用户终端以及与其他卫星导航系统兼容的终端。北斗卫星导航系统采用卫星无线电测定

18、(Radio Determination Satellite Service,RDSS)与卫星无线电导航(RNSS)集成体制。既能像GPS一样,为用户提供卫星无线电定位服务,又具有位置报告及短报文通信功能。2.1.2 北斗定位系统的定位原理目前,国际上三大定位系统GPS、GLONASS、Galileo和北斗卫星导航系统的定位原理都是相同的,均是采用三球交会的几何原理来实现定位。用户接收机在同一时刻接收两颗及以上卫星信息,计算出接收机至两颗卫星的距离,解算出卫星的空间坐标,再利用距离交会法解算出用户接收机的位置。具体流程如下:1.用户测量出接收机到三颗卫星的距离;2.卫星的位置精确已知,通过电文

19、播发给用户;3.以卫星为球心,距离为半径画球面;4.三个球面交得两个点,根据地理常识排除一个不合理点即得用户位置。如图2-1所示。图2-1 三球交会定位原理图由于第二代北斗导航卫星系统已不再要求用户发送上行信号,因为不再依靠中心站电子高程图处理或由用户提供高程信息,而是直接接受卫星单方面测距信息自行定位,所以需要4颗以上的卫星测距才可精确定位。这样就面临一个问题,就是需要大量卫星实行全覆盖,所以我国的北斗卫星目前为止只能进行亚太地区的卫星导航通信,还没有全球覆盖6。如图2-2所示。图2-2 北斗定位原理图2.2 UM220-N模块2.2.1 UM220-N芯片介绍如图2-3为和芯星通针对车辆导

20、航、便携设备、电信/电力授时、气球探空等应用生产的具有自主知识产权的国产北斗/GPS双系统模块。UM220-N芯片采用的是ARM9内核,较高的跟踪灵敏度,定位精度2.5m,速度精度0.2m/s,授时精度优于20ns。该模块具有功耗低、体积小、可靠性高等特点。图2-3 UM220-N模块外观相较于单一的GPS模块,UM220-N可以随意切换接受信息模式。可接收单一的GPS或北斗定位信息,也可同时接收北斗和GPS双信号。这样大大加强了定位信息的准确性7。2.2.2 UM220-N引脚功能描述如图2-4、表2-1为UM220-N的引脚图和引脚功能介绍。UM220-N引脚为两排对称排列共24个引脚:图

21、2-4 UM220-N引脚图表2-1 UM220-N管脚说明序号名称I/O电平标准描述1nRESETILVTTL外部低电压重置2AADET_NILVTTL有源天线检测1:非有源天线0:有源天线3TIMEPULSEOLVTTL时间脉冲4EXTINT0ILVTTL外部中断引脚5GPIO2ILVTTL天线短路检测1:天线对地短路0:天线对地正常6TXD2OLVTTL串口2发送数据7RXD2ILVTTL串口2接收数据8RSV保留管脚,悬空处理9VCC_RF2O3.0V10%输出电压信号(不用则悬空)10GNDI接地11RF_INIGNSS输入信号(BD2 B1+GPS L1)12GNDI接地13GND

22、I接地14SPLSDOOLVTTLSPI数据输出引脚(不用则悬空)15SPLSDIILVTTLSPI数据输入引脚(不用则悬空)16SPLSCKOLVTTLSPI时钟引脚(不用则悬空)17SPLCS1OLVTTLSPI芯片选择1(不用则悬空)18SDA23I/OLVTTLDDC数据(不用则悬空)19SCL24I/OLVTTLDDC时钟(不用则悬空)20TXD1OLVTTL串口1发送数据,固件升级21RXD1ILVTTL串口1接收数据,固件升级22V_BCKPI2.0V3.6VRTC和SRAM备份电压23VCC-3.0V10%供电电源24GND-接地2.2.3 UM220-N输出语句格式北斗数据遵

23、循NMEA-0183协议,该数据标准是由美国国家海事电子协会(National Marine Electronics Association,NMEA)于1983年制定的。同一标准形式NMEA-0183输出使用ASCII码,其串行通讯的参数为:波特率4800bps,数据位8bit,开始位1bit,停止位1bit,无奇偶校验位。数据传输以“语句”形式进行,每句话都以“$”开头,接着是两个字母的“识别符”和三个字母的“语句名”,最后就是以逗号分割的数据体,最末尾为校验和。在UM220-N模块中,“识别符”有三种。其中,GP为GPS系统单独定位;BD为北斗系统单独定位;GN为GPS与北斗系统混合定位

24、。NMEA-0183的数据信息有十几种。其中,GGA为输出GPS定位信息;GLL为输出大地坐标信息;ZDA为输出UTC时间信息;GSV为输出可见的卫星信息;GST为输出定位标准差信息;GSA为输出卫星DOP值信息;ALM为输出卫星星历信息;RMC为输出GPS推荐的最短数据信息等。鉴于本文配置信息为RMC形式,所以只介绍RMC语句格式。对于一般的GPS定位应用,RMC语句完全可以满足要求。格式如下8。$GNRMC,表2-2 RMC语句格式说明编号含义取值格式备注定位时间000000.00125959.99hhmmss.ssUTC时间状态有效位A/VA:有效V:无效纬度0000.00008959.

25、9999ddmm.mmmmdd:度 mm.mmmm:分南北半球N/SN:北纬 S南纬经度00000.000017959.9999dddmm.mmmmddd:度 mm.mmmm:分东西半球E/WE:东经 W:西经地面速度000.00999.99单位:节速度方向000.00359.99日期010100311299日,月,年磁偏角00.0099.99单位:度磁偏角方向E/W固定为E模式指示及校验和A/ NA:单点定位N:未定位校验和:本语句从$到*之间所有字符进行异或得到的16进制数2.3 本章小结本章主要包括两部分内容。首先,介绍了北斗系统的组成与原理;在充分了解北斗定位原理后,讲解了UM220-

26、N模块的基本信息。包括UM220-N模块的电气特性和引脚介绍。最后讲解了UM220-N输出语句格式和各数据位的含义。第3章 总体方案设计 北斗接受模块通过天线接收卫星信号,实现对天线视野内卫星的跟踪、锁定和测量。在获得卫星的位置信息和测量出卫星信号的传播时间后,就可计算出天线所在位置,即实现定位。用户通过输入输出接口,获取定位信息语句,通过单片机进行信息处理。最后通过显示屏和语音播报模块进行人机交互。本设计要求通过单片机控制北斗导航器件实现定位信息显示和播报功能。北斗模块使用的是以和芯星通UM220-N模块为核心的BD+GPS接收机。利用STC89C52 单片机串口接收北斗和GPS混合信号(G

27、NRMC)。并通过软件实现显示和播报定位数据。显示屏采用LCD12864,语音播放模块使用YS-M3模块。如图3-1所示为整体方案框图,通过天线接收的数据信号经过芯片UM220-N模块处理,通过串口将定位信息传到单片机,最后通过单片机信息处理在LCD12864显示并在语音模块播放910。图3-1 北斗导航硬件设计框图3.1 单片机最小系统本设计中使用的是STC89C52单片机,单片机具有的特点有稳定性好、成本经济、使用简单、可控性好等。单片机电路加上复位和晶振两个部分就形成了其最小系统。最小系统是构成开发板的基本单元。以此为基础,用户加上北斗模块、语音播放模块和显示模块。单片机最小系统电路图如

28、图3-2所示。其中包含晶振电路和复位电路。晶振电路采用11.0592MHz的无源晶振,所以并联两个30pF电容作为起振电路11。图3-2 单片机最小系统电路3.2 北斗定位模块电路本设计选用的是和芯星通公司的UM220-N双系统高性能北斗定位模块。基于该公司的双系统多频率高性能SOC芯片,能够同时支持BD2B1、GPSL1两个频点。UM220-N体积小,采用SMT焊盘,适合低成本、低功耗的北斗模块。UM220-N通过UART接口与开发板进行通信。本设计中使用的北斗开发板为江苏艾琳科技生产的北斗开发板。该开发板可将TTL电平通过MAX232转换成232电平,与电脑进行数据交互。并引出了两组串口,

29、两组串口都可以输出NMEA扩展语句,串口1还可对芯片内部升级7。实物如图3-3所示。图3-3 北斗开发板实物图本北斗卫星模块串口有磁珠和瞬态抑制二极管(Transient Voltage Suppressor, TVS),用于对浪涌的消除,使得模块更加安全稳定。如图3-4为模块电源集成电路。模块电源集成电路由LM317集成稳压器构成,可输出1.2V37V的电压,保证1.5A输出电流。LM317有三个引脚,分别为调整端、输入端和输出端,调整端和输出端电压恒为1.25V。可通过设置为不串联电阻分压作用获得想要输出的电压大小。在电源两端并联多个0.1F电容起到滤波作用,减少电源电压的波动,保护电路。

30、图3-4 北斗模块电源电路如图3-5为北斗模块芯片电路。由北斗模块UM220-N和其附加电子器件组成。其中北斗模块外接4组插针,在芯片与电源间串联电感的作用是起差模滤波作用,防止电流突变对芯片造成损坏;并联电感的作用是提高芯片运行的稳定性,防止产生噪声。发光二极管为指示灯,每有信号传输一次则闪烁一次。TXD1与单片机的P3.0(RXD)相连,进行串行通信。图3-5 北斗模块芯片电路如图3-6为北斗模块串口电路图,芯片UM220-N的串口信息通过MAX232转化为232电平信号,通过9针的串口与电脑PC端相连。可以进行模块数据定义和系统升级。图3-6 北斗模块串口电路北斗模块关键指标如表3-1所

31、示1214。表3-1 北斗模块关键指标电源电压3.3V5V冷启动时间32秒热启动时间1秒温启动时间1秒接口TTL全双工接口波特率9600bps工作环境40853.3 液晶显示单元电路LCD12864可显示汉字及图形,内置8192个中文汉字、128个字符及64256点阵显示RAM。如图3-7和表3-2为管脚说明。图3-7 LCD12864LCD液晶显示器数据由单片机P0口进行控制,P2口进行指令控制操作。LCD12864主要技术参数和显示特性如:电源:VDD3.3V5V(内置升压电路,无需负压);显示内容:128列64行;接口:8位并行或串行;多种软件功能:光标显示、画面移动、自定义字符、背景光

32、等15。表3-2 LCD12864管脚说明引脚序号管脚名称说明1GND电源地2VDD电源输入(+5V)3V0液晶显示对比度调节4RS数据输入5R/W读写选择(1读;0写)6E读写使能7-14DB0-DB7数据总线15PSB并/串口选择(1并;0串)16NC悬空17REST液晶模组复位18Vout悬空19BLA背光源正端20BLK背光源负端3.4 语音模块电路3.4.1 语音模块工作原理YS-M3语音播放模块主要包括一个单片机芯片、一个MP3硬解码芯片、TF卡槽以及其他电阻电容组成。语音模块工作原理:首先将MP3歌曲文本从存储卡取出并读取存储器上的信号,其次,解码芯片对信号处理。然后通过D/A转

33、换器将解出来的数字量转换成模拟量。最后再把转换后的模拟信号放大,通过低通滤波器传输到耳机或音响等播放装置。因此,语音播放模块最重要的两个芯片就是单片机芯片和解码芯片。单片机芯片运行MP3歌曲的整个控制程序,控制各个部件的工作:从存储设备读取数据送到解码器解码;与主机连接时完成与主机的数据交换;接受控制按键的操作等。由于本模块采用的是STC15W204S单片机,自带有D/A转换功能,所以不需要单独添加D/A转换芯片。解码芯片是不可或缺的一个硬件模块。它可直接完成各种格式MP3音频的解码操作,并输出数字音频信号。解码芯片的好坏决定了还原音频信号的质量16。3.4.2 语音模块工作模式YS-M3语音

34、播放模块由5V直流电源供电,具有9个触发端口,支持两种播放模式:单键触发模式和编码触发模式。低电平触发。如图3-8所示。引脚功能如表3-3所示。单键触发模式:模块具备9个直接触发端口,即A1-A9。每个端口对应一首MP3歌曲。当给A1-A9某一个端口低电平时,该模块就会播放该端口对应的歌曲。编码触发模式:该模块应用编码触发方式可以播放31首MP3。应用该模式时,将A10和GND连接,用A1-A5为编码端口进行编码。该状态可配合单片机的I/O口来控制发声。在本次设计中,采用单片机的P1口的低5位进行歌曲的编码选择。图3-8 YS-M3模块实物图表3-3 YS-M3引脚功能引脚序号引脚名称说明1V

35、cc5V2GND接地3GND接地4-12A1-A9编码端口13A10与GND相连进入编码模式14CN1播放第二首,播放过程不可打断15BY播放时输出高电平,不播放这默认低电平3.5 本章小结本章主要讲述了硬件总体设计方案,介绍了单片机最小系统的组成,并且讲述了北斗模块内部结构和原理。简述了LCD12864显示原理和语音模块工作原理和工作模式。第4章 定位系统软件设计4.1 开发环境及软件方案设计4.1.1 Vision4Vision集成开发软件是Keil公司产品,它集编辑、编译(或汇编)、仿真调试等功能于一体,具有当代典型嵌入式处理器开发的典型界面。本次使用的是Vision4版本。它支持数百种

36、嵌入式处理器(包括80C51系列、非80C51系列的多种单片机以及ARM处理器等芯片)开发。Vision4开发过程大概包括:建立工程;配置工程;编写程序;编译程序;仿真调试。4.1.2 软件设计流程本设计程序设计分为五大主要模块:LCD液晶显示模块、导航数据接收模块、单片机中断初始化、语音播放模块、时序模块。程序流程图如图4-1所示。当运行程序时,首先进行LCD显示屏和中断初始化,然后显示屏上显示“BPS 北斗定位”的开机画面,接着判断是否已经定位,如果没有定位则显示“Receiving”并循环判断;如果已经定位则需判断定位信息是否正确,若不正确则显示“no data”;若正确则处理定位信息并

37、存储在对应的存储区中,然后在显示屏上显示经纬度、日期、时间、速度信息。当按下播报按钮时,则关闭中断,播报当前经纬度信息,最后打开中断,循环运行程序。本设计接收信号为GNRMC信号,当模块接收此信号时,将数据接收时间、接收日期、天线所在位置经纬度信息、天线速度信息显示在LCD液晶显示屏上。当按下播放按键时,将播放当前经纬度位置信息1617。4.2 定位信息接收与处理北斗导航模块数据通过串口中断传输至缓冲区,同时将数据发送给上位机,单片机通过处理串口数据获得经纬度等定位信息18。4.2.1 数据接收北斗模块启动后开始接收导航数据,接收到的各种信息(如:经纬度、UTC时间、移动速度等)数据包含在各个

38、语句($GNGGA、$GNRMC等)中,接收到的定位信息传送至单片机的缓冲区。在串口助手中,我们可以看到北斗模块从串口发给单片机的导航信息如图4-2。方便我们根据各个语句的特点进行处理信息程序的编写。图4-1 程序流程图4.2.2 数据处理本设计根据需要,解析显示的是$GNRMC这一传输语句信息。在第五章北斗模块调试中,将介绍如何设置UM220-N,使其只输出$GNRMC语句,这里不多累述。图4-2 接收数据根据图4-3所示,为串口中断过程。在中断过程中,首先中断主程序,进入中断服务子程序;然后判断是否为“GNRMC”语句;接着处理数据,在处理数据过程中,我们可以根据“,”作为分离数据标志,将

39、相应数据存储在不同数组中,方便显示。我们从$GNRMC语句中提取经纬度、日期、时间、速度。最后,跳出中断程序。图4-3 中断处理过过程在对时间进行处理时,由于北斗模块输出时间为UTC时间,与北京时间相差8小时。所以在接收时间后,还要将UTC时间转换为北京时间。程序如下:void trans_time(void)unsigned char temp,hour_shi,hour_ge;/定义小时,小时的十位和个位temp=(time0-0)*10+(time1-0); /计算小时if(temp=16) /若小时小于等于16点加8小时temp=temp+8;hour_shi=temp/10;hour

40、_ge=temp%10;time0=hour_shi+0;time1=hour_ge+0;else /若小时大于16点,则加8小时减24小时temp=temp+8-24;time0=0;time1=temp%10+0;4.3 模块软件设计4.3.1 语音播报模块YS-M3语音模块编码触发方式控制时需要单片机编码控制。本设计中使用P1口来控制播放歌曲。将经纬度信息拆分开分别进行播报,歌曲存放在存储卡内,将“09”、“东经”、“北纬”、“年”、“月”、“日”等语音按顺序存入内存卡如表4-1所示,当出现数字或标点时,检索相应音频文件播报,连续播报出来就成了经纬度。当按下播报按键时,先关闭中断,读出经

41、纬度,后打开中断19。流程如图4-3所示。表4-1 音频存储表音频序号音频名称001009190100011东经012北纬013度014分015秒016点图4-3 播报流程图4.3.2 液晶显示模块1.初始化函数lcd_init()lcd_wcmd(0x30);/基本指令操作delay (1);lcd_wcmd(0x0c);/关光标整体显示delay (1);lcd_wcmd(0x06);/光标右移,画面不动,AC加1delay (1);lcd_wcmd(0x01);/清除LCD的显示内容delay(1);2.写指令函数void lcd_wcmd(unsigned char cmd)while

42、(lcd_bz();rs = 0;rw = 0;en = 0;P0 = cmd; /通过单片机P0口将指令发送至LCD显示屏delay(3);en = 1;delay(3);en = 0;3.写数据函数void lcd_wdat(unsigned char dat)while(lcd_bz();rs = 1;rw = 0;en = 0;P0 = dat; /通过单片机的P0口将数据发送至LCD显示屏delay(3);en = 1;delay(3);en = 0;例如:要显示“GPS 北斗定位”,这程序代码如下所示:unsigned char code kaijihuamian=GPS 北斗定位

43、;unsigned char i;lcd_wcmd(0x01); /清除LCD显示内容i=0;lcd_pos(1,1); /设置显示位置while(kaijihuamiani != 0) /显示字符lcd_wdat(kaijihuamiani);i+;4.3.3 中断函数当UM220-N模块发送数据至单片机时,单片机要进入中断程序,需要先运行打开中断的相关语句,设置定时器方式等参数,即为中断初始化20,程序如下:void init_all(void)SCON = 0x50; /REN=1允许串行接受状态,串口工作模式1 TMOD|= 0x20; /定时器工作方式2PCON|= 0x80; TH1 = 0xFa; /baud*2 波特率9600 数据位8 停止位1 校验位无 TL1 = 0xF3; TR1 = 1; ES = 1; /开串口中断EA = 1; / 开总中断lcd_init() ;4.4 本章小结本

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 重点行业资料库 > 自然科学

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。