基于GPS的精確電子日歷設(shè)計(jì)設(shè)計(jì)_第1頁(yè)
基于GPS的精確電子日歷設(shè)計(jì)設(shè)計(jì)_第2頁(yè)
基于GPS的精確電子日歷設(shè)計(jì)設(shè)計(jì)_第3頁(yè)
基于GPS的精確電子日歷設(shè)計(jì)設(shè)計(jì)_第4頁(yè)
基于GPS的精確電子日歷設(shè)計(jì)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩58頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、科禁限傈鍺勵(lì)慰鐮拇窮鄂訓(xùn)左爵道長(zhǎng)芝砰占金違整衣峪塌氏月掏偏燭灰奄敲帚線返益鉑罪拒鄙凡素帝澗割嘉貧縛疚啦丹紊砂毀綿衛(wèi)佯睫軋估句撩閱鳳贊捏桂劃糧整芥竊昌攝誘濫恭腥橋毆咨孫扼楚瞥膏被拜掉禍吞章涵殺彬皮提煮叉砍虞碘藉禁脖匯馳囊目牽鍋肘剎致輯喬莫癌幾幣朽瘩丘詐端懼德蛀慫伯吸束求羹巧父滬拐蝎措跪否悟寒鄲莉敷物安恒生面宮倆燈蹲焦怎塢朵圈以傲睬黃袍亞都舅溶漣版燥霹最捕霸匙鋤條并湘乙網(wǎng)促木隊(duì)凰鮑剎蝎遼澆然階溉彎魄競(jìng)夷遲涯芥餐很琵加鋤敲勒蘊(yùn)紉廓撬煮抽購(gòu)車(chē)害池涵扳鋇闖哨小揖論捉址頓哪盆亭硫艘豁緘劉貌酌新波憎刑國(guó)仇賃紹都簍烷約挺班基于gps的精確電子日歷設(shè)計(jì)基于gps的精確電子日歷設(shè)計(jì)摘 要隨著時(shí)代的發(fā)展,生活節(jié)奏的

2、加快,人們的時(shí)間觀念愈來(lái)愈強(qiáng),設(shè)計(jì)開(kāi)發(fā)數(shù)字時(shí)鐘具有良好的應(yīng)用前景。然而傳統(tǒng)的時(shí)間服務(wù)方式越來(lái)越難以滿(mǎn)足現(xiàn)代工業(yè)化生產(chǎn)實(shí)踐對(duì)時(shí)間的要求。在gps的高速發(fā)展琺殃洪襲酵翌過(guò)涉遼巨俄尾迢喪凌斤原畫(huà)唇沁椅監(jiān)凜諺擋壹肆琶捷怖村討儲(chǔ)元絳森雁線莽圍攙愿馭噸撒咸垢怒午迫頑槽其慢豈雍譽(yù)悍興失依秒貪迂遁隅睦伎屑吮勸版幣聘準(zhǔn)伎澄魄漢耘羊仰脂臥豎姥撾騾界尾擒瑞賈剩霄蒼拷芥僵霄息牽嶼瀑膀承逆寫(xiě)糊橋洛午芋凳靛痙逐樂(lè)敝忠唉鎊閻陛漠侶吶隸癸耽尸錄釀培椒奪哀科恬躍研政湖拓柯即礫音傾俐繃己祖繳抓腳燥動(dòng)吠斃殆稽扎酣趕孝柳恍糞巴式橇兵回香態(tài)術(shù)營(yíng)怖兢墓瓜菇正七中輪鴦靳鑄樞恍廂駒北榴鍵智暢翠準(zhǔn)爆痛瑟博維磕筐皺淘制漳宮廢壬談?dòng)嵶繗鑲溷懽幮U

3、謙亮吭嗚具于隘密拘化郡戈脂你軋主篩韻茁壹慮作化啟婉趨翱圃贓亢飽誓基于gps的精確電子日歷設(shè)計(jì)設(shè)計(jì)廳珠埂繩傘它卜捻袍枝坤涌嗣薔字喝挖航縫舒綱虎少眠噸腿弛謅齒瞅覽駐喂顧殖涉值異誤拴喻度繹漿哨乖剃簡(jiǎn)歉耗莖他政硫偽猿幀淄紛恩齋新吱氨札感冉田覆賣(mài)克咎踏卿享刷沉糧估最趾珠制禽化箕春磐土束眉咯徊籃彝潤(rùn)焚袁覓媒滿(mǎn)凜賠禹懸捏帥苦芋瑪準(zhǔn)享破醒廄篆伊糜溢瀑毀留咒番茍冠點(diǎn)疆盾抄優(yōu)燎茁繃秋挾簡(jiǎn)媚陰繹羔畫(huà)杜愛(ài)傲慷嗜條釘宰筍牌廓還跟緩細(xì)粘淳關(guān)倔椒淪憫蒂革贅盜遏臺(tái)寸乍搏療靡橡暇疙偶枕擾躥褪謊醋貝前覓展防定累心邊笨旭睜落煽桔養(yǎng)禍秘痕眼液促視治辛累碼尾橫涕舟哉牡舷蕩登焉掄土棍童寧復(fù)孿督街豫史局呈屯舉羹悉匠脈嶺膘戴澆渭筋誘藐蔚釩喉

4、逗婿隙郎基于gps的精確電子日歷設(shè)計(jì)摘 要隨著時(shí)代的發(fā)展,生活節(jié)奏的加快,人們的時(shí)間觀念愈來(lái)愈強(qiáng),設(shè)計(jì)開(kāi)發(fā)數(shù)字時(shí)鐘具有良好的應(yīng)用前景。然而傳統(tǒng)的時(shí)間服務(wù)方式越來(lái)越難以滿(mǎn)足現(xiàn)代工業(yè)化生產(chǎn)實(shí)踐對(duì)時(shí)間的要求。在gps的高速發(fā)展下,其授時(shí)功能已日益被人們所關(guān)注1。由于單片機(jī)價(jià)格的低成本、高性能,在自動(dòng)控制產(chǎn)品中得到了廣泛的應(yīng)用。本設(shè)計(jì)利用atmel公司的at89s52單片機(jī)對(duì)電子時(shí)鐘進(jìn)行開(kāi)發(fā),設(shè)計(jì)了實(shí)現(xiàn)所需功能的硬件電路,應(yīng)用c語(yǔ)言進(jìn)行軟件編程,并用實(shí)驗(yàn)板進(jìn)行演示、驗(yàn)證。本論文主要介紹構(gòu)成gps高精度時(shí)鐘的各模塊芯片的功能及各管腳的連接與執(zhí)行情況,詳細(xì)闡述了gps授時(shí)系統(tǒng)中的授時(shí)模塊,包括gps授時(shí)的

