時間:2007-07-18 17:06:00來源:hanjuan
ZLG7290的特點(diǎn)有:采用I2C串行接口;提供鍵盤中斷信號,方便與處理器接口;可驅(qū)動8位共陰數(shù)碼管或64只獨(dú)立的LED和64個按鍵:可控制掃描位數(shù),可控制任意數(shù)碼管的閃爍:提供數(shù)據(jù)譯碼和循環(huán)移位段尋址等控制;8個功能鍵均可檢測任意鍵的連擊次數(shù);無需外接元件即直接驅(qū)動LED,可擴(kuò)展驅(qū)動電流和驅(qū)動電壓。
2.2 ZLG7290的工作原理
2.2.1鍵盤的管理與控制
ZLG7290可采樣64個按鍵或傳感器,可檢測每個按鍵的連擊次數(shù),并具有如下功能:鍵盤去抖動處理;雙鍵互鎖處理,即當(dāng)有兩個以上按鍵被同時按下時,ZLG7290只采樣優(yōu)先級高的按鍵:連擊按鍵處理,即當(dāng)某個按鍵按下輸出一次鍵值后。如果該按鍵還未釋放,該鍵值連續(xù)有效,就像連續(xù)壓按該鍵一樣,這種功能稱為連擊。連擊次數(shù)計數(shù)器RepeatCnt可區(qū)別出單擊(某些功能不允許連擊如開關(guān))或連擊,判斷連擊次數(shù),可以檢測被按下時間。以防止某些功能的誤操作。
2.2.2顯示的管理與控制
在每個顯示刷新周期,ZLG7290按照掃描位數(shù)寄存器(ScanNum)指定的顯示位數(shù)N,把顯示緩存DpRam0-DpRamN的內(nèi)容按先后順序送入LED驅(qū)動器以實(shí)現(xiàn)動態(tài)顯示,減小N值可提高每位顯示掃描時間的占空比,以增強(qiáng)LED亮度,顯示緩存中的內(nèi)容不受影響。修改閃爍控制寄存器(FlashOnOff)可改變閃爍頻率和占空比亮、滅的時間。
ZLG7290有兩種控制方式,即寄存器映像控制和命令解釋控制。如上述對顯示部分的控制,寄存器映像控制是指直接訪問底層寄存器,實(shí)現(xiàn)基本控制功能,這些寄存器須字節(jié)操作。命令解釋控制是通過解釋命令緩沖區(qū)CmdBuf0-CmdBuf1中的指令間接訪問底層寄存器,實(shí)現(xiàn)擴(kuò)展控制功能,如對寄存器的位操作。
2.2.3內(nèi)部寄存器的定義
ZLG7290內(nèi)部可通過I2C總線訪問的寄存器地址范圍為00H-17H,任意寄存器都可按字節(jié)直接讀寫,也可以通過命令接口間接讀寫或按位讀寫。ZLG7290的控制和狀態(tài)查詢均通過讀/寫寄存器實(shí)現(xiàn),用戶只需像讀寫24C02內(nèi)的單元一樣操作即可實(shí)現(xiàn)對ZLG7290的控制。
?。?)系統(tǒng)寄存器(SystemReg):地址00H,復(fù)位值11110000B,系統(tǒng)寄存器可以保存ZLG7290系統(tǒng)狀態(tài)并可對系統(tǒng)運(yùn)行狀態(tài)進(jìn)行配置。
?。?)鍵值寄存器(Key):地址01H,復(fù)位值00H,Key表示被按下鍵的鍵值,當(dāng)Key=0時表示沒有鍵被按下。
?。?)連擊次數(shù)計數(shù)器(RepeatCnt):地址02H。復(fù)位值00H,RepeatCnt=0時表示單擊鍵,RepeatCnt大于0時表示鍵的連擊次數(shù),用于區(qū)別出單擊鍵或連擊鍵,判斷連擊次數(shù)可以檢測被按下時間。
?。?)閃爍控制寄存器(FlashOnOff):地址0CH,復(fù)位值0111B/0111B,高4位表示閃爍時"亮"的時間,低4位表示閃爍時"滅"的時間,改變其值同時改變了閃爍頻率,也能改變"亮"和滅"的占空比。FlashOnOff的1個單位相當(dāng)于150 ms~250ms("亮"和"滅"的時間范圍為1-160000B相當(dāng)1個單位時間),所有像素的閃爍頻率和占空比相同。
?。?)顯示緩存寄存器(DpRam0-DpRam7):地址10H-17H,復(fù)位值00H,00H緩存中一位置1表示該像素亮,DpRam7-DpRam0的顯示內(nèi)容對應(yīng)Dig7-Dig0引腳。
2.2.4 I2C通信
ZLG7290的I2C接口傳輸速率可達(dá)32 kbit/s,容易與處理器接口,并提供鍵盤中斷信號,提高了主處理器的時間效率。有效的按鍵動作、普通鍵的單擊、連擊和功能鍵狀態(tài)的變化都會令系統(tǒng)寄存器SystemReg的KeyAvi位置1。INT引腳信號信號為低電平有效,用戶的鍵盤處理程序可由INT引腳低電平中斷觸發(fā),以提高程序效率,也可以不采樣INT引腳信號,節(jié)省系統(tǒng)的I/O數(shù)而采取輪詢系統(tǒng)寄存器KeyAvi位的方式,在讀鍵值寄存器時會使KeyAvi位清0,并會使INT引腳信號無效,為確保某個有效的按鍵動作及所有參數(shù)寄存器的同步性.可利用I2C通信的地址自動遞增功能。連續(xù)讀取RepeatCnt FunctionKey和Key寄存器。
3 儀表面板接口的硬件連接
圖2所示是ZLG7290作為儀表面板接口的硬件連接,圖中的8位LED作為智能儀表面板的顯示部分,鍵盤矩陣完成智能儀表面板的參數(shù)設(shè)定、修改按鍵,實(shí)現(xiàn)人機(jī)交互功能。
使用ZLG7290驅(qū)動數(shù)碼管顯示有兩種方法,一是向命令緩沖區(qū)(07H-08H)寫入復(fù)合指令,向07H寫入命令并選通相應(yīng)的數(shù)碼管,向08H寫入所要顯示的數(shù)據(jù),這種方法每次只能寫入一個字節(jié)的數(shù)據(jù),多字節(jié)數(shù)據(jù)的輸出可在程序中用循環(huán)寫入的方法實(shí)現(xiàn);二是向顯示緩存寄存器(10H-17H)寫入所要顯示的數(shù)據(jù)的段碼。段碼的編碼規(guī)則為從高位到低位為abcdefgdp,每次可寫入1~8個字節(jié)數(shù)據(jù)。
4 儀表面板接口中的軟件設(shè)計
下面是P89LPC932單片機(jī)的I2C接口部分的主程序:
圖3是ZLG7290在儀表面板應(yīng)用中的鍵盤掃描及顯示程序流程圖。該流程實(shí)現(xiàn)的功能是:上電復(fù)位后,數(shù)碼管顯示初值0-7,若有鍵按下,判斷是普通鍵還是功能鍵,若為功能鍵,則保持原來的顯示不變,使8個數(shù)碼管同時閃爍;若為普通鍵,則將鍵值顯示在第一個和第二個數(shù)碼管并同時閃爍,其他數(shù)碼管不閃爍,原有的顯示左移兩位。
5 結(jié)束語
ZLG7290作為鍵盤及顯示管理器件與單片微處理器的連接,無論是硬件接口還是軟件編程都非常簡單。該器件本身具有掃描顯示功能,不需要單片機(jī)進(jìn)行動態(tài)掃描,以使其將更多的時間用于數(shù)據(jù)處理。筆者已將ZLG7290應(yīng)用在所設(shè)計的產(chǎn)品當(dāng)中,并取得了較為滿意的效果。標(biāo)簽:
![]()
傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為傳動網(wǎng)(www.surachana.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>2025-10-31
勇梅機(jī)械液壓閘門給煤機(jī)的優(yōu)點(diǎn)
2025-10-22
2025-10-17
2025-10-11
「一體機(jī)性價比王者」NK290M普及型數(shù)控...
2025-10-09
2025-09-23