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

HART協議智能儀表自動校驗系統的設計和實現

ZLG7290鍵盤檢測及LED顯示示例

評論