密碼鎖的研究與設(shè)計_第1頁
密碼鎖的研究與設(shè)計_第2頁
密碼鎖的研究與設(shè)計_第3頁
密碼鎖的研究與設(shè)計_第4頁
密碼鎖的研究與設(shè)計_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 裝 訂 線2013-2014學(xué)年第 2學(xué)期 物電 學(xué)院期末考試卷計算機(jī)控制技術(shù) 學(xué)號: 201172020143 姓名: 張淑英 班級: 電子信息工程一班 成績:評語:(考試題目及要求)密碼鎖的研究與設(shè)計通過對計算機(jī)控制課程的學(xué)習(xí),結(jié)合課程中對單片機(jī)知識的復(fù)習(xí)以及對計算機(jī)控制的基本原理的理解,完成了該設(shè)計。該課程作業(yè)主要是對密碼鎖的研究與設(shè)計。本控制器AT89C51單片機(jī)為核心鍵盤、顯示電路,輸出控制電路,告警提示電路等構(gòu)成。利用目前使用的微處理器AT89C51 作為控制元件設(shè)計了一種電子密碼鎖。其具有可設(shè)置多 組密碼、多次改寫和保存密碼的優(yōu)點,克服了普通鎖需要隨身攜帶鑰匙且易丟失、保密 性

2、差的缺點,在賓館、辦公大樓、倉庫、保險柜和家庭普遍適用。 目錄一、課題背景及意義- 3 -二、設(shè)計要求- 4 -三、設(shè)計思路及設(shè)計方案- 4 -(一)設(shè)計方案選擇- 4 -(二)總體方案思路- 6 -(三)系統(tǒng)硬件設(shè)計- 6 -1.鍵盤設(shè)計- 6 -2. LED顯示設(shè)計- 7 -3.開鎖電路- 7 -4.報警電路- 8 -(四)軟件設(shè)計- 8 -1.鍵盤的讀取- 8 -2.LED顯示程序- 9 -3.密碼比較和報警程序- 9 -四、 程序調(diào)試- 11 -(一)KEIL C51簡介- 11 -(二)調(diào)試過程- 11 -五、設(shè)計總結(jié)- 12 -參考文獻(xiàn)- 13 -附錄- 14 -摘 要本論文詳細(xì)地

3、論述了以單片機(jī)為處理器的密碼鎖自動控制器的硬件、軟件設(shè)計和系統(tǒng)編程的問題。本控制器AT89C51單片機(jī)為核心鍵盤、顯示電路,輸出控制電路,告警提示電路等構(gòu)成。利用目前使用的微處理器AT89C51 作為控制元件設(shè)計了一種電子密碼鎖。其具有可設(shè)置多組密碼、多次改寫和保存密碼的優(yōu)點,克服了普通鎖需要隨身攜帶鑰匙且易丟失、保密性差的缺點,在賓館、辦公大樓、倉庫、保險柜和家庭普遍適用。關(guān)鍵詞: AT89C51 鍵盤 液晶顯示 電子密碼鎖 一、課題背景及意義隨著科技和人們的生活水平的提高,如何實現(xiàn)家庭防盜這一問題也變的尤其的突出,傳統(tǒng)機(jī)械鎖由于構(gòu)造簡單,被撬事件屢見不鮮;電子鎖由于其保密性高,使用靈活性好

4、,安全系數(shù)高,受到了廣大用戶的青睞。鎖是置于可啟閉的器物上,用以關(guān)住某個確定的空間范圍或某種器具的,必須以鑰匙或暗碼打開的扣件。鎖具發(fā)展到現(xiàn)在已有若干年的歷史了,人們對它的結(jié)構(gòu)、機(jī)理也研究得很透徹,因此,不用鑰匙就能打開的方法和工具也層出不窮?,F(xiàn)代人類文明社會里,由于社會中各種矛盾沖突十分劇烈,人們的思想道德觀念,價值觀念,文化修養(yǎng)水平等差異,群眾中良莠不齊,善良的人們能夠自覺規(guī)范自已的行為,“非禮不為”,雖無鑰匙亦不會亂闖。然而,那些毫無道德觀念的盜賊卻想方設(shè)法利用高科技手段撬門開鎖,使廣大居民防不勝防。為什么會出現(xiàn)這種情況呢?因為傳統(tǒng)鎖具都存在致命的弱點:第一、 鎖芯采用常見的銅、鋁、鋅等

