單片機顯控系統(tǒng)中的漢字輸入
發(fā)布時間:2008/6/3 0:00:00 訪問次數(shù):2571
    
    摘 要:在實際應(yīng)用中,特別是在需要實時大量輸入漢字的顯控處理應(yīng)用中,利用傳統(tǒng)單片機顯控設(shè)計方法是無法實現(xiàn)的;通過對漢字內(nèi)碼的分析,給出硬件漢字庫的制作方法,提出針對一、二級漢字庫編碼檢索的拼音輸入檢索方法, 利用philips p89c51r d2單片機為核心處理芯片,設(shè)計一種具有通過鍵盤用漢語拼音輸入法輸入漢語拼音, 利用相應(yīng)程序通過編碼檢索,在顯控系統(tǒng)中實時輸入漢字,并在lcd上顯示或通過rs 232串口輸出漢字點陣數(shù)據(jù)的方法。
    關(guān)鍵詞:p89c51rd2;漢語拼音;漢字庫;lcd;c51
    對于pc機來說,輸入漢字是非常簡單的,但在一些單片機人機接口系統(tǒng)中,進行漢字的實時輸入是很困難的,而大多只能顯示事先已取好字模點陣的漢字,但是每個16×16漢字點陣由32個字節(jié)表示,對于需要靈活使用大量漢字的場合,程序量太大,實現(xiàn)起來有很大難度;下面針對漢字庫的結(jié)構(gòu)進行分析,設(shè)計一種實用的漢字拼音輸入法,并給出液晶漢字顯示模塊的基本程序。
    1 漢字的內(nèi)碼表示
    針對不同的操作系統(tǒng)漢字內(nèi)碼表示不同,如在蘋果機的os上使用的是gb231280漢字編碼,window s系統(tǒng)則使用gbk漢字編碼,還有unicode編碼,gb180302000,方正748編碼等。由于gb 231280是最早(1980年)的、由中國國家標準局頒布的《通用漢字字符集及其交換標準碼》,所以以后產(chǎn)生的各編碼都兼容了gb2312,他共收入漢字、字母、符號等7 445個,其中漢字6 763個,包 括一級漢字3 755個,二級漢字3 008個,是中國大陸及海外使用簡體中文的地區(qū)(如新加坡等)強制使用的惟一中文編碼,所以也稱為標準漢字庫。
    每個漢字的點陣數(shù)據(jù)需要占據(jù)內(nèi)存32 b,有筆劃顯示的地方為1,無筆劃顯示的地方為0。然后通過單片機的c51語言將點陣數(shù)據(jù)轉(zhuǎn)換成點陣液晶可顯示的點陣數(shù)據(jù)形式。
    2 漢字庫的制作
    本節(jié)中論述將16×16點陣的宋體漢字庫燒錄到512 kb的存儲器中的具體方法。
    本例中使用的存儲芯片為am29c040,該芯片是amd公司生產(chǎn)的512 kb的flash rom,讀者也可以使用其他容量不小于256 kb的產(chǎn)品,但在具體電路設(shè)計時應(yīng)注意引腳定義和邏輯關(guān)系,并在燒錄時選擇相應(yīng)的型號;ucdos軟件有一個名字為hzk16dat 的文件,這就是16×16的國標漢字點陣文件,在該文件中按漢字區(qū)位碼從小到大依次存有國標區(qū)位碼中的所有漢字,每個漢字占用32 b,每個區(qū)為94個漢字,其大小為262 kb,可以全部寫入am29c040,除了可以存儲全部的國標漢字外還可以存儲8×16的ascii碼點陣數(shù)據(jù)以及漢字語句編碼數(shù)據(jù),使用起來更加方便。
    在實際操作中,硬件漢字庫的制作和普通的程序存儲器的編程沒什么不同,注意將hzk16文件調(diào)入時要使用二進制方式打開,編程并校驗成功后即可將存儲器取下備用,這樣一個硬件漢字庫就制作好了。
    3 設(shè)計思路
    在本實例中,從低成本、低功耗設(shè)計理念出發(fā),以philips公司的p89c51rd2單片機為核心,輸入用4×4的復(fù)用鍵盤,既可輸入數(shù)字,也可輸入字母或拼音,漢字庫保存在amd公司的a m29c040(512 k×8 b)flash上,液晶顯示模塊dmf50174(320×240),顯示控制器se d1335是日本seiko epson公司出品的液晶顯示控制芯片。各個芯片的片選(控制信號)由74 hc138譯碼產(chǎn)生。
    鍵盤輸入漢語拼音,單片機檢索區(qū)位碼,從flash中讀出漢字點陣設(shè)計,顯示在lcd上,并利用p89c51rd2的iap功能在線進行編程,在線改變用戶界面或接口功能。
    
    
    4 漢字輸入
    p89c51rd2是philips公司于2001年發(fā)布的一款非常優(yōu)秀的單片機,該單片機是基于8位80c51單片機的派生產(chǎn)品,他在完全保留80c51指令系統(tǒng)和硬件結(jié)構(gòu)的大框架外,進行了多方面的加強擴展和創(chuàng)新,p89c51rd2將原有的對外數(shù)據(jù)和程序存儲器的16位尋址機制加以利用,把片上的ram 擴展到1 kb,片上的flash eprom擴展到64 kb,具有isp(在系統(tǒng)可編程)和iap(在應(yīng)用中編程),具有6時鐘和12時鐘模式,6時鐘模式外部晶振0~20 mhz,12時鐘模式外部晶振可達0~33 mhz。
    作為一般應(yīng)用系統(tǒng)來說,一二級字庫的漢字已足夠使用,漢字區(qū)位碼2 b表示一個漢字,64 kb片上的flash eprom共可存儲漢字3萬多個,設(shè)計中以數(shù)組形式在flash中存儲,一二級6 763個漢字共用13 526 b。
    實例做法如下:用漢語拼音作為數(shù)組名,以該拼音所包含的漢字的區(qū)位碼為數(shù)組元素
    
    摘 要:在實際應(yīng)用中,特別是在需要實時大量輸入漢字的顯控處理應(yīng)用中,利用傳統(tǒng)單片機顯控設(shè)計方法是無法實現(xiàn)的;通過對漢字內(nèi)碼的分析,給出硬件漢字庫的制作方法,提出針對一、二級漢字庫編碼檢索的拼音輸入檢索方法, 利用philips p89c51r d2單片機為核心處理芯片,設(shè)計一種具有通過鍵盤用漢語拼音輸入法輸入漢語拼音, 利用相應(yīng)程序通過編碼檢索,在顯控系統(tǒng)中實時輸入漢字,并在lcd上顯示或通過rs 232串口輸出漢字點陣數(shù)據(jù)的方法。
    關(guān)鍵詞:p89c51rd2;漢語拼音;漢字庫;lcd;c51
    對于pc機來說,輸入漢字是非常簡單的,但在一些單片機人機接口系統(tǒng)中,進行漢字的實時輸入是很困難的,而大多只能顯示事先已取好字模點陣的漢字,但是每個16×16漢字點陣由32個字節(jié)表示,對于需要靈活使用大量漢字的場合,程序量太大,實現(xiàn)起來有很大難度;下面針對漢字庫的結(jié)構(gòu)進行分析,設(shè)計一種實用的漢字拼音輸入法,并給出液晶漢字顯示模塊的基本程序。
    1 漢字的內(nèi)碼表示
    針對不同的操作系統(tǒng)漢字內(nèi)碼表示不同,如在蘋果機的os上使用的是gb231280漢字編碼,window s系統(tǒng)則使用gbk漢字編碼,還有unicode編碼,gb180302000,方正748編碼等。由于gb 231280是最早(1980年)的、由中國國家標準局頒布的《通用漢字字符集及其交換標準碼》,所以以后產(chǎn)生的各編碼都兼容了gb2312,他共收入漢字、字母、符號等7 445個,其中漢字6 763個,包 括一級漢字3 755個,二級漢字3 008個,是中國大陸及海外使用簡體中文的地區(qū)(如新加坡等)強制使用的惟一中文編碼,所以也稱為標準漢字庫。
    每個漢字的點陣數(shù)據(jù)需要占據(jù)內(nèi)存32 b,有筆劃顯示的地方為1,無筆劃顯示的地方為0。然后通過單片機的c51語言將點陣數(shù)據(jù)轉(zhuǎn)換成點陣液晶可顯示的點陣數(shù)據(jù)形式。
    2 漢字庫的制作
    本節(jié)中論述將16×16點陣的宋體漢字庫燒錄到512 kb的存儲器中的具體方法。
    本例中使用的存儲芯片為am29c040,該芯片是amd公司生產(chǎn)的512 kb的flash rom,讀者也可以使用其他容量不小于256 kb的產(chǎn)品,但在具體電路設(shè)計時應(yīng)注意引腳定義和邏輯關(guān)系,并在燒錄時選擇相應(yīng)的型號;ucdos軟件有一個名字為hzk16dat 的文件,這就是16×16的國標漢字點陣文件,在該文件中按漢字區(qū)位碼從小到大依次存有國標區(qū)位碼中的所有漢字,每個漢字占用32 b,每個區(qū)為94個漢字,其大小為262 kb,可以全部寫入am29c040,除了可以存儲全部的國標漢字外還可以存儲8×16的ascii碼點陣數(shù)據(jù)以及漢字語句編碼數(shù)據(jù),使用起來更加方便。
    在實際操作中,硬件漢字庫的制作和普通的程序存儲器的編程沒什么不同,注意將hzk16文件調(diào)入時要使用二進制方式打開,編程并校驗成功后即可將存儲器取下備用,這樣一個硬件漢字庫就制作好了。
    3 設(shè)計思路
    在本實例中,從低成本、低功耗設(shè)計理念出發(fā),以philips公司的p89c51rd2單片機為核心,輸入用4×4的復(fù)用鍵盤,既可輸入數(shù)字,也可輸入字母或拼音,漢字庫保存在amd公司的a m29c040(512 k×8 b)flash上,液晶顯示模塊dmf50174(320×240),顯示控制器se d1335是日本seiko epson公司出品的液晶顯示控制芯片。各個芯片的片選(控制信號)由74 hc138譯碼產(chǎn)生。
    鍵盤輸入漢語拼音,單片機檢索區(qū)位碼,從flash中讀出漢字點陣設(shè)計,顯示在lcd上,并利用p89c51rd2的iap功能在線進行編程,在線改變用戶界面或接口功能。
    
    
    4 漢字輸入
    p89c51rd2是philips公司于2001年發(fā)布的一款非常優(yōu)秀的單片機,該單片機是基于8位80c51單片機的派生產(chǎn)品,他在完全保留80c51指令系統(tǒng)和硬件結(jié)構(gòu)的大框架外,進行了多方面的加強擴展和創(chuàng)新,p89c51rd2將原有的對外數(shù)據(jù)和程序存儲器的16位尋址機制加以利用,把片上的ram 擴展到1 kb,片上的flash eprom擴展到64 kb,具有isp(在系統(tǒng)可編程)和iap(在應(yīng)用中編程),具有6時鐘和12時鐘模式,6時鐘模式外部晶振0~20 mhz,12時鐘模式外部晶振可達0~33 mhz。
    作為一般應(yīng)用系統(tǒng)來說,一二級字庫的漢字已足夠使用,漢字區(qū)位碼2 b表示一個漢字,64 kb片上的flash eprom共可存儲漢字3萬多個,設(shè)計中以數(shù)組形式在flash中存儲,一二級6 763個漢字共用13 526 b。
    實例做法如下:用漢語拼音作為數(shù)組名,以該拼音所包含的漢字的區(qū)位碼為數(shù)組元素
熱門點擊
- 基于MC9S08GB32的便攜式無水阻槳頻船
- 關(guān)于DS18B20測量溫度的幾個問題
- 單片機顯控系統(tǒng)中的漢字輸入
- RFMD®擴展了業(yè)界領(lǐng)先的EDGE產(chǎn)
- AD8302在幅相檢測系統(tǒng)中的應(yīng)用
- ATSC制數(shù)字電視機頂盒研究
- 采用高速高分辨率信號采集卡構(gòu)成超聲探傷系統(tǒng)
- 基于數(shù)字移相的高精度脈寬測量系統(tǒng)
- 理想的非編與非編的理想(上)
- 基礎(chǔ)儀器的示波器:領(lǐng)舞電子測試市場(下)
推薦技術(shù)資料
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究