日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

中文輸入法在B超系統(tǒng)中的實現(xiàn)

出處:urliyong 發(fā)布于:2007-04-23 11:23:19

在計算機迅速發(fā)展和普及的今天,用計算機對漢字進行輸入、編輯和處理已經(jīng)非常普遍了。在醫(yī)療電子產(chǎn)品中,越來越多的場合需要顯示漢字。

在使用高性能CPU時,可采用嵌入式操作系統(tǒng)(如Linux、WinCE)所支持的GUI程序來實現(xiàn)友好的人機界面。在很多情況下,需要使用相對簡單的MCU控制整個系統(tǒng),如采用單片機STC89C516RD+實現(xiàn)系統(tǒng)控制和人機界面,此時必須尋求占用較少資源的低成本解決方案。本文對中文輸入法在B超系統(tǒng)中的實現(xiàn)進行了介紹。

通常的漢字顯示方式是:先用字模軟件提取所需要的漢字點陣,取得的數(shù)據(jù)可放入ASM匯編文件中,接著在單片機集成開發(fā)環(huán)境中對匯編文件進行編譯——生成BIN文件,然后用編程器將BIN文件燒錄到芯片。在使用時是讀取芯片中的漢字點陣數(shù)據(jù),將其寫到字符存儲器中。

如果需要顯示的字少,點陣數(shù)據(jù)就少,將數(shù)據(jù)燒錄到程序存儲器即可。實現(xiàn)中文輸入法,顯示的字比較多,數(shù)據(jù)量比較大,需要專門生成字庫數(shù)據(jù),放入擴展的數(shù)據(jù)存儲器中。

構造漢字庫,通常有如下方法:使用程序空間做小字庫;使用大容量的ROM芯片專門做漢字庫,這種方法在小型便攜式設備中一般不采用;為了降低成本和減小體積,對于速度要求不是很高的場合可采用大容量的串行數(shù)據(jù)存儲器,如AT45DB041B。

UCDOS軟件中的文件HZK16和文件ASC16分別為16×16的國標漢字點陣文件和8×16的ASCII碼點陣文件,以二進制格式存儲。常用的ASCII碼點陣為5×7(橫向5個點,豎向7個點)或7×9。對于給定字體的字符,字形的點數(shù)越多,字形的質(zhì)量越好,而所需的數(shù)據(jù)量越大,占用存儲空間越多。對于不同的顯示系統(tǒng),要顯示同一圖形,所需的數(shù)據(jù)排列順序各不相同,現(xiàn)有的HZK16和ASC16文件不一定能直接應用到自己的系統(tǒng)中,常用的方法是用排列方式可自由定義的字模軟件取數(shù)據(jù)再放入程序或數(shù)據(jù)存儲區(qū)。

通過比較,發(fā)現(xiàn)選用12×12的點陣形式表示漢字、采用8×12的點陣形式表示ASCII碼可以兼顧美觀和減少硬件開支,而且有部分程序模塊可共用,也為后期中英文顯示界面、菜單操作界面奠定了基礎。字模軟件取數(shù)據(jù)時必須一個方向是8的倍數(shù),因此12×12將自動調(diào)整為16×12或12×16,點陣字符如圖1所示。


 
圖1 點陣字符
不難發(fā)現(xiàn),表示一個漢字需要24B,其中12B有一半是空白的,如果將由字模取得的數(shù)據(jù)壓縮一下,18B就足以存儲一個漢字的點陣數(shù)據(jù)。

如圖2所示,單片機STC89C516RD+的內(nèi)部集成了64KB閃存和1280B SRAM,利用其內(nèi)部資源不需要再擴展外部程序存儲器,譯碼器、屏幕地址產(chǎn)生器、多路地址/數(shù)據(jù)切換、電視信號產(chǎn)生器、電視信號合成大都采用FPGA編程實現(xiàn),信號合成后經(jīng)D/A轉換送監(jiān)視器屏幕顯示。



圖2 硬件框圖
軟件實現(xiàn)

據(jù)調(diào)查,漢字輸入方案中,拼音輸入方式占80%以上,形碼用戶則少于20%。漢字輸入法的實質(zhì)是建立一種按鍵組合到漢字編碼的映射關系,使用全鍵盤的B超系統(tǒng)與使用標準鍵盤的PC的輸入法本質(zhì)上是相同的。建立索引表就可實現(xiàn)從按鍵組合到漢字編碼的映射,如圖3所示。


 
圖3 按鍵組合索引表示意圖
在Keil C編譯環(huán)境下,“拼音輸入法模塊”可以從網(wǎng)上到,醫(yī)療系統(tǒng)常要用到醫(yī)院名稱和患者姓名,為此在該模塊基礎上,增加了一些常見的地名、姓名用字,共收錄漢字4120個,用字模軟件提取點陣,并進行壓縮形成漢字點陣數(shù)據(jù)庫,放入數(shù)據(jù)存儲區(qū),接著建立字模組合索引表,連同一些參數(shù)和表格數(shù)據(jù)共用一片EEPROM 39VF010就可以了。51系列單片機可尋址64KB存儲空間,可用P1口作頁地址實現(xiàn)對64KB以上數(shù)據(jù)空間的訪問。

相對有限鍵的中文輸入法(如手機),全鍵盤的中文輸入法利用按鍵比較容易完成26個字母以及其他功能的操作。

字庫準備好之后,接下來的軟件設計關鍵在于構建拼音組合樹(如圖4所示)的遍歷算法、同音字的查找算法。這里要占用51單片機的一些內(nèi)部RAM資源,存放拼音代碼、當前拼音組合映射的字庫地址ADDR0、下一拼音組合映射的字庫地址ADDR1和當前顯示漢字的首地址ADDR等。根據(jù)拼音組合用遍歷算法查得該拼音組合的個漢字的點陣地址,用向上、向下鍵實現(xiàn)翻頁,通過ADDR與ADDR0或ADDR1的比較,來保證在同一拼音組合內(nèi)查找漢字。


 
圖4 拼音組合樹示例
結論

本方案已在某B超系統(tǒng)上成功實施,目前已經(jīng)實現(xiàn)病歷號的中文拼音輸入及存儲,借助于該漢字庫實現(xiàn)了中文界面顯示。


  
關鍵詞:中文輸入法在B超系統(tǒng)中的實現(xiàn)39VF010STC89C516RDHZK16

版權與免責聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權均屬于維庫電子市場網(wǎng),轉載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關法律責任。

本網(wǎng)轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉載時,必須保留本網(wǎng)注明的作品出處,并自負版權等法律責任。

如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。

STC89C516RD+40I-PDIP40全新原裝STC插件微控制器單片機MCU
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務:
賣家服務:
技術客服:

0571-85317607

網(wǎng)站技術支持

13606545031

客服在線時間周一至周五
9:00-17:30

關注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!