5、材料,抵抗不了強(qiáng)力破壞;第二、 鎖具制作工藝,技術(shù)落后,無法阻止技術(shù)手段的開啟。目前,市場上很多國內(nèi)外的鎖具,實際上都不具備真正的防盜功能。在慣偷面前,兩根鋼絲或幾件簡單的工具就可以把這些鎖打開,有的慣偷甚至公開揚(yáng)言:“沒有我打不開的鎖?!逼鋵?,不是他們多高明,而是一般鎖具技術(shù)原理太過簡單。面對這一殘酷的現(xiàn)狀,新時代提出了鎖具必須革命的迫切的要求。因此,許多電子智能鎖(指紋識別、IC卡辨認(rèn))已在國內(nèi)外相繼面世。但是這些產(chǎn)品的特點是針對特定的指紋和有效卡,只能適用于保密要求的箱、柜、門等。而且指紋識識別器若在公共場所使用存在容易機(jī)械損壞,IC卡還存在容易丟失、損壞等特點。加上其成本較高,一定程度

6、上限制了這類產(chǎn)品的普及和推廣。鑒于目前的技術(shù)水平與市場的接收程度,電子密碼鎖是這類電子防盜產(chǎn)品的主流。隨著電子技術(shù)和計算機(jī)技術(shù)的飛速發(fā)展,單片機(jī)性能不斷完善,性能價格比顯著提高,技術(shù)日趨完善。由于單片機(jī)具有體積小、重量輕、價格便宜、功耗低、控制功能強(qiáng)及運(yùn)算速度快等特點,因而在國民經(jīng)濟(jì)建設(shè)、軍事及家用電器等各個領(lǐng)域均得到了廣泛的應(yīng)用。本設(shè)計以AT89C51為主控芯片,帶有一個密碼輸入鍵盤、外圍時鐘復(fù)位電路、電磁閥等實現(xiàn)電子鎖的鎖閉和打開。該鎖要求結(jié)構(gòu)簡單,成本低,安全性高,易于主人隨時更新密碼,在一定程度上具有較大的市場競爭力。要求完成電子鎖的控制系統(tǒng)的實物演示模型。根據(jù)51單片機(jī)之間的串行通信

7、原理,這便于對密碼信息的隨機(jī)加密和保護(hù)。而且采用鍵盤輸入的電子密碼鎖具有較高的優(yōu)勢。采用數(shù)字信號編碼和二次調(diào)制方式,不僅可以實現(xiàn)多路信息的控制,提高信號傳輸?shù)目垢蓴_性,減少錯誤動作,而且功率消耗低;反應(yīng)速度快、傳輸效率高、工作穩(wěn)定可靠等。軟件設(shè)計采用自上而下的模塊化設(shè)計思想,以使系統(tǒng)朝著分布式、小型化方向發(fā)展,增強(qiáng)系統(tǒng)的可擴(kuò)展性和運(yùn)行的穩(wěn)定性。測試結(jié)果表明,本系統(tǒng)各項功能已達(dá)到本設(shè)計的所有要求。二、設(shè)計要求(1)密碼通過鍵盤輸入,若密碼正確,則將鎖打開。 (2)報警、鎖定鍵盤功能。密碼輸入錯誤數(shù)碼顯示器會出現(xiàn)錯誤提示,若密碼輸入錯誤次數(shù)超過 3 次,蜂鳴器報警并且鎖定鍵盤。 (3)密碼清除功能

