基于GPS15xL-W塔鐘控制系統的研究
2.3 報時(shí)系統
報時(shí)系統硬件原理見(jiàn)圖4。報時(shí)系統由一塊ISD4004語(yǔ)音芯片、揚聲器及外圍電路構成。ISD4004有兩個(gè)信號輸入端,一個(gè)是錄音信號的同相輸入端ANA IN+,另一個(gè)是錄音信號的反相輸入端ANA IN-。ISD4004被啟動(dòng)后,發(fā)出報時(shí)信號,首先是音樂(lè ),接著(zhù)是打點(diǎn)聲。此信號送入LM386,經(jīng)過(guò)放大后,推動(dòng)揚聲器發(fā)聲。本文引用地址:http://dyxdggzs.com/article/160335.htm
3 軟件設計
系統軟件設計采用模塊式,設計包括:初始化模塊,串口中斷接收模塊,數據處理模塊,顯示模塊,鍵盤(pán)處理模塊,走時(shí)模塊。圖5為主程序流程圖。系統初始化模塊包括串口初始化、液晶顯示初始化。串行中斷接收GPS_OEM板的“$ GPRMC”語(yǔ)句。每當正確接收到“$ GPR MC”語(yǔ)句就更新一次顯示,同時(shí)送出塔鐘走時(shí)的控制信號。
單片機上電復位,通過(guò)串行接口RXD與GPS15XL-W接收機通訊,獲取衛星數據;另一方面步進(jìn)電機的指針快速走時(shí),若查詢(xún)到按鍵1按下,則此時(shí)的位置為塔鐘的走時(shí)基準點(diǎn)。若查詢(xún)到按鍵2按下,則指針快速走到當前時(shí)刻,繼而正常走時(shí)。單片機通過(guò)P1口與塔鐘控制系統通訊實(shí)現塔鐘校時(shí)。單片機接收GPS接收機發(fā)來(lái)的數據信息,從中篩選出所需要的時(shí)間信息。傳送時(shí)間信息的指令是$GPRMC,是命令頭,其ASCII碼是24,47,50,52,4D,43,2C。緊隨命令頭的是UTC時(shí)間,hhmmss(時(shí)分秒)格式。
此外,單片機接收到的時(shí)間數據為UTC時(shí)間(格林威治時(shí)間),UTC時(shí)間與世界各地的時(shí)間有時(shí)差,例如,UTC時(shí)間比北京時(shí)間晚8 h,因此,將接收到的UTC時(shí)間加上8 h,即為北京時(shí)間。在對小時(shí)加8的時(shí)候,要注意對日期的影響,因為日期涉及到閏年等問(wèn)題。
步進(jìn)電機每獲得一個(gè)脈沖指針轉過(guò)1.8°,但是塔鐘轉盤(pán)一圈360°,秒針走過(guò)一小格,即6°,但是連續給步進(jìn)電機三個(gè)脈沖,指針只能走5.4°,因此,為了減小誤差,給步進(jìn)電機發(fā)送脈沖的時(shí)序為3—4—3,即單片機按三個(gè)脈沖、四個(gè)脈沖和三個(gè)脈沖給步進(jìn)電機發(fā)送脈沖,塔鐘指針走過(guò)5.4°、7.2°和5.4°,照此循環(huán)發(fā)送,所以每三秒鐘就可以消除指針轉動(dòng)的誤差。
因此,在軟件設計中,首先判斷當前的時(shí)刻的秒值與三相除所得余數,余數為0和2,則發(fā)送3個(gè)脈沖,若余數為1,則發(fā)送4個(gè)脈沖,以此類(lèi)推。秒針每轉過(guò)一圈為一分,即分針走過(guò)一小格;分針每轉過(guò)一圈為一小時(shí),即帶動(dòng)時(shí)針走一大格。塔鐘按上述情況走時(shí)。GPS時(shí)間信息每秒鐘校正一次塔鐘走時(shí),從而保證塔鐘走時(shí)的高精度。
4 結論
因采用了GPS作為塔鐘走時(shí)的標準時(shí)鐘源,解決了塔鐘走時(shí)不準確的問(wèn)題,控制系統硬件設計簡(jiǎn)單,抗干擾性強,系統運行穩定可靠,具有很好的實(shí)用性。
評論