74HC595和74hc164一樣是在單片機系統中常用的芯片之一他的作用就是把串行的信號轉為并行的信號,常用在各種數碼管以及點陣屏的驅動芯片, 使用74HC595可以節約單片機mcu的io口資源,用3個io就可以控制8個數碼管的引腳,他還具有一定的驅動能力,可以免掉三極管等放大電路,所以這塊芯片是驅動數碼管的神器.應用非常廣泛,點這里可以下載完整的74HC595中文資料:http://www.sahacks.com/f/74HC595中文資料.pdf
下面我來介紹一下 74HC595工作原理:
74HC595的數據端:
QA--QH: 八位并行輸出端,可以直接控制數碼管的8個段。
QH': 級聯輸出端。我將它接下一個595的SI端。
SI: 串行數據輸入端。
74hc595的控制端說明:
/SCLR(10腳): 低電平時將移位寄存器的數據清零。通常我將它接Vcc。
SCK(11腳):上升沿時數據寄存器的數據移位。QA-->QB-->QC-->...-->QH;下降沿移位寄存器數據不變。(脈沖寬度:5V時,大于幾十納秒就行了。我通常都選微秒級)
控制移位寄存器
SCK 上升沿 數據 移位 SCK 下降沿 數據 保持
RCK(12腳):上升沿時移位寄存器的數據進入存儲寄存器,下降沿時存儲寄存器數據不變。通常我將RCK置為低電平,當移位結束后,在RCK端產生一個正脈沖(5V時,大于幾十納秒就行了。我通常都選微秒級),更新顯示數據。
控制存儲寄存器
RCK 上升沿 移位寄存器 的 數據進入 存儲寄存器 RCK 下降沿 存儲寄存器數據不變
/G(13腳): 高電平時禁止輸出(高阻態)。如果單片機的引腳不緊張,用一個引腳控制它,可以方便地產生閃爍和熄滅效果。比通過數據端移位控制要省時省力。
注:74164和74595功能相仿,都是8位串行輸入轉并行輸出移位寄存器。74164的驅動電流(25mA)比74595(35mA)的要小,14腳封裝,體積也小一些。
74595的主要優點是具有數據存儲寄存器,在移位的過程中,輸出端的數據可以保持不變。這在串行速度慢的場合很有用處,數碼管沒有閃爍感。
與74hc164只有數據清零端相比,74hc595還多有輸出端時能/禁止控制端oe,可以使輸出為高阻態。所以是用這塊芯片會更方便
74HC595是具有8位移位寄存器和一個存儲器,三態輸出功能。 移位寄存器和存儲器是分別的時鐘。數據在SHcp(見時序圖)的上升沿輸入,在STcp(見時序圖)的上升沿進入的存儲寄存器中去。如果兩個時鐘連在一起,則移位
寄存器總是比存儲寄存器早一個脈沖。移位寄存器有一個串行移位輸入(Ds),和一個串行輸出
(Q7’),和一個異步的低電平復位,存儲寄存器有一個并行8位的,具備三態的總線輸出,當使
能 OE時(為低電平),存儲寄存器的數據輸出到總線。
這里有單片機驅動74hc595的方法:http://www.sahacks.com/chip/1799.html
74HC595和74HC164的區別主要有:
1、74HC595有鎖存器,所以在移位過程中輸出可以保持不變;而74HC164沒有鎖存器,所以每產生一個移位時鐘輸出就改變一次。這是二者的最大區別
2、74HC595使用專門的Q7'引腳實現多片級聯;74HC164直接使用輸出引腳Q7級聯
3、74HC595有使能OE,OE無效時輸出引腳為高阻態;而74HC164沒有使能引腳
4、74HC595的復位是針對移位寄存器的,想要復位LATCH寄存器還須ST_CP上升沿將移位寄存器內容加載到鎖存寄存器;也就是說:74HC595的復位是同步的,74HC164的復位是異步的,所以74HC164的復位更簡單
5、74HC164有對應的74HC165并轉串芯片