8、:當(dāng)按下清除鍵時,清除前面輸入的所有值,并清除所有顯示。 (4)密碼可以由用戶自己修改設(shè)定(只支持6位密碼),修改密碼之前必須再次輸入密碼,在輸入新密碼時候需要二次確認(rèn),以防止誤操作 。三、設(shè)計思路及設(shè)計方案(一)設(shè)計方案選擇方案一:采用數(shù)字電路控制。用以74LS112雙JK觸發(fā)器構(gòu)成的數(shù)字邏輯電路作為密碼鎖的核心控制,共設(shè)了9個用戶輸入鍵,其中只有4個是有效的密碼按鍵,其它的都是干擾按鍵,若按下干擾鍵,鍵盤輸入電路自動清零,原先輸入的密碼無效,需要重新輸入;如果用戶輸入密碼的時間超過10秒(一般情況下,用戶不會超過10秒,若用戶覺得不便,還可以修改)電路將報警20秒,若電路連續(xù)報警三次,電路

9、將鎖定鍵盤2分鐘,防止他人的非法操作。電路由兩大部分組成:密碼鎖電路和備用電源(UPS),其中設(shè)置UPS電源是為了防止因為停電造成的密碼鎖電路失效,使用戶免遭麻煩。密碼鎖電路包含:鍵盤輸入、密碼修改、密碼檢測、開鎖電路、執(zhí)行電路、報警電路、鍵盤輸入次數(shù)鎖定電路。如圖1.圖1.采用數(shù)字電路控制方案二:采用一種是用以AT89C51為核心的單片機(jī)控制方案。選用單片機(jī)AT89C51 作為本設(shè)計的核心元件,利用單片機(jī)靈活的編程設(shè)計和豐富的IO端口,及其控制的準(zhǔn)確性,實現(xiàn)基本的密碼鎖功能。在單片機(jī)的外圍電路外接輸入鍵盤用于密碼的輸入和一些功能的控制,外接LCD1602顯示器用于顯示作用。其原理圖2所示:圖

10、2.以AT89C51為核心的單片機(jī)設(shè)計方案通過比較以上兩種方案,采用數(shù)字電路設(shè)計的方案好處就是設(shè)計簡單但控制的準(zhǔn)確性和靈活性差。單片機(jī)方案有較大的活動空間,不但能實現(xiàn)所要求的功能而且能在很大的程度上擴(kuò)展功能,而且還可以方便的對系統(tǒng)進(jìn)行升級,所以我們采用后一種方案。(二)總體方案思路本方案采用一種是用以89C51為核心的單片機(jī)控制方案。利用單片機(jī)靈活的編程設(shè)計和豐富的I/O端口,及其控制的準(zhǔn)確性,實現(xiàn)基本的密碼鎖功能。輸入密碼用矩形鍵盤,包括數(shù)字鍵和功能鍵。LED數(shù)碼管顯示輸入密碼,用74JS247驅(qū)動數(shù)碼管發(fā)光顯示數(shù)碼,用74LS138控制各位顯示器分時進(jìn)行顯示。用發(fā)光二極管代替開鎖的電路,發(fā)

11、光表示開鎖。輸入密碼錯誤次數(shù)超過3次,系統(tǒng)報警。打開電源后,顯示器顯示“000000”,設(shè)原始密碼為“123456”,只要輸入此密碼便了開門。這樣可預(yù)防停電后再來電時無密碼可用。按“C”鍵,清除顯示器為“000000”。欲重新設(shè)定密碼,先輸入密碼在案“*”。輸入密碼,再按“D”確認(rèn)鍵。若密碼與設(shè)定密碼相同,則開門。否則顯示器清為“000000”。硬件的設(shè)計主要包括鍵盤的輸入,LED顯示電路,開鎖電路,報警電路。軟件的設(shè)計主要包括鍵盤鍵值的讀取,LED顯示程序,密碼比較程序和報警程序。(三)系統(tǒng)硬件設(shè)計1.鍵盤設(shè)計本設(shè)計就采用行列式鍵盤,同時也能減少鍵盤與單片機(jī)接口時所占用的I/O線的數(shù)目,在按

