74HC595芯片是74系列的一種,具有速度快、功耗小、操作簡單的特點,可以方便地用于單片機接口進行驅(qū)動LED的操作。本文介紹這種芯片的特點和使用方法,并給出軟硬件的設(shè)計實例。
1.LED顯示器
七段發(fā)光二極管顯示器,又叫LED顯示器,因其價格低廉、功耗較小和性能可靠等優(yōu)點,在各種儀器儀表中得到了廣泛的應(yīng)用?,F(xiàn)在市場上出售得到專用LED驅(qū)動器種類有很多,且大多數(shù)功能較多,但價格相應(yīng)地也較高,如果用在低成本的簡單系統(tǒng)中,不僅是一種資源的浪費,而且增加了產(chǎn)品的成本。用74HC595芯片驅(qū)動LED有以下特點:速度快,功耗較小,LED的數(shù)目多少隨意,既可以控制共陰極的LED顯示器,也可以控制共陽極的LED顯示器,可以軟件控制LED的亮度,還可以在必要的時候關(guān)斷顯示(數(shù)據(jù)保留),以減少功耗,并可隨時喚醒顯示。用它設(shè)計的電路,不僅軟硬件設(shè)計簡單,而且功耗低,驅(qū)動能力強,占用I/O口線較少,是一種造價低廉,應(yīng)用靈活色設(shè)計方案。
2.74HC595介紹
74HC595內(nèi)含8位串入、串/并出移位寄存器和8位三態(tài)輸出鎖存器。寄存器和鎖存器分別有各自的時鐘輸入(SCLK和SCLK),都是上升沿有效。當(dāng)SCLK從低到高電平跳變時,串行輸入數(shù)據(jù)(SDA)移入寄存器;當(dāng)SLCK從低到高電平跳變時,寄存器的數(shù)據(jù)置入鎖存器。清除端(CLR)的低電平只對寄存器復(fù)位(QS為低電平),而對鎖存器無影響。當(dāng)輸出允許控制(EN)為高電平時,并行輸出(Q0~Q7)為高阻態(tài),而串行輸出(QS)不受影響。
圖1 74HC595
74HC595最多需要5根控制線,即SDA、SCLK、SLCK、CLR和EN。其中CLR可以直接接到高電平,用軟件來實現(xiàn)寄存器清零;如果不需要軟件改變亮度,EN可以直接接到低電平,二勇硬件來改變亮度。把其余三根線和單片機的I/O口相接,即可實現(xiàn)對LED的控制。
數(shù)據(jù)從SDA口送入74HC595,在每個SCLK的上升沿,SDA口上的數(shù)據(jù)移入寄存器,在SCLK的第9個上升沿,數(shù)據(jù)開始從QS移出。如果把第一個74HC595的QS和第二個74HC595的SDA相接,數(shù)據(jù)即移入第二個74HC595中,照此一個一個接下去,可接任意多個。數(shù)據(jù)全部送完后,給SLCK一個上升沿,寄存器中的數(shù)據(jù)即置入鎖存器,此時如果EN為低電平,數(shù)據(jù)即從并口Q0~Q7輸出,把Q0~Q7與LED的8段相接,LED就可以實現(xiàn)顯示了。要想軟件改變LED的亮度,只需改變EN的占空比就行了,
3.電路設(shè)計
3.1硬件電路
圖2是用AT89C2051與74HC595接口設(shè)計的顯示面板電路。
圖2 顯示面板電路
P1口的P115、P116、P117用來控制LED的顯示,分別接到SLCK、SCLK和SDA腳。三個數(shù)碼管用來顯示電壓值的大小。在電路板上,LED3在最左邊,LED1在最右邊,送數(shù)據(jù)時,先送LED3的顯示碼,最后送LED1的顯示碼。LED的亮度用PR1~PR3的阻值來控制。
3.2顯示驅(qū)動程序
用DISP1、DISP2、DISP3三個連續(xù)的單元存放顯示數(shù)據(jù),在CPU初始化完成后,調(diào)用LRDISP子程序清除74HC595的寄存器,在以后調(diào)用顯示子程序DISPLAY前就不用再調(diào)用清除子程序了。現(xiàn)將兩個子程序?qū)懗鋈缦拢?/div>
清除子程序:
CLRDISP:
MOVR2,#24; 三個數(shù)碼管,一共24位
CLRBIT:
CLRSCLK;寄存器時鐘拉低
CLRC;寄存器清零
MOVSDA,C;送入74HC595
SETBSCLK;時鐘的上升沿送入寄存器
DJNZR2,CLRBIT;送完24位
RET;子程序返回
顯示子程序:
DISPLAY:
CLRSLCK;鎖存器時鐘拉低
MOVR3,#3;三個數(shù)碼管
MOVR0,#DISP3;從第三個開始送
DISP1:
MOVA,@R0;送8位數(shù)到74HC595
MOVR2,#8
DISP2:
CLRSCLK
RLCA
MOVSDA,C
SETBSCLK
DJNZR2,DISP2;送完一個字節(jié)
DECR0;送下一個數(shù)碼管的顯示數(shù)據(jù)
DJNZR3,DISP1;送完三個字節(jié)
SETBSLCK;時鐘的上升沿寄存器數(shù)據(jù)送入鎖存器
RET;子程序返回
結(jié)束語
從以上例子可以看出,用74HC595設(shè)計LED驅(qū)動電路,硬件和軟件的設(shè)計都不存在復(fù)雜的技術(shù)問題,特別是軟件設(shè)計。另外,74HC595不僅可以用來驅(qū)動LED顯示器,而且能夠用來驅(qū)動發(fā)光二極管,每個74HC595可以同時驅(qū)動8個發(fā)光二極管。在I/O口線較為緊張的情況下,這不失為一種解決方案。在對產(chǎn)品的體積要求不高、并且希望降低成本時,采用這種方案較為理想。
電話:18923864027(同微信)
QQ:709211280
〈烜芯微/XXW〉專業(yè)制造二極管,三極管,MOS管,橋堆等,20年,工廠直銷省20%,上萬家電路電器生產(chǎn)企業(yè)選用,專業(yè)的工程師幫您穩(wěn)定好每一批產(chǎn)品,如果您有遇到什么需要幫助解決的,可以直接聯(lián)系下方的聯(lián)系號碼或加QQ/微信,由我們的銷售經(jīng)理給您精準(zhǔn)的報價以及產(chǎn)品介紹
相關(guān)閱讀