用一只引腳為微控制器輸入并行數據
PL信號上升后,微控制器的I/O端口上的較短脈沖在移位寄存器的時鐘輸入端CP(不是在PL輸入端)產生脈沖。這些時鐘脈沖的持續(xù)時間必須足夠長,應超過延時R1C1,但不能超過R2C2。這些時鐘脈沖使數據移位,使得8比特在移位寄存器輸出端QQ順序出現。
如果微控制器的數據方向短暫地改變,以便借助高阻抗輸入,那么上述移位寄存器數據會占支配地位,這是由于R1、R2、R3的相對值所致,R3值低得多。高阻抗狀態(tài)存在的時間必須短于R1C1時間常數(圖2)。微控制器現在讀取單一數據比特。三個不同周期的作用產生了三種功能:加載、時鐘、數據讀取。微控制器改變端口方向、讀取引腳數據、把引腳方向重設為輸出所需的時間決定了時序。例如,1ms微控制器需要10ms。
為避免假CP脈沖,該時間常數必須低于0.33R1C1,因此R1C1可以是30ms,而R2C2可以是200ms。這些設置允許在大約1ms內完成一次8比特讀取。為實現更快操作,可把RC繼電器換成精密可再觸發(fā)單穩(wěn)多頻振蕩器(如NXP公司的74HC123)和邏輯門??捎酶嘁莆患拇嫫鲾U充此方案,來讀取數十個信號。
請注意:74HC165移位寄存器中的內部邏輯阻止CP信號在LD處于有效狀態(tài)時使數據移位。電阻器R4確保LD和CP的正確順序。二極管D1和D2使每個電容迅速放電,來“復位”R1C1和R2C2的延時功能。
評論