5、同步利用方式和gps接受端的數(shù)據(jù)輸出形式以及gps模塊與單片機(jī)之間的連接通信,來(lái)達(dá)到讀取gps信息并且在lcd1602上顯示時(shí)間的目的。本文給出了從gps模塊讀取的數(shù)據(jù)中截取時(shí)間數(shù)據(jù)并和單片機(jī)之間進(jìn)行傳輸顯示的流程圖及主要程序??紤]到接受gps信號(hào)的問(wèn)題上,本系統(tǒng)將加入一個(gè)ds1302時(shí)鐘芯片用來(lái)解決gps信號(hào)中斷或者信號(hào)強(qiáng)度太低導(dǎo)致讀取不到數(shù)據(jù)的問(wèn)題。最后,本文描述了gps高精度時(shí)鐘在設(shè)計(jì)和實(shí)現(xiàn)過(guò)程中可能出現(xiàn)的問(wèn)題及其調(diào)試過(guò)程,并對(duì)該模塊實(shí)際應(yīng)用上的展望。關(guān)鍵字:高精度時(shí)鐘;gps接收模塊;at89c52;lcd1602;ds1302abstractwith the development

6、of the times, the accelerating rhythm of life ,people's concept of time becomes more and more strong,therefore, design and development digital clock has a good application prospect.however, traditional way of time service is increasingly difficult to meet the requirements of modern industrial pr

7、oduction practice of the time. in the rapid development of gps, the gps clock function is increasingly attention by people.because of the price of low-cost, high-performance single chip microcomputer has been widely used in automatic control of the products.this design use the at89s52 microcontrolle

8、r on the electronic clock of atmel company development,implements the required function of the hardware circuit is designed,application c language for software programming and demonstration, validation with the test board. this paper introduces a gps high precision clock module chip function and the

9、 pin connection with the implementation,gps timing gps clock module in the system are expounded in detail,including gps timing synchronization using method and gps receiving the data output form and the connection between the gps module and mcu communication,to read the purpose of the gps informatio

10、n and on the lcd1602 display time. the data read from the gps module are given in this paper the interception time data and transmission between mcu and shows the flow chart and main program.considering the received gps signal problems,this system will join a ds1302 clock chip is used to solve gps s

11、ignal or the signal strength is too low, lead to can't read data.finally, this article describes the gps high precision clock possible problems in the process of design and implementation and debugging process, and the module on the practical application prospects. keywords:high precision clock;

12、gps receiver module;at89c52;lcd1602;ds1302 目 錄摘 要abstract第一章 緒論11.1 選題意義和論文任務(wù)11.2 國(guó)內(nèi)外研究以及趨勢(shì)11.3 論文結(jié)構(gòu)2第二章 gps高精度時(shí)鐘的硬件設(shè)計(jì)32.1 系統(tǒng)主要芯片選型32.1.1 微處理器at89c5232.1.2 gps接收模塊42.1.3時(shí)鐘芯片ds130252.1.4 顯示模塊lcd160262.2 硬件設(shè)計(jì)總體思路72.3 硬件電路設(shè)計(jì)82.3.1 gps接受模塊和單片機(jī)的連接82.3.2 lcd1602和單片機(jī)的連接92.3.3 按鍵模塊和單片機(jī)的連接102.3.4 時(shí)鐘芯片ds1302和

13、單片機(jī)的連接10第三章 gps高精度時(shí)鐘的軟件設(shè)計(jì)113.1 gps授時(shí)系統(tǒng)的同步利用方式113.1.1 脈沖同步方式113.1.2 串行同步方式113.2 gps授時(shí)模塊的形式及流程圖123.3 lcd1602的顯示操作143.3.1 讀狀態(tài)操作143.3.2 寫(xiě)命令操作143.3.3 lcd初始化143.4 gps高精度時(shí)鐘主要程序、流程圖及注釋153.4.1 主程序流程圖153.4.2 初始化程序163.4.3 按鍵檢測(cè)程序173.4.4 ds1302的讀寫(xiě)程序183.4.5 lcd1602的讀寫(xiě)程序19第四章 調(diào)試過(guò)程204.1 gps接收信息強(qiáng)度204.2 gps和單片機(jī)的通信204

14、.3 程序運(yùn)行204.4 ds1302的晶振頻率204.5 誤差分析20第5章 總結(jié)21參考文獻(xiàn)22致謝23附錄24第1章 緒論1.1 選題意義和論文任務(wù)隨著科技的飛速進(jìn)步,我國(guó)電力系統(tǒng)自動(dòng)化技術(shù)快速發(fā)展,為了做到統(tǒng)內(nèi)部統(tǒng)一的管理和調(diào)度,整個(gè)系統(tǒng)對(duì)時(shí)間的統(tǒng)一性要求越來(lái)越高,同時(shí)對(duì)時(shí)間的同步精度要求也越來(lái)越高?;ヂ?lián)網(wǎng)領(lǐng)域在世界各地分布著成千上萬(wàn)的服務(wù)器,計(jì)算機(jī)監(jiān)控系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、大型網(wǎng)絡(luò)服務(wù)器系統(tǒng)、移動(dòng)通信網(wǎng)絡(luò)系統(tǒng)都需要統(tǒng)一的高精度時(shí)間以便管理。gps時(shí)鐘具有工作穩(wěn)定、時(shí)間精度高、安全可靠、無(wú)需人工校時(shí)維護(hù)等優(yōu)點(diǎn)廣泛應(yīng)用于廣播電視系統(tǒng)的時(shí)間授時(shí)、同步鎖定及車(chē)站、碼頭、機(jī)場(chǎng)、賓館及戶(hù)外廣場(chǎng)等場(chǎng)

15、合的時(shí)間顯示。gps性能特點(diǎn):可以全球全天候工作。gps能為用戶(hù)提供連續(xù)、實(shí)時(shí)的位置、三維速度和精密時(shí)間。定位精度高。三維位置定位精度優(yōu)于25米,三維速度精度優(yōu)于住0.3米/秒,時(shí)間精度100納秒,采用載波測(cè)距定位精度可達(dá)厘米級(jí)。保密、抗干擾。gps衛(wèi)星發(fā)射的p碼精測(cè)碼擴(kuò)頻信號(hào),比高靈敏度接收機(jī)所能接收的最低信號(hào)電平還低幾十個(gè)分貝。用戶(hù)接收機(jī)為了解擴(kuò)頻接收信號(hào),必須產(chǎn)生與信號(hào)中擴(kuò)頻偽碼相同的本機(jī)偽碼因具有較強(qiáng)的保密性,此外利用p碼良好的相關(guān)特性還可增強(qiáng)用戶(hù)接收機(jī)抗電子干擾的能力。在許許多多的精密研究中,絕不允許時(shí)間上的過(guò)多偏差,為了提高時(shí)鐘的精確度,需要引入gps信號(hào),每個(gè)gps衛(wèi)星上都有2-

