楊會(huì)玲,張福第,王磊
(1.蘇州科技學(xué)院,蘇州215009;2.中國(guó)人民解放軍63861部隊(duì))
楊會(huì)玲(講師),主要研究方向?yàn)楣怆姕y(cè)控與數(shù)字圖像處理。
引 言
時(shí)間同步系統(tǒng)多采用模式單一的GPS 接收衛(wèi)星信號(hào)[1]。雖然GPS衛(wèi)星覆蓋范圍寬、使用領(lǐng)域廣,但是由于其受美國(guó)控制,導(dǎo)致安全性、自主性較差。此外,時(shí)間同步系統(tǒng)大多采用12 864點(diǎn)陣屏顯示,分辨率為128×64,顯示內(nèi)容少(只夠顯示時(shí)間信息),色彩單調(diào),已無(wú)法滿(mǎn)足工業(yè)需求。因此,本文提出一種基于720P 大分辨率TFTLCD的北斗/GPS時(shí)間同步系統(tǒng)液晶顯示方法。
系統(tǒng)顯示方案包含4個(gè)模塊:衛(wèi)星導(dǎo)航信號(hào)接收、時(shí)間信息解碼、信息顯示和用戶(hù)按鍵選擇。系統(tǒng)框圖如圖1所示。北斗/GPS模塊接收到衛(wèi)星信號(hào),將標(biāo)準(zhǔn)時(shí)標(biāo)信息傳送給STM32主控制器,主控制器通過(guò)解碼模塊解出時(shí)間、定位等信息并發(fā)送給液晶模塊顯示[2-4],用戶(hù)可以通過(guò)外置按鍵來(lái)選擇系統(tǒng)工作方式。
主控制器采用ST 公司的STM32F103系列,基于32位的ARM Cortex-M3內(nèi)核,最高工作頻率可達(dá)72 MHz,存儲(chǔ)器最高可達(dá)512KB,具有2個(gè)直接內(nèi)存訪問(wèn)控制器(DMA)、7個(gè)定時(shí)器、2個(gè)ADCI、SPI、5個(gè)UART 接口,采用串行單線(SWD)和JTAG 接口調(diào)試。北斗/GPS導(dǎo)航芯片采用UniStrong的XDXP50-BG,具有靈敏度高、功耗低等特點(diǎn),能夠完成高精度定位、測(cè)定速率、提供時(shí)間等功能,模塊支持北斗和GPS雙頻點(diǎn),雙32通道運(yùn)行,數(shù)據(jù)輸出符合NMEA0183,數(shù)據(jù)每1s刷新1次,模塊與主控制器采用異步通信接口。液晶使用TFT-LCD,其型號(hào)為MD050SD,采用8080時(shí)序16位并行總線接口,分辨率達(dá)1280×720P,顯示面板16M 色彩,集成8頁(yè)顯存。模塊內(nèi)部采用CPLD+SDRAM 方式驅(qū)動(dòng)RGB接口顯示屏,具有超強(qiáng)抗干擾能力,可滿(mǎn)足工業(yè)級(jí)要求。此外系統(tǒng)輸入采用按鍵方式,連線方便,編程簡(jiǎn)單。系統(tǒng)硬件連接如圖2所示。

圖2 系統(tǒng)硬件示意圖
北斗/GPS模塊可提供標(biāo)準(zhǔn)的NMEA0183數(shù)據(jù)信息,主控制器STM32F103通過(guò)設(shè)置北斗/GPS模塊參數(shù)使模塊輸出GPRMC格式信息,格式如表1所列。

