電子密碼鎖的EDA設計與實現
時序產生電路用于產生電路中三種不同頻率的工作脈沖波形,包括系統時鐘信號、彈跳消除取樣信號和鍵盤掃描信號。
鍵盤電路可提供鍵盤掃描信號。該信號由ky3~ky0進入鍵盤,其變化的順序為1110-1101-1011-0111-1110……周而復始。掃描信號0111代表掃描的為*、0、#這一排按鍵,當*這個按鍵被按下時,由kx2~kx0讀出的值為011。按鍵位置的數碼關系如表1所列。

彈跳消除電路可避免誤操作發生。由于設計中采用的矩陣式鍵盤是機械開關結構,因此,在開關切換的瞬間,會在接觸點出現信號來回彈跳的現象。為使電子密碼鎖可靠工作,必須加上彈跳消除電路。彈跳消除電路采用軟件延時的方法消除抖動,其仿真波形如圖3所示。從圖3中可以看出,若采樣信號連續兩次或超過兩次檢測到高電平信號,說明按鍵狀態確實發生了變化,此時電路輸出一個時鐘周期的按鍵信號;否則當作抖動處理而不予理會,以此來消除抖動。

對于鍵盤譯碼電路,由于圖2中的鍵盤按鍵分為數字按鍵和功能按鍵,每一個按鍵可負責不同的功能,而鍵盤所產生的輸出(也就是掃描回復信號)卻無法直接拿來用作密碼鎖控制電路的輸入,所以必須由鍵盤譯碼電路來規劃每個按鍵的輸出形式,以便執行相應的動作。
鍵盤存儲電路可將每次掃描產生的新按鍵數據存儲下來,因此新數據可能會覆蓋前面的數據,所以需要一個按鍵存儲電路,以將整個鍵盤掃描完畢的結果記錄下來。
圖4所示是密碼鎖輸入模塊的仿真波形,圖中,數字鍵數據“0、1、2、3、4、5、6、7、8、9”和功能鍵數據“0100、0001”所得到的輸出不同,由此可證明密碼鎖輸入模塊的正確性。

評論