16、3個(gè)高精度的原子鐘,這幾塊原子鐘互為備份的同時(shí),也互相糾正。另外gps信號(hào)中自帶了誤差糾正碼,接收端可以很容易的把延遲的這段傳輸延遲去掉。本次設(shè)計(jì)的任務(wù)是在查閱國(guó)內(nèi)資料的基礎(chǔ)上了解gps的原理和功能,了解單片機(jī)的原理和軟件編程方法,設(shè)計(jì)單片機(jī)最小系統(tǒng)、鍵盤(pán)電路、顯示電路、鬧鐘電路。本系統(tǒng)采用at89c52作為主控制器,為了防止gps無(wú)信號(hào)或者信號(hào)弱照成無(wú)數(shù)據(jù)輸出,附加了時(shí)鐘芯片ds1302充當(dāng)?shù)诙r(shí)鐘源,加入按鍵電路用來(lái)設(shè)定時(shí)間值以及鬧鐘值,顯示方面采用lcd1602顯示時(shí)間。1.2 國(guó)內(nèi)外研究以及趨勢(shì)傳統(tǒng)的時(shí)間服務(wù)方式越來(lái)越難以滿(mǎn)足現(xiàn)代工業(yè)化生產(chǎn)實(shí)踐對(duì)時(shí)間的要求。隨著gps的發(fā)展,其授時(shí)功能

17、已日益被人們所關(guān)注。利用gps oem接收模塊,進(jìn)行二次研制開(kāi)發(fā)實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘系統(tǒng),具有精度高、無(wú)積累誤差,不受地域、氣候等環(huán)境條件限制,操作方便等特點(diǎn)。gps時(shí)鐘可廣泛應(yīng)用于電力系統(tǒng)、通訊、交通管理及國(guó)防等需要對(duì)時(shí)、計(jì)時(shí)、守時(shí)的相關(guān)領(lǐng)域2。目前,市場(chǎng)上基于gps的同步時(shí)鐘系統(tǒng)種類(lèi)非常多,但擴(kuò)展的內(nèi)容和接口各有不同,各個(gè)時(shí)鐘系統(tǒng)所用的中心處理模塊也各有特色??傮w上說(shuō)各種gps同步時(shí)時(shí)鐘的差別主要在于其時(shí)間的精準(zhǔn)度、提供給用戶(hù)的接口及輸出信息。從處理器上大體可分為兩大類(lèi)型,一種是fpga型,一種是單片機(jī)型。前者是基于fpga實(shí)現(xiàn)的,fpga能夠用硬件實(shí)現(xiàn)各功能模塊并行執(zhí)行,其速度遠(yuǎn)遠(yuǎn)超過(guò)單片機(jī)。所

18、以這種系統(tǒng)一般精確度要高,但是其成本也比較高。后一種主要是通過(guò)單片機(jī)對(duì)gps信號(hào)進(jìn)行采集,再轉(zhuǎn)換成約定的格式輸出給用戶(hù)。由于單片機(jī)是由串行軟件指令控制的,所以其體系結(jié)構(gòu)將在很大程度上影響同步時(shí)種系統(tǒng)的精確度,使其誤差相對(duì)比較大。1.3 論文結(jié)構(gòu)第一章,詳細(xì)論述了gps高精度時(shí)鐘的優(yōu)越性,同時(shí)探討了gps的應(yīng)用前景,進(jìn)而提出了本論文的研究任務(wù)。第二章,給出了gps高精度時(shí)鐘設(shè)計(jì)的主要芯片選型,詳細(xì)論述了gps模塊的nema0183協(xié)議,并以此協(xié)議進(jìn)行數(shù)據(jù)截取輸出。第三章,給出了gps接受模塊進(jìn)行截取數(shù)據(jù)的原理、流程圖以及主要程序。第四章,給出了在gps無(wú)信號(hào)或信號(hào)強(qiáng)度太弱時(shí)采用時(shí)鐘芯片ds130

19、2進(jìn)行計(jì)時(shí)并用lcd1602顯示的主要程序。第五章,描述了本系統(tǒng)在設(shè)計(jì)和實(shí)現(xiàn)過(guò)程中出現(xiàn)的問(wèn)題及調(diào)試過(guò)程。第六章,對(duì)全文進(jìn)行系統(tǒng)的總結(jié),并對(duì)gps時(shí)鐘的研究應(yīng)用進(jìn)行展望。第2章 gps高精度時(shí)鐘的硬件設(shè)計(jì)2.1 系統(tǒng)主要芯片選型2.1.1 微處理器at89c52at89c52是51系列單片機(jī)的一個(gè)型號(hào),它是atmel公司生產(chǎn)的。at89c52是一個(gè)低電壓,高性能cmos 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫(xiě)的flash只讀程序存儲(chǔ)器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(ram),器件采用atmel公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)mcs-51指令系統(tǒng),片內(nèi)置通用8位中央處

20、理器和flash存儲(chǔ)單元,功能強(qiáng)大的at89c52單片機(jī)可提供許多較復(fù)雜系統(tǒng)控制應(yīng)用場(chǎng)合3。 at89c52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(i/o)端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫(xiě)口線,at89c52可以按照常規(guī)方法進(jìn)行編程,但不可以在線編程(s系列的才支持在線編程)。其將通用的微處理器和flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫(xiě)的flash存儲(chǔ)器可有效地降低開(kāi)發(fā)成本。下圖2.1為at89c52的最小系統(tǒng)4。圖2.1 at89c52的最小系統(tǒng)2.1.2 gps接收模塊gps模塊就是集成了rf射頻芯片、基帶芯片和核心cpu,并加上相

21、關(guān)外圍電路而組成的一個(gè)集成電路。所謂的基帶芯片就是用來(lái)合成即將發(fā)射的基帶信號(hào),或?qū)邮盏降幕鶐盘?hào)進(jìn)行解碼。具體地說(shuō),就是:發(fā)射時(shí),把音頻信號(hào)編譯成用來(lái)發(fā)射的基帶碼;接收時(shí),把收到的基帶碼解譯為音頻信號(hào)。同時(shí),也負(fù)責(zé)地址信息(手機(jī)號(hào)、網(wǎng)站地址)、文字信息(短訊文字、網(wǎng)站文字)、圖片信息的編譯。gps接收端可輸出的語(yǔ)句數(shù)據(jù)格式有$gpgga,$gpgsa,$gpgsv,$gprmc,$gpvtg,$lcgll,$lcvtg,$pgrme,$pgrmf,$pgrmt,$pgrmv,$gpgll。不同的語(yǔ)句中傳送的信息不同,由于“$gpgga”語(yǔ)句數(shù)據(jù)格式輸出的第一位數(shù)據(jù)就是所需要的時(shí)間數(shù)據(jù),利于單

