新聞中心

EEPW首頁 > 光電顯示 > 設(shè)計(jì)應(yīng)用 > GSM/GPS車載系統(tǒng)中LCD中文顯示的編程方法

GSM/GPS車載系統(tǒng)中LCD中文顯示的編程方法

作者: 時(shí)間:2007-04-25 來源:網(wǎng)絡(luò) 收藏
GPS車輛調(diào)度是應(yīng)用全球定位GPS(G1obalPosltlomng System),并基于GSM移動(dòng)通信網(wǎng)絡(luò),通過短消息通信的方式對(duì)網(wǎng)內(nèi)車輛進(jìn)行定位、跟蹤和監(jiān)控的監(jiān)管。目前,在許多行業(yè)(如公安、公交和銀行等)中,GPS車輛調(diào)度系統(tǒng)已經(jīng)相當(dāng)普及,GPS車輛調(diào)度系統(tǒng)的相關(guān)研究也成為業(yè)界的一大熱門課題。本文的一種編碼是筆者在設(shè)計(jì)GPS終端通信系統(tǒng)時(shí)使用的。

1 問題的提出
一個(gè)GPS車輛終端在硬件上主要包括以下幾部分:
◇GPS接收模塊,用于接收GPS衛(wèi)星發(fā)回的GPS定位信號(hào)。
◇GSM通信模塊,用于實(shí)現(xiàn)終端模塊與監(jiān)控中心的無線通信。
◇中央控制單元,對(duì)信號(hào)接收、短消息通信及人機(jī)交互等工作進(jìn)行控制。
◇鍵盤、單元,用于人機(jī)交互,監(jiān)控中心的命令。

在GPS車輛終端系統(tǒng)的開發(fā)過程中,出于系統(tǒng)功能和產(chǎn)品成本的綜合考慮,大多數(shù)設(shè)計(jì)者都會(huì)選取一塊廉價(jià)、低端的液晶顯示器。由于GSM短消息編碼方式與普通顯示器不兼容,許多GPS終端不支持信息的顯示,這是設(shè)計(jì)中的一個(gè)技術(shù)難點(diǎn)。GSM短消息通常是以PDU模式收/發(fā)的,在這種模式下模塊收到的是一串Unicode碼字符。unicode碼即統(tǒng)一碼。是一種在計(jì)算機(jī)上使用的字符編碼方式。它為不同語言的每個(gè)字符設(shè)定了統(tǒng)一且唯一的二進(jìn)制編碼,以滿足跨語言、跨平臺(tái)進(jìn)行文本轉(zhuǎn)換和處理的要求。例如,當(dāng)監(jiān)控中心向GPS車輛終端發(fā)送“速回中心”這樣一條調(diào)度信息時(shí),終端將收到Unicode字符串“0698 E698 1E18 06FE”。但目前大多數(shù)LCD顯示器并不支持這種編碼,要在終端上顯示這條信息,必須將其轉(zhuǎn)換為LCD支持的GB碼,即字符串“CBD9 BBD8 D6D0 DOC4”。

要進(jìn)行這樣一種轉(zhuǎn)換,在通常情況下有兩種:①找出這兩種編碼方式的運(yùn)算關(guān)系,通過公式進(jìn)行轉(zhuǎn)換;②分別建立Unicode和GB兩張碼表,通過查表的方式進(jìn)行轉(zhuǎn)換。但由于Unicode和GB是兩種相互獨(dú)立的編碼方式,它們之間沒有任何聯(lián)系,運(yùn)算關(guān)系更是無從談起,因此第一種方法是行不通的。而對(duì)于第二種方法,從理論上講是完全可行的,且在PC機(jī)上通過高級(jí)語言的函數(shù)調(diào)用即可實(shí)現(xiàn);但對(duì)內(nèi)存極為有限的單片機(jī)來說,要建立如此龐大的兩張碼表顯然是不可想象的。即使舔加了存儲(chǔ)器,具備了足夠的存儲(chǔ)空間,碼表的錄入和對(duì)應(yīng)也同樣是一項(xiàng)繁瑣的工作。因此,一種切實(shí)可行的,能夠?qū)崿F(xiàn)顯示的設(shè)計(jì)方案就顯得尤為重要。

2 解決方案的設(shè)計(jì)
為了解決上述難題,筆者特設(shè)計(jì)了一種在GSM模塊的TEXT模式下,基于調(diào)度中心發(fā)送GB碼字符串的編碼方法。

GSM短消息的TEXT模式(文本模式)與PDU模式相同,也是一種使用AT命令傳輸數(shù)據(jù)的接口協(xié)議。不同的是,在信息傳輸過程中網(wǎng)絡(luò)傳輸?shù)氖怯⑽幕驍?shù)字等ASCII內(nèi)碼,因此該模式適合于非智能終端、終端仿真器和一些基于V.25ter自動(dòng)呼叫/自動(dòng)應(yīng)答的應(yīng)用軟件。例如,發(fā)送字符A到模塊,并通過AT命令讀SIM卡內(nèi)容到單片機(jī)內(nèi)存,通過偉福仿真器的DTAE窗可觀測(cè)到如圖1所示的ASCII碼。

將內(nèi)存中ASCII碼翻譯后可得如下信息:


由于所有GB碼皆由大寫英文字母和數(shù)字組成,兩者又都是ASCII內(nèi)碼,因此可將調(diào)度信息的GB碼通過ASCII內(nèi)碼字符的形式向終端發(fā)送。例如,仍是“速回中心”這條短消息,查GB-2312表可得這4個(gè)漢字的GB碼為“CBD9 BBD8D6D0 DOC4”。將此條字符串發(fā)送到車載終端,終端接收后的信息如圖2所示。

圖2中70H~7FH內(nèi)存單元存放了該條信息。由于此時(shí)接收到的只是一串英文和數(shù)字的字符,要在LCD上顯示,還須將其還原為GB碼(即兩個(gè)字符轉(zhuǎn)換為相應(yīng)的一個(gè)2位16進(jìn)制數(shù),并存入一個(gè)內(nèi)存單元)。將上述字符串轉(zhuǎn)換、合并,存儲(chǔ)在:BOH開始的內(nèi)存單元中的數(shù)據(jù)如圖3所示。

圖3中BOH~BSH內(nèi)存單元中存放了“速回中心”這條短消息的GB碼。軟件實(shí)現(xiàn)流程圖如圖4所示。

還原為GB碼程序?qū)崿F(xiàn)如下:


經(jīng)上述過程后,顯示緩沖區(qū)中便存放了“速回中心”這4個(gè)字的GB碼。將這些GB碼經(jīng)程序送入LCD顯示器內(nèi)存DDRAM中后,即可進(jìn)行顯示。

結(jié)語
本文利用GB碼的一些組成特點(diǎn),提出并實(shí)現(xiàn)了一種發(fā)送GB碼字符串的編碼方式。這種方法成功地解決了GSM短消息編碼方式與普通LCD顯示器不兼容的問題,去除了許多GPS車載終端不支持信息的弊端,有很強(qiáng)的實(shí)用性。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