這裏寫到的74HC165是個並行輸入串行輸出的邏輯芯片,瞭解一款芯片都是從它的datasheet開始,下面以NXP公司74HC165爲例進行介紹。
先看下該芯片datasheet的總體描述:
74HC165/74HCT165是一個8位串行或並行輸入,串行輸出的移位寄存器。具有一個串行輸入(DS引腳),8個並行數據輸入(D0到D7)和兩個互補串行輸出的功能。當PL引腳爲低時,D0-D7端的數據進入移位寄存器。當PL引腳爲高時,數據從DS引腳串行進入寄存器。當CE引腳爲低時,使能時鐘,數據在時鐘CP上升時數據進行移位。當CE引腳爲高時,失能時鐘,時鐘輸入無效。
我們再結合芯片的功能框圖來理解工作過程:
從上圖可以看出,PL引腳控制並行數據的獲取,低電平有效,數據進入8位移位寄存器,再由CP和CE兩個引腳配合控制移位寄存器裏的數據從Q7引腳串行輸出。
再看看芯片真值表:
第一個紅框是並行加載數據的,只要PL爲低電平即可;
第二個藍框是串行移位,此時要求PL爲高電平,CE爲低電平,Q0~Q6在CP每來一個上升沿時依次往Q7移位;
第三個紫框是保持當前狀態輸出。
芯片時序圖:
還有一個重要的信息,就是芯片的引腳定義:
從芯片的描述,我們可能還不是很清楚具體的工作原理以及過程,下面圖文並茂爲大家詳細講述下。
最後對如何驅動74HC165總結幾個步驟:
1、引腳1(PL)爲低電平,獲取並行數據輸入,數據移入移位寄存器;
2、將引腳1置爲高電平,停止並行數據輸入;
3、引腳15(OE)爲低電平,使能時鐘輸入;
4、時鐘CP每產生一個上升沿,移位寄存器中的數據從高位(Q6)到低位(Q0)依次移出到Q7。