<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設計應用 > 基于狀態(tài)機的語音電子密碼鎖設計

          基于狀態(tài)機的語音電子密碼鎖設計

          ——
          作者: 時間:2007-11-02 來源:電子工程師 收藏

            引 言

            隨著電子技術的發(fā)展,具有防盜報警、語音提示等功能的代替密碼量少、安全性差的機械式密碼鎖已是必然趨勢。目前大部分密碼鎖采用單片機進行設計,電路較復雜,性能不夠靈活。本文采用先進的EDA(電子設計自動化)技術,利用QuartusⅡ工作平臺和(超高速集成電路硬件描述語言),設計了一種新型的。該密碼鎖具有密碼預置、修改、語音提示和3次輸入錯誤則系統(tǒng)進入定時鎖定并報警等功能,用(現場可編程門陣列)芯片和語音芯片ISD2560實現。由于充分利用了芯片密度大、功耗低、可重復編程和具有嵌入式陣列塊的結構特點,且ISD2560具有抗斷電、音質好、使用方便等優(yōu)點,因而該密碼鎖體積小、功耗低、價格低、安全可靠、具有智能語音提示、維護和升級方便。

            1 軟件設計

            軟件用來實現,相比較于VerilogHDL,具有更好的語法的嚴格性,但是其嚴格的語法一定程度上限制了錯誤的產生,調試較容易。VHDL的系統(tǒng)抽象能力比Verilog HDL強,在系統(tǒng)描述上占有一定的優(yōu)勢,但在門級描述上稍顯遜色。

            

          本設計軟件模塊框圖

            本設計軟件模塊框圖如圖1所示,共8個模塊。

            在本系統(tǒng)中,密碼由4位十進制數組成,初始密碼為“0000”,可由用戶任意設定密碼。密碼輸入正確時,則進入開鎖狀態(tài)。如果密碼連續(xù)輸入3次錯誤時,則系統(tǒng)進入自我定時鎖定,并報警。在輸入過程中,系統(tǒng)可以發(fā)音提示(也可屏蔽掉)用戶輸入的數字,或者說明當前的狀態(tài)。

            下面介紹狀態(tài)機和ISD2560控制電路的實現。

            本設計的狀態(tài)圖見圖2。

            其中state為狀態(tài)代碼,并通過state_out[3..0]端口傳給其他電路。一開機,系統(tǒng)處在空閑狀態(tài),當按鍵處理電路傳來確定使能的信號compare_en時,狀態(tài)機等待effect_out腳的高電平脈沖信號,如果等不到則進入S2狀態(tài),即進入密碼輸入一次錯誤狀態(tài),如果等到則進入pass狀態(tài)即開門狀態(tài),如果3次輸入密碼錯誤則系統(tǒng)進入死鎖倒計時狀態(tài),拉高lock_pin腳,啟動計數器。

            

          本設計的狀態(tài)圖

            軟件流程圖見圖3。

            

          軟件流程圖

            當計數滿時則計數電路拉高unlock腳電平,狀態(tài)機檢測到unlock腳下為高電平時,則表示鎖定時間結束,復位lock_pin的電平,在下一個時鐘上升沿到來時,進入下一個狀態(tài)即idle狀態(tài)。只有pass狀態(tài)下從按鍵處理電路傳來modify_pin為高電平時,才能進入modify狀態(tài),即密碼修改狀態(tài)。當檢測到modify_pin腳電平復位為低電平時則表明修改密碼完成,狀態(tài)機在下一個時鐘上升沿到來之時,進入下一個狀態(tài)即idle狀態(tài)。如果在pass狀態(tài)時,狀態(tài)機檢測到close_pin腳電平被拉高時,則表明用戶要關門,此系統(tǒng)在下一個時鐘上升沿到來之時,返同空閑狀態(tài)。

            狀態(tài)機還控制紅綠黃3個發(fā)光二極管與buzz-er蜂鳴器,仿真波形如圖4所示。當系統(tǒng)處在空閑狀態(tài)、S2狀態(tài)、S3狀態(tài)時黃燈亮(S2、S3為第2次、第3次輸入密碼錯誤的狀態(tài));系統(tǒng)處在修改密碼的狀態(tài)即modify狀態(tài)時,3個燈一起亮;當處于pass狀態(tài)時,綠燈亮;當系統(tǒng)處于鎖定狀態(tài)即locked狀態(tài)時,紅燈亮,且蜂鳴器發(fā)出報警的聲音,直至跳出該狀態(tài)。

            

          仿真波形

            本設計采用計數器方法在ce腳上產生一個低電平脈沖以控制ISD2560芯片放錄音。當innum收到一個新的數值時,則開始計數;當計數器計到一半時,使ce腳輸出低電平;當計數大于最高數的一半時,則復位ce腳電平,直到下次計數開始。當語音數據有多段時,先將要播放的語音段數存到一個變量中,并將各段地址存到另一個多位的變量中,然后開始放音并檢測eom腳的電平。當檢測到eom腳的低電平脈沖時,就表明放音結束,就讓段數變量減1,然后給地址線再賦新值,并且使能計數器,再次使ce腳產生一個低電平脈沖,繼續(xù)放音。這樣直至語音段數變量為0時,則表明語音播放完畢,系統(tǒng)不再響應芯片eom腳的上升沿脈沖。圖5為ISD2560控制電路的仿真波形圖。

            

          ISD2560控制電路的仿真波形圖

            表1為與innum對應的發(fā)音。

            

          與innum對應的發(fā)音

            本設計采用模塊化編程,各模塊分工明確,各自實現各自的功能,并通過信號線彼此相連,這樣的好處是調試、修改、移植程序方便。使用資源和生成總的模塊電路圖分別如圖6和圖7所示。

            

          使用資源和生成總的模塊電路圖

            2 硬件電路

            硬件部分主要包括中央處理器 芯片——EP1C3T144C6、輸入小鍵盤、輸出4位數碼管、ISD2560語音芯片、LM386音頻放大和揚聲器,如圖8所示。FPGA芯片用米直接控制其他元件的工作,對小鍵盤的輸入,通過一定的算法實現的功能。通過控制ISD2560的控制腳的電平狀態(tài),達到控制其發(fā)音從而實現智能語音提示的效果。3個發(fā)光二極管分別用于顯示當前的狀態(tài),蜂鳴器用于誤碼報警。

            

          硬件電路
           

            3 結束語

            本設計中采用了Altera公司的EP1C3T144C6芯片進行設計,可以極大地減少其他分立元件或其他芯片的使用,有效地縮小了印制電路板面積,提高了系統(tǒng)的可靠性,大大縮短了系統(tǒng)開發(fā)的周期。由于采用VHDL進行設計,用軟件實現硬件電路,具有良好的可移植性,可隨時在線更改邏輯設計及有關參數,允分體現FPGA的優(yōu)越性,具有一定的實用性。

          蜂鳴器相關文章:蜂鳴器原理


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();