1 引言
I2C總線接口的顯示及鍵盤(pán)管理器件ZLG7290廣泛應(yīng)用于智能儀表的接口設(shè)計(jì)當(dāng)中,在具體應(yīng)用過(guò)程中,它接收所要顯示的數(shù)據(jù)并將其顯示在LED顯示器上,動(dòng)態(tài)地掃描管理著顯示過(guò)程,該器件本身只需2根線就可與單片機(jī)實(shí)現(xiàn)接口,硬件連接簡(jiǎn)便,軟件編程容易。尤其用在單片機(jī)擔(dān)負(fù)繁忙數(shù)據(jù)處理任務(wù)的系統(tǒng)中,可節(jié)省單片機(jī)用于顯示掃描的時(shí)間,更顯出其優(yōu)越性。
2 ZLG7290的特點(diǎn)及工作原理
2.1 ZLG7290的特點(diǎn)
如圖1所示,ZLG7290是一種多位LED顯示及鍵盤(pán)管理器件,采用流行的I2C總線接口,可與各種帶I2C總線的單片機(jī)方便接口,并可同時(shí)驅(qū)動(dòng)8位LED。其內(nèi)部具有15×8 RAM的功能控制寄存器,可方便尋址。對(duì)每位數(shù)字可單獨(dú)控制、刷新。顯示亮度可數(shù)字控制,每位都具有閃爍使能控制功能。無(wú)需任何外部元件便可多路復(fù)用自動(dòng)掃描。
ZLG7290的特點(diǎn)有:采用I2C串行接口;提供鍵盤(pán)中斷信號(hào),方便與處理器接口;可驅(qū)動(dòng)8位共陰數(shù)碼管或64只獨(dú)立的LED和64個(gè)按鍵:可控制掃描位數(shù),可控制任意數(shù)碼管的閃爍:提供數(shù)據(jù)譯碼和循環(huán)移位段尋址等控制;8個(gè)功能鍵均可檢測(cè)任意鍵的連擊次數(shù);無(wú)需外接元件即直接驅(qū)動(dòng)LED,可擴(kuò)展驅(qū)動(dòng)電流和驅(qū)動(dòng)電壓。
2.2 ZLG7290的工作原理
2.2.1鍵盤(pán)的管理與控制
ZLG7290可采樣64個(gè)按鍵或傳感器,可檢測(cè)每個(gè)按鍵的連擊次數(shù),并具有如下功能:鍵盤(pán)去抖動(dòng)處理;雙鍵互鎖處理,即當(dāng)有兩個(gè)以上按鍵被同時(shí)按下時(shí),ZLG7290只采樣優(yōu)先級(jí)高的按鍵:連擊按鍵處理,即當(dāng)某個(gè)按鍵按下輸出一次鍵值后。如果該按鍵還未釋放,該鍵值連續(xù)有效,就像連續(xù)壓按該鍵一樣,這種功能稱(chēng)為連擊。連擊次數(shù)計(jì)數(shù)器RepeatCnt可區(qū)別出單擊(某些功能不允許連擊如開(kāi)關(guān))或連擊,判斷連擊次數(shù),可以檢測(cè)被按下時(shí)間。以防止某些功能的誤操作。
2.2.2顯示的管理與控制
在每個(gè)顯示刷新周期,ZLG7290按照掃描位數(shù)寄存器(ScanNum)指定的顯示位數(shù) N,把顯示緩存DpRam0-DpRamN的內(nèi)容按先后順序送入LED驅(qū)動(dòng)器以實(shí)現(xiàn)動(dòng)態(tài)顯示,減小N值可提高每位顯示掃描時(shí)間的占空比,以增強(qiáng)LED亮度,顯示緩存中的內(nèi)容不受影響。修改閃爍控制寄存器(FlashOnOff)可改變閃爍頻率和占空比亮、滅的時(shí)間。
ZLG7290有兩種控制方式,即寄存器映像控制和命令解釋控制。如上述對(duì)顯示部分的控制,寄存器映像控制是指直接訪問(wèn)底層寄存器,實(shí)現(xiàn)基本控制功能,這些寄存器須字節(jié)操作。命令解釋控制是通過(guò)解釋命令緩沖區(qū)CmdBuf0-CmdBuf1 中的指令間接訪問(wèn)底層寄存器,實(shí)現(xiàn)擴(kuò)展控制功能,如對(duì)寄存器的位操作。
2.2.3內(nèi)部寄存器的定義
ZLG7290內(nèi)部可通過(guò)I2C總線訪問(wèn)的寄存器地址范圍為00H-17H,任意寄存器都可按字節(jié)直接讀寫(xiě),也可以通過(guò)命令接口間接讀寫(xiě)或按位讀寫(xiě)。ZLG7290的控制和狀態(tài)查詢(xún)均通過(guò)讀/寫(xiě)寄存器實(shí)現(xiàn),用戶只需像讀寫(xiě)24C02內(nèi)的單元一樣操作即可實(shí)現(xiàn)對(duì)ZLG7290的控制。
(1)系統(tǒng)寄存器(SystemReg):地址00H,復(fù)位值11110000B,系統(tǒng)寄存器可以保存ZLG7290系統(tǒng)狀態(tài)并可對(duì)系統(tǒng)運(yùn)行狀態(tài)進(jìn)行配置。
(2)鍵值寄存器(Key):地址01H,復(fù)位值00H,Key表示被按下鍵的鍵值,當(dāng)Key=0時(shí)表示沒(méi)有鍵被按下。
(3)連擊次數(shù)計(jì)數(shù)器(RepeatCnt):地址02H。復(fù)位值00H,RepeatCnt=0時(shí)表示單擊鍵,RepeatCnt大于0時(shí)表示鍵的連擊次數(shù),用于區(qū)別出單擊鍵或連擊鍵,判斷連擊次數(shù)可以檢測(cè)被按下時(shí)間。
(4)閃爍控制寄存器(FlashOnOff):地址0CH,復(fù)位值 0111B/0111B,高4位表示閃爍時(shí)“亮”的時(shí)間,低4位表示閃爍時(shí)“滅”的時(shí)間,改變其值同時(shí)改變了閃爍頻率,也能改變“亮”和滅“的占空比。 FlashOnOff的1個(gè)單位相當(dāng)于150 ms~250ms(”亮“和”滅“的時(shí)間范圍為1-160000B相當(dāng)1個(gè)單位時(shí)間),所有像素的閃爍頻率和占空比相同。
(5)掃描位數(shù)寄存器(ScanNum):地址0DH,復(fù)位值7,用于控制最大的掃描顯示位數(shù)(有效范圍為0~7,對(duì)應(yīng)的顯示位數(shù)為18),減小掃描位數(shù)可提高每位顯示掃描時(shí)間的占空比。以增強(qiáng)LED的顯示亮度。不掃描顯示時(shí),顯示緩存寄存器則保持不變,如ScanNum=3時(shí),只顯示DpRam0-DpRam3的內(nèi)容。
(6)顯示緩存寄存器(DpRam0-DpRam7):地址10H-17H,復(fù)位值00H,00H緩存中一位置1表示該像素亮,DpRam7-DpRam0的顯示內(nèi)容對(duì)應(yīng)Dig7-Dig0引腳。
2.2.4 I2C通信
ZLG7290的I2C接口傳輸速率可達(dá)32 kbit/s,容易與處理器接口,并提供鍵盤(pán)中斷信號(hào),提高了主處理器的時(shí)間效率。有效的按鍵動(dòng)作、普通鍵的單擊、連擊和功能鍵狀態(tài)的變化都會(huì)令系統(tǒng)寄存器SystemReg的KeyAvi位置1。INT引腳信號(hào)信號(hào)為低電平有效,用戶的鍵盤(pán)處理程序可由INT引腳低電平中斷觸發(fā),以提高程序效率,也可以不采樣INT引腳信號(hào),節(jié)省系統(tǒng)的I/O數(shù)而采取輪詢(xún)系統(tǒng)寄存器KeyAvi位的方式,在讀鍵值寄存器時(shí)會(huì)使KeyAvi位清0,并會(huì)使INT引腳信號(hào)無(wú)效,為確保某個(gè)有效的按鍵動(dòng)作及所有參數(shù)寄存器的同步性.可利用I2C通信的地址自動(dòng)遞增功能。連續(xù)讀取RepeatCnt FunctionKey和Key寄存器。
3 儀表面板接口的硬件連接
圖2所示是ZLG7290作為儀表面板接口的硬件連接,圖中的8位LED作為智能儀表面板的顯示部分,鍵盤(pán)矩陣完成智能儀表面板的參數(shù)設(shè)定、修改按鍵,實(shí)現(xiàn)人機(jī)交互功能。
使用ZLG7290驅(qū)動(dòng)數(shù)碼管顯示有兩種方法,一是向命令緩沖區(qū)(07H-08H)寫(xiě)入復(fù)合指令,向07H寫(xiě)入命令并選通相應(yīng)的數(shù)碼管,向08H寫(xiě)入所要顯示的數(shù)據(jù),這種方法每次只能寫(xiě)入一個(gè)字節(jié)的數(shù)據(jù),多字節(jié)數(shù)據(jù)的輸出可在程序中用循環(huán)寫(xiě)入的方法實(shí)現(xiàn);二是向顯示緩存寄存器(10H-17H)寫(xiě)入所要顯示的數(shù)據(jù)的段碼。段碼的編碼規(guī)則為從高位到低位為abcdefgdp,每次可寫(xiě)入1~8個(gè)字節(jié)數(shù)據(jù)。
4 儀表面板接口中的軟件設(shè)計(jì)
下面是P89LPC932單片機(jī)的I2C接口部分的主程序:
圖3是ZLG7290在儀表面板應(yīng)用中的鍵盤(pán)掃描及顯示程序流程圖。該流程實(shí)現(xiàn)的功能是:上電復(fù)位后,數(shù)碼管顯示初值0-7,若有鍵按下,判斷是普通鍵還是功能鍵,若為功能鍵,則保持原來(lái)的顯示不變,使8個(gè)數(shù)碼管同時(shí)閃爍;若為普通鍵,則將鍵值顯示在第一個(gè)和第二個(gè)數(shù)碼管并同時(shí)閃爍,其他數(shù)碼管不閃爍,原有的顯示左移兩位。
5 結(jié)束語(yǔ)
ZLG7290作為鍵盤(pán)及顯示管理器件與單片微處理器的連接,無(wú)論是硬件接口還是軟件編程都非常簡(jiǎn)單。該器件本身具有掃描顯示功能,不需要單片機(jī)進(jìn)行動(dòng)態(tài)掃描,以使其將更多的時(shí)間用于數(shù)據(jù)處理。已將ZLG7290應(yīng)用在所設(shè)計(jì)的產(chǎn)品當(dāng)中,并取得了較為滿意的效果。
責(zé)任編輯:gt
-
led
+關(guān)注
關(guān)注
240文章
23062瀏覽量
657046 -
顯示器
+關(guān)注
關(guān)注
21文章
4927瀏覽量
139736 -
接口
+關(guān)注
關(guān)注
33文章
8447瀏覽量
150720
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論