12、鍵比較多的時候,通常采用這樣方法。 每一條水平(行線)與垂直線(列線)的交叉處不相通,而是通過一個按鍵來連通,利用這種行列式矩陣結(jié)構(gòu)只需要N條行線和M條列線,即可組成具有N×M個按鍵的鍵盤。 在這種行列式矩陣鍵盤非鍵盤編碼的單片機(jī)系統(tǒng)中,鍵盤處理程序首先執(zhí)行等待按鍵并確認(rèn)有無按鍵按下的程序段。 4×4矩陣鍵盤的工作原理 在鍵盤中按鍵數(shù)量較多時,為了減少I/O口的占用,通常將按鍵排列成矩陣形式,如圖所示。在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個按鍵加以連接。這樣,一個端口(如P1口)就可以構(gòu)成4*4=16個按鍵,比之直接將端口線用于鍵盤多出了一倍,而

13、且線數(shù)越多,區(qū)別越明顯,比如再多加一條線就可以構(gòu)成20鍵的鍵盤,而直接用端口線則只能多出一鍵(9鍵)。由此可見,在需要的鍵數(shù)比較多時,采用矩陣法來做鍵盤是合理的。如圖3所示。圖3 .4*4鍵盤的工作原理2. LED顯示設(shè)計本系統(tǒng)設(shè)計的顯示電路是為了給使用者以提示而設(shè)置的。本系統(tǒng)的顯示采用串行顯示的方式,只使用單片機(jī)的一個串行口,利用74LS247驅(qū)動數(shù)碼管發(fā)光顯示數(shù)碼和74LS138控制位選信號,就可以完成單片機(jī)的顯示功能。3.開鎖電路在本次設(shè)計中,基于節(jié)省材料的原則,暫時用發(fā)光二極管代替電磁鎖,發(fā)光管亮,表示開鎖;滅,表示沒有開鎖。當(dāng)P2.0口輸出低電平時,二極管發(fā)光,表示開鎖。4.報警電路

14、報警模塊由蜂鳴器和單片機(jī)組成。選擇一只壓電式蜂鳴器,壓電式蜂鳴器工作時約需要100mA驅(qū)動電流。蜂鳴器電路如圖3.4所示。當(dāng)89C51的P2.1口輸出為低電平時,蜂鳴器產(chǎn)生蜂鳴音,89C51輸出為高電平時,蜂鳴器不發(fā)聲。(四)軟件設(shè)計1.鍵盤的讀取在這種行列式矩陣鍵盤非鍵盤編碼的單片機(jī)系統(tǒng)中,鍵盤處理程序首先執(zhí)行等待按鍵并確認(rèn)有無按鍵按下的程序段。當(dāng)確認(rèn)有按鍵按下后,下一步就要識別哪一個按鍵按下。對鍵的識別通常有兩種方法:一種是常用的逐行掃描查詢法;另一種是速度較快的線反轉(zhuǎn)法。首先辨別鍵盤中有無鍵按下,有單片機(jī)I/O口向鍵盤送全掃描字,然后讀入行線狀態(tài)來判斷。方法是:向行線輸出全掃描字00H,

15、把全部列線置為低電平,然后將列線的電平狀態(tài)讀入累加器A中。如果有按鍵按下,總會有一根行線電平被拉至低電平從而使行線不全為1。判斷鍵盤中哪一個鍵被按下使通過將列線逐列置低電平后,檢查行輸入狀態(tài)來實現(xiàn)的。方法是:依次給列線送低電平,然后查所有行線狀態(tài),如果全為1,則所按下的鍵不在此列;如果不全為1,則所按下的鍵必在此列,而且是在與零電平行線相交的交點上的那個鍵。2.LED顯示程序圖4 LED顯示程序流程圖3.密碼比較和報警程序電子密碼鎖工作的主要過程是LED數(shù)碼管提示開始輸入密碼,通過鍵盤輸入密碼,同時LED顯示密碼輸入情況,按下確認(rèn)鍵后判斷密碼的正確性,作出開鎖或報警處理。當(dāng)輸入密碼連續(xù)輸入錯誤

