一種漢字實時輸入顯控系統(tǒng)設(shè)計
0 引言
隨著電子信息技術(shù)的發(fā)展,中文操作界面在控制系統(tǒng)中的應(yīng)用越來越廣泛。而在一些單片機(jī)人機(jī)接口系統(tǒng)中,大多只能顯示事先取好字模點(diǎn)陣的漢字,在需要實時大量輸入漢字的顯控處理應(yīng)用中,利用傳統(tǒng)顯控設(shè)計方法是無法實現(xiàn)的;本文設(shè)計一種顯控系統(tǒng),該系統(tǒng)以單片機(jī)為核心,通過鍵盤輸入漢語拼音,通過漢字區(qū)位碼索引表查找漢字,最后在LCD上實時顯示所輸入的漢字。
1 系統(tǒng)結(jié)構(gòu)及硬件電路設(shè)計
為使系統(tǒng)硬件電路結(jié)構(gòu)簡單,采用4×4行列式鍵盤實現(xiàn)按鍵輸入;采用帶有漢字字庫的液晶顯示模塊RT12864M實現(xiàn)顯示功能,RT12864M是128×64點(diǎn)陣的圖形液晶顯示模塊,內(nèi)置國家標(biāo)準(zhǔn)的一、二級漢字字庫,可顯示漢字及圖形;CPU選取了常見的AT89C52單片機(jī),可完全實現(xiàn)控制要求。系統(tǒng)的硬件接口電路如圖1所示。
2 系統(tǒng)的軟件設(shè)計
2.1 主程序設(shè)計思路
系統(tǒng)的主程序設(shè)計流程為:首先在鍵盤上輸入所要顯示的漢字的拼音鍵,利用單片機(jī)來掃描與識別鍵盤,得到正確的拼音組合,然后根據(jù)輸入的拼音組合查找漢字區(qū)位碼索引表找到相同音漢字的區(qū)位碼與漢字個數(shù),在液晶屏的最后一行顯示所輸入的拼音對應(yīng)的漢字,最后通過光標(biāo)的移動,按確認(rèn)鍵來選擇所要輸入的漢字,并讓其在液晶屏的第一行顯示,至此,完成了一個漢字的查找與顯示。
2.2 按鍵處理程序
2.2.1 按鍵排布及處理
CPU采用中斷方式掃描鍵盤,提高CPU效率;由圖1可知,P1.0~P1.3為行線,P1.4~P1.7為列線,列線經(jīng)與門和AT89C52的INT1相連。無鍵閉合時,INT1為高電平,有鍵閉合時,INT1為低電平,向CPU申請中斷,CPU響應(yīng)此中斷,轉(zhuǎn)向中斷服務(wù)程序。首先通過程序讀取按鍵的行首鍵號和列值,并求出鍵號(鍵號=行首鍵號+列值),即地址偏移量,然后查鍵值表即可確定對應(yīng)的鍵值。從圖2系統(tǒng)按鍵排布圖中可以看出,本系統(tǒng)按鍵數(shù)為16個,而顯示漢字所需拼音個數(shù)為26個,因此需進(jìn)行復(fù)鍵編排與處理。
評論