基于Max+Plus II和VHDL的電子密碼鎖設計
1.1 鍵盤(pán)控制
鍵盤(pán)主要完成向系統輸入數據,傳送命令等功能。它是一個(gè)機械彈性按鍵開(kāi)關(guān)的集合,利用機械觸點(diǎn)的合、斷作用產(chǎn)生高、低電平。通過(guò)對電平高低狀態(tài)的檢測,以確認按鍵按下與否。一個(gè)電壓信號通過(guò)機械觸點(diǎn)的斷開(kāi)、閉合過(guò)程的波形如圖2所示。
在該鍵盤(pán)電路中,Count模塊提供鍵盤(pán)的行掃描信號Q[3..0]。在沒(méi)有按鍵按下時(shí),信號EN為高電平,行掃描輸出信號Q[3..0]的循環(huán)變化順序為0001 OO100100 1000 0001(依次掃描4行按鍵);當有按鍵按下時(shí),信號EN為低電平,行掃描輸出信號Q[3..0]停止掃描,并鎖存當前的行掃描值。例如按下第一行的按鍵,那么Q[3..O]=0001。
Keyvalue模塊的主要功能是對輸入按鍵的行信號Q[3..0]和列信號14[3..0]的當前組合值進(jìn)行判斷來(lái)確定輸入按鍵的鍵值。
Contrl模塊的主要功能是實(shí)現按鍵的消抖,判斷是否有按鍵按下。確保對按鍵的提取處于圖2所示的閉合穩定時(shí)間范圍內,這就對本模塊的輸入時(shí)鐘信號有一定的要求,在本設計中該模塊輸入的時(shí)鐘信號頻率為64 Hz。Smdisplay模塊主要是完成數碼管動(dòng)態(tài)掃描和七段譯碼顯示的功能。
1.2 音樂(lè )演奏電路Songer
根據聲樂(lè )學(xué)知識,組成樂(lè )曲的每個(gè)音符的發(fā)音頻率值及其持續的時(shí)間是樂(lè )曲能連續演奏所需的兩個(gè)基本要素。獲得這兩個(gè)要素所對應的數值以及通過(guò)純硬件的手段來(lái)利用這些數值實(shí)現所希望樂(lè )曲的演奏效果是關(guān)鍵。如圖3所示,該電路需要由NOTETABS(音調發(fā)生器)、TONETABA、SPEAKER(數控分頻器)三個(gè)模塊組成,分別實(shí)現了聲音產(chǎn)生、節拍控制、音調控制的功能。
1.3 密碼設置
Set模塊是實(shí)現密碼鎖功能的核心模塊。其主要作用是設置密碼,Set為設置密碼的有效信號,可以實(shí)現修改密碼的功能。En為輸入密碼確認信號,當輸入完六位密碼后確認輸入,一旦輸入的密碼跟所設置的密碼一致時(shí),則輸出信號OP有效(高電平);OP控制演奏音樂(lè ),此時(shí)音樂(lè )響起。若密碼不正確,則指示輸入錯誤及輸入次數,輸完三次無(wú)效后密碼鎖鎖死,必須由RESET信號(啟動(dòng)信號,給一個(gè)低電平)重新打開(kāi)密碼鎖功能。
2 電路的VHDL描述
鍵盤(pán)控制電路,音樂(lè )演奏電路以及密碼設置模塊均使用硬件描述語(yǔ)言VHSIC Hardware Description Lan-guage(VHDL)設計而成。例如:TONETABA的VHDL模型如下:
VHDL語(yǔ)言具有很強的電路描述和建模能力,能從多個(gè)層次對數字系統進(jìn)行建模和描述,支持各種模式的設計方法:自頂向下與自底向上或混合方法,從而大大簡(jiǎn)化了硬件的設計任務(wù),提高了設計效率和可靠性。它同時(shí)具有與具體硬件電路無(wú)關(guān)和與設計平臺無(wú)關(guān)的特性,所以用VHDL進(jìn)行電子系統設計,設計者可以專(zhuān)心致力于其功能的實(shí)現,而不需要對其他相關(guān)因素花費過(guò)多的時(shí)間和精力。
評論