版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、. . . . 文理學(xué)院機(jī)械電子工程系專業(yè)課程設(shè)計(jì)報(bào)告專業(yè)班級(jí) 2011級(jí)測(cè)控技術(shù)與儀器1班 課 程 單片機(jī)課程設(shè)計(jì) 題 目 基于51單片機(jī)的電子密碼鎖的設(shè)計(jì) 學(xué) 號(hào) 0703110121 學(xué)生 黨曉英 指導(dǎo)教師 琦 2014年 5月文理學(xué)院物理與機(jī)械電子工程學(xué)院課程設(shè)計(jì)任務(wù)書學(xué)生黨曉英專業(yè)班級(jí)2011級(jí)測(cè)控技術(shù)與儀器1班學(xué) 號(hào)0703110121指導(dǎo)教師琦職 稱講師教研室C0409課 程單片機(jī)課程設(shè)計(jì)題 目基于51單片機(jī)的電子密碼鎖的設(shè)計(jì)任務(wù)與要求設(shè)計(jì)任務(wù):以51單片機(jī)為核心,設(shè)計(jì)帶有密碼輸入鍵盤、電磁閥等部件的單片機(jī)應(yīng)用系統(tǒng),實(shí)現(xiàn)電子鎖的鎖閉和打開。設(shè)計(jì)要求:1、完成系統(tǒng)的硬件電路設(shè)計(jì)與軟
2、件設(shè)計(jì);2、采用匯編或C語(yǔ)言編程;3、采用Proteus、KeilC等軟件實(shí)現(xiàn)系統(tǒng)的仿真調(diào)試。4、論文要求思路清晰,結(jié)構(gòu)合理,語(yǔ)言流暢,書寫格式符合要求。開始日期2014年 5月12日 完成日期 2014年5月25日 2014年 5 月 28日基于51單片機(jī)的電子密碼鎖的設(shè)計(jì)摘要:在日常的生活和工作中, 住宅與部門的安全防、單位的文件檔案、財(cái)務(wù)報(bào)表以與一些個(gè)人資料的保存多以加鎖的辦法來(lái)解決。若使用傳統(tǒng)的機(jī)械式鑰匙開鎖,人們常需攜帶多把鑰匙, 使用極不方便, 且鑰匙丟失后安全性即大打折扣。具有防盜報(bào)警等功能的電子密碼鎖代替密碼量少、安全性差的機(jī)械式密碼鎖已是必然趨勢(shì)。隨著科學(xué)技術(shù)的不斷發(fā)展,人們
3、對(duì)日常生活中的安全保險(xiǎn)器件的要求越來(lái)越高。為滿足人們對(duì)鎖的使用要求,增加其安全性,用密碼代替鑰匙的密碼鎖應(yīng)運(yùn)而生。密碼鎖具有安全性高、成本低、功耗低、易操作、記住密碼即可開鎖等優(yōu)點(diǎn)。目前使用的電子密碼鎖大部分是基于單片機(jī)技術(shù),以單片機(jī)為主要器件,其編碼器與解碼器的生成為軟件方式。本系統(tǒng)由AT89C51單片機(jī)系統(tǒng)(主要是AT89C51單片機(jī)最小系統(tǒng))、44矩陣鍵盤、LCD1602顯示和報(bào)警系統(tǒng)等組成,具有設(shè)置、修改六位用戶密碼、超次報(bào)警、超次鎖定、密碼錯(cuò)誤報(bào)警等功能(本設(shè)計(jì)由P0口控制LCD顯示,密碼正確顯示password ok! 密碼錯(cuò)誤顯示password error!超過(guò)三次輸入錯(cuò)誤自動(dòng)
4、鎖定。由P1口控制矩陣鍵盤含有0-9數(shù)字鍵和A-F功能鍵。)。除上述基本的密碼鎖功能外,依據(jù)實(shí)際的情況還可以添加遙控功能。本系統(tǒng)成本低廉,功能實(shí)用。 關(guān)鍵詞:AT89C51;LCD1602;電子密碼鎖;44矩陣鍵盤 27 / 31目錄1.設(shè)計(jì)目的11.1、課題背景和意義11.2、電子密碼發(fā)展趨勢(shì)12.總體設(shè)計(jì)方案12.1、設(shè)計(jì)目標(biāo)22.2、課題方案的選定23系統(tǒng)的硬件組成和原理23.1、單片機(jī)AT89C51的簡(jiǎn)介23.2、系統(tǒng)的硬件組成33.2.1、最小系統(tǒng)的設(shè)計(jì)33.2.2、芯片擦除43.2.3、開鎖機(jī)構(gòu)53.2.4、鍵盤設(shè)計(jì)53.2.5、顯示電路的設(shè)計(jì)63.3、系統(tǒng)設(shè)計(jì)總圖74.系統(tǒng)軟件設(shè)
5、計(jì)84.1、系統(tǒng)軟件方框圖84.2、鍵盤掃描與識(shí)別子程序84.3、密碼設(shè)置子程序105.系統(tǒng)調(diào)試105.1、程序調(diào)試105.2、電路仿真調(diào)試12總結(jié)14致14參考文獻(xiàn)15附錄 電路總圖16附錄程序清單171.設(shè)計(jì)目的1.1、課題背景和意義伴隨著現(xiàn)在電子技術(shù)和科學(xué)技術(shù)的快速發(fā)展,隨著單片機(jī)性能不斷完善,性能價(jià)格比也隨著顯著提高,技術(shù)日趨完善。由于單片機(jī)具有體積小、重量輕、價(jià)格便宜、功耗低、控制功能強(qiáng)與運(yùn)算速度快等特點(diǎn),因此在國(guó)民經(jīng)濟(jì)建設(shè)、軍事與家用電器等各個(gè)領(lǐng)域均得到了廣泛的應(yīng)用。本設(shè)計(jì)利用單片機(jī)與附加電子元器件實(shí)現(xiàn)數(shù)據(jù)采集和控制算法,來(lái)完成某一實(shí)際功能,檢驗(yàn)并提高大學(xué)生對(duì)整體電路設(shè)計(jì)和把握能力
6、,了解單片機(jī)系統(tǒng)設(shè)計(jì)流程,以與電路板的實(shí)際制作和調(diào)試能力。同時(shí)也加強(qiáng)對(duì)數(shù)字電路、單片機(jī)和微機(jī)原理等課程知識(shí)的實(shí)際應(yīng)用能力,也為同類產(chǎn)品的進(jìn)一步發(fā)展奠定理論和實(shí)踐基礎(chǔ)。隨著科技水平的提高和人們安全意識(shí)的加強(qiáng),對(duì)安全和個(gè)人的隱私的要求也就越來(lái)越高。機(jī)械鎖自古以來(lái)就是把守護(hù)門的鐵將軍,人們對(duì)它要求甚高,既要安全可靠的防盜,又要使用方便,這也是制鎖者長(zhǎng)期以來(lái)研制的主題。伴隨著電子技術(shù)的發(fā)展,各類電子產(chǎn)品應(yīng)運(yùn)而生,電子密碼鎖就是其中之一。據(jù)有關(guān)資料介紹,電子密碼鎖的研究從20世紀(jì)30年代就開始了,在一些特殊場(chǎng)所早就有所應(yīng)用。這種鎖是通過(guò)鍵盤輸入一組密碼完成開鎖過(guò)程。研究這種鎖的初衷,就是為提高鎖的安全性
7、。由于電子鎖的密鑰量(密碼量)極大,可以與機(jī)械鎖配合使用,并且可以避免因鑰匙被仿制而留下安全隱患。電子鎖只需記住一組密碼,無(wú)需攜帶金屬鑰匙,免除了人們攜帶金屬鑰匙的煩惱,而被越來(lái)越多的人所欣賞。1.2、電子密碼發(fā)展趨勢(shì)現(xiàn)在,電子密碼鎖使用于各個(gè)領(lǐng)域,尤其在國(guó)民建設(shè),和軍事領(lǐng)域具有突出貢獻(xiàn)?,F(xiàn)在的密碼鎖的信息包括了數(shù)字、字符、圖形圖像、人體生物特征和時(shí)間等,對(duì)電子鎖的要求也越來(lái)越高。電子技術(shù)必是各國(guó)發(fā)展的優(yōu)先技術(shù)。由于數(shù)字、字符、圖形圖像、人體生物特征和時(shí)間等要素均可成為鑰匙的電子信息,組合使用這些信息能夠使電子密碼鎖獲得高度的性,如防森嚴(yán)的金庫(kù),需要使用復(fù)合信息密碼的電子密碼鎖,這樣對(duì)盜賊而言
8、是“道高一尺、魔高一丈”。組合使用信息也能夠使電子密碼鎖獲得無(wú)窮擴(kuò)展的可能,使產(chǎn)品多樣化,對(duì)用戶而言是“千挑百選、自得其所”。2.總體設(shè)計(jì)方案2.1、設(shè)計(jì)目標(biāo)(1)本設(shè)計(jì)為了防止密碼被竊取要求在輸入密碼時(shí)在LCD屏幕上顯示*號(hào)。(2)設(shè)計(jì)開鎖密碼位六位密碼的電子密碼鎖。(3)能夠LCD顯示在密碼正確時(shí)顯示PASSWORD OK,密碼錯(cuò)誤時(shí)顯示PASSWORD ERRO輸入密碼時(shí)顯示INPUT PASSWORD。 (4)實(shí)現(xiàn)輸入密碼錯(cuò)誤超過(guò)限定的三次電子密碼鎖定。(5)44的矩陣鍵盤其中包括0-9的數(shù)字鍵和A-F的功能鍵(6)本產(chǎn)品具備報(bào)警功能,當(dāng)輸入密碼錯(cuò)誤時(shí)蜂鳴器響并且LED燈亮。(7)密碼
9、可以由用戶自己修改設(shè)定(只支持6位密碼),修改密碼之前必須再次輸入密碼,在輸入新密碼時(shí)候需要二次確認(rèn),以防止誤操作。2.2、課題方案的選定采用一種是用以AT89C51為核心的單片機(jī)控制方案。選用單片機(jī)AT89C51 作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的IO端口,與其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的密碼鎖功能。在單片機(jī)的外圍電路外接輸入鍵盤用于密碼的輸入和一些功能的控制,外接LCD1602顯示器用于顯示作用。3系統(tǒng)的硬件組成和原理3.1、單片機(jī)AT89C51的簡(jiǎn)介AT89C51是美國(guó)ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機(jī),片含4k bytes的可系統(tǒng)編程的Flash只讀程
10、序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)8051指令系統(tǒng)與引腳。它集Flash程序存儲(chǔ)器,既可在線編程(ISP)也可用傳統(tǒng)方法進(jìn)行編程與通用8位微處理器于單片芯片中,ATMEL公司的功能強(qiáng)大,低價(jià)位AT89C51單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。 與MCS-51 兼容 4K字節(jié)可編程閃爍存儲(chǔ)器 壽命:1000寫/擦循環(huán) 數(shù)據(jù)保留時(shí)間:10年 全靜態(tài)工作:0Hz-24Hz 三級(jí)程序存儲(chǔ)器鎖定 128*8位部RAM 32可編程I/O線 兩個(gè)16位定時(shí)器/計(jì)數(shù)器 5個(gè)中斷源 可編程串行通道 低功耗的閑置和掉電模式 片振蕩器和時(shí)鐘電路 圖
11、3.1單片機(jī)引腳圖3.2、系統(tǒng)的硬件組成3.2.1、最小系統(tǒng)的設(shè)計(jì)當(dāng)MCS-5l系列單片機(jī)的復(fù)位引腳RST(全稱RESET)出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就執(zhí)行復(fù)位操作。如果RST持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種基本形式:上電復(fù)位和開關(guān)復(fù)位。圖3.3即為手動(dòng)(開關(guān))復(fù)位電路。圖3.2手動(dòng)復(fù)位電路a、復(fù)位后PC值為0000H,表明復(fù)位后的程序從0000H開始執(zhí)行。b、SP值為07H,表明堆棧底部在07H,一般需要重新設(shè)置SP值。c、P0P3口值為FFH。P0P3口用作輸入口時(shí),必須先寫入“1”。單片機(jī)在復(fù)位后,已使P0P3口每一端線為“1”,為這
12、些端線用作輸入口做好了準(zhǔn)備。AT89C51 中有一個(gè)用于構(gòu)成部振蕩器的高增益反相放大器,引腳XTAL1 和XTAL2 分別是該放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外石英晶體或瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見下圖。外接石英晶體(或瓷諧振器)與電容Cl、C2 接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對(duì)外接電容Cl、C2 雖然沒有十分嚴(yán)格的要求,但電容容量的大小會(huì)輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序與溫度穩(wěn)定性。如果使用石英晶體,我們推薦電容使用30pF10pF,而如使用瓷諧振器建議選擇40pF10F。用戶也可以采用外部時(shí)鐘。采用外部時(shí)鐘的電路如圖1所示
13、。這種情況下,外部時(shí)鐘脈沖接到XTAL1端,即部時(shí)鐘發(fā)生器的輸入端,XTAL2則懸空。由于外部時(shí)鐘信號(hào)是通過(guò)一個(gè)2分頻觸發(fā)器后作為部時(shí)鐘信號(hào)的,所以對(duì)外部時(shí)鐘信號(hào)的占空比沒有特殊要求,但最小高電平持續(xù)時(shí)間和最大的低電平持續(xù)時(shí)間應(yīng)符合產(chǎn)品技術(shù)條件的要求。圖3.3晶振電路 3.2.2、芯片擦除整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持ALE管腳處于低電平10ms 來(lái)完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。此外,AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,C
14、PU停止工作。但RAM,定時(shí)器,計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位為止。3.2.3、開鎖機(jī)構(gòu)用戶通過(guò)LCD提示信息,用鍵盤輸入正確密碼,從而達(dá)到開鎖的目的。當(dāng)用戶輸入的密碼正確并且是在按下確定鍵的話,單片機(jī)便輸出開門信號(hào),送到開鎖驅(qū)動(dòng)電路,然后驅(qū)動(dòng)電磁鎖,達(dá)到開門的目的。電磁鎖的選用要視情況而定,但是吸合力要足夠且由一定的余量。在本次設(shè)計(jì)中,基于節(jié)省材料的原則,暫時(shí)用發(fā)光二極管代替電磁鎖,發(fā)光管亮,表示開鎖;滅,表示沒有開鎖。圖 3.4開鎖電路3.2.4、鍵盤設(shè)計(jì)本設(shè)計(jì)就采用行列式鍵盤,同時(shí)也能減少鍵盤與單片機(jī)接
15、口時(shí)所占用的I/O線的數(shù)目,在按鍵比較多的時(shí)候,通常采用這樣方法。每一條水平(行線)與垂直線(列線)的交叉處不相通,而是通過(guò)一個(gè)按鍵來(lái)連通,利用這種行列式矩陣結(jié)構(gòu)只需要N條行線和M條列線,即可組成具有NM個(gè)按鍵的鍵盤。在這種行列式矩陣鍵盤非鍵盤編碼的單片機(jī)系統(tǒng)中,鍵盤處理程序首先執(zhí)行等待按鍵并確認(rèn)有無(wú)按鍵按下的程序段。掃描原理:把每個(gè)鍵都分成水平和垂直的兩端接入,比如說(shuō)掃描碼是從垂直的入,那就代表那一行所接收到的掃描碼是同一個(gè)bit,而讀入掃描碼的則是水平,掃描的動(dòng)作是先輸入掃描碼,再去讀取輸入的值,經(jīng)過(guò)比對(duì)之后就可知道是哪個(gè)鍵被按下。比如說(shuō)掃描碼送入01111111,前面的0111是代表此時(shí)
16、掃描第一行P1.0列,而后面的1111是讓讀取的4行接腳先設(shè)為VDD,若此時(shí)第一行的第三列按鍵被按下,那讀取的結(jié)果就會(huì)變成01111101(注意1111變成1101),其中LSB的第三個(gè)bit會(huì)由1變成0,這是因?yàn)檫@個(gè)按鍵被按下之后,會(huì)被垂直的掃描碼電位short,而把讀取的LSB的bit電位拉到0,此即為 掃描原理。由于這種按鍵是機(jī)械式的開關(guān),當(dāng)按鍵被按下時(shí),鍵會(huì)震動(dòng)一小段時(shí)間才穩(wěn)定,為了避免讓8051誤判為多次輸入同一按鍵,我們必須在偵測(cè)到有按鍵被按下,就Delay一小段時(shí)間,使鍵盤以達(dá)穩(wěn)定狀態(tài),再去判讀所按下的鍵,就可以讓鍵盤的輸入穩(wěn)定。圖3.5鍵盤電路3.2.5、顯示電路的設(shè)計(jì)顯示設(shè)計(jì)
17、采用字符型液晶屏設(shè)計(jì),由單片機(jī)的p0口控制顯示,由p3.3p3.5控制lcd的控制端口。P0作為輸出口使用時(shí),由于其是一個(gè)漏極開路電路(即是弱電平),所以需要加10k的上拉電阻,它才會(huì)有高電平的輸出。然而,p3口有第二功能的作用,與其連接,更能有效的控制好顯示電路。圖3.6顯示電路圖3.3、系統(tǒng)設(shè)計(jì)總圖圖3.7系統(tǒng)設(shè)計(jì)總圖4.系統(tǒng)軟件設(shè)計(jì)4.1、系統(tǒng)軟件方框圖因設(shè)計(jì)主要是作用匯編語(yǔ)言來(lái)開發(fā)的51單片機(jī)項(xiàng)目程序,本設(shè)計(jì)采用Keil編譯器進(jìn)行編程,因?yàn)樗梢灾С忠幌盗械?1單片機(jī)。開始初始化模式選擇識(shí)別按鍵密碼輸入手動(dòng)清除密碼比較開門舊密碼輸入新密碼輸入存入緩存區(qū)再次輸入密碼重新輸入設(shè)置完畢NAN
18、BY4.1主程序的流程圖4.2、鍵盤掃描與識(shí)別子程序鍵盤采用查詢的方式,放在主程序中,當(dāng)沒有按鍵按下的時(shí)候,單片機(jī)循環(huán)主程序,一旦有按鍵按下,便轉(zhuǎn)向相應(yīng)的子程序處理,處理結(jié)束再返回。鍵盤部分程序如下:key:;鍵盤程序名稱call ks;調(diào)用子程序ksjnz k1;判斷是否有鍵按下jmp key;跳回鍵盤程序ks:mov p1,#0f0h;mov a,p1;xrl a,#0f0h;ret;4.2鍵盤掃描程序流程圖4.3、密碼設(shè)置子程序由于設(shè)計(jì)是分模塊化進(jìn)行,所以子程序是整體軟件系統(tǒng)的組成部分,子程序不但可以使程序化整為零,使其復(fù)雜簡(jiǎn)單化,同時(shí)也方便閱讀,修改等,每個(gè)功能模塊都有它自己的子程序,
19、在本設(shè)計(jì)中是用LCD顯示數(shù)據(jù),所以就要用到顯示子程序,設(shè)計(jì)中用的是矩陣鍵盤,所以就用到鍵盤掃描子程序,例如還有顯示初始化子程序、LCD忙檢測(cè)子程序、關(guān)閉狀態(tài)顯示子程序、開鎖狀態(tài)顯示子程序、密碼輸入與修改狀態(tài)顯示子程序、密碼輸入錯(cuò)誤后的提示子程序等。選擇模式舊密碼輸入新密碼輸入存入緩存再次輸入密碼比較密碼重新輸入返回YN是否大于3次鎖定NY4.3設(shè)置密碼子程序流程圖5.系統(tǒng)調(diào)試5.1、程序調(diào)試在硬件支持的環(huán)境下,用proteus設(shè)計(jì)好的電路,Keil編好的程序編譯成芯片可識(shí)別的C51文件,利用PC機(jī)寫進(jìn)proteus程序圖芯片進(jìn)行仿真測(cè)試,并對(duì)其出現(xiàn)的錯(cuò)誤進(jìn)行修改。有圖可以看出最終調(diào)試成功。圖5
20、.1 keil生成hex文件 圖5.2 keil編譯程序成功5.2、電路仿真調(diào)試密碼可以由用戶自己修改設(shè)定(只支持6位密碼),修改密碼之前必須再次輸入密碼,在輸入新密碼時(shí)候需要二次確認(rèn),以防止誤操作圖5.3 新密碼需要輸兩次當(dāng)密碼輸入正確時(shí),液晶顯示屏顯示如下:圖5.4仿真成功密碼正確圖 5.5密碼正確綠燈亮實(shí)現(xiàn)輸入密碼錯(cuò)誤超過(guò)限定的三次電子密碼鎖定圖5.6密碼鎖定當(dāng)輸入密碼錯(cuò)誤時(shí)蜂鳴器響并且LED燈閃一下圖5.7密碼輸入錯(cuò)誤圖5.8密碼輸入錯(cuò)誤總結(jié)以上為這段時(shí)間所做的課程設(shè)計(jì)-基于51單片機(jī)的電子密碼鎖設(shè)計(jì),在著手本次課程設(shè)計(jì)時(shí),通過(guò)查閱網(wǎng)絡(luò)與圖書館搜集到的資料,再加上指導(dǎo)老師指點(diǎn),結(jié)合生活
21、中對(duì)密碼鎖的功能特性要求,設(shè)計(jì)出了這一套電子密碼鎖系統(tǒng)的主要硬件結(jié)構(gòu)和軟件結(jié)構(gòu),基本完成了課題的要求。不過(guò)由于了解的專業(yè)知識(shí)尚淺,對(duì)課題的研究經(jīng)驗(yàn)的不足,使得在技術(shù)的解決與運(yùn)用上顯得粗糙了一些,特別是功能按鍵的設(shè)定。本次設(shè)計(jì)的電子密碼鎖是以手動(dòng)鍵盤輸入密碼的,通過(guò)這幾個(gè)月對(duì)電子密碼鎖的研究學(xué)習(xí),發(fā)覺這種密碼輸入方式可以進(jìn)行改革。在越來(lái)越高科技化的今天,遙控控制顯的愈發(fā)重要,今后的電子密碼鎖應(yīng)該具有以紅外技術(shù)或無(wú)線電技術(shù)為輔助的密碼按鍵輸入遠(yuǎn)程交互技術(shù),這樣就能遠(yuǎn)程輸入密碼完成操作。也可以放棄傳統(tǒng)的按鍵輸入密碼模式,借助傳感器技術(shù)運(yùn)用聲控來(lái)實(shí)現(xiàn)密碼輸入,又或者人臉識(shí)別技術(shù),還有一種就是用戶指紋輸
22、入方式,這些都可以使開鎖的時(shí)間更短更方便。電子密碼鎖產(chǎn)業(yè)將向靜態(tài)功耗更低,外圍電路更簡(jiǎn)化,可提供的功能或控制口更多,更人性化高科技化的方向發(fā)展。通過(guò)本次課題設(shè)計(jì)的鍛煉,我學(xué)到了很多有關(guān)電子密碼鎖的設(shè)計(jì)方法與工作原理,鞏固了單片機(jī)知識(shí)。無(wú)論從選題到定稿,從理論到實(shí)踐都使我學(xué)到了很多東西,它不僅可以鞏固了以前所學(xué)過(guò)的知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過(guò)的知識(shí)。同時(shí)也明白了理論與實(shí)踐相結(jié)合的重要性,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。致在本次課題設(shè)計(jì)過(guò)程中,琦老師和秋芬老師對(duì)該論文從選題
23、,構(gòu)思到最后定稿的各個(gè)環(huán)節(jié)給予細(xì)心指引與教導(dǎo),使我得以最終完成課題設(shè)計(jì),在此表示衷心的感。此外在學(xué)習(xí)中,老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、豐富淵博的知識(shí)、敏銳的學(xué)術(shù)思維、精益求精的工作態(tài)度以與侮人不倦的師者風(fēng)是我終生學(xué)習(xí)的楷模。另外在完成課題設(shè)計(jì)的過(guò)程中,還得到眾多朋友的關(guān)心支持和幫助,在此,謹(jǐn)向老師同學(xué)和朋友致以衷心的感和崇高的敬意!最后,我要向百忙之中抽時(shí)間對(duì)本文進(jìn)行審閱,評(píng)議和參與本人論文答辯的各位老師表示感。參考文獻(xiàn)01何宏主編. 單片機(jī)原理與接口技術(shù). :國(guó)防工業(yè). 2006.11002 西明, 朱騏主編.單片機(jī)編程與應(yīng)用入門. :機(jī)械工業(yè).2004.3503 先鋒工作室編著. 單片機(jī)程序設(shè)計(jì)實(shí)例
24、. : 清華大學(xué).2003.5604 宜仁主編. 單片機(jī)實(shí)用技術(shù)問(wèn)答. : 人民郵電. 2003.7805 梁麗.電子密碼鎖的計(jì)算機(jī)仿真設(shè)計(jì).計(jì)算機(jī)仿真,2005.9006 房小翠,王金鳳編著. 單片機(jī)實(shí)用系統(tǒng)設(shè)計(jì)技術(shù). : 國(guó)防工業(yè). 1999.5607 各種網(wǎng)絡(luò)教程與其他08 王寬仁. 可靠安全的智能密碼鎖. 電子技術(shù)應(yīng)用 , 2001.66附錄 電路總圖附錄 程序清單en bit p3.5;rw bit p3.4;rs bit p3.3;display equ p0;speaker bit p2.6;led bit p2.7;open bit p2.0;returnbit bit 20h
25、.1;ORG 0000h;LJMP start;ORG 000bh;LJMP intermit_t0;ORG 001bh;LJMP intermit_t1;ORG 0030h;start:MOV sp,#60h;lcall sys_initialization;main0: lcall strat_display;main:MOV 52h,#0;52h ;判斷輸入錯(cuò)誤次數(shù)存儲(chǔ)地址 setb led;setb tr0;lcall key;cjne a,#A,next1;LJMP set_password;next1: cjne a,#B,next2;LJMP input_password;nex
26、t2: ajmp main;sys_initialization:clr led;clr open;clr speaker;MOV 34h,#1; MOV 35h,#1;MOV 36h,#1;MOV 37h,#1;MOV 38h,#1;MOV 39h,#1; ;存放初始密碼MOV r7,#12;MOV r0,#40h;loop: MOV r0,#10h;inc r0;djnz r7,loop; ;密碼鍵值存放區(qū)清零完畢lcall delay0_1s;MOV p0,#03h;call write_instruction; ;液晶軟復(fù)位MOV p0,#01h;call write_instruct
27、ion;mov p0,#3fh;call write_instruction;mov p0,#0fh;call write_instruction;mov p0,#06h;call write_instruction; ;液晶初始化完畢mov r4,#10;mov tmod,#11h;mov th0,#0b0h;setb ea;setb et0; ;定時(shí)器t0,0.5s定時(shí)中斷初始化完畢ret; ;系統(tǒng)初始化完畢intermit_t0:push acc;push psw;mov th0,#3ch;mov tl0,#0b0h;djnz r4,return;cpl led;mov r4,#10;r
28、eturn: pop psw;pop acc;reti;intermit_t1:push acc;push psw;mov th1,#9eh;mov tl1,#58h;djnz r4,return_t1;cpl led;cpl speaker;mov r4,#10;return_t1:pop psw;pop acc;reti; 鍵盤掃描key: call ks;jnz k1;jmp key;k1:call delay;call ks;jnz k2;jmp key;k2:clr tr0;clr led;mov r2,#0feh;mov r6,#00h;k3:mov a,r2;mov p1,a;m
29、ov a,p1; acc.4,l1;mov a,#0;LJMP lk;l1: acc.5,l2;mov a,#4;ljmp lk;l2: acc.6,l3;mov a,#8;ljmp lk;l3: acc.7,next_key;mov a,#12;lk:add a,r6;mov r6,a;k4:call ks;jnz k4;mov a,r6;mov dptr,#table0;movc a,a+dptr;mov 50h,a; ;查表取值存入50H,保護(hù)鍵值ret;next_key:inc r6;mov a,r2;jnb acc.7,key;rl a;mov r2,a;jmp k3;ks:mov
30、p1,#0f0h;mov a,p1;xrl a,#0f0h;ret; 設(shè)置密碼程序set_password:call clear_display;mov dptr,#table4;call input_hint;mov r0,#40h;call password;c returnbit,set_password; ;先輸入原密碼完畢mov r5,#6;mov r0,#40h;mov r1,#34h;input_compere:mov a,r0;xrl a,r1;jnz input_error;inc r0;inc r1;nop;nop;djnz r5,input_compere; ;驗(yàn)證輸入密
31、碼完畢jmp set_password0;input_error:setb led;call clear_display;mov dptr,#table5;call input_hint;call delay1_5s;clr speaker;clr led;inc 52h;mov a,52h;cjne a,#3,set_password;sjmp $; ;輸入密碼錯(cuò)誤次數(shù)超過(guò)3次,鎖死set_password0:call clear_display;mov dptr,#table2;call input_hint;mov r0,#40h;call password;c returnbit,se
32、t_password; ;第一次輸入新密碼完畢call clear_display;mov dptr,#table3;call input_hint;call delay1_5s; ;顯示再次輸入新密碼完畢call clear_display;mov dptr,#table4;call input_hint;mov r0,#46h;call password;c returnbit,set_password; ;第二次輸入新密碼完畢mov r5,#6;mov r0,#40h;mov r1,#46h;set_compere:mov a,r0;xrl a,r1;jnz set_error;inc
33、r0;inc r1;djnz r5,set_compere;mov 34h,40h;mov 35h,41h;mov 36h,42h;mov 37h,43h;mov 38h,44h;mov 39h,45h; ;存入新密碼完畢jmp main0; ;設(shè)置新密碼成功,返回主程序set_error:setb speaker;setb led;call clear_display;mov dptr,#table5;call input_hint;call delay1_5s;clr speaker;clr led;ljmp set_password0; ;前后兩次輸入新密碼不一致,返回重設(shè);輸入密碼開鎖
34、程序input_password:call clear_display;mov dptr,#table4;call input_hint;mov r0,#40h;call password;c returnbit,input_password; ;輸入原密碼完畢mov r5,#6;mov r0,#40h;mov r1,#34h;input_compere0:mov a,r0;xrl a,r1;jnz input_error22;inc r0;inc r1;nop;nop;djnz r5,input_compere0; ;驗(yàn)證輸入密碼完畢jmp display_right;input_error
35、22:setb speaker;setb led;call clear_display;mov dptr,#table5;call input_hint;call delay1_5s;clr speaker;clr led;inc 52h;mov a,52h;cjne a,#3,input_password;sjmp $; ;輸入密碼錯(cuò)誤超過(guò)3次,鎖死display_right:call clear_display;mov dptr,#table6;call input_hint;;顯示輸入密碼正確提示完畢setb open;;開鎖next_key1:call key;nop;nop;cjne a,#F,next_key1;clr open;;按下開鎖鍵,開鎖jmp main0;;返回主程序 ;strat_display:mov p0,#80h;call write_instruction;mov dptr,#table1;call input_hint;mov p0,#0c0h;call write_instruction;mov
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度智能農(nóng)業(yè)農(nóng)藥化肥供應(yīng)及服務(wù)合同3篇
- 2025年度年度城市經(jīng)濟(jì)適用房購(gòu)置合同3篇
- 2025年度股東借款及股權(quán)激勵(lì)計(jì)劃合同3篇
- 2025年農(nóng)村個(gè)人承包土地經(jīng)營(yíng)權(quán)與農(nóng)村信息化建設(shè)合同3篇
- 二零二五年度農(nóng)業(yè)機(jī)械租賃與農(nóng)業(yè)人才培養(yǎng)合作合同3篇
- 二零二五年度醫(yī)療耗材研發(fā)與創(chuàng)新合作合同3篇
- 二零二五年度合伙經(jīng)營(yíng)中式快餐店合同書2篇
- 個(gè)人承包城市照明設(shè)施維護(hù)2025年度合同3篇
- 2025年度綠色生態(tài)豬肉直供基地合作協(xié)議合同3篇
- 公墓墓位買賣及墓園墓碑售后服務(wù)保障協(xié)議3篇
- 《稀土礦石選礦》課件
- 短視頻運(yùn)營(yíng)獲客短視頻如何打造
- 中學(xué)名著導(dǎo)讀課程設(shè)計(jì)
- 七年級(jí)第一學(xué)期地理知識(shí)點(diǎn)復(fù)習(xí)提綱(滬教版)
- 典范英語(yǔ)2a練習(xí)冊(cè)
- 汽車二級(jí)維護(hù)操作技術(shù)課件
- 視頻監(jiān)控系統(tǒng)用戶操作手冊(cè)
- 建筑與市政施工現(xiàn)場(chǎng)安全衛(wèi)生與職業(yè)健康通用規(guī)范培訓(xùn)課件
- 《食品安全知識(shí)》課件
- 婚禮籌備日程表完整版(表格版)
- 部編版道德與法治小學(xué)四年級(jí)上冊(cè)全冊(cè)總復(fù)習(xí)課件
評(píng)論
0/150
提交評(píng)論