一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

B超系統(tǒng)中的漢字輸入方案的設(shè)計與實現(xiàn)

電子設(shè)計 ? 來源:今日電子 ? 作者:項四平 ? 2021-04-14 14:16 ? 次閱讀

在計算機迅速發(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è)計

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

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

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

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

通過比較,發(fā)現(xiàn)選用12×12的點陣形式表示漢字、采用8×12的點陣形式表示ASCII碼可以兼顧美觀和減少硬件開支,而且有部分程序模塊可共用,也為后期中英文顯示界面、菜單操作界面奠定了基礎(chǔ)。字模軟件取數(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轉(zhuǎn)換送監(jiān)視器屏幕顯示。

圖2 硬件框圖

軟件實現(xiàn)

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

圖3 按鍵組合索引表示意圖

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

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

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

圖4 拼音組合樹示例

結(jié)論

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

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1642

    文章

    21918

    瀏覽量

    611981
  • 單片機
    +關(guān)注

    關(guān)注

    6058

    文章

    44821

    瀏覽量

    644704
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7613

    瀏覽量

    165913
收藏 人收藏

    評論

    相關(guān)推薦

    幾種手機漢字輸入法的測評

    由于漢字輸入法的良莠不齊,漢字編碼設(shè)計人員缺乏規(guī)范的科學(xué)指導(dǎo),憑主觀意圖對漢字進行編碼,造成輸入漢字效率普遍偏低,難以符合信息快速傳播的要求
    發(fā)表于 06-22 11:40 ?2639次閱讀
    幾種手機<b class='flag-5'>漢字輸入</b>法的測評

    VF2-2403工程版Chromium103瀏覽器的漢字輸入方法分享

    ),chromium打開后就可以輸入漢字,帶備選字欄。手動測試成功后,就可以修改系統(tǒng)chromium的各種啟動快捷方式。 這個設(shè)置方法,我在成功后,又燒錄一次2403來復(fù)現(xiàn),所以應(yīng)該
    發(fā)表于 05-28 06:54

    中文輸入法在B系統(tǒng)的應(yīng)用

    中文輸入法在B系統(tǒng)的應(yīng)用本文對中文輸入法在B
    發(fā)表于 11-30 10:15

    【mfxp】Windows XP系統(tǒng)刪除和增加漢字輸入法的方法

    ?! 〉谖宀剑涸谧烂嫔蠁螕簟罢Z言欄”的“輸入法選擇”按鈕,可以看到剛才所刪除的漢字輸入法已經(jīng)不在了。(二)增加漢字輸入法?! 〉谝徊剑涸赪indows XP
    發(fā)表于 01-31 11:24

    Protel99漢字輸入補丁

    Protel99 中文漢字輸入補丁程序 點擊下載
    發(fā)表于 04-25 16:15

    請求大佬分享一種Microwindows的漢字輸入

    請求大佬分享一種Microwindows的漢字輸入
    發(fā)表于 04-22 06:36

    如何去實現(xiàn)基于嵌入式Linux的漢字輸入法呢

    基于嵌入式Linux的漢字輸入法An Approach to Chinese Input based on Embedded LinuxAbstract: The Chinese input
    發(fā)表于 11-04 06:14

    Protel 99SE 中文漢字輸入補丁

    Protel 99SE 中文漢字輸入補丁
    發(fā)表于 03-12 01:57 ?0次下載

    基于嵌入式Linux的漢字輸入

    漢字輸入法是嵌入式系統(tǒng)輸入的一項重要技術(shù),它的功能與性能直接影響到嵌入式系統(tǒng)在中國的推廣與應(yīng)用。主要研究了如何用c 語言實現(xiàn)
    發(fā)表于 08-06 09:47 ?13次下載

    基于ROM單片機的漢字輸入法的實現(xiàn)

    在需要實時大量輸入漢字的顯示控制處理應(yīng)用,利用傳統(tǒng)單片機實現(xiàn)顯示控制的設(shè)計方法是較難實現(xiàn)的。帶漢字
    發(fā)表于 12-06 15:26 ?35次下載

    WPS漢字輸入方式在CAXA電子圖板上的應(yīng)用

    WPS漢字輸入方式在CAXA電子圖板上的應(yīng)用 CAXA電子圖板是自主開發(fā)的一種操作簡單、功能齊全、具有智能化工程標(biāo)注
    發(fā)表于 10-18 18:45 ?1571次閱讀

    單片機顯控系統(tǒng)漢字輸入

    單片機顯控系統(tǒng)漢字輸入 對于PC機來說,輸入漢字是非常簡單的,但在一些單片機人機接口系統(tǒng)
    發(fā)表于 12-08 15:25 ?3122次閱讀
    單片機顯控<b class='flag-5'>系統(tǒng)</b><b class='flag-5'>中</b>的<b class='flag-5'>漢字輸入</b>

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

    本文對中文輸入法在B系統(tǒng)實現(xiàn)進行了介紹。 字庫設(shè)計 通常的
    發(fā)表于 09-16 11:12 ?1139次閱讀
    中文<b class='flag-5'>輸入</b>法在<b class='flag-5'>B</b><b class='flag-5'>超</b><b class='flag-5'>系統(tǒng)</b><b class='flag-5'>中</b>的<b class='flag-5'>實現(xiàn)</b>

    基于VxWorks的漢字輸入實現(xiàn)

    論述了漢字顯示的基本原理,基于OpenGL提出了在VxWorks嵌入式系統(tǒng)漢字輸入及顯示的實現(xiàn)方案
    發(fā)表于 03-01 15:56 ?31次下載
    基于VxWorks的<b class='flag-5'>漢字輸入</b>法<b class='flag-5'>實現(xiàn)</b>

    pcb繪制漢字輸入軟件

    pcb繪制漢字輸入軟件
    發(fā)表于 09-05 18:14 ?0次下載