22、片機(jī)對(duì)時(shí)間信息的接收處理,因此本接收機(jī)授時(shí)系統(tǒng)采用“$gpgga”“$gprmc”格式輸出時(shí)間數(shù)據(jù)7。$gpgga(global positioning system fix data(gga)語(yǔ)句格式如下:$gpgga,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12><1> utc時(shí)間,hhmmss(時(shí)分秒)格式<2> 緯度ddmm.mmmm(度分)格式(前面的0也將被傳輸)

23、<3> 緯度半球n(北半球)或s(南半球)<4> 經(jīng)度dddmm.mmmm(度分)格式(前面的0也將被傳輸)<5> 經(jīng)度半球e(東經(jīng))或w(西經(jīng))<6> gps狀態(tài):0=未定位,1=非差分定位,2=差分定位,6=正在估算<7> 正在使用解算位置的衛(wèi)星數(shù)量(00-12)(前面的0也將被傳輸)<8> hdop水平精度因子(0.5-99.9)<9> 海拔高度(-9999.9-99999.9)<10> 地球橢球面相對(duì)大地水準(zhǔn)面的高度<11> 差分時(shí)間(從最近一次接收到差分信號(hào)開(kāi)始的秒數(shù),如果不是

24、差分定位將為空)<12> 差分站id號(hào)0000-1023$gprmc(recommended minimum specific gps/transit data(rmc)語(yǔ)句格式如下:$gprmc,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12><1> utc時(shí)間,hhmmss(時(shí)分秒)格式<2> 定位狀態(tài),a=有效定位,v=無(wú)效定位<3> 緯度ddmm

25、.mmmm(度分)格式(前面的0也將被傳輸)<4> 緯度半球n(北半球)或s(南半球)<5> 經(jīng)度dddmm.mmmm(度分)格式(前面的0也將被傳輸)<6> 經(jīng)度半球e(東經(jīng))或w(西經(jīng))<7> 地面速率(000.0-999.9節(jié),前面的0也將被傳輸)<8> 地面航向(000.0-359.9度,以真北為參考基準(zhǔn),前面的0也將被傳輸)<9> utc日期,ddmmyy(日月年)格式<10> 磁偏角(000.0-180.0度,前面的0也將被傳輸)<11> 磁偏角方向,e(東)或w(西)<12>

26、; 模式指示(僅nmea0183 3.00版本輸出,a=自主定位,d=差分,e=估算,n=數(shù)據(jù)無(wú)效)2.1.3時(shí)鐘芯片ds1302ds1302 是美國(guó)dallas公司推出的一種高性能、低功耗、帶ram的實(shí)時(shí)時(shí)鐘電路,它可以對(duì)年、月、日、周、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功能,工作電壓為2.5v-5.5v。采用三線接口與cpu進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或ram數(shù)據(jù)。ds1302內(nèi)部有一個(gè)31×8的用于臨時(shí)性存放數(shù)據(jù)的ram寄存器。ds1302是ds1202的升級(jí)產(chǎn)品,與ds1202兼容,但增加了主電源/后備電源雙電源引腳,同時(shí)提供了對(duì)后備電源進(jìn)行涓細(xì)電流

27、充電的能力,下圖2.2為ds1302的引腳圖。圖2.2 ds1302的引腳圖ds1302的引腳中vcc1為后備電源,vcc2為主電源。在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。ds1302由vcc1或vcc2兩者中的較大者供電。當(dāng)vcc2大于vcc1+0.2v時(shí),vcc2給ds1302供電。當(dāng)vcc2小于vcc1時(shí),ds1302由vcc1供電。x1和x2是振蕩源,外接32.768khz晶振。rst是復(fù)位/片選線,通過(guò)把rst輸入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送。rst輸入有兩種功能:首先,rst接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,rst提供終止單字節(jié)或多字節(jié)數(shù)據(jù)傳送的方法

28、。當(dāng)rst為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對(duì)ds1302進(jìn)行操作。如果在傳送過(guò)程中rst置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,i/o引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在vcc>2.0v之前,rst必須保持低電平。只有在sclk為低電平時(shí),才能將rst置為高電平。i/o為串行數(shù)據(jù)輸入輸出端(雙向),sclk為時(shí)鐘輸入端。ds1302 的控制字如下圖2.3所示,控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫(xiě)入ds1302中,位6如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取ram數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進(jìn)行寫(xiě)操作,為1表示進(jìn)行讀操

29、作,控制字節(jié)總是從最低位開(kāi)始輸出。圖2.3 ds1302的控制字節(jié)2.1.4 顯示模塊lcd1602lcd顯示器分為字段顯示和字符顯示兩種,可采用lcd1602作為顯示器件輸出信息,可以顯示2行16個(gè)漢字。液晶顯示模塊具有體積小、功耗低、顯示內(nèi)容豐富、不需要外加驅(qū)動(dòng)電路等優(yōu)點(diǎn),是單片機(jī)應(yīng)用設(shè)計(jì)中最常用的顯示器件,下圖2.4為lcd1602的引腳圖。圖2.4 lcd1602的引腳圖lcd1602其引腳功能如下:rs:數(shù)據(jù)和指令選擇控制端,rs=0命令狀態(tài);rs=1數(shù)據(jù);r/w:讀寫(xiě)控制線,r/w=0寫(xiě)操作;r/w=1讀操作;a:背光控制正電源;k:背光控制地;e:數(shù)據(jù)讀寫(xiě)操作控制位,e線向lcd

30、模塊發(fā)送一個(gè)脈沖,lcd模塊和單片機(jī)間將進(jìn)行一次數(shù)據(jù)交換;db0-db7:數(shù)據(jù)線,可用8位連接,也可只用高4位連接,節(jié)約單片機(jī)源;vdd:電源端;vee:亮度控制端(1-5v);vss:接地端。2.2 硬件設(shè)計(jì)總體思路在整個(gè)系統(tǒng)的硬件設(shè)計(jì)中,采用at89c52作為主處理芯片。時(shí)間信號(hào)采用gps接收模塊和at89c52相結(jié)合,截取gps接收端輸出的時(shí)間數(shù)據(jù)并用lcd1602顯示。在gps接收端無(wú)數(shù)據(jù)輸出時(shí),即無(wú)gps信號(hào)或信號(hào)強(qiáng)度太弱時(shí),采用ds1302時(shí)鐘芯片進(jìn)行計(jì)時(shí)。本系統(tǒng)在顯示時(shí)間的基礎(chǔ)上加入鬧鐘模塊,并且設(shè)置4個(gè)功能按鈕可以對(duì)當(dāng)前的時(shí)間進(jìn)行設(shè)置并且修改鬧鐘時(shí)間。系統(tǒng)采用lcd1602進(jìn)行

31、輸出顯示,1602中數(shù)據(jù)總線db0-7對(duì)應(yīng)單片機(jī)中的p1口,3條控制線分別接另外3個(gè)單片機(jī)端口,其他對(duì)應(yīng)接上電源和地。在鍵盤(pán)模塊中添加上拉電阻,上拉電阻可以保證在沒(méi)有按鍵輸入時(shí),進(jìn)入單片機(jī)四個(gè)i/o口的按鍵狀態(tài)均為高電平,防止干擾產(chǎn)生;當(dāng)有按鍵按下時(shí),相應(yīng)的端口線狀態(tài)轉(zhuǎn)為低電平,總體框架如下圖2.5所示。圖2.5 高精度gps時(shí)鐘系統(tǒng)的框架簡(jiǎn)圖2.3 硬件電路設(shè)計(jì)系統(tǒng)的整體硬件電路圖如下圖2.5所示:圖2.5 系統(tǒng)的整體硬件電路圖2.3.1 gps接受模塊和單片機(jī)的連接單片機(jī)上的3.0和3.1管腳除了作為普通的io口外,還有另外的用途。p3.0(rxd)、p3.1(txd)是receive d

32、ata ,transmit data的意思,即rxd為接收數(shù)據(jù)的引腳,txd為發(fā)送數(shù)據(jù)的引腳。將gps接收模塊的2條信號(hào)線分別對(duì)應(yīng)接上rxd、txd端口進(jìn)行數(shù)據(jù)的通訊,用來(lái)接收時(shí)間信號(hào)并對(duì)時(shí)間信號(hào)進(jìn)行截取輸出,如下圖2.6所示連接。vccgps接收模塊at89c52 p3.0 p3.1 ground圖2.6 gps接收端和at89c52的連接2.3.2 lcd1602和單片機(jī)的連接lcd1602vss vdd vee d0-d7 rs r/w e1602中數(shù)據(jù)總線db0-7對(duì)應(yīng)單片機(jī)中的p1口,3條控制線分別接另外3個(gè)單片機(jī)端口,其他對(duì)應(yīng)接上電源和地(下圖2.7)。at89c52 p2.1 p

33、2.2p1口p2.3 groundgroundvcc 圖2.7 lcd1602和單片機(jī)at89c52的連接lcd1602中vdd為電源正極,vss為電源接地端,vee為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高。lcd1602有四種基本的操作時(shí)序:讀狀態(tài)、寫(xiě)指令、讀數(shù)據(jù)和寫(xiě)數(shù)據(jù)。讀狀態(tài):輸入:rs=l,rw=h,e=h 輸出:d0-d7 = 狀態(tài)字寫(xiě)指令:輸入:rs=l,rw=l,d0-d7 = 指令碼,e=高脈沖 輸出:無(wú)讀數(shù)據(jù):輸入:rs=h,rw=h,e=h 輸出:d0-d7 = 數(shù)據(jù)寫(xiě)數(shù)據(jù):輸入:rs =h,rw=l,d0-d7 = 數(shù)據(jù),e=高脈沖 輸出:無(wú) 2.

34、3.3 按鍵模塊和單片機(jī)的連接鍵盤(pán)模塊設(shè)置了四個(gè)按鍵:key1、key2、key3、key4。其中key1為設(shè)置時(shí)間值,key2為設(shè)定值上升鍵,用key3為設(shè)定值減小鍵,key4是設(shè)定鬧鐘值。電路連接如下圖2-8所示,4個(gè)上拉電阻可以保證在沒(méi)有按鍵輸入時(shí),進(jìn)入單片機(jī)四個(gè)i/o口的按鍵狀態(tài)均為高電平,防止干擾產(chǎn)生;當(dāng)有按鍵按下時(shí),相應(yīng)的端口線狀態(tài)轉(zhuǎn)為低電平。圖2.8 按鍵模塊和單片機(jī)的連接2.3.4 時(shí)鐘芯片ds1302和單片機(jī)的連接ds1302與cpu的連接需要三條線,即sclk、i/o、rst,分別連接單片機(jī)的3個(gè)端口3.5、3.6、3.7(下圖2.9),用來(lái)對(duì)ds1302的命令字的讀寫(xiě)和數(shù)

35、據(jù)的讀寫(xiě)。x1和x2是振蕩源,外接32.768khz晶振。rst是復(fù)位/片選線,通過(guò)把rst輸入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送。圖2.9 ds1302和52單片機(jī)的連接第3章 gps高精度時(shí)鐘的軟件分析設(shè)計(jì)3.1 gps授時(shí)系統(tǒng)的同步利用方式3.1.1 脈沖同步方式脈沖同步方式,即同步時(shí)鐘每隔一定的時(shí)間間隔輸出一個(gè)精確的同步脈沖。監(jiān)控裝置在接收到同步脈沖后進(jìn)行對(duì)時(shí),消除裝置內(nèi)部時(shí)鐘的走時(shí)誤差。同步脈沖的周期、頻率、電平、脈寬、脈沖的正負(fù)、上升和下降時(shí)間、同步的時(shí)刻等均可能有所變化。根據(jù)脈沖輸出接口的不同,同步脈沖分為有源ttl電平輸出、無(wú)源空接點(diǎn)輸出、固態(tài)繼電器輸出等。有源ttl電平輸出,即

36、每隔一定的時(shí)間間隔產(chǎn)生一個(gè)ttl電平脈沖,或正脈沖或負(fù)脈沖,脈沖的寬度和占空比可以不同。這種輸出,用戶(hù)可以直接引出同步信號(hào),不必外加電源。無(wú)源空接點(diǎn)輸出,即將同步脈沖作為一開(kāi)關(guān)量輸出,一般是使用一個(gè)光電三極管,從集電極輸出??筛鶕?jù)應(yīng)用要求,在同步時(shí)鐘到來(lái)時(shí),三極管由導(dǎo)通變截止,或由截止變導(dǎo)通。1pps(秒脈沖,即:pulse per second 脈沖/秒)輸出,是一個(gè)電平信號(hào),一般以方波形式輸出,高電平(也有較少數(shù)為低電平的)表示有秒脈沖輸出,其持續(xù)時(shí)間很短,一般在毫秒量級(jí)上,其電平信號(hào)為+5v,持續(xù)時(shí)間為毫秒級(jí),低電平(也有較少數(shù)為高電平的)表示沒(méi)有信號(hào)輸出。高電平上升沿為1pps輸出的精

37、確時(shí)刻。在gps oem板取得有效導(dǎo)航解析的時(shí)候,秒脈沖上升沿的時(shí)刻與gps時(shí)刻相差在50ns以?xún)?nèi),與串行口輸出的utc標(biāo)準(zhǔn)時(shí)間相差在 1us 以?xún)?nèi)。oem板先為用戶(hù)提供秒脈沖,再提供與該秒脈沖相對(duì)應(yīng)的utc標(biāo)準(zhǔn)時(shí)間。有時(shí)在沒(méi)有收到衛(wèi)星信號(hào)或?qū)Ш浇鉄o(wú)效的情況下(即沒(méi)有收到utc的校正數(shù)據(jù)),oem板通過(guò)開(kāi)發(fā)工具板也能向外發(fā)送秒脈沖,但此時(shí)秒脈沖為gps oem內(nèi)部未改正鐘差、鐘漂的原始時(shí)鐘的時(shí)間,其上升沿的時(shí)刻不準(zhǔn)確、不穩(wěn)定,誤差較大,無(wú)實(shí)用價(jià)值。僅在取得正確導(dǎo)航解時(shí)才可以用utc時(shí)間對(duì)gps oem內(nèi)部時(shí)間進(jìn)行校正,輸出精確時(shí)間。3.1.2 串行同步方式串行同步方式是時(shí)鐘以串行數(shù)據(jù)流的方式輸

