日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 技術(shù)學(xué)院 > 熱搜器件
[導(dǎo)讀]兩片74HC595級(jí)聯(lián)驅(qū)動(dòng)兩個(gè)四連體數(shù)碼管

74HC595:
74HC595是具有8位移位寄存器和一個(gè)存儲(chǔ)器,三態(tài)輸出功能。移位寄存器和存儲(chǔ)器是分別的時(shí)鐘。
數(shù)據(jù)在SHcp的上升沿輸入,在STcp的上升沿進(jìn)入的存儲(chǔ)寄存器中去。如果兩個(gè)時(shí)鐘連在一起,則移位寄存器總是比存儲(chǔ)寄存器早一個(gè)脈沖。移位寄存器有一個(gè)串行移位輸入(Ds),和一個(gè)串行輸出(Q),和一個(gè)異步的低電平復(fù)位,存儲(chǔ)寄存器有一個(gè)并行8位的,具備三態(tài)的總線輸出,當(dāng)使能OE時(shí)(為低電平),存儲(chǔ)寄存器的數(shù)據(jù)輸出到總線。
我的硬件連接:用級(jí)聯(lián)方式連接!
工作順序:?jiǎn)纹瑱C(jī)先送1個(gè)8位數(shù)據(jù)到第一個(gè)595的內(nèi)部移位寄存器->然后數(shù)據(jù)會(huì)送到內(nèi)部的輸出寄存器->輸出
當(dāng)MR(10引腳)為高電平,OE(13引腳)為低電平時(shí),數(shù)據(jù)在SHCP上升沿進(jìn)入移位寄存器,在STCP上升沿輸出到并行端口。
可能這還不太好理解,沒(méi)關(guān)系,咱去程序應(yīng)用中理解!
請(qǐng)看一個(gè)簡(jiǎn)單的程序:
 
sbit SDA1 = P0^0;    //串行數(shù)據(jù)輸入,對(duì)應(yīng)595的14腳SER
sbit SCL1 = P0^1;     //移位寄存器時(shí)鐘輸入,對(duì)應(yīng)595的11腳SCK
sbit SCL2 = P0^2;     //存儲(chǔ)寄存器時(shí)鐘輸入,對(duì)應(yīng)595的12腳RCK
 
unsigned char code duan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
                         //0  1   2   3   4   5   6   7   8   9
unsigned char code wei[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
                      
void delay2ms(void)
{
   unsigned char i,j;
   for(i=133;i>0;i--)
   for(j=6;j>0;j--);
}
 
 
void 595_in(unsigned char Data)
{
unsigned char i;
for(i = 0; i < 8; i++)   //循環(huán)8次,剛好移完8位
{
      SCL1 = 0;        //先將移位寄存器控制引腳置為低   
      _nop_();
      if((Data & 0x80)== 0x80)
           SDA1 =1;
      else
           SDA1 =0;
 
      Data <<= 1;           //將數(shù)據(jù)的次高位移到最高位
 
      SCL1 = 1;            //再置為高,產(chǎn)生移位時(shí)鐘上升沿,上升沿時(shí)數(shù)據(jù)寄存器的數(shù)據(jù)移位
      _nop_();
}
}
 
 
void 595_out(void)
{
      SCL2 = 0;   //先將存儲(chǔ)寄存器引腳置為低
     _nop_();
      SCL2 = 1;    //再置為高,產(chǎn)生移位時(shí)鐘上升沿,上升沿時(shí)移位寄存器的數(shù)據(jù)進(jìn)入數(shù)據(jù)存儲(chǔ)寄存器,更新顯示數(shù)據(jù)。
}
 
 
void main(void)
{
unsigned char i;
for(i=0;i<8;i++)  //有八位數(shù)碼管,八位依次掃描
{
      595_in(wei[i]);  //先傳位碼
      595_in(duan[i]);  //再傳段碼
      595_out();
      delay2ms();             //延遲時(shí)間2ms以內(nèi)
}
}
注:74164和74595功能相仿,都是8位串行輸入轉(zhuǎn)并行輸出移位寄存器。74164驅(qū)動(dòng)電流(25mA)比74595(35mA)的要小,14腳封裝,體積也小些。
74595的主要優(yōu)點(diǎn)是具有數(shù)據(jù)存儲(chǔ)寄存器,在移位過(guò)程中,輸出端的數(shù)據(jù)可以保持不變。這在串行速度慢的場(chǎng)合很有用,數(shù)碼管沒(méi)有閃爍感。
與164只有數(shù)據(jù)清零端相比,595還多有輸出端時(shí)能/禁止控制端,可以使輸出為高阻態(tài)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