16、3次時,系統(tǒng)報警。密碼的設(shè)定,在此程序中密碼是固定40H45H中,假設(shè)預(yù)設(shè)的密碼為"123456"共6位密碼。由于采用兩個按鍵來完成密碼的輸入,那么其中一個按鍵為功能鍵,另一個按鍵為數(shù)字鍵。在輸入過程中,首先輸入密碼的長度,接著根據(jù)密碼的長度輸入密碼的位數(shù),直到所有長度的密碼都已經(jīng)輸入完畢;或者輸入確認(rèn)功能鍵之后,才能完成密碼的輸入過程。進(jìn)入密碼的判斷比較處理狀態(tài)并給出相應(yīng)的處理過程。開始否是密碼錯誤主人是否要修改密碼開門輸入正確密碼保存后系統(tǒng)返回輸入新密碼報警輸入錯誤滿3次輸入錯誤未滿3次密碼比較系統(tǒng)喚醒上電密碼輸入完畢系統(tǒng)等待密碼輸入系統(tǒng)返回流程圖如下所示:圖5 密碼比

17、較和報警程序流程圖4、 程序調(diào)試調(diào)試本程序需要用到KEIL C51,及51開發(fā)板一塊及其配套的下載燒錄軟件(一)KEIL C51簡介Keil C51是美國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會更加深刻。Keil C51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時

18、更能體現(xiàn)高級語言的優(yōu)勢。 C51工具包的整體結(jié)構(gòu): uVision與Ishell分別是C51 for Windows和for Dos的集成開發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。開發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)L51連接定位生成絕對目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如

19、EPROM中。(二)調(diào)試過程首先打開KEIL C51主程序,新建工程,新建文本框?qū)懭氤绦颍4?,檢查是否有語法錯誤,經(jīng)反復(fù)檢查無誤后匯編,生成51單片機(jī)可執(zhí)行的HEX文件。然后用51開發(fā)板相匹配的燒錄軟件把HEX文件寫入單片機(jī)。圖6 keil c51調(diào)試介面五、設(shè)計總結(jié)通過這學(xué)期對計算機(jī)控制這門課程的學(xué)習(xí),結(jié)合以前的單片機(jī)知識完成了該設(shè)計。通過這次設(shè)計我懂得了實踐是檢驗真理的唯一標(biāo)準(zhǔn),當(dāng)然也是檢驗學(xué)習(xí)成果的標(biāo)準(zhǔn)。在經(jīng)過一段時間的學(xué)習(xí)之后,我們需要了解自己的所學(xué)應(yīng)該如何應(yīng)用在實踐中,因為任何知識都源于實踐,歸于實踐,所以要將所學(xué)的知識在實踐中來檢驗。在做設(shè)計期間,在老師的指導(dǎo)下,通過自身的不斷努

20、力,無論是思想上,學(xué)習(xí)上,都取得了長足的發(fā)展和巨大的收獲,現(xiàn)將工作總結(jié)如下:思想上,學(xué)會了用科學(xué)的精神去解決問題。很多事情看起來是很簡單的問題,但實際做起來去會發(fā)現(xiàn)有許多奧妙!這是因為其中蘊(yùn)含著許多科學(xué)的問題。運(yùn)用科學(xué)的方法去解決問題,這是我這次實訓(xùn)給我?guī)淼乃枷肷系母淖?。學(xué)習(xí)上,使自已在大學(xué)所以的知識在這次得到實踐,學(xué)到一些書本上無法學(xué)到的經(jīng)驗,對電子元件有了進(jìn)一步的認(rèn)識。電子鎖是信息化時代發(fā)展的產(chǎn)物,應(yīng)時而生,我相信隨著科技的不斷發(fā)展,將來的電子鎖一定更加完美,更加人性化,更加便宜,更加安全。計算機(jī)控制發(fā)展是自動化技術(shù)的熱門研究課題,它們的發(fā)展與進(jìn)步將是實施CIPS的保證。CIPS利用計算