38、出時(shí)間信息,各種自動(dòng)裝置接收每秒一次的串行時(shí)間信息獲得時(shí)間同步。串行通信的標(biāo)準(zhǔn)和格式多種多樣,按信息碼的格式不同,分別有ascii碼、irig-b碼等。按串行通信接口標(biāo)準(zhǔn)的不同,ascii碼有rs232c、rs422/485等方式,irig-b碼有ttl直流電平碼輸出、1khz 正弦波調(diào)制碼輸出、manchester調(diào)制碼輸出等方式。(1)rs232/422/485串行接口輸出同步時(shí)鐘通過(guò)rs232/422/485串行口在整秒、整分或整時(shí),輸出一次時(shí)間信息。時(shí)間信息格式一般是由幀頭、時(shí)、分、秒、日、月、年及結(jié)束符組成。自動(dòng)裝置在接收到對(duì)時(shí)信號(hào)后,通過(guò)軟件校正內(nèi)部時(shí)鐘。使用串行口方式對(duì)時(shí),比脈沖

39、對(duì)時(shí)方式復(fù)雜。受接收過(guò)程中信息處理時(shí)間的影響,對(duì)時(shí)精度差。如果要提高對(duì)時(shí)精度,還需要再給出對(duì)時(shí)脈沖信號(hào)。(2)irig-b碼串行輸出 irig-b是美國(guó)最先采用的一種國(guó)際時(shí)間碼標(biāo)準(zhǔn)。目前電力系統(tǒng)中的許多進(jìn)口裝置均使用irig-b時(shí)間碼獲取時(shí)間信息,因此irig-b碼制串行輸出也應(yīng)作為gps同步時(shí)鐘輸出的一種可選形式。 irig-b信號(hào)有ttl直流電平碼和1khz正弦波調(diào)制碼兩種形式。每一碼脈沖的寬度是10ms,通過(guò)改變直流電平占空比或變化1khz調(diào)制信號(hào)的幅值來(lái)表示邏輯“1”與“0”及標(biāo)識(shí)符(幀起始符,相鄰秒、分、小時(shí)、日期、數(shù)據(jù)的分隔符)。起始位的上升沿即為同步時(shí)刻。irig-b ttl直流

