前言:在做mcu的外部按鍵掃瞄時,74hc164是一種不錯的選擇。筆者在使用它的過程中,遇到了一些問題,在這裡整理記錄下。
74hc164需要結合定時器來進行按鍵掃瞄,這裡將定時器的定時時間定為2.5ms,即每2.5ms呼叫一次該函式,將i++。這裡選擇的接法是按鍵公共端上拉,74hc164定時掃瞄出低電平。
/*74hc164是傳入並出的8位暫存器,想要定時掃瞄出低電平,可以將建立如下的掃瞄值表*/
const uint8_t tab_74hc164[8]
=;/** keybuff:傳入按鍵值緩衝區的位址
* tab:傳入掃瞄鍵值表,為上述的tab_74hc164
* i:掃瞄乙個位元組中的哪一位,作為tab的索引使用
*/void
key_74hc164
(uint8_t *keybuff,uint8_t const
*tab,uint8_t i)
while
(j);
}/*延遲函式*/
總結:74hc164是乙個串入並出的8位暫存器,在使用它進行按鍵掃瞄時需要分清它和公共端誰負責高電平,誰負責低電平。最後需要注意訊號電平的延遲時間的問題。
74hc164如何驅動數碼管
74hct164是高速矽門 cmos 器件,與低功耗肖特基型 ttl lsttl 器件的引腳相容。74hc164 74hct164是8位邊沿觸發式移位暫存器,序列輸入資料,然後並行輸出。資料通過兩個輸入端 dsa 或 dsb 之一序列輸入 任一輸入端可以用作高電平使能端,控制另一輸入端的資料輸入。兩...
74HC164控制數碼管顯示
剛開始的時候把74hc164當成了74hc573使了,還看了原理圖,半天摸不出個所以然,然後上網查了資料,才知道原來74hc164是串入並出的,此時才知道思考方向出錯了。於是再看原理圖再分析示例 方有所獲。原來164只有乙個輸入端sda p10 乙個控制位clk p11 還有四個位選 dig1 di...
用74HC165讀8個按鍵狀態
源 用74hc165讀8個按鍵狀態 源 74lv165與74hc595 使用 74lv165是8位並行負載或序列輸入移位暫存器,末級提供互補序列輸出 q7和q7 並行負載 pl 輸入為低電平時,來自d0至d7輸入的並行資料會非同步載入到暫存器中。輸入pl為高電平時,資料在輸入ds處序列輸入暫存器。其...