21、機(jī)技術(shù)對整個企業(yè)的運(yùn)作和過程進(jìn)行綜合管理和控制,它包括市場營銷、生產(chǎn)計劃調(diào)度、原料選擇、產(chǎn)品分配、成本管理,以及工藝過程的控制、優(yōu)化和管理的全過程。分布式控制系統(tǒng),先進(jìn)過程控制以及網(wǎng)絡(luò)技術(shù),數(shù)據(jù)庫技術(shù)是實現(xiàn)CIPS的重要基礎(chǔ)??梢灶A(yù)計,通過廣大學(xué)者與工程技術(shù)人員的努力,今后我國會在過程工業(yè)的計算機(jī)粲成過程系統(tǒng)中取得更多的進(jìn)展與成果。參考文獻(xiàn)1 李朝青.單片機(jī)原理及接口技術(shù).北京:北京航空航天大學(xué)出版社,19982 李全利.單片機(jī)原理及接口技術(shù).高等教育出版社,20033 何宏主編. 單片機(jī)原理與接口技術(shù). 北京:國防工業(yè)出版社. 2006.074 楊將新,李華軍,劉到駿等.單片機(jī)程序設(shè)計及應(yīng)用

22、電子工業(yè)出版社,20065 黃智偉.全國大學(xué)生電子設(shè)計競賽訓(xùn)練教程M.北京:電子工業(yè)出版社,2005附錄- 18 -本設(shè)計的程序:hc0 equ 4ah ;延時緩存區(qū)hc1 equ 4bhhc2 equ 4chhc3 equ 4dhhc4 equ 4ehxs_0 equ 50h ;顯示緩存區(qū)xs_1 equ 51hxs_2 equ 52hxs_3 equ 53hxs_4 equ 54hxs_5 equ 55hxs_6 equ 56hxs_7 equ 57hxs_8 equ 58hxs_9 equ 59hps1 equ 5ah ;設(shè)置密碼緩存區(qū)ps2 equ 5bhps3 equ 5chps4

23、equ 5dhmmbz equ 5fh ;密碼輸入次數(shù)at1 equ 60h ;輸入密碼緩存區(qū)at2 equ 61hat3 equ 62hat4 equ 63h ;初始化org 00hajmp main1org 30hmain1: mov ps1 ,#00h mov ps2 ,#00h mov ps3 ,#00h mov ps4 ,#00h mov at1 ,#00h mov at2 ,#00h mov at3 ,#00h mov at4 ,#00hmain:mov xs_0 ,#1fh ;顯示0的摩斯值mov xs_1 ,#0fh ;顯示1的摩斯值mov xs_2 ,#07h ;顯示2的摩斯

24、值mov xs_3 ,#03h ;顯示3的摩斯值mov xs_4 ,#01h ;顯示4的摩斯值mov xs_5 ,#00h ;顯示5的摩斯值mov xs_6 ,#10h ;顯示6的摩斯值mov xs_7 ,#18h ;顯示7的摩斯值mov xs_8 ,#1ch ;顯示8的摩斯值mov xs_9 ,#1eh ;顯示9的摩斯值clr p3.0 ;RXD置0mov a ,#00h ;密碼緩存mov r2 ,#04h ;四位密碼mov r1 ,#00hmov r0 ,#ps1mov r7 ,#05h ;摩斯次數(shù),由于數(shù)字為5次clr p2.7start:mov p0 ,#0ffhmov p1 ,#0f

25、fhsetb p2.4 ;按鍵位jb p2.4 ,start ;2.4為1轉(zhuǎn)startlcall delay500msjb p2.4 ,startok: ;嘀的音clr p0.0lcall delay500msjnb p2.4 ,daa ;是否去嗒音cun: ;setb p0.2setb p0.0rl aadd a ,r1 ;存入一位摩斯碼djnz r7 ,yanshi ;是否夠五位摩斯碼ajmp xianshiyanshi: ;輸入一位摩斯碼停頓1tlcall delay500ms jb p2.4 ,mainajmp okdaa: ;嗒的音lcall delay500msjb p2.4 ,s

26、topsetb p0.0clr p0.2lcall delay500mssetb p0.2 jnb p2.4 ,stop mov r1 ,#01h ajmp cunstop: ;摩斯輸入錯誤 clr p0.4 lcall delay2s setb p0.4 ajmp maincunchu:mov r0 ,a inc r0 mov a ,#00h mov r1 ,#00h mov r7 ,#05h djnz r2 ,yanshi clr p0.6 lcall delay2s setb p0.6 ajmp shuruxianshi:cjne a ,xs_0 ,next1 ;夠五位摩斯碼顯示0 mo