表1 XDXP50-BG輸出幀格式
主控制器解析數(shù)據(jù)幀主要根據(jù)狀態(tài)機(jī)的檢測(cè)方法,當(dāng)檢測(cè)到$GPRMC幀頭時(shí),進(jìn)入解碼狀態(tài)機(jī);檢測(cè)到第一個(gè)“,”字符時(shí),進(jìn)入時(shí)間狀態(tài)機(jī),將時(shí)分秒賦給時(shí)間變量;檢測(cè)到第二個(gè)“,”字符時(shí),進(jìn)入定位狀態(tài)機(jī),根據(jù)字符判斷是否定位成功;檢測(cè)到第三個(gè)“,”字符時(shí),進(jìn)入緯度狀態(tài)機(jī),將緯度賦給相應(yīng)變量;之后按照上述思想,檢測(cè)“,”字符從而進(jìn)入相應(yīng)的狀態(tài)機(jī)完成信息的提取。時(shí)間解碼流程圖如圖3所示。
同步時(shí)間系統(tǒng)顯示采用MD050SD 液晶,省去了一般TFT 所需要的煩瑣初始化代碼,僅需一次復(fù)位操作就可以開(kāi)始工作。液晶顯示的本質(zhì)是STM32主控制器對(duì)液晶上坐標(biāo)點(diǎn)的操作,根據(jù)圖4~圖6 的TFT-LCD時(shí)序圖對(duì)其片選(CS)信號(hào)、數(shù)據(jù)/命令(RS)信號(hào)、讀寫(xiě)(WR)信號(hào)進(jìn)行操作,將點(diǎn)的行列坐標(biāo)分別寫(xiě)入行列地址寄存器,確定點(diǎn)的行列坐標(biāo)后,向數(shù)據(jù)通道寫(xiě)入色彩值完成對(duì)液晶點(diǎn)的操作,流程圖如圖7所示。
根據(jù)線的起點(diǎn)終點(diǎn)坐標(biāo),計(jì)算直線的坐標(biāo)增量,設(shè)置直線單步方向,選取基本增量坐標(biāo),從而計(jì)算出所畫(huà)直線上點(diǎn)的坐標(biāo),調(diào)用畫(huà)點(diǎn)函數(shù)完成直線的繪畫(huà),流程圖如圖8所示。利用字模軟件獲得字符編碼,根據(jù)字符編碼以繪點(diǎn)函數(shù)為基礎(chǔ),簡(jiǎn)化字符顯示程序結(jié)構(gòu)。判斷字符字模數(shù)據(jù)的每個(gè)位,為0時(shí),不對(duì)此坐標(biāo)點(diǎn)進(jìn)行操作,為1時(shí),調(diào)用畫(huà)點(diǎn)函數(shù)進(jìn)行繪點(diǎn)操作。具體流程圖如9所示。

圖3 時(shí)間解碼流程圖

圖4 TFT-LCD寫(xiě)行地址時(shí)序

圖5 TFT-LCD寫(xiě)列地址時(shí)序

圖6 TFT-LCD寫(xiě)顯示數(shù)據(jù)時(shí)序
STM32F103通過(guò)對(duì)導(dǎo)航衛(wèi)星定位信息解碼,得到當(dāng)前標(biāo)準(zhǔn)時(shí)間、以及經(jīng)緯度等信息,通過(guò)調(diào)用TFT-LCD 字符顯示函數(shù),在液晶上顯示這些信息。通過(guò)按鍵選擇系統(tǒng)同步時(shí)間方式以及主控制器、紅外、伺服電機(jī)等外觸發(fā)頻率參數(shù)設(shè)置。流程圖如圖10所示。

圖7 畫(huà)點(diǎn)函數(shù)流程圖

圖8 畫(huà)線函數(shù)流程圖

9 顯示字符流程圖

圖10 信息顯示流程圖
系統(tǒng)實(shí)物顯示界面如圖11所示,顯示包括時(shí)間、日期、主控制器給時(shí)間同步系統(tǒng)的頻率、時(shí)間同步系統(tǒng)給外部的觸發(fā)頻率和延時(shí)修正,以及當(dāng)前時(shí)間同步系統(tǒng)的GPS、北斗衛(wèi)星連接狀態(tài),顯示內(nèi)容豐富、色彩多樣,整屏刷新速率可達(dá)30f/s。

圖11 系統(tǒng)實(shí)物顯示界面
結(jié) 語(yǔ)
本文介紹了北斗/GPS 雙模時(shí)間同步以及STM32F103利用FSMC 接口驅(qū)動(dòng)TFT-LCD 顯示方法,這種顯示方法簡(jiǎn)化了TFT-LCD顯示程序,提高了顯示效率,有效地解決了時(shí)間同步系統(tǒng)顯示內(nèi)容少、顯示刷新延時(shí)長(zhǎng)、色彩單一等問(wèn)題。TFT-LCD 的接口函數(shù)和字庫(kù)具有很高的可移植性,對(duì)液晶顯示開(kāi)發(fā)具有一定的參考價(jià)值。
[1]黃翔,江道灼.GPS同步時(shí)鐘的高精度守時(shí)方案[J].電力系統(tǒng)自動(dòng)化,2010,34(18):75-77.
[2]黃有源,蔡超,林培杰.基于SOPC 技術(shù)的TFT-LCD 顯示系統(tǒng)的設(shè)計(jì)[J].中國(guó)集成電路,2011(9):53-56.
[3]湯莉莉,黃偉.基于STM32的FSMC 接口驅(qū)動(dòng)TFT 彩屏設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2013,36(20):140-144.
[4]梁文禎.基于STM32的TFT-LCD 檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].機(jī)電工程技術(shù),2011(6):36-37.
單片機(jī)與嵌入式系統(tǒng)應(yīng)用2015年11期