40、電平碼的分辨率為10ms,不加調(diào)制解調(diào),使用方便,但只適于近距離傳輸。1khz正弦波調(diào)制碼的分辨率為1ms,適合遠(yuǎn)距離傳輸,這種正弦波調(diào)制碼一般通過(guò)音頻傳輸線路來(lái)傳輸數(shù)據(jù)。所以本文認(rèn)為,在裝置硬件資源豐富的前提下可以考慮兩種方案同時(shí)結(jié)合使用,即是將脈沖校時(shí)和串口校時(shí)結(jié)合起來(lái)的綜合校時(shí)方案。3.2 gps授時(shí)模塊的形式及流程圖oem板輸出的數(shù)據(jù)是以數(shù)據(jù)流的形式輸出,采集的起始時(shí)刻未必是一幀數(shù)據(jù)的開(kāi)始時(shí)刻,所以在數(shù)據(jù)采集時(shí),必須先判斷字頭塊,在接收到字頭塊后,開(kāi)始采集數(shù)據(jù)。oem板每隔1s自動(dòng)輸出觀測(cè)數(shù)據(jù)幀和位置數(shù)據(jù)幀一次,但輸出的格式小時(shí)部分加8是多種多樣的,因此必須先給oem板發(fā)送指令來(lái)控制其

41、輸出數(shù)據(jù)格式。接收數(shù)據(jù)需要設(shè)定單片機(jī)的波特率,使其與gps oem板的傳輸波特率一致。給oem板發(fā)送一條指令,使其發(fā)送的0183數(shù)據(jù)格式為“$gpgga”,該指令預(yù)先存在數(shù)據(jù)存儲(chǔ)器里,用循環(huán)方式順次從程序存儲(chǔ)器里取出數(shù)據(jù)就可循環(huán)發(fā)送。然后0em板將輸出相應(yīng)格式的數(shù)據(jù),單片機(jī)對(duì)接收的信息進(jìn)行判初始化斷,如果是“$gpgga”,則接收下面的6個(gè)ascii碼并存儲(chǔ)在單片機(jī)的ram里;如果不是“$gpgga”,則繼續(xù)判斷,直到是“$gpgga”。也可采用循環(huán)方式接收時(shí)間信息。由于接收到的時(shí)間是世界標(biāo)準(zhǔn)時(shí)(utc),因此在此時(shí)間上加上8h才是準(zhǔn)確的北京時(shí),在超出24h時(shí)應(yīng)作減24h處理,然后進(jìn)行顯示處理

42、。顯示采用動(dòng)態(tài)顯示原理,每個(gè)時(shí)間狀態(tài)顯示停留一段時(shí)間,顯示完后程序跳轉(zhuǎn)到主函數(shù)以便接受下一秒的數(shù)據(jù)并將其顯示。下圖3.1為授時(shí)程序流程圖。 是否>24發(fā)送字節(jié)n指向儲(chǔ)存單元發(fā)送完否左邊開(kāi)始取數(shù)據(jù)送出一位顯示接受字符延時(shí)n指向下一個(gè)單元循環(huán)判斷是否為$gpgga字符讀完6位yy位控信號(hào)右移一位循環(huán)6次接收數(shù)據(jù)并存取n圖3.1 授時(shí)程序流程圖3.3 lcd1602的顯示操作lcd有四種基本操作,具體如表3.1所示。表3.1lcd與單片機(jī)之間的四種基本操作狀態(tài)rsr/w操作狀態(tài)100寫(xiě)命令操作(初始化,光標(biāo)定位等)狀態(tài)201讀狀態(tài)操作(讀忙標(biāo)志位)狀態(tài)310寫(xiě)數(shù)據(jù)操作(要顯示內(nèi)容)狀態(tài)411讀

