作為嵌入式系統(tǒng)的設計初衷,是以最小系統(tǒng)(成本)滿足用戶或產(chǎn)品的需要。一般消費類電子的最小系統(tǒng)都是由MCU、存儲器和顯示終端組成。
為什么在談產(chǎn)品的漢字解決方案時要提到系統(tǒng)和器件組成結構?因為漢字解決方案依賴于硬件的組成,而硬件的組成依賴于產(chǎn)品設計的合理性和產(chǎn)品設計成本。系統(tǒng)設計上,我們通常會將程序和數(shù)據(jù)分別放置在MCU和FLASH中。關于漢字解決的核心則是字庫的選擇與應用,大多電子工程師可能第一印象就是網(wǎng)絡上搜索一下看看是否有字庫可以下載,能下載就燒錄到FLASH中,測試一下能顯示就可以了。其實從設計產(chǎn)品的可靠性或穩(wěn)定性上來說并不是這樣。也許我們還需要考慮:
一、字體的大小和界面是否匹配,硬件資源是否充裕;
產(chǎn)品的液晶上顯示的一般為點陣字為主,點陣字根據(jù)字體大小有11X12點、15X16點、24X24點和32X32點,字體的大小我們可以根據(jù)屏幕的大小及分辨率進行選擇。例如128X64的屏幕,可以選擇32點陣的“大”字顯示2行,也可以選擇16點陣的字體顯示4行。 硬件資源方面需要關心的是MCU的I/O資源是否豐富,當I/O比較否緊張的時候,可以考慮使用串行總線連接存儲器。
二、字庫存儲的排置是否符合顯示或打印的需求;
字庫字模的存儲格式會根據(jù)不同應用分為:橫置橫排、豎置橫排、豎置豎排。例如一般的STN液晶者是采用豎置橫排的,而熱敏打印機就是橫置橫排的。
三、下載的字庫中,有錯別字或亂碼字;
其實很多電子工程師不會對所使用的字庫進行逐字測試,即使有問題也不能用自己的字庫知識面來解決,等到最終用戶發(fā)現(xiàn)問題后才予以修正。
其實關于錯別字問題,*屏蔽內(nèi)容*有字符集標準GB2312(6,763漢字)、GB18030(27,533漢字)、GB13000和GBK(20,902漢字)。
相對于GB2312(6,763漢字)大字符集指的是GB18030-2000包含27,484漢.字,GB18030-2000基本涵蓋日常生活所能遇到的罕用字。由于GB2312基本漢字集不能完全收入人名、地名等冷僻漢字,故越來越多的信息產(chǎn)品使用GB18030也已經(jīng)有很多,如銀行信息設備及二代證讀卡器出于實名制儲蓄的需要,均采用GB18030大字符集。 亂碼問題經(jīng)常是由于字庫編碼或字庫出錯而引起的。
四、漢字存儲與傳輸?shù)臉藴蕝f(xié)議,使用什么字庫能出口港澳臺;
存儲與傳輸有一定區(qū)域性,在港澳臺地區(qū)我們一般使用BIG5碼進行存儲與傳輸?shù)?。但是隨著國內(nèi)標準(GB)的健全與國際碼(Unicode)的發(fā)展,在通訊上也逐漸向Unicode偏移,例如手機、GPS等。如果需要同時兼容這些協(xié)議,我們也可以通過碼間轉換來實現(xiàn)。
五、Flash的可靠性及其燒錄問題;
l Flash有時會因為電壓或運行環(huán)境的變化,數(shù)據(jù)會突發(fā)性丟失或部分擦寫失敗,同時燒錄的可靠性需要生產(chǎn)及質檢部門對品質進行跟蹤;
針對以上問題,我們可以將那些程序和基本數(shù)據(jù)存儲在MCU中的客戶,按照以下器件組成結構來設計。原因很簡單,因為程序和數(shù)據(jù)都存儲在MCU中,而漢字及ASCII字符等字庫信息均需要存儲在存儲器中,我們可以把存儲器簡單的更換為專業(yè)字庫,比如高通字庫來解決漢字方面的問題,例如字庫算法、編碼體系、碼間轉換等,更重要的是成本還比使用普通的FLASH燒錄來得低很多。這是也許是一種穩(wěn)定、可靠、低價的最佳解決方案。
本文來源于南京羅姆液晶官網(wǎng)http://4230521.ycwlkeji.com/