電子密碼鎖的EDA設(shè)計(jì)與實(shí)現(xiàn)
時(shí)序產(chǎn)生電路用于產(chǎn)生電路中三種不同頻率的工作脈沖波形,包括系統(tǒng)時(shí)鐘信號(hào)、彈跳消除取樣信號(hào)和鍵盤掃描信號(hào)。
鍵盤電路可提供鍵盤掃描信號(hào)。該信號(hào)由ky3~ky0進(jìn)入鍵盤,其變化的順序?yàn)?110-1101-1011-0111-1110……周而復(fù)始。掃描信號(hào)0111代表掃描的為*、0、#這一排按鍵,當(dāng)*這個(gè)按鍵被按下時(shí),由kx2~kx0讀出的值為011。按鍵位置的數(shù)碼關(guān)系如表1所列。
彈跳消除電路可避免誤操作發(fā)生。由于設(shè)計(jì)中采用的矩陣式鍵盤是機(jī)械開關(guān)結(jié)構(gòu),因此,在開關(guān)切換的瞬間,會(huì)在接觸點(diǎn)出現(xiàn)信號(hào)來(lái)回彈跳的現(xiàn)象。為使電子密碼鎖可靠工作,必須加上彈跳消除電路。彈跳消除電路采用軟件延時(shí)的方法消除抖動(dòng),其仿真波形如圖3所示。從圖3中可以看出,若采樣信號(hào)連續(xù)兩次或超過(guò)兩次檢測(cè)到高電平信號(hào),說(shuō)明按鍵狀態(tài)確實(shí)發(fā)生了變化,此時(shí)電路輸出一個(gè)時(shí)鐘周期的按鍵信號(hào);否則當(dāng)作抖動(dòng)處理而不予理會(huì),以此來(lái)消除抖動(dòng)。
對(duì)于鍵盤譯碼電路,由于圖2中的鍵盤按鍵分為數(shù)字按鍵和功能按鍵,每一個(gè)按鍵可負(fù)責(zé)不同的功能,而鍵盤所產(chǎn)生的輸出(也就是掃描回復(fù)信號(hào))卻無(wú)法直接拿來(lái)用作密碼鎖控制電路的輸入,所以必須由鍵盤譯碼電路來(lái)規(guī)劃每個(gè)按鍵的輸出形式,以便執(zhí)行相應(yīng)的動(dòng)作。
鍵盤存儲(chǔ)電路可將每次掃描產(chǎn)生的新按鍵數(shù)據(jù)存儲(chǔ)下來(lái),因此新數(shù)據(jù)可能會(huì)覆蓋前面的數(shù)據(jù),所以需要一個(gè)按鍵存儲(chǔ)電路,以將整個(gè)鍵盤掃描完畢的結(jié)果記錄下來(lái)。
圖4所示是密碼鎖輸入模塊的仿真波形,圖中,數(shù)字鍵數(shù)據(jù)“0、1、2、3、4、5、6、7、8、9”和功能鍵數(shù)據(jù)“0100、0001”所得到的輸出不同,由此可證明密碼鎖輸入模塊的正確性。
評(píng)論