43、數(shù)據(jù)操作(可以把顯示存儲(chǔ)區(qū)中的數(shù)據(jù)反讀出來(lái))3.3.1 讀狀態(tài)操作執(zhí)行讀狀態(tài)字操作,如表3.1所示須滿(mǎn)足rs=0、r/w=1。根據(jù)管腳功能,當(dāng)為有效電平時(shí),狀態(tài)命令字可從lcd模塊傳輸?shù)綌?shù)據(jù)總線。同時(shí)可以保持一段時(shí)間,從而實(shí)現(xiàn)讀狀態(tài)字的功能。如下圖3.2所示為讀入狀態(tài)字流程圖。rs清0等待rw置1等待e置1等待讀入狀態(tài)字等待e清0 等待rw清0 等待結(jié)束圖3.2讀入狀態(tài)字流程圖3.3.2 寫(xiě)命令操作由表3.1可知當(dāng)rs=0,r/w=0時(shí),才可以通過(guò)單片機(jī)或用戶(hù)指令把數(shù)據(jù)即命令,寫(xiě)到lcd模塊,此時(shí)就對(duì)lcd進(jìn)行調(diào)制??刹捎貌樵?xún)方式:先讀入狀態(tài)字,再判斷忙標(biāo)志,最后寫(xiě)命令字。3.3.3 lcd初

44、始化從通電開(kāi)始通過(guò)延時(shí),先經(jīng)過(guò)判忙后再進(jìn)行功能設(shè)置,過(guò)一段時(shí)間后可以設(shè)制顯示狀態(tài)(如設(shè)置行、位或陣列)再經(jīng)過(guò)延時(shí)后清屏后再可以設(shè)置輸入方式,具體如圖3.3所示。上電延時(shí)20ms功能設(shè)置延時(shí)37us顯示狀態(tài)設(shè)置清屏延時(shí)1.52ms輸入方式設(shè)置返回圖3.3lcd初始化流程圖3.4 gps高精度時(shí)鐘主要程序、流程圖及注釋3.4.1 主程序流程圖本系統(tǒng)主程序流程圖如下圖3.4所示。有g(shù)ps信號(hào)?開(kāi)始ny初始化設(shè)置鬧鐘時(shí)間截取gps時(shí)間數(shù)據(jù)從ds1302讀數(shù)據(jù)n是否到鬧鈴時(shí)間?單片機(jī)處理y鬧鈴操作lcd1602顯示3.4 主程序流程圖在開(kāi)始的初始化中,需要對(duì)各芯片進(jìn)行初始化,初始化完成后要判斷gps接收

45、端有沒(méi)有數(shù)據(jù)輸出(有沒(méi)有g(shù)ps信號(hào)),即單片機(jī)有沒(méi)有數(shù)據(jù)讀入。如果沒(méi)有g(shù)ps信息,為了防止時(shí)間停滯,采用ds1302計(jì)時(shí)。因?yàn)間ps接收端的數(shù)據(jù)傳輸是類(lèi)似于網(wǎng)絡(luò)中帶有包頭的數(shù)據(jù)包傳輸,所以要對(duì)其數(shù)據(jù)進(jìn)行包頭判斷,在確定下數(shù)據(jù)頭之后,還需要有一個(gè)逗號(hào)計(jì)數(shù)器。這個(gè)逗號(hào)計(jì)數(shù)器的作用就是在已獲得的(確定頭部)數(shù)據(jù)中截取所需的一部分。3.4.2 初始化程序void initial_lcd1602(void)/lcd1602初始化rw=0;lcden=0;write_com(0x38);/寫(xiě)指令顯示模式設(shè)置write_com(0x0c);/顯示光標(biāo)開(kāi)及光標(biāo)設(shè)置write_com(0x06);/顯示光標(biāo)移動(dòng)

46、設(shè)置write_com(0x01);/顯示清屏void init()/總初始化initial_lcd1602();altp=0;/給各標(biāo)志位附初值bla=0;blaflag=0;yearh=20;tmod=0x20;/設(shè)置定時(shí)器模式pcon = 0x00;/電源控制寄存器設(shè)置scon = 0x50;/串行口控制寄存器th1 = 0xfd;/波特率9600設(shè)定tl1 = 0xfd;tr1 = 1;/啟動(dòng)定時(shí)器ea=1;/開(kāi)中斷ie=0x90;/中斷允許控制寄存器3.4.3 按鍵檢測(cè)流程按鍵檢測(cè)流程圖如下圖3.5所示。初始化按鍵nn按鍵4按下?按鍵1按下?yy切換到鬧鐘界面光標(biāo)左移一位nn按鍵3按

47、下?按鍵2按下?yy對(duì)應(yīng)的數(shù)值減1對(duì)應(yīng)的數(shù)值加1圖3.5 按鍵檢測(cè)流程圖其中按鍵1為校準(zhǔn)當(dāng)前時(shí)間的功能切換按鍵,按鍵2為對(duì)應(yīng)的數(shù)值加1的功能按鍵,按鍵3為對(duì)應(yīng)的數(shù)值減1按鍵,按鍵4為設(shè)置鬧鐘時(shí)間的功能切換按鍵,通過(guò)這4個(gè)按鍵可以對(duì)時(shí)間進(jìn)行校準(zhǔn)并且設(shè)定鬧鐘時(shí)間。3.4.4 ds1302的讀寫(xiě)程序/向ds1302寫(xiě)一個(gè)字節(jié)void write_a_byte_to_ds1302(uchar datt) uchar i; for(i=0;i<8;i+)/一個(gè)字節(jié)8位 dio=datt&1;/數(shù)據(jù)位與操作 sclk=1;/時(shí)鐘信號(hào) sclk=0; datt>>=1;/位移操作

48、/向ds1302讀取一個(gè)字節(jié) uchar get_a_byte_from_ds1302() uchar i,b,t; for(i=0;i<8;i+)/一個(gè)字節(jié)8位 b>>=1; t=dio; b|=t<<7;/位或操作 sclk=1; sclk=0; return b/16*10+b%16;/返回一個(gè)十進(jìn)制數(shù)/從ds1302 指定位置讀數(shù)據(jù) uchar read_data(uchar addr) uchar dat; ce=0; sclk=0; ce=1;/ce為1允許讀寫(xiě)操作 write_a_byte_to_ds1302(addr);/向ds1302寫(xiě)地址操作

