新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 74HC595在單片機(jī)上的應(yīng)用及程序

74HC595在單片機(jī)上的應(yīng)用及程序

作者: 時(shí)間:2016-12-01 來源:網(wǎng)絡(luò) 收藏
74HC595具有8位串入并出的三態(tài)門電路。

高速率:最高55MHz(5V工作電壓)

本文引用地址:http://butianyuan.cn/article/201612/324569.htm

寬的工作電壓范圍:2V -6V

每個(gè)口的最大電流值(QA-QH):±35mA

當(dāng)單片機(jī)的I/O資源比較緊張時(shí),采用595并進(jìn)行級(jí)聯(lián)是一個(gè)很好的選擇。

管腳定義:

PIN NO symbol name and function

15 QA data output

1 QB data output

2 QC data output

3 QD data output

4 QE data output

5 QF data output

6 QG data output

7 QH data output

8 GND ground

9 QH’ serial data outputs

10 /SCLR shift register clock input

11 SCK shift register clock input

12 RCK storage register clock input

13 /G output enable input

14 SI serial data input

16 Vcc positive supply voltage

時(shí)序圖:

請(qǐng)參照595的數(shù)據(jù)手冊(cè)

程序編制:

端口定義 設(shè)置:

sbit DATA=P1^5;

sbit SHIFT=P1^6;

sbit STORAGE=P1^7;

1、寫595

Void write_595(uchar x)//功能:將無符號(hào)8位數(shù)x,寫入到595的shife register

{

Uchar j;

For(j=0;j<8;j++)//循環(huán)8次,以便shift register保存8位數(shù)據(jù)

{

X=x<<1;//將數(shù)據(jù)左移一位,最高位數(shù)據(jù)進(jìn)入到CY中

SHIFT=0;//shift端置0

_nop_();

_nop_();

_nop_();

DATA=CY;//將一位數(shù)據(jù)送入595串口數(shù)據(jù)端

SHIFT=1;//shift端產(chǎn)生一個(gè)上升沿,數(shù)據(jù)就送入到了shift register

_nop_();//延時(shí)

_nop_();

_nop_();

SHIFT=0;//shift端產(chǎn)生一個(gè)下降沿,shift register內(nèi)容保持不變

}

}

3、595數(shù)據(jù)的輸出

/********595輸出函數(shù)函數(shù)*******************/

void out_595(void)

{

STORAGE=0;

_nop_();

_nop_();

STORAGE=1;//上升沿shift register 的內(nèi)容保存到store register

_nop_();

_nop_();

STORAGE=0;//下降沿store register 的內(nèi)容保持不變

}

4、只要在主函數(shù)中分別調(diào)用以上兩個(gè)函數(shù)即可將要顯示的數(shù)值X顯示出來。

當(dāng)然為方便顯示可以定義一個(gè)數(shù)組。

如一個(gè)7段數(shù)碼管的顯示,595的QA,QB,QC,QD,QE,QF,QG, ,分別對(duì)應(yīng)數(shù)碼管的a,b,c,d,e,f,g,

數(shù)碼管共陽極,則可以定義這樣一個(gè)數(shù)組。

uchar code num[]={0x40,0xf3,0x89,0xa1,0xb2,0xa4,0x84,0xf1,0x80,0x20} ; //0-9代碼

5、當(dāng)兩個(gè)或多個(gè)595進(jìn)行級(jí)聯(lián)時(shí)將

11 SCK shift register clock input

12 RCK storage register clock input

進(jìn)行并聯(lián),將9 QH’ serial data outputs

連接另一片的14 SI serial data input

然后再發(fā)送數(shù)據(jù)時(shí),先連續(xù)發(fā)送數(shù)據(jù),最后在out。

如:

write_595(duanma);

write_595(num[liangdu]);

out_595();

完整詳細(xì)程序請(qǐng)打開:http://www.51hei.com/chip/1799.html



關(guān)鍵詞: 74HC595單片

評(píng)論


技術(shù)專區(qū)

關(guān)閉