MAX7219在發(fā)射顯示中的應(yīng)用
1 引 言
傳統(tǒng)的數(shù)碼管顯示驅(qū)動(dòng)電路占用的系統(tǒng)資源較多。若是動(dòng)態(tài)顯示,8位顯示驅(qū)動(dòng)電路一般由1片8255,4片5407構(gòu)成,不僅硬件資源占用多,而且需要由軟件定時(shí)刷新,軟件資源占用也不少;若是靜態(tài)顯示,8位數(shù)碼管顯示驅(qū)動(dòng)電路一般由8片54LS164構(gòu)成,硬件資源占用太多。現(xiàn)在,一片MAX7219便可完成8位數(shù)碼管的顯示驅(qū)動(dòng)任務(wù)。
MAX7219是一種串行接口的8位數(shù)碼管顯示驅(qū)動(dòng)器。它與通用微處理器只有3根串行線相連,最多可驅(qū)動(dòng)8個(gè)共陰數(shù)碼管或64個(gè)發(fā)光二極管。它內(nèi)部有可存儲(chǔ)顯示信息的8×8靜態(tài)RAM,動(dòng)態(tài)掃描電路,以及段、位驅(qū)動(dòng)器。
它的特點(diǎn)有:串行接口的傳輸速率可達(dá)10MHz;獨(dú)立的發(fā)光二極管段控制;譯碼與非譯碼兩種顯示方式可選;數(shù)字、模擬兩種亮度控制方式;可以級(jí)聯(lián)使用。
MAX7219的典型應(yīng)用如圖1所示。
2 MAX7219使用簡(jiǎn)介
MAX7219的內(nèi)部功能框圖如圖2所示。
MAX7219的數(shù)據(jù)輸入主要由三根輸入線完成。
它們分別是串行數(shù)據(jù)線、時(shí)鐘線與加載線。當(dāng)1個(gè)16位的數(shù)據(jù)從高位到低位依次輸入MAX7219后,在加載的上升沿將D7-D0送入對(duì)應(yīng)的內(nèi)部寄存器。
MAX7219的輸入時(shí)序圖如圖3所示。
MAX7219的串行輸入數(shù)據(jù)格式,高位字節(jié)的高4位保留,低4位為片內(nèi)寄存器地址;低位字節(jié)為8位數(shù)據(jù)。
MAX7219的內(nèi)部寄存器地址分配如表1所示。
此外,MAX7219的RSET值與段電流及LED的驅(qū)動(dòng)電壓有關(guān),應(yīng)按表2選擇。(RSET是ISET端的外接電阻,單位kΩ)
為使MAX7219能夠正常工作,必需在使用前對(duì)其進(jìn)行初始化。MAX7219的軟件初始化框圖略。
正常顯示時(shí)的程序十分簡(jiǎn)單,只需向內(nèi)部寄存器地址X1~X8H寫入相應(yīng)的顯示值即可。
3 MAX7219在發(fā)射顯示中的應(yīng)用
隨著新技術(shù)的不斷運(yùn)用,雷達(dá)的發(fā)射部分變得越來越復(fù)雜,需要指示的內(nèi)容 也越來越多。發(fā)射部分中相當(dāng)數(shù)量的狀態(tài)顯示需要用到數(shù)碼管和發(fā)光二極管等器件,但原先的電路使用的芯片多,驅(qū)動(dòng)數(shù)碼管與發(fā)光二極管的數(shù)量少,所以必需尋找一種集成度高,驅(qū)動(dòng)能力強(qiáng)的芯片來取代原先的電路,MAX7219就是其中一個(gè)很好的選擇。
圖4就是MAX7219在目前發(fā)射顯示中的一個(gè)應(yīng)用實(shí)例。
在圖5中,8位51單片機(jī)與MAX7219組成了一個(gè)數(shù)碼管或發(fā)光二極管的顯示系統(tǒng)。其中單片機(jī)的P1.0作為串行數(shù)據(jù)線,P1.1作為數(shù)據(jù)加載控制線,P1.2作為時(shí)鐘線。由單片機(jī)向MAX7219輸送信息的工作流程描述如下:
(1)將P1.1置“低”;
(2)將P1.0置成與“D15”相同的狀態(tài);
(3)將P1.2先 置“低”,再置“高”,產(chǎn)生1個(gè)移位脈沖將“D15”移入MAX7219;
(4)重復(fù)過程(2)(3)將“D14~D0”移入MAX7219;
(5)將P1.1置“高”,將“D7~D0”送入MAX7219片內(nèi)相應(yīng)的寄存器。
過程(1)~(5)用軟件實(shí)現(xiàn)非常方便,可以由專門的子程序來完成。此外,對(duì)MAX7219各控制寄存器和位寄存器賦值也可方便地由循環(huán)程序來完成。因?yàn)镸AX7219有自動(dòng)的動(dòng)態(tài)刷新功能,所以賦值完畢后,單片機(jī)不必對(duì)它有其它的操作(如定時(shí)刷新),這就大大減輕了單片機(jī)的工作負(fù)擔(dān)。
如果在實(shí)際工作中需要驅(qū)動(dòng)的數(shù)碼管個(gè)數(shù)大于8個(gè),或需要驅(qū)動(dòng)的發(fā)光二極管個(gè)數(shù)大于64個(gè),可以用多片MAX7219的級(jí)連來實(shí)現(xiàn),即將一片MAX7219的串行數(shù)據(jù)輸出與下一片MAX7219的串行數(shù)據(jù)輸入相連,時(shí)鐘信號(hào)與加載信號(hào)多片復(fù)用,圖6就是一個(gè)MAX7219級(jí)連驅(qū)動(dòng)16個(gè)共陰數(shù)碼管的例子。
4 結(jié)束語(yǔ)
經(jīng)過多個(gè)產(chǎn)品的實(shí)際應(yīng)用,證明MAX7219是一種非常好的共陰數(shù)碼管及發(fā)光二極管顯示驅(qū)動(dòng)芯片。它與微處理器只有3根連線,印制板走線簡(jiǎn)單,占用系統(tǒng)軟、硬件資源少。它適用范圍廣,通過改變RSET的阻值,可適用于驅(qū)動(dòng)電壓為1.5V~3.5V,驅(qū)動(dòng)電流為10mA~40mA的所有發(fā)光二極管。它擴(kuò)展能力強(qiáng),可實(shí)現(xiàn)多片的級(jí)連。由于MAX7219具有較多優(yōu)點(diǎn),所以今后它的應(yīng)用將越來越廣泛。