1.開鎖代碼為8位二進(jìn)制數(shù),當(dāng)輸入代碼的位數(shù)和位值與鎖內(nèi)給定的密碼一致,且按規(guī)定程序開鎖時(shí),方可開鎖,并點(diǎn)亮開鎖指示燈LT。否則,系統(tǒng)進(jìn)入“錯(cuò)誤”狀態(tài),并發(fā)出報(bào)警信號(hào)。 2.開鎖程序由設(shè)計(jì)者確定,并要求鎖內(nèi)給定的密碼是可調(diào)的,且預(yù)置方便,保密性好。 3.串行數(shù)字鎖的報(bào)警方式是點(diǎn)亮77指示燈LF,并使喇叭鳴叫來(lái)報(bào)警,報(bào)警動(dòng)作響1分鐘,停10秒鐘后再重復(fù)出現(xiàn),直到按下復(fù)位開關(guān),報(bào)警才停止。此時(shí),數(shù)字鎖自動(dòng)進(jìn)入等待下一次開鎖的狀態(tài)。 4.報(bào)警器可以兼作門鈴用,門鈴響的時(shí)間通常為7~10秒。 2 設(shè)計(jì)分析及系統(tǒng)方案設(shè)計(jì) 系統(tǒng)的結(jié)構(gòu)圖如下圖所示: 
本實(shí)驗(yàn)要求串行輸入八位密碼,密碼可以隨意設(shè)置,可以任意更改, 并且能夠存儲(chǔ).而且能夠顯示出當(dāng)前已經(jīng)輸入或者設(shè)置的位數(shù),待輸入八位后通過(guò)比較電路與預(yù)先設(shè)置的密碼進(jìn)行比較.如果輸入的密碼與存儲(chǔ)的密碼相同鎖體打開 如果輸入的密碼與存儲(chǔ)的密碼不同則報(bào)警系統(tǒng)打開發(fā)出警報(bào).由于還要求有門鈴功能所以增加一個(gè)門鈴輸入當(dāng)門鈴按下后 門鈴響十秒鐘。
對(duì)于密碼存儲(chǔ)以及密碼輸入比較部分主要由load 控制。
load為0時(shí)系統(tǒng)功能為設(shè)置密碼,此時(shí)只需要順序串行輸入八位0/1密碼即可,系統(tǒng)將輸入的密碼自動(dòng)保存在存儲(chǔ)器內(nèi)以便于輸入的密碼進(jìn)行比較,當(dāng)load為1時(shí)系統(tǒng)功能為輸入密碼,此時(shí)只需要順序串行輸入八位0/1即可,待輸入八位后系統(tǒng)自動(dòng)將剛輸入的密碼與存儲(chǔ)器內(nèi)的密碼進(jìn)行比較如果密碼正確則開鎖信號(hào)lt為1,否則警報(bào)信號(hào)lf 和響鈴信號(hào)alm為1 lt為0 對(duì)于門鈴部分 當(dāng)檢測(cè)到press信號(hào)的下降沿時(shí)門鈴開始響,計(jì)數(shù)器開始計(jì)數(shù),此時(shí)始終脈沖頻率為50MHz/16MHz=3.125Hz ,此時(shí)當(dāng)計(jì)數(shù)器為30時(shí)既時(shí)間為30/3.125=9.6秒時(shí)門鈴自動(dòng)關(guān)閉。 3系統(tǒng)以及模塊硬件電路設(shè)計(jì)  系統(tǒng)電路圖
系統(tǒng)電路圖如上如所示 其中clk1腳接入50MHz的方波,load有兩種狀態(tài)----高電平和低電平狀態(tài)。k0 k1 press clr 分別接到四個(gè)去抖開關(guān)上開關(guān)按下去為低電平 lt alm2 lf alm分別接到四個(gè)發(fā)光二級(jí)管上,當(dāng)輸出為1時(shí)二極管發(fā)光。y0[0~6]分別接到HEX7對(duì)應(yīng)的引腳上實(shí)現(xiàn)數(shù)碼管顯示功能。Y1[0~6]分別接到HEX5對(duì)應(yīng)的引腳上實(shí)現(xiàn)數(shù)碼管顯示功能。其余各種邏輯功能由芯片內(nèi)部計(jì)算執(zhí)行來(lái)實(shí)現(xiàn)。芯片內(nèi)部程序通過(guò)對(duì)clk、load、k0、k1、press、clr輸入信號(hào)的處理通過(guò)lt、alm2、lf、alm、y0[0~6]、y1[0~6]進(jìn)行輸出來(lái)達(dá)到系統(tǒng)所需要的功能。
DE2開發(fā)板上使用的元件要給出使用管腳編號(hào)。
4 系統(tǒng)的VHDL設(shè)計(jì) 系統(tǒng)的主要功能是通過(guò)VHDL語(yǔ)言來(lái)實(shí)現(xiàn)的。語(yǔ)言代碼如下。 本系統(tǒng)運(yùn)行在聯(lián)想計(jì)算機(jī)平臺(tái)和Altera DE2平臺(tái),用的是quartus60軟件調(diào)試環(huán)境,系統(tǒng)的參數(shù)選取均按照要求適當(dāng)選取。 對(duì)密碼模塊:開始時(shí),先給系統(tǒng)清零,即使clr為0(按下KEY[3]),若設(shè)置密碼則SW[17]開關(guān)撥下使load為低電平,此時(shí)通過(guò)按去抖開關(guān)KEY[0],KEY[1]進(jìn)行密碼設(shè)置0和1,每輸入一位密碼則數(shù)目管顯示的數(shù)字加1直到輸入第8位 設(shè)置密碼:仿真圖如下如所示。設(shè)置密碼時(shí)將SW[17]撥下使load為低電平并且clr為高電平此時(shí)可以設(shè)置密碼,由圖可以看出設(shè)置的密碼為00000111每設(shè)置一位密碼數(shù)碼管HEX5的七個(gè)引腳都隨著y1[0~6]的變化而變化,進(jìn)而顯示出當(dāng)前的位數(shù)。 
設(shè)置密碼仿真圖 當(dāng)輸入密碼時(shí),SW[17]開關(guān)撥上使load為高電平輸入密碼開始,此時(shí)通過(guò)按去抖開關(guān)KEY[0],KEY[1]進(jìn)行密碼設(shè)置0和1,每輸入一位密碼則數(shù)目管顯示的數(shù)字加1直到輸入第8位。系統(tǒng)自動(dòng)將輸入的密碼與預(yù)設(shè)的密碼進(jìn)行比較如果相同則開鎖。開鎖成功仿真圖如下如所示,此時(shí)設(shè)置的密碼為00001111輸入的密碼為00001111,由圖可以看每設(shè)置一位密碼數(shù)碼管HEX5的七個(gè)引腳都隨著y1[0~6]的變化而變化,進(jìn)而顯示出當(dāng)前的位數(shù)。此時(shí)clr為高電平load為低電平當(dāng)密碼輸入完畢后將load變?yōu)楦唠娖竭M(jìn)行密碼輸入輸入方法與設(shè)置密碼相同沒(méi)設(shè)置一位密碼數(shù)碼管HEX7的七個(gè)引腳都隨著y0[0~6]的變化而變化,進(jìn)而顯示出當(dāng)前的位數(shù)。當(dāng)輸完八位密碼后系統(tǒng)將其與預(yù)先設(shè)置的密碼進(jìn)行對(duì)比,由于設(shè)置與輸入的密碼相同所以lt為高電平開鎖,lf、alm為低電平?jīng)]有反應(yīng)。 
密碼正確開鎖成功仿真圖 開鎖不成功仿真圖如下如所示,此時(shí)設(shè)置的密碼為00000111輸入的密碼為00000011,由圖可以看每設(shè)置一位密碼數(shù)碼管HEX5的七個(gè)引腳都隨著y1[0~6]的變化而變化,進(jìn)而顯示出當(dāng)前的位數(shù)。此時(shí)clr為高電平load為低電平當(dāng)密碼輸入完畢后將load變?yōu)楦唠娖竭M(jìn)行密碼輸入輸入方法與設(shè)置密碼相同沒(méi)設(shè)置一位密碼數(shù)碼管HEX7的七個(gè)引腳都隨著y0[0~6]的變化而變化,進(jìn)而顯示出當(dāng)前的位數(shù)。當(dāng)輸完八位密碼后系統(tǒng)將其與預(yù)先設(shè)置的密碼進(jìn)行對(duì)比,由于設(shè)置與輸入的密碼不同所以lt為低電平不開鎖,lf、alm為高電平,警報(bào)響起,警報(bào)燈亮起 
密碼錯(cuò)誤開鎖不成功仿真圖 門鈴功能仿真圖如下圖所示。對(duì)于門鈴部分 當(dāng)檢測(cè)到press信號(hào)的下降沿時(shí)門鈴開始響,計(jì)數(shù)器開始計(jì)數(shù),當(dāng)計(jì)數(shù)器為30時(shí)門鈴自動(dòng)關(guān)閉  門鈴功能仿真圖
完整的Word格式文檔51黑下載地址:
文檔.doc
(881 KB, 下載次數(shù): 35)
2019-12-22 23:00 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|