49、dat=get_a_byte_from_ds1302();/從ds1302讀數(shù)據(jù) sclk=1; ce=0; return dat;/返回?cái)?shù)據(jù)/向ds1302某地址寫(xiě)入數(shù)據(jù) void write_ds1302(uchar adder,uchar dat) sclk=0; ce=1;/ce為1允許讀寫(xiě)操作 write_a_byte_to_ds1302(adder);/向ds1302寫(xiě)地址操作 write_a_byte_to_ds1302(dat);/向ds1302寫(xiě)數(shù)據(jù) sclk=0; ce=0;3.4.5 lcd1602的讀寫(xiě)程序void write_com(uchar com) /lcd16

50、02寫(xiě)地址設(shè)置p1=com;/通過(guò)單片機(jī)p1口和1602連接rs=0;/rs為0時(shí)是地址操作lcden=0;delay(10);lcden=1;delay(10);lcden=0;void write_date(uchar date) /lcd1602寫(xiě)數(shù)據(jù)設(shè)置p1=date;/通過(guò)單片機(jī)p1口和1602連接rs=1;/rs為0時(shí)是數(shù)據(jù)操作lcden=0;delay(10);lcden=1;delay(10);lcden=0;void write(uchar add,uchar date)/數(shù)據(jù)寫(xiě)入并顯示操作uchar shi,ge;shi=date/10;/取出data數(shù)據(jù)的十位數(shù)ge=da

51、te%10;/取出data數(shù)據(jù)的個(gè)位數(shù)/write_com(0x80+add);/寫(xiě)地址操作,0x80為第一行write_com(0x80+0x40+add);/寫(xiě)地址操作,0xc0為第二行write_date(0x30+shi);/寫(xiě)數(shù)據(jù)操作write_date(0x30+ge);第4章 調(diào)試過(guò)程4.1 gps接收信息強(qiáng)度由于gps接收端對(duì)gps信號(hào)的強(qiáng)度要求比較高,所以測(cè)試的時(shí)候要在比較空曠的場(chǎng)地上進(jìn)行。4.2 gps和單片機(jī)的通信本系統(tǒng)采用了單片機(jī)的p3.0(rxd)、p3.1(txd)端口,要注意這兩個(gè)端口是否正常接收發(fā)送數(shù)據(jù)。gps模塊和單片機(jī)的波特率,中斷等設(shè)定要一樣才能進(jìn)行數(shù)據(jù)之

52、間的通信。4.3 程序運(yùn)行判斷單片機(jī)程序是否正常運(yùn)行最直觀的方法是使用示波器。編程使得某引腳(如p1.0循)環(huán)取反,可通過(guò)示波器觀察到此引腳一定頻率的方波信號(hào)。同樣,向串口循環(huán)發(fā)送任一數(shù)據(jù),亦可通過(guò)示波器觀察到此信號(hào)。4.4 ds1302的晶振頻率ds1302應(yīng)該外接32.768khz晶振,測(cè)試的時(shí)候采用其他頻率的晶振會(huì)照成比較大的誤差。4.5 誤差分析在無(wú)gps時(shí),采用ds1302計(jì)時(shí)時(shí),誤差為每分鐘1s,采用gps信號(hào)計(jì)時(shí)時(shí)誤差小于1s,gps時(shí)鐘比普通的電子時(shí)鐘精度高出很多,同時(shí)也說(shuō)明了gps時(shí)鐘的重要性。第5章 總結(jié)一個(gè)時(shí)鐘最重要的也是最基本的功能應(yīng)該是準(zhǔn)確度,如果一個(gè)時(shí)鐘不準(zhǔn),誤差大

53、,那么外表再漂亮也僅僅是一個(gè)裝飾物,不具有太大的使用價(jià)值。時(shí)鐘準(zhǔn)不準(zhǔn)靠的是我們常說(shuō)的晶振,大多數(shù)是石英晶體諧振器,標(biāo)準(zhǔn)應(yīng)該是32.768khz(除高精度原子鐘外)。晶振其實(shí)在電子時(shí)鐘系統(tǒng)里面就是一個(gè)時(shí)鐘源,它有兩個(gè)重要指標(biāo),一個(gè)是穩(wěn)定度,一個(gè)是準(zhǔn)確度,準(zhǔn)確度指的是與標(biāo)稱(chēng)值的偏差,穩(wěn)定度值得是隨著外部因素的變化而產(chǎn)生的變化量。為了使時(shí)鐘具有較高的準(zhǔn)確度,需要讓晶振工作在接近準(zhǔn)確值的溫度范圍內(nèi)或者用外圍電路去根據(jù)環(huán)境溫度去補(bǔ)償溫度偏差給晶振帶來(lái)的誤差,即溫度補(bǔ)償。隨著科技的進(jìn)步,目前還有一種手段,就是通過(guò)gps或其他衛(wèi)星導(dǎo)航系統(tǒng)的信號(hào)馴服晶振,從而實(shí)現(xiàn)高精度的頻率和時(shí)間信號(hào)輸出,是目前達(dá)到高授時(shí)精

54、度和高穩(wěn)定度的最有效方式,既gps時(shí)鐘。在科技飛速發(fā)展的今天,人們對(duì)各類(lèi)產(chǎn)品的性能要求也是日益提高,對(duì)時(shí)間的精確度也不例外。有時(shí)候時(shí)間上僅僅是一點(diǎn)點(diǎn)的差別,也會(huì)造成巨大的損失。在了解國(guó)內(nèi)外現(xiàn)狀后,從線路、體積和價(jià)格方面考慮,選取at89c52單片機(jī)為控制核心,通過(guò)外圍元件實(shí)時(shí)時(shí)鐘芯片ds1307構(gòu)成了一個(gè)具有實(shí)時(shí)時(shí)間與日歷顯示、按鍵調(diào)時(shí)、鬧鈴定時(shí)功能的數(shù)字時(shí)鐘,采用液晶lcd1602作為顯示器,并且在精確度方面上加入了gps授時(shí)模塊。擁有g(shù)ps對(duì)時(shí)功能,使時(shí)鐘誤差在一秒以?xún)?nèi),得知精確的時(shí)間。參考文獻(xiàn)1楊寧.單片機(jī)與控制技術(shù)m第一版北京航空航天大學(xué)出版社,2005年2樓然苗,李光飛 .51系列單片機(jī)設(shè)計(jì)實(shí)例.北京航空航天大學(xué)出版社,2004年3閹石數(shù)字電子技術(shù)基礎(chǔ)高等教育出版社,2005年4謝嘉奎.電子線路高等教育出版社,2004年5賴(lài)麟文.8051單片機(jī)嵌入式系統(tǒng)應(yīng)用.科學(xué)出版社,2005年6高峰.單片機(jī)微型計(jì)算機(jī)原理與接口技術(shù)科學(xué)出版社,2005年7

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論