• 基于单片机智能手环的GPS定位信息系统设计+开题报告


    一、课题目的

    1 . 让学生能够更加深入的学习和重新记忆已经学过的知识,使他们学过的知识可以得到更加综合的运用。
    2. 课题可以培养学生将理论与实践相结合的能力,可以让学生能够更好的运用自己在大学期间已经学会和掌握的知识来更加深入的分析和解决遇到的问题,同时也要熟悉一些PCB板的制作方法和过程。
    3. 在毕业设计的整体考 量中学生应该具备一些基础的设计方法,计算能力,软件绘图,实验调试方法,实验数据的保留处理,软件文件的编辑,语言表达,对于已经发表的文章的查阅,办公软件Office,制图软件P r o t el,系统软件DSP,编程语言C++等专业软件运用与掌握,以及外语文章的查找阅读和翻译对照等基础能力,让学生能够更好的运用掌握科学的研究方法。
    4. 可以让学生运用单片机来进行一些简单的系统应用开发,了解单片机系统的设计步骤和方法,需要学生能够达到系统设计的目的和系统的设计流程的方法。
    5. 毕业设计的目的就是使学生能够了解在一些科学研究中工作中的科学研究方法,让学生养成自己一个人处理工作问题,自己一个人思考问题的习惯,然后在来用自己在大学期间所学的知识综合运用以便能够更加完善的处理解决在毕业设计中所遇到的问题。毕业设计尤其注重学生独立自主的完成任务的能力,在此过程中也能够学到心得知识。
    二、毕业论文任务和目的要求(包括说明书、论文、译文、计算程序、图纸、作品等数量和质量的具体要求)
    1、设计任务
    1)以单片机系统为核心,设计一个信号收集控制平台,通过GPS信号传输来定位。
    2)将GPS信号数据传送到单片机控制器中进行存储,并在TFT显示屏上显示设备的经纬度位置。
    3)设计系统应用程序以及各功能模块子程序。
    4)熟悉GPS信号传输接收与系统内核之间的数据通讯方式。
    2、设计要求
    1)要求系统运行稳定可靠。
    2)完成图像传感器、TFT显示屏的参数设置,数据准确。
    3)能够实时显示出清晰的图像。
    4)画好完整的系统框图和原理图,对每个细节处都要做出尽可能详细的标注。
    5)设计的时候要综合考虑他的成本、实不实用以及可靠能力的强弱等问题。
    6)论文应该按照《武汉纺 织大学外 经贸学院毕 业设计(论文)格式模板》要求书写。
    三、毕业论文的参数和参考资料
    1、毕业论文的参数
    1)显示屏能完好的显示一张24位真彩色图片;
    2)稳定实现触摸屏8*8点的分辨率;
    3)实现130万像素CMOS摄像头的采用;
    4)摄像头采集图像能在TFT显示屏上实时显示;
    5)系统方便以扩展;
    2、毕业论文的参考资料
    [1] 徐君毅.单片微型计算机原理与应用[M].上海:上海科学技术出版社.
    [2] 黄凌.基于单片机的GPS 信息处理系统.现代电子技术, 2007,.
    [3] 彭军.传感器与检测技术[M]. 西安:西安电子科技大学出版社.
    [4] 康华光,邹寿彬.电子技术基础数字部分(第四版)[M].北京:高等教育出版社.
    [5] 高光天.传感器与信号调理器件应用技术[M].北京:科学出版社.
    [6] 杨波.一种基于RF的无线数据采集系统的设计.[硕士学位论文].四川:西南石油学
    [7]杨剑.基于nRF905的无线射频数据采集系统的研究与实现.[硕士学位论文].长沙:中南大学…
    [8] 51系列单片机开发宝典 赵建领 电子工业出版社
    [9] 单片机在GPS系统中的应用 高芳 《电子制作》
    [10] 基于单片机的GPS信息处理系统 黄凌 《现代电子技术》
    四、毕业论文进度表

    一、本课题的研究意义

    单片机GPS定位信息系统在现代社会发展中有着广泛而重要的应用。GPS技术在陆地上的的应用体现在很多个方面,如:最普遍的一种就是安装在各种机动车辆上可以对车辆进行实时监控,对车辆进行导航;然后就是为外出旅游的人对景点进行导航;天气卫星对云层的检测获取实时的天气状况的行驶状态监控;对大气层的物理检测;对埋藏在地球地表层以下的矿物质进行勘测;对要进行工程建设的施工的地方进行放样测量;对国家需要的地方等各种大地 测量控制网 的测量和建设等。GPS技术在海洋上的应用同样也体现在很多个方面,如:在海洋中的应用最广泛的一种就是远洋船舶的导航,设置最短的航行海程节省不必要的能源浪费,对远洋船舶在恶劣天气下根据GPS定位导航自动修正航行的偏离角,是船舶在正确的航线上航行;然后就是对海域的海水环境进行勘测,如,水温,海底暗流,海洋生物群落等;船运货物移动范围报警,超过可以移动的范围就自动发出警报;制定进出港口的航行路线;海洋灾难检测等。GPS定位技术在航空领域的应用同样也体现在多个方面:其中最普遍的一种就是安装在民航飞机上的导航系统,这套系统可以让飞机进行自动驾驶,设定好航班航行的路线即可,战机也可以用导航来保持飞行编队的安全正确的飞行模式,远程运输机的空中加油也同样依赖于导航系统,外太空的空间站自主对接等都要用到GPS定位导航系统。
    综上所述单片机GPS定位信息系统具有以下优点:
    1.适用于各种需要导航的设备;
    2.全天候实时定位导航;
    3.应用单片机 编解码 接口 技术的通 讯系统中,采用多字节 地址编码,对于收发器的数量不作要求;
    4.由于系统体积小、便携性强、可以随意移动为各种学说,如,物理学,地球学动力,气候学说,天体力学等提供了高精度全天候的新一代测量技术。
    二、本课题所属领域的发展趋势
    随着计算机的不断发展和现代化生产和科学研究对GPS定位精度的要求日益提高,越来越需要定位系统能及时、准确地提供高精度的定位。GPS定位系统的定位范围和精度会直接影响整个定位系统的性能。因此,构建高精度定位系统是完全有必要的。
    随着全球信息化的潮流,GPS信息定位这一技术得到了空前高度的发展,应用了GPS技术的地方,已经涉及到了全球国民经济的每个领域,其中最为突出的就是,由GPS技术为代表的定位导航产品在面向消费者市场的时候表现出来的强劲攻势,GPS技术能有如此强劲的攻势是因为他特有的优点,可以轻易的为目标点提供位置、速度和时间信息。在当今这个信息爆炸的时代里,它会很快的成为信息时代的重要信息来源,成为信息主流世界里的基础设施之一,因为他可以搭载在很多设备上,而且价格也很是便宜,兼容性也很是强的缘故,因此他可以形成以搭载GPS定位系统的很多产品,方便了我们的衣食住行。他的发展具有了以下特点:
      GPS应用产品产业是当前国际上八大无线产业之一;
      GPS也是目前世界上发展的最快的三大信息产业之一;
    GPS与GSM和CDMA的结合已成为全球通信导航界的热点;
    从GPS定位系统出现开始就一直扮演着重要的角色在导航领域。然而在二十世纪九十年代才是GPS技术展露身手的年代,在这十年里它展现出了资本主义社会特有的经济模式,全球垄断,因为垄断的缘故,它一跃成为了新型国际产业。到了二十一世纪,美国资本主义持续垄断着这一行业,因此美国一直掌握GPS这一技术的核心资源。与此同时,欧洲,中国,日本和俄罗斯都在积极的对这一行业进行研究,他们在未来也将会在这一行业中扮演着重要的角色。未来10年全球GPS定位导航产业发展的总趋势预测如下:
     传统导航,定位和定时将会被GPS卫星定位导航的手段所替代,这一现状将会在多数国家和地区变为现实。而GPS卫星定位导航也将成为导航领域的唯一导航手段。在地球上,只要是涉及到动态或静态定位、定姿、定时和信息导航的地方都会应用GPS卫星定位导航信息。
    天基卫星信息导航系统及其增加系统将成为全还应信息社会的重要基础设施,美国GPS垄断全球的局面有可能被打破,未来10年可能成为GNSS的10年。
     各国之间民用导航领域将互相兼容将会成为必然的大趋势。
     陆地上的车辆应用GPS卫星导航系统将成为导航产业领域发展的有效原动力。
     随着二战以后全球基本上进入了和平发展的趋势,因此GPS定位技术在民用的效益上远比军用的大,这一技术的应用范围非常广,真正的达到了各行各业都能融合的局面。
    三、本课题的研究内容
    本设计主要是利用单片机进行拓展开发,利用其扩展的丰富的接口和外设功能,建立一套快速、简便、有效的单片机GPS信息定位系统,能够将人或者事物所在的位置用经纬度来精确的显示出来。本设计有两大部分构成分别硬件设计和软件设计这两大部分,在设计中我们可以很清楚的给出单片机与其外围搭载的的硬件接口模式方案并给出细致的接口设计;在软件设计中可以分为多个部分对应着其中的多个方面的硬件接口软件。在设计中我们要做的工作主要包括:
    (1)单片机GPS信息定位的工作原理及选择;
    (2)内部程序数据通讯方式;
    (3)数据的无线发射与接收;
    (4)单片机GPS信息定位对数据的处理及显示与存储。
    本系统主要由位置信息采集与数据接收系统、无线数据收发系统、数据处理及显示、存储系统构成。系统采用模块化设计有很强的灵活性和可 扩展性,可根据需要添加相应的模块。系统的结构框图如下:

    在这里插入图片描述

    四、论文设计的研究手段和主要步骤

    1、查阅资料,了解单片机GPS信息定位的工作原理并进一步选型;
    2、对已选单片机工作进行原理进行熟悉,掌握其内部框架并能予以应用。
    3、熟悉TFT的工作原理,并编写显示驱动程序。
    4、对NFR905无线传输模块的发送、接受进行调试;
    5、整体调试和校正,逐一测试相关功能。进一步修改和优化软件设计。
    6、按规范要求完成毕业设计论文的撰写。
    五、主要参考资料
    [1] 李智奇,白小平.MSP430系 列 超 低功耗单片机原理与系统设计[M].西安:西安电子科技大学出版社,2008.
    [2] 李 广 弟,朱月秀.单片机基础[M].北京:北京航空航天大学出版社,2001.
    [3] 徐君毅.单片微型计算机原理与应用[M].上海:上海科学技术出版社.
    [4] 黄凌.基于单片机的GPS 信息处理系统.现代电子技术, 2007
    [5] 彭军.传感器与检测技术[M]. 西安:西安电子科技大学出版社,2003.
    [6] 康华光,邹寿彬.电子技术基础数字部分(第四版)[M].北京:高等教育出版社,2000.
    [7] 高光天.传感器与信号调理器件应用技术[M].北京:科学出版社.
    [8] 杨波.一种基于RF的无线数据采集系统的设计.[硕士学位论文].四川:西南石油学
    [9]杨剑.基于nRF905的无线射频数据采集系统的研究与实现.[硕士学位论文].长沙:中南大学…
    [10] 51系列单片机开发宝典 赵建领 电子工业出版社
    [11] 单片机在GPS系统中的应用 高芳 《电子制作》
    [12] 基于单片机的GPS信息处理系统 黄凌 《现代电子技术》

    摘 要

    GPS(Global Positioning System),中文名,全球定位系统。这个系统拥有很多优点。整个地球都被它覆盖,精度高,实时性好,定位速度快,抗干扰能力强。响应速率快,定位精度高,信号不乱,覆盖率广是该GPS定位信息系统具有的特点。它获得了十分普遍的应用在近年来,而且他们在各类 范围内得到 极大的施展。这个系统已成为了不可缺少的一部分在当今信息时代里。GPS定位信息系统建立之初几乎都是用在军事上的。可是如今GPS 已经得到了非常广泛的使用。大到国家航空航海 自动导航系统,小到私人 移动设备,它都可以得到应用。在不断发展的当今社会伴随着 GPS 的成本的降低,人们日常生活中GPS有着极大的应用,配备了GPS功能的手持设备有很多如手机、I pad等。伴随着GPS民用化的发展,外出游玩时在不知道自己具体方位或找不到目的地时我们可用 GPS来定位当前位置或目标位置。本课题设计的 单片机GPS 定位信息系统可以实现显示当前时间,经纬度和高度等信息。并根据需求将所需信息通过显示器显示。综上所述GPS信息定位系统有如下优点:
    1.适用于各种需要导航的设备;
    2.全天候实时定位导航;
    3.应用单片机,编解码接口技 术的通 讯系统中,采用多字节地址 编码,而对于收发器的个数不作要求;
    4.因为这个系统占有的面积很小、具有非常好的被携带性、因此它可以到处挪动,为大地测量学、地球动力学、地球物理学、天体力学和全球气候学提供了一种高精度、24小时、任何天气的测量新技术。

    关键词:单片机;GPS 定位系统;方便;导航;设计;

    ABSTRACT

    Global Positioning System, Chinese name, Global Positioning System. The system has many advantages. The whole earth is covered by it, with high precision, good timeliness, fast positioning and strong anti-jamming capability. The response rate is fast, the positioning precision is high, the signal is not chaotic, the coverage is the characteristic of the GPS location information system. It has been widely used in recent years, and they have been widely applied in various areas. This system has become an indispensable part in today’s information age. The GPS system was built almost exclusively on military use. But now GPS has been widely used. Large to national aeronautical navigation system, small to private mobile device, it can be applied. In the continuous development of today’s society with GPS cost reducing, application of GPS in people daily life, equipped with GPS handheld devices such as cell phones, there are a lot of I pad, etc. Goes out to play, with the development of GPS MinYongHua without knowing their exact position or cannot find a destination we can use GPS to locate the current location or target. The single-chip microcomputer GPS information system designed for this project can realize the current time, longitude and latitude and height. To summarize, the GPS information 1.location system has the following advantages:
    2.Applicable to all devices that require navigation;
    3.Round-the-clock real-time positioning navigation;
    In the communication system of the decoding and decoding interface technology, the use of multi-byte address encoding, the number of transceivers is added;
    4. Because the system possess area is small, has the very good portability, so it can move everywhere, for geodesy, geodynamics, geophysics, celestial mechanics and global climatology provides a high precision, 24 hours a day, any weather measurement of new technology.
    Keywords: single chip computer; GPS location system; Convenient; Navigation; Design;

    目 录

    1. 绪论 1
      1.1 GPS定位信息系统概述 1
      1.1.1 GPS定位信息系统的产生 2
      1.1.2 GPS定位信息系统的优点。 2
      1.2 GPS定位信息系统的发展史 3
      1.3 GPS定位系统的发展趋势 4
      1.4 国内GPS定位系统的应用概况 5
    2. 单片机GPS定位系统设计 6
      2.1 GPS定位信息系统的基本组成 6
      2.1.1 GPS定位信息系统的组成 6
      2.2 GPS定位信息系统的工作原理 6
      2.2.1 GPS定位信息系统控制原理 6
      2.3 GPS定位信息系统硬件部分 7
      2.4 GPS定位信息系统软件设计 10
      3.GPS定位信息系统的试验及精度检测 12
    3. 系统软件设计 12
      5.结束语 15
      参考文献 16
      附 录 17
      系统程序 17
      致 谢 30

    1. 绪论

    1.1 GPS定位信息系统概述

    1. GPS系统可以分成三个大的模块: GPS星座、地面控制和GPS前端信号。
    1. GPS星座部分。GPS星座,由多颗卫星组成,以55°倾角悬浮在地球上空真空地带 的6 个 轨道上,他们距离地球的高度约在20-200km,它在运行的时候的周期是12恒星时。这样的运行轨迹可以让在地球上每一个位置的用户每一个时刻都可以同时收到来自不少于6 颗卫星的定位信号,每一个用户都会收到来自这些卫星不断发送的GPS信号了解其位置和时间。
      2)地面控制部分:地面控制部分是由地面基站构成的控制网,这些基站对信号有着跟踪功能。根据这些基站的不同作用,可以将他们分为三种类型的基站;第一种是主控基站他只有一个,第二种是注入基站,这种类型的基站数量要多些有三个;而第三种是监测基站,数目最多,有五个。这些基站的分工很明确,监测基站监测来自卫星的数据,主控基站则是负责收集处理来自监测基站监测到的数据,通过这些数据得出星座群中卫星的星历和卫星钟,用这些数据算出正确的参数,最后由注入基站将主控基站和监测基站两站处理后的数据注入到卫星中。来进行实时控制。
    2. GPS前端信号。用户部分是根据用户的对定位精度和非静态特性需求的接收机,接收GPS 卫星所发出的无线电信号就是接收机的作用,这些信号就是用来进行导航、定位等工作。用户部分由GPS 接收机、数据处理软件 以及相应 的用户设备等三大部分组成。
    1. GPS 定位原理
      利用测距相交这个原理确定点位是GPS 系统的基本定位原理。GPS 卫星任意时刻都在发布这与自己相关的位置和时间数据。用户接收机经过测量来自每颗卫星的时间差来确定与卫星之间的间距,用户接收机任意时刻可以接收来自至少3 颗卫星的信号,然后就可以用这三颗卫星做圆,以测量到的卫星间距为 半径,依次画出这三个圆,用户的位置就在这三个圆相互交汇的地方。在开发GPS 定位系统的过程中,如何计算坐标数据,这些工作GPS 芯片会自主完成,这个时候就只需考虑芯片的选择。

    1.1.1 GPS定位信息系统的产生
    Global Positioning System是由美国在二十世纪后期开始研制的新一代导航系统。他是军备竞赛的迅猛发展对地球精准定位的需求而产生的。GPS这一技术的产生最主要的目的是为了军事方面能够更好地联系空军,海军,陆军,使他们形成一个紧密的联合体。提高三军联合作战的机动性。同样的也为军方收集各方面的情报,提供了很重要的渠道,这一技术同样也是美国独霸全球战略的重要构成部分。在20余年的研究实验下,超过300亿美元花销,在即将进入二十一世纪前,完成了覆盖率超过百分之九十以上的二十四颗卫星星座的分布建设这一浩瀚的工程。运用GPS监控可以有如下特点:
    1.跟踪定位
    实时监测被控车辆的动态,掌握车辆最新状况。
    2.轨迹回放
    监控中心能随时回放最近阶段车辆历史行程、轨迹记录。(根据情况,可选配轨迹DVD刻录服务)
    3地图制作功能
    根据用户需要,用户可以添加修改自定义地图线路,以更好服务用户
    4.里程统计
    车辆进行行驶里程可利用GPRS车载终端的行驶记录功能和GIS地理系统原理来统计,并可生成报表且可打印。
    5.短信通知功能
    随时随地可以通过短信来了解被控车辆的各种报警或状态。
    6.车辆远程控制
    监控中心可任意时刻对车辆进行断油断电,锁车功能。

    1.1.2 GPS定位信息系统的优点。
    GPS定位导航系统的优点有:精度高、24小时无间断、高效率、多功能、操作简便、应用广泛等。
    1、定位精度高:通过对大量实验数据与实际数据的对比之后,我们可以清晰的发现他的精度会随着定位范围的扩大或缩小而出现不同程度在允许内的误差。
    2、检测时间:随着GPS系统的逐渐改变,,目前,20KM以内相对非动态定位,需要的时间也不过15-20分钟;相邻流动站与基准站之间相距 15KM以内时, 1-2分钟之内就可以在流动站观测到,之后就可以实施实时定位,几秒钟就可以在每个站观测到。
    3、观测站:由于GPS测量不需要测站可以相互看得见,测站上空没有阻碍就可以,因此可以省去很多不必要的费用。由于不需点间相互看得见,点位的具体位置可根据需要,疏密任意调整,使选点工作甚为灵活。
    4、三维坐标:在经典的大地测量中将平面与高程以不同的方式分开施工。从而保证GPS能够在同一时间同一地点精确检测出测站点的三维坐标。
    5、操作系统:随着GPS接收机逐渐完善,自主程度越来越高,有的已达“智能化”的程度;接收机的个头也越来越小,体重越来越轻,很好地减轻了测量工作者在工作中的工作强度。使户外工作变得越来越轻松愉快。
    6、24小时无间断:如今GPS观测可在全天候的任何时间进行,不受外界的天气环境的影响。
    GPS定位信息系统自1994年正式运行以来,由于定位精度高、定位精度高,不需要在车站、简单的操作、功能、应用范围和许多其他广泛使用的优点之间进行交流。在与传统的测量仪器相比,自动化程度越来越高的当今社会相应的GPS接收机使用的测量也较高的智能水平,在户外工作,使用GPS接收机测量设备操作非常简单,减少人工干预,大大减少户外工人的工作强度。在室外观察后,数据处理软件可以由数据处理软件处理,可以很好地完成所有工作。他们在WGS284的GPS坐标系统中使用,然而,在实际操作中,我们会发现这些点的坐标是国家统一标准的坐标。因此,当GPS定位测量被处理时,该站点坐标系统转换和转换参数的确定是关键。

    1.2 GPS定位信息系统的发展史
    Global Positioning System的英文缩写就是GPS。GPS是在1958年美国国防部的一个军方项目上开始的, 20世纪70年代服役于美国军方,美国全军联合研究了新一代卫星定位系统GPS并且使其实现功能。GPS这一技术的产生最主要的目的是为了军事方面能够更好地联系空军,海军,陆军,使他们形成一个紧密的联合体。提高三军联合作战的机动性。同样的也为军方收集各方面的情报,提供了很重要的渠道,这一技术同样也是美国独霸全球战略的重要构成部分。在20余年的研究实验下,超过300亿美元花销,在即将进入二十一世纪前,完成了覆盖率超过百分之九十以上的二十四颗卫星星座的分布建设这一浩瀚的工程。
    GPS前身
    子午仪卫星定位系统是美国军方目前的GPS定位信息系统的前身。它于20世纪70年代正式推出。在系统网络中使用的5个或6颗卫星24小时内绕地球13次,不提供信息的方法,在定位精度方面也不够好。尽管如此,但对卫星定位系统发展的交通系统的使用为相关部门提供了相关的经验,证实了卫星定位系统的可行性,为GPS系统的发展做好了准备。潜艇和舰船的原始运输系统有很多缺点,导航卫星定位显示了巨大的导航优势。美国海军和陆军急于找到一个新的卫星导航系统。对于这一目的,美国海军研究所提出12至18 颗卫星10000公里运行轨道上运行的全球定位卫星网络计划,然后在接下来的十年里,发射了三颗实验性的定位卫星,初步试验卫星原子钟计时系统,而这个原子时钟计时系统是高精度GPS定位导航系统的定位基础。美国空军研究所则提出发射15到20颗卫星组成的大型星座群,这些卫星中只有一个是同步轨道卫星轨道,然后其他的卫星运行周期是24小时倾斜的轨道,该项目是基于伪随机代码卫星测距信号传输,通过其强大的伪随机函数的代码,当信号密度小于1%的环境噪声可以被探测到。GPS系统成功的一个关键因素是成功使用伪随机码。海军的主要研究任务是为舰船提供一个低 稳定的二维位置,而空军则负责提供高性能的服务。由于复杂的系统开发,与此同时,两个系统的成本太大,他们的研究仍然是GPS定位的主题,因此,1973年美国国防部合并这两个属于同一类的不同服务研究中,领导联合国防项目(JPO)领先的卫星导航和定位计划,还将处理在军事基地成立于洛杉矶。

    1.3 GPS定位系统的发展趋势
    GPS定位信息系统的应用很广泛,还非常普遍,几乎涉及国民经济的各个领域,近年来,他有一个强大的攻势,面对消费市场的发展,GPS卫星导航产品的应用,他将很快成为信息爆炸的时代,一个国家的基础设施,其发展具有以下特点:
    它目前是8个国际无 线 产 业 之一;在当今世界上,已经发展成为增长最快的三个信息产业之一;GPS和GSM和CDMA的结合在全球通信导航系统中已经成为当今人们关注的热点话题20世纪末是全球定位系统垄断的时代。在21世纪的头十年里,美国将主导由GPS主导的卫星导航产业。但欧洲、日本、中国和俄罗斯将在这个巨大的市场中发挥重要作用。未来10年卫星导航产业的总体趋势预测如下:卫星导航意味着在大多数国家和地区,它可能是取代传统导航、定位和计时的唯一方式。在陆地和海洋的这三个区域,卫星导航信息在任何需要动态或静态定位、定位、时间和导航信息的地方都被使用。
    天基卫星导航系统和增加系统将成为当今信息社会的重要基础设施,美国GPS全球垄断地位很可能会被打破,在未来10年里也许会一直持续。在国家卫星导航系统的民用领域,兼容GPS定位将是一种国际趋势。平民的利益远远超过军队,远远超过军队。卫星导航和通信技术、遥感和综合消费产品将创造出许多新的产品和服务,并有无限的机会开拓市场。在接下来的五年里,GPS设备将会被80%以上的车辆所配备。

    1.4 国内GPS定位系统的应用概况
    GPS主要由GPS空间卫星星座、地面监控系统和GPS前端信号三大部分组成。
    GPS接收机是前端用户用来接收信号的主要设备,无线前端放大器,信号处
    理器,控制器与显示器,数据记录和供电装置共同组成了GPS接收机。
    GPS对人们的生活影响是很大的。它可以从根本上解决人类在地球上的导航
    和定位问题,能够满足不同用户的需要。虽然最初的GPS卫星定位系统是为军事
    目的而设计的,但GPS的精度,简单的观察,良好的实时性能的优点,良好的抗
    干扰性能得到了普遍的应用。
    有两种主要的GPS应用,一种用于单点静态或动态定位或单点高精度位置测
    量。另一种是中央控制站的GPS接收器、无线数据通信设备和组成GPS应用的实
    时数据交换器。对于船舶,它可以在海上作业,在石油勘探,海洋捕鱼,铺设管
    道和礁石定位。引航员和其他对港口的贡献。飞机可以用于起飞、导航、降落、
    空中交会、武器投掷、空中交通管制等
    在银行业,公共安全,交通管制,消防和其他部门。在空间技术中,它可以用于导弹制导和空间飞行器的导航,以测量各种卫星的精确轨道。完成航天飞机
    的对接和GPS定位。GPS在常规武器测试中广泛应用,GPS精确轨迹的应用,不
    受天气状况、发射强度、射击场和窗口的极限影响,能实现连续、完整、多目标
    跟踪测量、高精度、低成本。还有带有GPS导航的移动炸弹和贝壳。

    2. 单片机GPS定位系统设计

    2.1 GPS定位信息系统的基本组成
    2.1.1 GPS定位信息系统的组成
    GPS 系统主要分三个模块: GPS卫星星座、地面监控部分和GPS前端信号部分。绪论中有具体细节此处不做详细描述。

    在这里插入图片描述

    2.2 GPS定位信息系统的工作原理
    2.2.1 GPS定位信息系统控制原理
    观察,使用与卫星信号处理有关的代码生成器,根据时间尺度和用户和卫星
    导航信息 帧之间的伪距离测量。讲的通俗易懂点就是说GPS这个定位系统就是
    依赖一张终端里面放着的说及卡,经过手机号码来传递信息到固定位子台,来实
    现定位,GPS终端就是这个位子台,这样就可以帮着你来享受按一个键就可以导
    航的乐趣。
    在这里插入图片描述

                             2-2-1.1系统框图
    
    • 1

    3.GPS 输出数据格式
    由于语句第6 项为2,表明采用了差分校正且定位数据有效。
    2-2-1.2引脚功能表
    在这里插入图片描述

    2.3 GPS定位信息系统硬件部分
    MAX- BLOX公司,生产的它具有高性能和高水平的集成能力,与超高灵敏度和
    智能电源管理模式,体积小,功耗低,可以在恶劣下正常工作,隐蔽的环境。
    MAX - 6 q芯片和相应的GPS接收电路外面部分的电路图,如图2-3.1所
    示,如果指示器MAX2,选择MAX - 6 q模块作为GPS信号接收模块,GPS模块和
    电源是正常的。MAX - 6也可以从单片机接收命令通过无线射频模块,实现两者
    之间的通信。
    在这里插入图片描述

    2-3.1GPS信号接收模块电路图
    这个稳压模块只能在3.3 V 的电平下工作,而芯片单片机、MAX 323 2、PL
    23 03 HX 和FT 245 基本上都是用3.3 V 的电压供电。如图2-3.2所示,VCC
    连接 US B端口,采用5 V USB电源作为这个模块的电源,S1是系统整体开关,
    打开后系统若正常供电,这个时候我们可以发现POW指示灯点亮。然后在通过稳
    压芯片电压转换,最后我们可以得到输出为3.3 V电源。滤波电容这个时候可以
    保护电路使电压稳定。

    在这里插入图片描述

    2-3.2稳压电路图
    3. NMEA-0183 协议
    NMEA 0183 是美国 国 家海 洋 电 子协会(National Marine Electronics
    Association) 为海用电 子设 备制 定的标准格式。目前业已 成了GPS 导航
    设备统 一 的RTCM(Radio Technical Commission for Maritime services)
    标准协议。该协议 采用ASC II 码,UART 默认 波特率480 0bps,采用10 位
    异步传输方式,无奇偶校 验。NMEA-0183 协 议常用的 数据格 式有6 种,见
    下表2-3.3。
    在这里插入图片描述

    2-3.3NMEA-0183指令表

    其中NMEA-0183 的GPGGA 命令的信息格式及含义如下,其他命令格式可查询相
    关文献。
    G P G G A , < 1 > , < 2 > , < 3 > , < 4 > , < 5 > , < 6 > , < 7 > , < 8 > , < 9 > , < 10 > , < 11 > , < 12 > , < 13 > , < 14 > , < 15 > , < C R > , < L F > 。该信息格式中的“ GPGGA,<1> ,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>, <14>,<15>,。 该信息 格式中的“ GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14><15><CR><LF>。该信息格式中的”表示 命令 起始位,G PGGA 表示 命令 类型,其他字段 含
    义如下:
    <1> UTC 时间,格式为“时时 分分 秒秒”。
    <2> 纬 度,格 式 为“度 度 分分.分分 分分”。(前导位数不足则补0)。
    <3> 纬 度 半 球,j N 或S(北纬 或南纬)。
    <4> 经度,格式为“度 度分分.分分分分”(前导位数不足则补0)。
    <5> 经度,半球,E 或W(东经或西经)。
    <6> 定位,质量 指示,0=定位无效,1=定位有效。
    <7> 使用,卫星 数量,从00 到12(前导位数不足则补0)。
    <8> 水平,精确 度,0.5 到9 9.9。
    <9> 天 线离 海平面的高度,-9 9 9 9.9 到99 99.9米。
    <10> 高度,单位,M 表示单位米。
    <11> 大地,椭球 面相对 海平面 的高度(-9 99.9到99 99.9)。
    <12> 高度 单位,M ,表示 单位米。
    <13> 差分 GPS 数据 期限(RTCM SC-104),最后 设立RTCM 传送 的秒数量。
    <14> 差分参考 基站标号,从0 0 00 到10 2 3(前导位数 不足则补0)。
    <15> “*” 表示 校 验和 前缀。
    <16> 校 验 和。
    <17> CR 和LR 表示 信息 结束 符合。
    GPS 接收模块可以接收以上6 种常用的命令信息,可使用该模块的配置程
    序设置该模块的接收信息类型,设置好后,该模块只接收允许接收的信息类型。
    本设计方案中,对允许接收的命令信息类型没有筛选。

    2.4 GPS定位信息系统软件设计
    GPS定位 系统程序 主要完 成单片机串 行端口 初始化、LCD屏幕 初始化、
    GPS指令 信息接收、解码和处理任务,最终将处理信息显示在液晶显示屏上。
    GPS 定位系统程序总体流程如图 2-4.1所示。
    在这里插入图片描述

    2-4.1系统程序流程图

    在整个系统程序设计中,解码是关键。单片机通过串口接收到来自GPS 接
    收模块的特殊格式的命令信号后,可以通过解码这个信号获取用户所需要的信息
    部分。特殊格式(NMEA-0183)的解码算法如下:
    r1: 初始化:定义逗号字符 计数变量(comma count)等于零,数据类型 定义字
    符型变量(char count)等于零,指令类 型数组(c m d[5]), 模式变量mode
    mode=0表示结束,mode=1表示接收命 令类型,mode=2表示接收数据),指令类
    型编号c m d number,启动串口接收,进入r2。
    r2:判断串口的s b u f 接收到的字符:要是在串口处是 “$”,那么就设置
    模式(mode)等于1,准备好接收指令类 型的信息;要是在串 口处是字符:“逗
    号”(“,”),逗号字符 计数变量(comma count)自己增加1、数据类型 定义
    字符型变量(char count) 清除归零;要是在串口处是字符“星号”(“*”),
    设置 模式(mode)等于零,命令进 入 结束模式;如果是其他的数据,就准备
    执行s3;
    r3:要是出现设置模式(mode)等于1,那么就可以知道要接收指令类型,会顺
    次 将串口接收到的5字符数据存储到 c m d[5]数组中。如果要是c m d [5] 存
    储的是“GPGGA” 指令类型, 那么我们可以知道c m d number等于1,执行r4;
    若是“GPGSV”命令类型,那么就有指令 数组(c m d number)等于2,这
    个时候我们就要执行r4;要是出现“GPRMC”命令类型,则指令数组(c m d _
    number)等于3,设置模式(mode)等于2,这个时候就可以进入接收数据模式,
    准备执行r4。
    r4: 要是设置 模式(mode)等于2, 这个时候就准备进入数据接收模式。
    进入之前我们要判断c m d _number 的值:
    在得到指令 数组(c m d _number) 等于1, 这个时候就可以开始解码GPGGA
    指令类型的参数,在来对逗号 计数(comma count) 的值进行判断。根据上述
    的NME A-0183 的GPGGA 指令信息格式,数据字段之间用逗号分隔,因此根据逗
    号计数可以获取所需信息。
    在得到逗号字符 计算变量(comma count) 的值等于1时,这个时候我们就可
    以大概的知道后面接收的10个字符是UTC 时间,随后就可以将这些数据储存在
    时间变量的里面。要是在得到逗号字符 计算变量(comma count)的值等于2,
    就可以知道随后接收的10 字符是纬度 信息并存储,数据类型定 义字符型变量
    (char count) 清除归零。若逗号字符 计算变量(comma count) 的值等于3,
    表示接下来接收的一个字符是 纬度方向信 息并存储,数据类型 定义字符型 变
    量(char count) 清零。要是得到comma count 的值等于4,表示接下来接收
    的11 个 字符是经度信息 并存储,char
    count 清除归零。若comma
    count 的
    值等于5, 表示接下来接收的一个字符是经度方向信息并存储,数据类型 定义
    字符型变量(char
    count) 清除归零。以此类推我们就可以得到GPGGA 中我
    们需要的信息解码。
    s5:退 出。
    在处理完数据的解码工作后,我们可以使用LCD显示屏来显示被解码后需要
    显示的数据。除此之外,这个系统默认接收到处理后的时间是UTC 时间,要是
    我们想要他输出北京时间,我们还需另外做出一个编程(程序附在附录),用这
    个编程来对UTC 时间进行转换处理,让他显示北京时间在进行输出显示。

    3.GPS定位信息系统的试验及精度检测

    试验 得到一组数据。经 纬度和高度坐标分别为: 30°23.64’,114°18.16 ’
    和33m.,然后我们可以在地;图上找到武 汉 纺 织 大学 阳光校区宿舍楼13
    栋3楼的这一固定GPS接收 器的测试点,得到该测试点的 经纬度和 高度坐标
    分别为:30°22.42 ‘,114°19.16’ 和30 m.然后再来对两组数据进行比较,
    在比较数据之后我们科的得出测量的经 纬 度 误 差小于1°,高度误差 值为3
    m,在 本 设 计所 用的GPS位置精 度范围内,说明本 系统测 试的数据 符合
    精度要求。

    4. 系统软件设计

    对单片 机初始化。设置允 许串口 中断, 串口 工 作方式有多个,可以 选
    择串口 的工作方式1 和定 时器1 作为 波特率发生 器, 将定时器1的工作方
    式 设置 工作方式2 。波特率计算公式如下:波特率 =2S MOD32× f o s c12 ×
    256 -TH1系 统 时钟 取11 .059 2 MHz , 则对 于波 特率,960 0 b/ s , 则
    TH 1 =F DH 。其初始 化程序 如下:
    T M O D = 0x20 ;//选择定时 器1 为 定时方式,选择定时 器工作方式2T
    =0xFD ;
    TH 1 =0 x FD ;//波特率 96 00 SCON =0x 50 ;// 选择中 断 工 作方式1
    P C O N = 0 x00 ;//选择S M OD =0 I E =0x 90 ;//CPU 中断 允许T R1 =1 ;//
    启动定时 器1。
    单片 机程序设计和 上位机软件 设计是这个 系统软件 设计的关键,如图
    4.1所示。。选择好工 作模式以后,单片机 会 根据 相应的模式 将分离得到
    的数据进行传输。
    在这里插入图片描述

    4.1单片机工作流程图
    上位机 工作 流程如图4.2所示。本文采用 卡尔曼滤波 来消除不规则计算
    机接收 信息的位置 信息,提高定位精度,该方法 具有良 好的可移植性、操作简
    单的优势,成本低、数据处 理和误差 分析的相对误 差方差。误差分析方法如下:
    在一个固定的地方不同时间n数据,使用计算机数据误差分析,首先计算数据的
    平均值,计算相对误差和绝对误差和相对误差定义为实际值的比值。在对错误分
    析进行了一些按钮后,对50组数据的优越访问、平均50组数据、每组误差分析
    和50组数据误差在50组数据之后计算平均误差,我们可以通过计算得出最后的
    结果显示出来。该使用这个方法确定了经 和高 度的误差,确定了GPS数据的
    偏差 和 稳定性。
    在这里插入图片描述

    4.2上位机工作流程图

    5.结束语

    毕业设计中提出了多种GPS定位导航系统的解码算法。通过设计基于单片机
    GPS全球定位导航系统,这个系统中的控制器模块由单片机来实现控制功能,这
    一GPS接收机能够计较准确的显示出经纬度时间日期和高度。
    弄完毕业设计,我复习了我学过的知识,并且更深入的理解了。在这个系统
    是设计在选题和示范,大量的数据和文献,并对许多相关专业的信息,开拓了视野,我们专业的发展历史和发展前景也可能理解。
    设计论文有很多问题,更重要的是,什么叫做眼睛的低端。思想是明确的,
    思想是很好的,但在具体的实践行动中,却不知道从哪里来,这是知识匮乏的表
    现。所以我知道以前的知识太理论化,缺乏实际的练习,缺乏真正的问题,缺乏
    解决办法。一些知识是一个积累的过程,只有在遇到之后才会知道,在以后的工
    作和学习中应该以开放的心态去咨询,努力学习,以提高其多方面的能力和综合
    素质。
    总之,我们非常的努力,我们成功地完成了。毕业设计是一门综合性的课程
    设计,通过对单片机课程设计和学习水平的理解,认识到自身的缺陷,总体自我
    把握相关问题的程度,更好的加以改进。

    参考文献

    [1] 李智奇,白小平.MSP430系 列 超低功耗单片机原理与系统设计[M].西安:西安电子科技大学出版社,2008.
    [2] 李 广 弟,朱月秀.单片机基础[M].北京:北京航空航天大学出版社,2001.
    [3] 徐君毅.单片微型计算机原理与应用[M].上海:上海科学技术出版社.
    [4] 黄凌.基于单片机的GPS 信息处理系统.现代电子技术, 2007,.
    [5] 彭军.传感器与检测技术[M]. 西安:西安电子科技大学出版社,2003.
    [6] 康华光,邹寿彬.电子技术基础数字部分(第四版)[M].北京:高等教育出版社,2000.
    [7] 高光天.传感器与信号调理器件应用技术[M].北京:科学出版社.
    [8] 杨波.一种基于RF的无线数据采集系统的设计…四川:西南石油学
    [9] 杨剑.基于nRF905的无线射频数据采集系统的研究与实现.长沙:中南大学.
    [10] 赵建领 51系列单片机开发宝典 电子工业出版社.
    [11] 高芳 单片机在GPS系统中的应用 电子制作》.
    [12] 基于单片机的GPS信息处理系统 黄凌 《现代电子技术》.
    [13] 李斌.基于MSP430 单片机的GPS 定位系统设计[J]. 制造业自动化2010.
    [14] 李飞光,李 良 儿.单片机C 程序设计指导[M]. 北京:北京航空航天大学出版社,2005.
    [15] 吴东.基于单片机的GPS 定位显示设计[J].上海师范大学学报(自然科学版),2016.
    [16] 李锐,赵来定. 基于FPGA的L波段卫星数字信标机. 南京邮电大学学报,2012.
    [17] 黄凌.基于单片机的GPS 信息处理系统.现代电子技术, 2007 .
    [18] 杜俊,董 松.基于单片机的GPS 定位系统的设计与实现, 2016.
    [19] 陆薇丽 基于51单片机的全球定位信息显示系统
    [20] 鲍艺 基于单片机的GPS定位系统设计 2015.
    [21] 于超越 基于单片机的GPS定位系统设计与实现
    [22] 李云溪;韩涛;项剑峰 基于单片机的GPS定位系统设计

    附 录
    系统程序
    源程序
    GPS_MAIN.C
    #include “LCD1602.h”
    #include “I n t r I n s. h”
    #include “instruct _ i nit .H”
    S b I t LED = P1^4;
    unsigned char Ex0_flag;
    unsigned char Ex1_flag;
    unsigned char
    r c v b u f[600]; //GPS数据均为ASCII字符形式//
    ST_FIFO_BUF GPS data=
    {
    600,
    R c v b u f,
    0,
    0
    };
    void main()
    {
    unsigned char c r v a l;//current value
    unsigned char identifier; //验证深度
    unsigned char WEI,XSD; //位小数点 小数点深度
    float XSDSD; //小数点深度
    float D W message[15];//定位信息1的存储量
    P0M0=0; P0M1=0;
    P1M0=0; P1M1=0;
    P2M0=0; P 2M1=0;
    P3M0=0; P 3M1=0;
    P4M0=0; P4M1=0;
    P5M0=0; P5M1=0;
    LCD1602_Init(); //初始化LCD1602
    LCD1602
    Put Star (0,0,“ZZIST ZYQ GPS-D”);
    LCD1602
    Put Star (1,1,“XH 201151067”);
    for(DW_message[0]=0;DW_message[0]<200;DW_message[0]++)Delay10ms();//延时两秒显示信息
    INT0_ Int ();
    INT1_ Int ();
    UART1_ Int ();
    UART2 _Int ();
    Delay ();

    // LCD1602_Put Char(3,1,‘:’);
    // LCD1602_Put Char(7,1,‘:’);
    While (1)
    {
    While (GPS_ data. Value_ Data)
    {
    Crval =FIFO BUF Read (&GPS data);
    uart1_send (c r v a l);
    if (c r v al==‘$’)
    {identifier=1;continue;}
    If (identifier1)
    if (crval
    ’G’)
    {identifier=2;continue;}
    else {identifier=0;continue;}
    if(identifier2)
    if(crval
    ’P’)
    {identifier=3;continue;}
    else {identifier=0;continue;}
    if(identifier3)
    if(crval
    ’G’)
    {identifier=4;continue;}
    else {identifier=0;continue;}
    if(identifier4)
    if(crval
    ’G’)
    {identifier=5;continue;}
    else {identifier=0;continue;}
    if(identifier5)
    if(crval
    ’A’)
    {identifier=6;LED=~LED; continue;}
    else {identifier=0;continue;}
    if(identifier6)
    {if(crval
    ’,‘){WEI++;XSD=0;XSDSD=1;DW_message[WEI]=0.0;continue;}
    if(crval==’.‘){XSD=1;continue;}
    if(crval==’*'){WEI=0;identifier=0;continue;}//结束本次数据解析
    if(XSD1)XSDSD/=10;
    if(XSDSD
    1)
    DW
    message[WEI]=DW_ message[WEI]10+crval;
    else {DW_ message[WEI]+=crval/XSDSD;}
    }
    } //数据解析程序结尾
    if(DW_message[6]==0){LCD1602_Clear();LCD1602_PutStr(0,0,“No P-M”);}//未定位显示,没有位置信息
    else {LCD1602_PutStr(0,0,“JD-”);LCD1602_PutNum(4,0,DW_message[4]);
    LCD1602_PutStr(0,0,“WD-”);LCD1602_PutNum(4,0,DW_message[2]);}
    //if(Ex0_flag)LED=0; //else LED=1;
    }
    }
    FIFO-BUF.H
    #define fifo_buf_h_
    #define fifo_buf_h_
    typedef struct
    {
    unsigned int Max_Date; //缓冲区长度
    unsigned char P_buf; //缓冲区首地址
    unsigned int Value_Date; //有效数据长度
    unsigned int Buf_Start; //起始数据 距 首 地址距离
    }
    ST_FIFO_BUF;
    extern unsigned char FIFO_ BUF Read(ST_FIFO_BUF buf);
    extern
    void FIFO _BUF _Write(ST_FIFO_BUF b u f, unsigned char temp);
    #end
    if
    FIFO-BUF.C
    /
    ************************************************** 环形FIFO缓冲区,定义一个数组作为缓冲区 用以下函数来实现环形存储
    #include “fifo_buf.h” //
    #include “instruct_init.H”
    unsigned char FIFO_BUF_Read(ST_FIFO_BUF *buf)
    {
    unsigned char *addr;
    addr=buf->P_buf + buf->Buf_Start;
    if (buf->Value_Date>0)
    {
    buf->Value_Date–; buf->Buf_Start++;
    if (buf->Buf_Start >= buf->Max_Date) buf->Buf_Start=0;
    }
    {
    return * addr;
    }
    void FIFO_BUF_Write(ST_FIFO_BUF *buf,unsigned char temp)
    {
    unsigned char * addr;
    if(buf->Value_DateMax_Date)
    {
    if((sbuf->Value_Date+buf->Buf_Start)>=buf->Max_Date)
    addr=buf->P_buf+buf->Value_Date+buf->Buf_Start-buf->Max_Date;
    else addr=buf->P_buf+buf->Value_Date+buf->Buf_Start;
    *(addr)=temp;
    buf->Value_Date++;
    }
    }
    LCD1602.H
    #ifndef
    _LCD1602__H
    #define _LCD1602__H
    #include “stc\stc15f2k60s2.h”
    void LCD1602_WriteCMD(unsigned char command)
    写命令指令
    void LCD1602_WriteData(unsigned char dat); //写数据指令
    void LCD1602_SetCursor(unsigned char x, unsigned char y); //设置显示地址
    void LCD1602_PutChar(unsigned x,unsigned char y,unsigned char dat); //写一个字符
    void LCD1602_PutStr(unsigned char x,unsigned char y,unsigned char *s); //写一个字符串
    void LCD1602_PutNum(unsigned char x,unsigned char y,unsigned int intdat); //写无字符型整形数
    void LCD1602_Init(void); //初始化
    void LCD1602_CheckBusy(void); //LCD读忙信号
    void LCD1602_Clear(void);
    清屏
    void Delay(void);
    //@18.432MHz
    sbit LCD1602_BLK=P1^2; //LCD背光,低电平使能 #endif
    LCD1602.C
    #include “intrins.h”
    #include “LCD1602.h” //
    #include “stcKU\debug\debug.h”
    #define MSB 0x80 //读忙位
    #define LCDIO P0 //LCD1602的高四位接在P2口的高四位
    sbit LCD1602_RS=P1^7; //RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
    sbit LCD1602_RW=P1^6; //RW为读写信号线,高电平时进行读操作,低电平时进行写操作。
    sbit LCD1602_EN=P1^5; //E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
    #define CMD_CLEAR 0x01
    void Delay(void) //@11.0592MHz
    {
    unsigned char i, j;
    i=8;//i = 8; j=40;//j = 35; do {
    while (–j); } while (–i); } //LCD的初始化函数
    void LCD1602_Init(void)
    {
    LCD1602_WriteCMD(0x38); //28设置四位数据线模式0c设置八位数
    据线模式
    LCD1602_WriteCMD(0x0c); // 开显示命 原0c //
    LCD1602_Write CMD (0x0f); //设置首地址
    LCD1602_Write CMD (0x80);
    LCD1602_Clear(); //清屏
    LCD1602_BLK=0;
    }
    //清屏函数
    void LCD1602_Clear(void)
    {
    LCD1602_WriteCMD(CMD_CLEAR); //清屏命令
    }
    //检测忙信号
    void LCD1602_Check Busy(void) {
    LCD1602_RS=0;
    LCD1602_RW=1;
    LCD1602_EN=1; nop ();
    While (LCDIO&MSB) {
    LCD1602_EN=0; _nop
    LCD1602_EN=1; nop(); } } //开始写
    void LCD1602_WriteStart(void) //EN端产生一个高电平脉冲,写LCD { LCD1602_EN=1; Delay ();
    LCD1602_EN=0;
    } //写命令
    void LCD1602_Write CMD(unsigned char command)
    { LCD1602 _Check Busy();
    LCDIO=command; LCD1602_RS=0; //RS 0 写命令
    LCD1602_RW=0; //RW 0
    Delay ();
    LCD1602_Write Start ();
    }
    //写数据
    void LCD1602_WriteData(unsigned char dat)
    {
    LCD1602_Check Busy();
    LCDIO=dat;
    LCD1602_RS=1; //RS 1 写数据
    LCD1602_RW=0; //RW 0
    Delay ();
    LCD1602_Write Start ();
    }
    //设置显示地址:X为横轴(0-15),Y为纵轴(0-1)
    void LCD1602_SetCursor(unsigned char x, unsigned char y)
    {
    unsigned char address;
    x & =0x0f;
    if (!y) address=0x80+x;
    else
    address =0xc0+x;
    LCD1602_Write CMD (address);
    }
    //写一个字符:X为横轴(0-15),Y为纵轴(0-1)
    void LCD1602_PutChar(unsigned x,unsigned char y,unsigned char dat)
    {
    LCD1602_SetCursor(x, y);
    LCD1602_WriteData (data);
    }
    //写一个字符串:X为横轴(0-15),Y为纵轴(0-1)
    void LCD1602_PutStr(unsigned char x,unsigned char y,const unsigned char *s)
    {
    LCD1602_SetCursor(x, y);
    while(*s)
    {
    LCD1602_WriteData(*s); s++;
    }
    }
    //写一个无字符整数:X为横轴(0-15),Y为纵轴(0-1)
    void LCD1602_PutNum(unsigned char x,unsigned char y,unsigned int num)
    {
    unsigned char i=0,temp[5];
    while (number/10 || num%10)
    { temp[i]=num%10; number/=10; i++;
    }
    LCD1602_SetCursor(x,y); while(i)
    {
    i–;
    LCD1602_WriteData(temp[i]+0x30); }
    }
    INSTRUCT_INIT.H
    #ifndef
    _instruct_int__H
    #define instruct int _H
    #include “stc\stc15f2k60s2.h”
    #include “fifo12_buf.h”
    extern unsigned char Ex0_flag;
    extern unsigned char Ex1_flag;
    unsigned char zjval;//中间值
    extern ST_FIFO_BUF GPS_data;
    extern unsigned char rcvbuf[600];
    void Delay10ms() //@18.432MHz
    {
    unsigned char I , j, k;
    i = 1;
    j = 180;
    k = 71;
    do
    {
    do
    { while (–k);
    } while (–j);
    } while (-- I );
    } /外部中断0下降沿触发/
    void INT0_Init()
    {
    IT0=1;
    EX0=1;//中断允许
    }
    /外部中断1下降沿触发/
    void INT1_Init() { IT1=1; EX1=1;
    }
    /串口2 ,9600-8-1///9600bps@18.432MHz
    void UART1_Init(void) //9600bps@18.432MHz
    {
    SCON = 0x50; //8,
    AUXR |= 0x40; //1 Fosc, 1T
    AUXR &= 0xFE; //1 1
    TMOD &= 0x0F; //1 16
    TL1 = 0x20; // TH1 = 0xFE; //
    ET1 = 0; //1 TR1 = 1;
    //1
    }
    /串口2 ,9600-8-1///9600bps@18.432MHz
    void UART2_Init(void)
    {
    S2CON = 0x50; //8
    AUXR |= 0x04; //Fosc,1T
    T2L = 0x20; //
    T2H = 0xFE; //
    AUXR |= 0x10; //2
    IE2|=0X01; //中断允许
    EA=1;
    }
    /串口 1 发送函数/
    void uart1_send(unsigned char r1send)
    {
    SBUF=r1send; while(!TI); TI=0;
    }
    /串口 2 发送函数/
    void uart2_send(unsigned char r2send)
    {
    S2BUF=r2send;
    While (!S2CON&0X02);
    S2CON&=0XFD;
    }
    /中断服务函数/
    void INT0_Suv () interrupt 0
    {
    EX0=0;//中断允许
    Delay10ms ();
    While (~P32);
    Delay10ms ();
    Ex0_flag=~Ex0_flag;
    EX0=1;//中断允许
    }
    void INT1_Suv() interrupt 2
    {
    EX1=0;//中断允许
    Delay10ms ();
    While (~P33);
    Delay10ms ();
    Ex1_flag=~Ex1_flag;
    EX1=1;//中断允许
    }
    void UART1_Suv() interrupt 4 {;}
    void UART2_Suv() interrupt 8
    {
    //
    If (S2CON&0X02)//TRANSLATe //{S2CON&=0XFD;
    }
    If (S2CON&0X01)//RECEIVE
    {
    S2CON&=0XFE;
    Zjval =S2BUF;//
    GPS
    data;
    FIFO _BUF_Write(&GPS data ,z j v al); //
    uart1
    send (zjval);
    }
    }
    End

    致 谢

    关于本片论文的完成真的很感谢我的老师,如果不是在他的悉心指导下,我想我不会这么顺利的完成。教师深厚的专业知识、严谨的学术研究态度,力求完美的工作作风、传福音的高尚伦理、纪律、生活和让生活的崇高风格、简单的不能、平易近人的人格魅力对自己的深远影响。我不仅建立了一个伟大的学习目标,我已经掌握了基本的研究方法,而且我还学到了很多关于人的东西。从主题的主题到论文的完成,每一步都是在导师的指导下完成的,并倾注了导师的心血。在此,我要向我的导师表示崇高的敬意和衷心的感谢。在写论文的过程中,有很多问题,问题是由老师的耐心解决的。所以,再来一次,对老师说:谢谢你,老师。
    时间像流水一样流逝,这是一个如此容易聚集的春天之梦。离开的日期已经逐渐地逐渐地近了。从开始进入课题开始,一直都是老师、同学、朋友的热情给予我帮助,这里请接受我真诚的感谢!大学外经贸学院自动化专业的所有老师衷心的感谢你们,谢谢你们四年的辛勤栽培,同时谢谢你们的教导,是你们的教导使我们学到了更多的知识,感谢四年来不知疲倦的老师们的教诲!
    四年来,我收获不仅是日益丰富的知识,更重要的是在阅读中,在练习思维和表达能力的训练方式和广阔的视野。很高兴四年来我遇到了这么多优秀的老师和朋友,无论是学习、生活还是工作,都给了我无私的帮助和热情的关怀,让我在一个温暖的环境里度过四年的大学生活。感激不能用言语来衡量,用最谦卑的话来表达我最崇高的敬意。
    最后,我要感谢我的父母,他们培养了我对中国传统文化的兴趣,还让我有着一颗坚韧的心遇事沉着冷静,不轻易说放弃,而且对我来说,也为我能完成毕业论文提供了巨大的支持和帮助。在接下来的日子里,我会更加努力学习,更加努力地工作,达到我父母对我的期望。我将尊重他们并报答他们!我的父母,我爱你们!
    “会当临绝顶,一览众山小。”这是我小时候最喜欢的一首诗。也以此篇文章的来结尾,也是大学这一段生活的结束。我希望我能继续我的青春梦想,永不放弃,冲向我期待的人生之路。

  • 相关阅读:
    faster python——dataclass&cache
    Redis学习
    DJ2-1 数据信息的表示方法(第二节课)
    Effective Modern C++[实践]->理解模板类别的推导
    创新驱动|RFID技术在智能半导体行业的应用
    与分类有关的一种时序优先现象
    我的创作纪念日
    vue3中使用better-scroll
    [附源码]java毕业设计医院疫情疾控管理系统
    windows系统应急响应
  • 原文地址:https://blog.csdn.net/wqq_992250277/article/details/136737379