74HC595詳解
工作電壓2-6V,推薦5V。
14腳串行輸入:595的數(shù)據(jù)來源只有這一個口,一次只能輸入一個位,那么連續(xù)輸入8次,就可以積攢為一個字節(jié)了。
13腳OE 輸出使能控制腳:如果它不工作,那么595的輸出就是高阻態(tài),595就不受我們程序控制了,這顯然違背我們的意愿。OE的上面畫了一條線,表示他是低電平有效。于是我們將他接GND。
10腳SRCLR 位移寄存器清空腳:他的作用就是將位移寄存器中的數(shù)據(jù)全部清空,這個很少用到,所以我們一般不讓他起作用,也是低電平有效,于是我們給他接VCC。
12腳RCLK存儲寄存器:數(shù)據(jù)從位移寄存器轉(zhuǎn)移到存儲寄存器,也是需要時鐘脈沖驅(qū)動的,這就是12腳的作用。它也是上升沿有效。
11腳SRCLK移位寄存器時鐘輸入:當一個新的位數(shù)據(jù)要進來時,已經(jīng)進入的位數(shù)據(jù)就在移位寄存器時鐘脈沖的控制下,整體后移,讓出位置。
分析下數(shù)據(jù)輸入和輸出過程:
假如,我們要將二進制數(shù)據(jù)0111 1111 輸入到595的移位寄存器中,下面來上一張動態(tài)圖,模擬了前2個位輸入的情景。 第一個從SER送入的bit將會從Q7出去。
數(shù)據(jù)傳輸完畢后是這樣的。
存儲寄存器:
存儲寄存器是直接和8個輸出引腳相通的,將移位寄存器的數(shù)據(jù)轉(zhuǎn)移到存儲寄存器后,Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 就可以接受帶到我們開始輸入的一個字節(jié)的數(shù)據(jù)。所謂存儲寄存器,就是數(shù)據(jù)可以存在這個寄存器中,并不會隨著一次輸出就消失,只要595不斷電,也沒有新的數(shù)據(jù)從移位寄存器中過來,數(shù)據(jù)就一直不變且有效。新的數(shù)據(jù)過來后,存儲寄存器中的數(shù)據(jù)就會被覆蓋更新。
在上面的程序中沒用到9腳,如果要讓2個595串聯(lián)起來的話,就需要它了。
想一下,我們將移位寄存器的8個位填滿后,再往移位寄存器中塞一個會怎么樣?也許你想到了。
對!移位寄存器的最后一個位數(shù)據(jù)會被擠出去,從哪里出去?就是從9腳輸出的(第一個595移位寄存器需要8個脈沖,級聯(lián)的下一個595第一位Q0實際需要第9個脈沖...以此類推)。如果我們把第一個595的
9腳連接到第二個的串行數(shù)據(jù)輸入腳SER,那么,就形成了595的級聯(lián)。這樣,如果我們用2個595組合成了一個新的超級595,