27、v p1 ,#0c0h clr p3.2 ;報警器 lcall delay1s setb p3.2 ;報警器 mov p1 ,#0ffh ajmp cunchunext1:cjne a ,xs_1 ,next2 ;夠五位摩斯碼顯示1 mov p1 ,#0f9h clr p3.2 lcall delay1s setb p3.2 mov p0 ,#0ffh ajmp cunchunext2:cjne a ,xs_2 ,next3 ;夠五位摩斯碼顯示2 mov p1 ,#0a4h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchune

28、xt3: cjne a ,xs_3 ,next4 ;夠五位摩斯碼顯示3 mov p1 ,#0b0h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext4: cjne a ,xs_4 ,next5 ;夠五位摩斯碼顯示4 mov p1 ,#99h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext5: cjne a ,xs_5 ,next6 ;夠五位摩斯碼顯示5 mov p1 ,#92h clr p3.2 lcall delay1s setb p3.2

29、 mov p1 ,#0ffh ajmp cunchunext6: cjne a ,xs_6 ,next7 ;夠五位摩斯碼顯示6 mov p1 ,#7dh clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext7: cjne a ,xs_7 ,next8 ;夠五位摩斯碼顯示7 mov p1 ,#0f8h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext8: cjne a ,xs_8 ,next9 ;夠五位摩斯碼顯示8 mov p1 ,#080h clr

30、 p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext9:cjne a ,xs_9 ,cw ;夠五位摩斯碼顯示9 mov p1 ,#90h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchucw: clr p3.2 clr p0.4 lcall delay5s clr p0.4 setb p3.2 ajmp main1shuru: ;開門復(fù)位mov mmbz ,#03 ;錯誤密碼次數(shù) mov at1 ,#00h mov at2 ,#00h mov at3 ,#00h

31、 mov at4 ,#00h shuru2: clr p0.6 mov a ,#00h ;密碼緩存 mov r2 ,#04h ;四位密碼 mov r1 ,#00h mov r0 ,#at1 mov r7 ,#05hstart1: jb p2.4 ,start1 lcall delay500ms jb p2.4 ,start1ok1: ;滴音 setb p3.0 ;開門后再按鍵1t setb p0.6 clr p0.0 lcall delay500ms jnb p2.4 ,daaacun1: setb p0.2 setb p0.0 rl a add a ,r1 djnz r7 ,yanshi1

32、ajmp xianshi1yanshi1: ;每個摩斯碼之間延時1t lcall delay500ms jb p2.4 ,stop1 ajmp ok1daaa: ;嗒音 lcall delay500ms jb p2.4 ,stop1 setb p0.0 clr p0.2 lcall delay500ms setb p0.2 jnb p2.4 ,stop1 mov r1 ,#01h ajmp cun1stop1: ;摩斯碼錯誤處理 clr p0.4 lcall delay2s setb p0.4 ajmp shuru2cunchu2: mov r0 ,a inc r0 mov a ,#00h m

33、ov r1 ,#00h mov r7 ,#05h djnz r2 ,yanshi1 ajmp bijiaoxianshi1: ;顯示處理 cjne a ,xs_0 ,next1_1 mov p1 ,#0c0h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchu2next1_1: cjne a ,xs_1 ,next2_2 mov p1 ,#0f9h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchu2next2_2: cjne a ,xs_2 ,next3_3 m

34、ov p1 ,#0a4h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchu2next3_3: cjne a ,xs_3 ,next4_4 mov p1 ,#0b0h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchu2next4_4: cjne a ,xs_4 ,next5_5 mov p1 ,#99h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchu2next5_5: cjne a ,xs_5 ,next6_6 mov p1 ,#92h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchu2next6_6: cjne a ,xs_6 ,next7_7 mov p1 ,#82h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchu2next7_7: cjne a ,xs_7 ,next8_8 mov p1 ,#0f8h clr p3.2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論