電子密碼鎖本科畢業(yè)設(shè)計完整版_第1頁
電子密碼鎖本科畢業(yè)設(shè)計完整版_第2頁
電子密碼鎖本科畢業(yè)設(shè)計完整版_第3頁
電子密碼鎖本科畢業(yè)設(shè)計完整版_第4頁
電子密碼鎖本科畢業(yè)設(shè)計完整版_第5頁
已閱讀5頁,還剩101頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

知識不僅是指課本的內(nèi)容,還涉及社會經(jīng)驗、文明文化、時代精神等整體要素,才有競爭力,知識是新時代的資本,五六十年代人靠勤勞可以成事;今天的香港要搶知識,要以知識取勝基于單片機的電子密碼鎖設(shè)計摘要在平常的生活和工作中住宅與部門的安全防范、單位的文獻檔案、財務(wù)報表以及一些個人資料的保存多以加鎖的辦法來解決若使用傳統(tǒng)的機械式鑰匙開鎖人們常需攜帶多把鑰匙使用極不方便且鑰匙丟失后安全性即大打折扣在安全技術(shù)防范領(lǐng)域具有防盜報警功能的電子密碼鎖逐漸代替了傳統(tǒng)的機械式密碼鎖電子密碼鎖具有安全性高、成本低、功耗低、易操作等優(yōu)點本文從經(jīng)濟實用的角度出發(fā)采用美國Atmel公司的單片機AT89S51作為主控芯片與數(shù)據(jù)存儲器單元結(jié)合外圍的矩陣鍵盤輸入、LCD液晶顯示、報警、開鎖等用C語言編寫的主控芯片控制程序與EEPROMAT24C02讀寫程序相結(jié)合并用Keil軟件進行編譯設(shè)計了一款可以多次更改密碼具有報警功能的電子密碼控制系統(tǒng)這種密碼鎖的電路設(shè)計具有防試探按鍵輸入、智能控制上鎖、開鎖、報警、修改密碼等多種功能密碼長度可變、保密性強、靈活性高、應(yīng)用日益廣泛關(guān)鍵詞密碼鎖單片機報警LCD顯示DesignofElectricPasswordLockBasedonMCUABSTRACTInthedailylifeandtheworkthewaytothehouse'sanddepartment'ssafeguardunit'sdocumentfilethefinancialreportingaswellassomeindividualmaterialpreservationalmostneedmanylocks.Ifweusetraditionmechanicalkeytoopenthepeopleoftenmustcarrymanykeysbutitisnotextremelyconvenient.Ifthekeylostthesecuritywilldeclinegreatly.Inthesafetyworkguarddomainthelockwithsecuritywarningfunctionelectroniccombinationhavereplacedthetraditionalmechanicalcombinationlockgraduallytheelectroniccombinationlockhavethehighlysecuritythelowlycostthelowlypowerwastageeasytooperateandsoonmerits.ThisarticleisbasedontheeconomicalandpracticalpointofviewusestheUnitedStatesAtmelCorporationAT89S51microcontrollerasamasterchipandthedatamemoryunititcombineswiththeexternalmatrixkeyboardinputLCDdigitaldisplayalarmunlockandsooncircuitsdominatesbytheCprogramminglanguagechipEEPROMofthecontrolproceduresandcarriesonthetranslationwithKeilsoftwarethepasswordcanbechangedmanytimestheelectronicthepasswordcontrolalsohasthealarmingfunction.Thispasswordlockcircuitdesignhasanti-testbuttoninputintelligentcontrollockunlockalarmandchangethepasswordmultiplefunctions.Passwordlengthcanbechangedgreatsecurityandhighflexiblethanothersitiswidelyused.KeyWords:Passwordlock;MCU;Alarm;LCDDisplay目錄摘要第一章緒論1.1電子密碼鎖簡介........................................................................11.2電子密碼鎖的發(fā)展趨勢...............................................................11.3本設(shè)計所要實現(xiàn)的目的...............................................................21.4設(shè)計方案簡介...........................................................................2第二章重要元器件介紹2.1主控芯片AT89S51.....................................................................32.1存儲芯片AT24C02.....................................................................62.3LCD1602顯示器........................................................................72.4晶體振蕩器..............................................................................8第三章硬件系統(tǒng)構(gòu)成3.1設(shè)計原理.................................................................................103.2電路總體構(gòu)成...........................................................................103.3電源輸入電路...........................................................................113.4鍵盤輸入電路...........................................................................123.5密碼存儲電路...........................................................................123.6復(fù)位電路.................................................................................133.7晶振電路.................................................................................143.8顯示電路.................................................................................143.9報警電路.................................................................................153.10開鎖電路..............................................................................15第四章軟件系統(tǒng)設(shè)計4.1主程序流程圖...........................................................................174.2按鍵軟件設(shè)計...........................................................................184.3密碼設(shè)立軟件設(shè)計.....................................................................194.4開鎖軟件設(shè)計...........................................................................20第五章調(diào)試與實現(xiàn)5.1硬件調(diào)試.................................................................................215.2軟件調(diào)試.................................................................................215.3Pruteus仿真...........................................................................22結(jié)論與展望致謝參考文獻附錄第一章緒論1.1電子密碼鎖簡介電子密碼鎖是一種通過密碼輸入來控制電路或是芯片工作從而控制機械開關(guān)的閉合完畢開鎖、閉鎖任務(wù)的電子產(chǎn)品它的種類很多有簡易的電路產(chǎn)品也有基于芯片的性價比較高的產(chǎn)品現(xiàn)在應(yīng)用較廣的電子密碼鎖是以芯片為核心通過編程來實現(xiàn)的其性能和安全性已大大超過了機械鎖其特點如下:1)保密性好編碼量多遠遠大于彈子鎖隨機開鎖成功率幾乎為零2)密碼可變用戶可以隨時更改密碼防止密碼被盜同時也可以避免因人員的更替而使鎖的密級下降3)誤碼輸入保護當輸入密碼多次錯誤時報警系統(tǒng)自動啟動4)無活動零件不會磨損壽命長5)使用靈活性好不像機械鎖必須佩帶鑰匙才干開鎖6)電子密碼鎖操作簡樸易行一學(xué)即會1.2電子密碼鎖的發(fā)展趨勢平常生活和工作中住宅與部門的安全防范、單位的文獻檔案、財務(wù)報表以及一些個人資料的保存多以加鎖的辦法來解決目前門鎖重要用彈子鎖其鑰匙容易丟失;保險箱重要用機械密碼鎖其結(jié)構(gòu)較為復(fù)雜制造精度規(guī)定高成本高且易出現(xiàn)故障人們常需攜帶多把鑰匙使用極不方便且鑰匙丟失后安全性即大打折扣針對這些鎖具給人們帶來的不便若使用機械式鑰匙開鎖為滿足人們對鎖的使用規(guī)定增長其安全性用密碼代替鑰匙的密碼鎖應(yīng)運而生由于電子器件所限以前開發(fā)的電子密碼鎖其種類不多保密性差最基本的就是只依靠最簡樸的模擬電子開關(guān)來實現(xiàn)的制作簡樸但很不安全在后為多是基于EDA來實現(xiàn)的其電路結(jié)構(gòu)復(fù)雜電子元件繁多也有使用早先的20引角的2051系列單片機來實現(xiàn)的但密碼簡樸易破解隨著電子元件的進一步發(fā)展電子密碼鎖也出現(xiàn)了很多的種類功能日益強大使用更加方便安全保密性更強由以前的單密碼輸入發(fā)展到現(xiàn)在的密碼加感應(yīng)元件實現(xiàn)了真真的電子加密用戶只有密碼或電子鑰匙中的同樣是打不開鎖的隨著電子元件的發(fā)展及人們對保密性需求的提高出現(xiàn)了越來越多的電子密碼鎖出于安全、方便等方面的需要許多電子密碼鎖已相繼問世但這類產(chǎn)品的特點是針對特定有效卡、指紋或聲音有效且不能實現(xiàn)遠程控制只能合用于保密規(guī)定高且供個人使用的箱、柜、房間等由于數(shù)字、字符、圖形圖像、人體生物特性和時間等要素均可成為鑰匙的電子信息組合使用這些信息可以使電子防盜鎖獲得高度的保密性如防范森嚴的金庫需要使用復(fù)合信息密碼的電子防盜鎖組合使用信息也可以使電子防盜鎖獲得無窮擴展的也許使產(chǎn)品多樣化對用戶而言是"千挑百選、自得其所"可以看出組合使用電子信息是電子密碼鎖以后發(fā)展的趨勢1.3本設(shè)計所要實現(xiàn)的目的本設(shè)計采用單片機為主控芯片結(jié)合外圍電路組成電子密碼鎖用戶想要打開鎖必先通過提供的鍵盤輸入對的的密碼才干將鎖打開密碼輸入錯誤有提醒為了提高安全性當密碼輸入錯誤三次將報警密碼可以有用戶自己修改設(shè)定鎖打開后才干修改密碼修改密碼之前必須再次輸入就的密碼在輸入新密碼的時候要二次確認以防止誤操作1.4設(shè)計方案簡介采用以單片機為核心的控制方案由于單片機種類繁多各種型號都有其一定的應(yīng)用環(huán)境因此在選用時要多加比較合理選擇以期獲得最佳的性價比一般來說在選取單片機時從下面幾個方面考慮:性能、存儲器、運營速度、I/O口、定期/計數(shù)器、串行接口、模擬電路功能、工作電壓、功耗、封裝形式、抗干擾性、保密性除了以上的一些的尚有一些最基本的比如:中斷源的數(shù)量和優(yōu)先級、工作溫度范圍、有沒有低電壓檢測功能、單片機內(nèi)有無時鐘振蕩器、有無上電復(fù)位功能等在開發(fā)過程中單片機還受到:開發(fā)工具、編程器、開發(fā)成本、開發(fā)人員的適應(yīng)性、技術(shù)支持和服務(wù)等等因素基于以上因素本設(shè)計選用單片機AT89S51作為本設(shè)計的核心元件運用單片機靈活的編程設(shè)計和豐富的I/O端口及其控制的準確性實現(xiàn)基本的密碼鎖功能在單片機的外圍電路外接輸入鍵盤用于密碼的輸入和一些功能的控制外接AT24C02芯片用于密碼的存儲外接LCD1602顯示器用于顯示作用當用戶需要開鎖時先按鍵盤開鎖鍵之后按鍵盤的數(shù)字鍵0-9輸入密碼密碼輸完后按下確認鍵假如密碼輸入對的則開鎖不對的顯示密碼錯誤重新輸入密碼當三次密碼錯誤則發(fā)出報警;當用戶需要修改密碼時先按下鍵盤設(shè)立鍵后輸入本來的密碼只有當輸入的原密碼對的后才干設(shè)立新密碼新密碼輸入無誤后按確認鍵使新密碼將得到存儲密碼修改成功第二章重要元器件2.1主控芯片AT89S51單片機AT89S51功能介紹AT89S51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM-FalshProgrammableandErasableReadOnlyMemory)的低電壓高性能CMOS8位微解決器俗稱單片機該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造與工業(yè)標準的MCS-51指令集和輸出管腳相兼容由于將多功能8位CPU和閃爍存儲器組合在單個芯片中ATMEL的AT89S51是一種高效微控制器為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案AT89S51芯片引腳圖如圖2-1所示重要特性:·與MCS-51兼容·4K字節(jié)可編程閃爍存儲器·壽命:1000寫/擦循環(huán)·數(shù)據(jù)保存時間:2023·全靜態(tài)工作:0Hz-24Hz·三級程序存儲器鎖定·128*8位內(nèi)部RAM·32可編程I/O線·兩個16位定期器/計數(shù)器·5個中斷源·可編程串行通道·低功耗的閑置和掉電模式·片內(nèi)振蕩器和時鐘電路管腳說明:下面按其引腳功能分為四部分敘述這40條引腳的功能1、主電源引腳VSS和VSSAT89S51芯片引腳圖VSS--(40腳)接+5V電壓;VSS--(20腳)接地2、外接晶體引腳XTAL1和XTAL2XTAL1(19腳)接外部晶體的一個引腳在單片機內(nèi)部它是一個反相放大器的輸入端這個放大器構(gòu)成了片內(nèi)振蕩器當采用外部振蕩器時對HMOS單片機此引腳應(yīng)接地;對SHMOS單片機此引腳作為驅(qū)動端XTAL2(18腳)接外晶體的另一端在單片機內(nèi)部接至上述振蕩器的反相放大器的輸出端采用外部振蕩器時對HMOS單片機該引腳接外部振蕩器的信號即把外部振蕩器的信號直接接到內(nèi)部時鐘發(fā)生器的輸入端;對XHMOS此引腳應(yīng)懸浮3、控制或與其它電源復(fù)用引腳RST/VPD、ALE/PROG、PSEN和EA/VPP①RST/VPD(9腳)當振蕩器運營時在此腳上出現(xiàn)兩個機器周期的高電平將使單片機復(fù)位推薦在此引腳與VSS引腳之間連接一個約8.2k的下拉電阻與VSS引腳之間連接一個約10μF的電容以保證可靠地復(fù)位VSS掉電期間此引腳可接上備用電源以保證內(nèi)部RAM的數(shù)據(jù)不丟失當VSS主電源下掉到低于規(guī)定的電平而VPD在其規(guī)定的電壓范圍(5±0.5V)內(nèi)VPD就向內(nèi)部RAM提供備用電源②ALE/PROG(30腳):當訪問外部存貯器時ALE(允許地址鎖存)的輸出用于鎖存地址的低位字節(jié)即使不訪問外部存儲器ALE端仍以不變的頻率周期性地出現(xiàn)正脈沖信號此頻率為振蕩器頻率的1/6因此它可用作對外輸出的時鐘或用于定期目的然而要注意的是每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖ALE端可以驅(qū)動(吸取或輸出電流)8個LS型的TTL輸入電路對于EPROM單片機(如8751)在EPROM編程期間此引腳用于輸入編程脈沖(PROG)③PSEN(29腳):此腳的輸出是外部程序存儲器的讀選通信號在從外部程序存儲器取指令(或常數(shù))期間每個機器周期兩次PSEN有效但在此期間每當訪問外部數(shù)據(jù)存儲器時這兩次有效的PSEN信號將不出現(xiàn)PSEN同樣可以驅(qū)動(吸取或輸出)8個LS型的TTL輸入④EA/VPP(引腳):當EA端保持高電平時訪問內(nèi)部程序存儲器但在PS(程序計數(shù)器)值超過0FFFH(對851/8751/80S51)或1FFFH(對8052)時將自動轉(zhuǎn)向執(zhí)行外部程序存儲器內(nèi)的程序當EA保持低電平時則只訪問外部程序存儲器不管是否有內(nèi)部程序存儲器對于常用的8031來說無內(nèi)部程序存儲器所以EA腳須常接地這樣才干只選擇外部程序存儲器對于EPROM型的單片機(如8751)在EPROM編程期間此引腳也用于施加21V的編程電源(VPP)4.控制或與其它電源復(fù)用引腳RST/VpdALE/PROGPSEN和EA/VppRST/Vpd當振蕩器運營時在此引腳上出現(xiàn)兩個機器同期的高電平(由低到高跳變)將使單片機復(fù)位在VSS掉電期間此引腳可接上備用電源由Vpd向內(nèi)部RAM提供備用電源以保持內(nèi)部RAM中的數(shù)據(jù)ALE/PROG正常操作時為ALE功能(允許地址錢存)提供把地址的低字節(jié)鎖存到外部鎖存器ALE引腳以不變的頻率(振蕩周期的1/6)周期性地發(fā)出正脈沖信號因此它可用作對外輸出的時鐘或用于定期目的但要注意每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖ALE端可以驅(qū)動(吸取或輸出電流)八個LSTTL電路對于EPROM型單片機在EPROM編程期間此引腳接受編程脈沖(PROG功能)PSEN外部程序存儲器讀選通信號輸出端在從外部程序存儲器取指令(或數(shù)據(jù))期間;PSEN在每個機器周期內(nèi)兩次有效PSEN同樣可以驅(qū)動八個LSTTL輸入EA/VppEA為內(nèi)部程序存儲器和外部程序存儲器選擇端當EA為高電平時訪問內(nèi)部程序存儲器(PS值小于4K)當EA為低電平時則訪問外部程序存儲器對于EPROM型單片機在EPROM編程期間此引腳上加21VEPROM編程電源(Vpp)5、輸入/輸出(I/O)引腳P0、P1、P2、P3(共32根)①P0口(39腳至32腳):是雙向8位三態(tài)I/O口在外接存儲器時與地址總線的低8位及數(shù)據(jù)總線復(fù)用能以吸取電流的方式驅(qū)動8個LS型的TTL負載②P1口(1腳至8腳):是準雙向8位I/O口由于這種接口輸出沒有高阻狀態(tài)輸入也不能鎖存故不是真正的雙向I/O口P1口能驅(qū)動(吸取或輸出電流)4個LS型的TTL負載對8052、8032P1.0引腳的第二功能為T2定期/計數(shù)器的外部輸入P1.1引腳的第二功能為T2EX捕獲、重裝觸發(fā)即T2外部控制端對EPROM編程和程序驗證時它接受低8位地址③P2口(21腳至28腳):是準雙向8位I/O口在訪問外部存儲器時它可以作為擴展電路高8位地址總線送出高8位地址在對EPROM編程和程序驗證期間它接受高8位地址P2可以驅(qū)動(吸取或輸出電流)4個LS型的TTL負載④P3口(10腳至17腳):是準雙向8位I/O口在MSS-51中這8個引腳還用于專門功能是復(fù)用雙功能口P3能驅(qū)動(吸取或輸出電流)4個LS型的TTL負載作為第一功能使用時就作為普通I/O口用功能和操作方法與P1口相同作為第二功能使用時各引腳的定義如表所示值得強調(diào)的是P3口的每一條引腳均可獨立定義為第一功能的輸入輸出或第二功能表2-1P3口管腳備選功能P3.0

RXD(串行輸入口)

P3.1

TXD(串行輸出口)

P3.2

/INT0(外部中斷0)

P3.3

/INT1(外部中斷1)

P3.4

T0(記時器0外部輸入)

P3.5

T1(記時器1外部輸入)

P3.6

/WR(外部數(shù)據(jù)存儲器寫選通)

P3.7

/RD(外部數(shù)據(jù)存儲器讀選通)

2.2存儲芯片AT24C02如圖2-2為AT24C02的芯片引腳圖圖2-2AT24C02的芯片引腳圖特點:低壓和標準電壓運營模式-2.7(VCC=2.7Vto5.5V)-1.8(VCC=1.8Vto5.5V)內(nèi)建128x8存儲序列2線制串行接口雙向數(shù)據(jù)傳送協(xié)議100kHz(1.8V2.5V2.7V)和400kHz(5V)兼容寫同步時鐘(最大10ms)高可靠性極限:1M寫時鐘周期數(shù)據(jù)保存:12023不斷推動的芯片等級擴大了設(shè)備的可用溫度范圍AT24C02提供電可擦除的串行1024位存儲或可編程只讀存儲器(EEPROM)128字(8位/字)芯片在低壓的工業(yè)與商業(yè)應(yīng)用中進行了最優(yōu)化設(shè)備操作:CLOCK和DATA變化:SDA管腳通常外部要拉高SDA管腳上的數(shù)據(jù)只能在SCL低期間改變數(shù)據(jù)在SCL高期間改變定義為一個開始或停止信號開始狀態(tài):在任何操作之前必須有一個開始信號----在SCL為高時SDA上產(chǎn)生一個下降沿停止狀態(tài):SCL為高時SDA產(chǎn)生一個上升沿是停止信號停止信號后將停止所有通信在一個讀的序列之后停止信號將讓EEPROM進入備用電源模式2.3LCD16022顯示器液晶顯示模塊已作為很多電子產(chǎn)品的通過器件如在計算器、萬用表、電子表及很多家用電子產(chǎn)品中都可以看到顯示的重要是數(shù)字、專用符號和圖形1602型LCD顯示模塊具有體積小功耗低顯示內(nèi)容豐富等特點1602型LCD可以顯示2行16個字符有8位數(shù)據(jù)總線D0-D7和RSR/WEN三個控制端口工作電壓為5V并且具有字符對比度調(diào)節(jié)和背光功能接口信號說明:1602型LCD的接口信號說明如表2-2所示表2-2LCD1602接口信號說明編號

符號

引腳說明

編號

符號

引腳說明

1

VSS

電源地

9

D2

數(shù)據(jù)

2

VDD

電源正極

10

D3

數(shù)據(jù)

3

VL

液晶顯示偏壓

11

D4

數(shù)據(jù)

4

RS

數(shù)據(jù)/命令選擇

12

D5

數(shù)據(jù)

5

R/W

讀/寫選擇

13

D6

數(shù)據(jù)

6

E

使能信號

14

D7

數(shù)據(jù)

7

D0

數(shù)據(jù)

15

BLA

背光源正極

8

D1

數(shù)據(jù)

16

BLK

背光源負極

1602型LCD重要技術(shù)參數(shù):顯示容量:16×2個字符芯片工作電壓:4.5-5.5V工作電流:2.0mA(5.0V)模塊最佳工作電壓:5.0V字符尺寸:2.95×4.35(W×H)mm1602型LCD基本操作程序如下表所示:表2-3LCD1602基本操作程序讀狀態(tài)

輸入

RS=LR/W=HE=H

輸出

D0-D7=狀態(tài)字

寫指令

輸入

RS=LR/W=LD0-D7=指令碼E=高脈沖

輸出

讀數(shù)據(jù)

輸入

RS=HR/W=HE=H

輸出

D0-D7=數(shù)據(jù)

寫數(shù)據(jù)

輸入

RS=HR/W=LD0-D7=數(shù)據(jù)E=高脈沖

輸出

2.4晶體振蕩器晶體振蕩器簡稱晶振其作用在于產(chǎn)生原始的時鐘頻率這個頻率通過頻率發(fā)生器的放大或縮小后就成了電腦中各種不同的總線頻率以聲卡為例要實現(xiàn)對模擬信號44.1kHz或48kHz的采樣頻率發(fā)生器就必須提供一個44.1kHz或48kHz的時鐘頻率假如需要對這兩種音頻同時支持的話聲卡就需要有兩顆晶振但是現(xiàn)在的娛樂級聲卡為了減少成本通常都采用SCR將輸出的采樣頻率固定在48kHz但是SRC會對音質(zhì)帶來損害并且現(xiàn)在的娛樂級聲卡都沒有很好地解決這個問題現(xiàn)在應(yīng)用最廣泛的是石英晶體振蕩器石英晶體振蕩器是一種高精度和高穩(wěn)定度的振蕩器石英晶體振蕩器也稱石英晶體諧振器它用來穩(wěn)定頻率和選擇頻率是一種可以取代LC諧振回路的晶體諧振元件石英晶體振蕩器廣泛地應(yīng)用在電視機、影碟機、錄像機、無線通訊設(shè)備、電子鐘表、單片機、數(shù)字儀器儀表等電子設(shè)備中為數(shù)據(jù)解決設(shè)備產(chǎn)生時鐘信號和為特定系統(tǒng)提供基準信號在單片機中為其提供時鐘頻率石英晶體振蕩器是運用石英晶體(二氧化硅的結(jié)晶體)的壓電效應(yīng)制成的一種諧振器件它的基本構(gòu)成大體是:從一塊石英晶體上按一定方位角切下薄片(簡稱為晶片它可以是正方形、矩形或圓形等)在它的兩個相應(yīng)面上涂敷銀層作為電極在每個電極上各焊一根引線接到管腳上再加上封裝外殼就構(gòu)成了石英晶體諧振器簡稱為石英晶體或晶體、晶振其產(chǎn)品一般用金屬外殼封裝也有用玻璃殼、陶瓷或塑料封裝的只要在晶體振子板極上施加交變電壓就會使晶片產(chǎn)生機械變形振動此現(xiàn)象即所謂逆壓電效應(yīng)當外加電壓頻率等于晶體諧振器的固有頻率時就會發(fā)生壓電諧振從而導(dǎo)致機械變形的振幅忽然增大第三章硬件系統(tǒng)設(shè)計3.1設(shè)計原理本設(shè)計重要由單片機、矩陣鍵盤、液晶顯示器和密碼存儲等部分組成其中矩陣鍵盤用于輸入數(shù)字密碼和進行各種功能的實現(xiàn)由用戶通過連接單片機的矩陣鍵盤輸入密碼后通過單片機對用戶輸入的密碼與自己保存的密碼進行對比從而判斷密碼是否對的然后控制引腳的高低電平傳到開鎖電路或者報警電路控制開鎖還是報警實際使用時只要將單片機的負載由繼電器換成電子密碼鎖的電磁鐵吸合線圈即可當然也可以用繼電器的常開觸點去控制電磁鐵吸合線圈本系統(tǒng)共有兩部分構(gòu)成即硬件部分與軟件部分其中硬件部分由電源輸入部分、鍵盤輸入部分、密碼存儲部分、復(fù)位部分、晶振部分、顯示部分、報警部分、開鎖部分組成軟件部分相應(yīng)的由主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、啟動程序、關(guān)閉程序、建功能程序、密碼設(shè)立程序、EEPROM讀寫程序和延時程序等組成圖3-1電子密碼鎖原理框圖3.2電路總體構(gòu)成在擬定了選用什么型號的單片機后就要擬定在外圍電路其外圍電路涉及電源輸入部分、鍵盤輸入部分、密碼存儲部分、復(fù)位部分、晶振部分、顯示部分、報警部分、開鎖部分組成根據(jù)實際情況鍵盤輸入部分選擇4*4矩陣鍵盤顯示部分選擇字符型液晶顯示LCD1602密碼存儲部分選用AT24C02芯片來完畢其原理圖如圖3-2所示:圖3-2電路總體結(jié)構(gòu)圖3.3電源輸入電路密碼鎖重要控制部分電源需要用5V直流電源供電其電路如圖3-3所示而5V電源輸入時往往伴有雜波所以加一個2.2uF的電容濾波這樣輸出的電壓一般能滿足規(guī)定圖3-3電源輸入電路原理圖3.4鍵盤輸入電路由于本設(shè)計所用到的按鍵數(shù)量較多而不適合用獨立按鍵式鍵盤采用的是矩陣式按鍵鍵盤它由行線和列線組成也稱行列式鍵盤按鍵位于行列的交叉點上密碼鎖的密碼由鍵盤輸入完畢與獨立式按鍵鍵盤相比要節(jié)省很多I/O口本設(shè)計中使用的這個4*4鍵盤不僅能完畢密碼的輸入還能作特別功能鍵使用比如清空顯示功能等鍵盤的每個按鍵功能在程序設(shè)計中設(shè)立其大體功能(看鍵盤按鍵上的標記)及與單片機引腳接法如圖3-4所示:圖3-4鍵盤輸入原理圖3.5密碼存儲電路AT24C02是ATMEL公司的2KB字節(jié)的電可擦除存儲芯片采用兩線串行的總線和單片機通訊電壓最低可以到2.5V額定電流為1mA靜態(tài)電流10Ua(5.5V)芯片內(nèi)的資料可以在斷電的情況下保存40年以上并且采用8腳的DIP封裝使用方便其電路如圖3-5所示圖中1、2、3腳是三條地址線用于擬定芯片的硬件地址在AT89S51上它們都能接地第5腳和第8腳分別為正、負電源AT24C02中帶有片內(nèi)地址寄存器每寫入或讀出一個數(shù)據(jù)字節(jié)后該地址寄存器自動加1以實現(xiàn)對下一個儲存單元的讀寫所有字節(jié)均以單一操作方式讀取3.6復(fù)位電路單片機復(fù)位是使CPU和系統(tǒng)中的其他功能部件都處在一個擬定的初始狀態(tài)并從這個狀態(tài)開始工作例如復(fù)位后PC=0000H使單片機從第-個單元取指令無論是在單片機剛開始接上電源時還是斷電后或者發(fā)生故障后都要復(fù)位在復(fù)位期間(即RST為高電平期間)P0口為高組態(tài)P1-P3口輸出高電平;外部程序存儲器讀選通信號PSEN無效地址鎖存信號ALE也為高電平根據(jù)實際情況選擇如圖2-8所示的復(fù)位電路該電路在最簡樸的復(fù)位電路下增長了手動復(fù)位按鍵在接通電源瞬間電容C1上的電壓很小復(fù)位下拉電阻上的電壓接近電源電壓即RST為高電平在電容充電的過程中RST端電壓逐漸下降當RST端的電壓小于某一數(shù)值后CPU脫離復(fù)位狀態(tài)由于電容C1足夠大可以保證RST高電平有效時間大于24個振蕩周期CPU可以可靠復(fù)位增長手動復(fù)位按鍵是為了避免死機時無法可靠復(fù)位當復(fù)位按鍵按下后電容C1通過R5放電當電容C1放電結(jié)束后RST端的電位由R11與R15分壓比決定由于R11<<R15因此RST為高電平CPU處在復(fù)位狀態(tài)松手后電容C1充電RST端電位下降CPU脫離復(fù)位狀態(tài)R11的作用在于限制按鍵按下瞬間電容C1的放電電流避免產(chǎn)生火花以保護按鍵觸電圖3-6復(fù)位電路原理圖3.7晶振電路AT89C51引腳XTAL1和XTAL2與晶體振蕩器及電容C2、C1按圖3-7所示方式連接晶振、電容C2/C3及片內(nèi)與非門(作為反饋、放大元件)構(gòu)成了電容三點式振蕩器振蕩信號頻率與晶振頻率及電容C1、C2的容量有關(guān)但重要由晶振頻率決定范圍在0~33MHz之間電容C2、C3取值范圍在5~30pF之間根據(jù)實際情況本設(shè)計中采用12MHZ做系統(tǒng)的外部晶振電容取值為20pF圖3-7晶振電路原理圖3.8顯示電路為了提高密碼鎖的密碼顯示效果能力本設(shè)計的顯示部分由液晶顯示器LCD1602取代普通的數(shù)碼管來完畢只有按下鍵盤上的啟動按鍵后顯示器才處在啟動狀態(tài)同理只有按下關(guān)閉按鍵后顯示器才處在關(guān)閉狀態(tài)否則顯示器將一直處在初始狀態(tài)當需要對密碼鎖進行開鎖時按下鍵盤上的開鎖按鍵后運用鍵盤上的數(shù)字鍵0-9輸入密碼每按下一個數(shù)字鍵后在顯示器上顯示一個*輸入多少位就顯示多少個*當密碼輸入完畢時按下確認鍵假如輸入的密碼對的的話LCD子顯示"RIGHT"單片機其中P2.0引角會輸出低電平使三極管T2導(dǎo)通電磁鐵吸合電子密碼鎖被打開假如密碼不對的LCD顯示屏會顯示"ERROR"P2.0輸出的是高電平電子密碼鎖不能被打開通過LCD顯示屏可以清楚的判斷出密碼鎖所處的狀態(tài)其顯示部分引腳接口如圖3-8所示:圖3-8顯示電路原理圖3.9報警電路報警部分由陶瓷壓電發(fā)聲裝置及外圍電路組成加電后不發(fā)聲當有鍵按下時"叮"聲每按一下發(fā)聲一次密碼對的時不發(fā)聲直接開鎖當密碼輸入錯誤時單片機的P2.1引腳為低電平三極管T3導(dǎo)喇叭發(fā)出噪鳴聲報警如圖3-9所示:圖3-9報警電路原理圖3.10開鎖電路通過單片機開鎖執(zhí)行機構(gòu)電路驅(qū)動電磁鎖吸合從而達成開鎖的目的其原理如圖3-10所示圖3-10密碼鎖開鎖機構(gòu)示意圖當用戶輸入的密碼對的時單片機便輸出開門信號送到開鎖驅(qū)動電路然后驅(qū)動電磁鎖達成開門的目的其實際電路如圖3-11所示電路由驅(qū)動和開鎖兩級組成由D1、R12、Q1組成驅(qū)動電路其中Q1可以選擇普通的小功率三極管如8050、9018都可以滿足規(guī)定D1是開鎖指示燈;由D2、C5組成開鎖其中D2、C5是為了消除電磁鎖也許產(chǎn)生的反向高電壓以及也許產(chǎn)生的電磁干擾電磁鎖的選用要視情況而定但是吸合力要足夠且有一定的余量在設(shè)計中暫時用發(fā)光二極管代替電磁鎖發(fā)光管亮表達開鎖;滅表達沒有開鎖 圖3-11開鎖電路原理圖第四章軟件程序設(shè)計本系統(tǒng)軟件設(shè)計由主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、鍵功能程序、密碼設(shè)立程序、EEPROM讀寫程序和延時程序等組成4.1主程序流程圖如圖4-1為主程序流程圖開始接上電源程序進行初始化設(shè)立然后在鍵盤上輸入密碼此系統(tǒng)進行鍵盤掃描密碼對的開鎖成功密碼錯誤3次犯錯報警選擇是否修改密碼若要修改密碼先輸入舊密碼密碼對的后設(shè)立新密碼錯誤時報警需要兩次確認新密碼確認后密碼修改成功否則結(jié)束最終返回然后啟動程序進行保護再次在鍵盤上輸入密碼系統(tǒng)進行掃描假如和之前同樣則執(zhí)行相同程序如不是則執(zhí)行另一種程序圖4-1主程序流程圖4.2按鍵軟件設(shè)計如圖4-2按鍵功能流程圖在按鍵當中有與輸入、開鎖、清除、設(shè)立、確認的程序相相應(yīng)的按鍵并按順序與輸入的數(shù)相比較當輸入對的時進入密碼程序錯誤時進行清除輸入兩次新密碼對的時可進行重新設(shè)立密碼最后確認程序圖4-2按鍵功能流程圖4.3密碼設(shè)立軟件設(shè)計如圖4-3為密碼設(shè)立流程圖開始按下設(shè)立鍵輸入舊密碼假如錯誤累計三次進行報警程序假如輸入對的可以修改密碼確認后再次輸入新密碼假如兩次輸入同樣則輸入成功假如兩次輸入的新密碼不同樣則修改密碼失敗重新返回設(shè)立新密碼圖4-3密碼設(shè)立流程圖4.4開鎖軟件設(shè)計如圖4-4開鎖流程圖開始時按開鎖鍵輸入密碼假如輸入對的則開鎖成功假如輸入錯誤累計達成三次則執(zhí)行報警程序圖4-4開鎖流程圖第五章調(diào)試與實現(xiàn)5.1硬件調(diào)試單片機應(yīng)用系統(tǒng)的硬件調(diào)試和軟件調(diào)試是分不開的.許多硬件故障只有通過軟、硬件聯(lián)調(diào)才干發(fā)現(xiàn)但一般是先排除系統(tǒng)中比較明顯的硬件故障后才和軟件一起聯(lián)調(diào)常見的硬件故障:(1)邏輯錯誤硬件的邏輯錯誤是由于設(shè)計錯誤和焊接過程中的工藝錯誤而導(dǎo)致的涉及錯線、開路、短路等其中最常見的是短路故障(2)元器件錯誤元器件錯誤的因素有器件損壞或性能不符合規(guī)定電解電容、二極管的極性接反或集成塊裝反等(3)可靠性差應(yīng)用系統(tǒng)可靠性差的因素很多如內(nèi)部和外部的干擾、電壓紋波系數(shù)過大、器件負載過重等均會導(dǎo)致系統(tǒng)的可靠性差此外走線和布置的不合理也會導(dǎo)致系統(tǒng)可靠性差(4)電源故障電源故障涉及:電壓值不符合設(shè)計規(guī)定、電源功率局限性、負載能力差、紋波太重等硬件調(diào)試辦法脫機調(diào)試是在加電前先用萬用表等工具按圖紙仔細核對線路是否對的并對元器件的安裝、型號、規(guī)格等進行仔細檢查特別焊接時有無走線之間互相短路等5.2軟件調(diào)試程序在KEILC51上調(diào)試采用模塊程序設(shè)計技術(shù)則逐個模塊調(diào)好后再進行系統(tǒng)程序總調(diào)對于模塊結(jié)構(gòu)程序.要一個個子程序分別調(diào)試調(diào)試時一定要符合入口條件和出口條件調(diào)試可用單步運營和斷點運營方式通過檢查用者系統(tǒng)的CPU現(xiàn)場情況、RAM的內(nèi)容和I/O口的狀態(tài)檢測程序執(zhí)行結(jié)果是否符合設(shè)計規(guī)定有無循環(huán)錯誤、有無機器碼錯誤以及轉(zhuǎn)移地址的錯誤同時還可以發(fā)現(xiàn)系統(tǒng)中存在的硬件設(shè)計錯誤和軟件算法錯誤各程序模塊通過后則可以把相關(guān)功能塊連在一起進行總調(diào)這個階段若有故障可以考慮各子程序運營時是否破壞了現(xiàn)場緩沖單元、工作寄存器是否發(fā)生沖突標志位的建立和清除是否有誤堆棧區(qū)是否有溢出輸入設(shè)備的狀態(tài)是否正常等等若用者系統(tǒng)是在開發(fā)機的監(jiān)控程序下運營時還要考慮用者緩沖單元是否和監(jiān)控程序的工作單元發(fā)生沖突單步和斷點調(diào)試后還應(yīng)進行連續(xù)調(diào)試用以擬定定期精度、CPU的實時響應(yīng)等問題當所有調(diào)試和修改完畢后將程序固化到AT89S51中進行整機調(diào)試各功能實現(xiàn)則調(diào)試完畢5.3Proteus仿真在硬件和軟件都能實現(xiàn)的條件下運用Proteus進行仿真通過不斷的調(diào)試與改正最后終于實現(xiàn)了密碼鎖的功能Proteus仿真結(jié)果如圖4-1所示當連好各個模塊電路的導(dǎo)線后導(dǎo)入芯片程序運營該密碼鎖仿真電路通過按鍵可以進行密碼鎖的開鎖修改密碼錯誤密碼3次以上報警的操作LCD顯示屏顯示相應(yīng)的操作現(xiàn)象密碼對的可以開鎖進而可以修改密碼密碼錯誤三次以上由喇叭發(fā)出報警聲假如系統(tǒng)出現(xiàn)錯誤還可以通過復(fù)位電路進行復(fù)位總之在原有的理論基礎(chǔ)上通過Proteus可以成功的進行密碼鎖基本操作的仿真實現(xiàn)了相關(guān)的功能結(jié)論與展望以上為畢業(yè)期間所作的畢業(yè)論文---基于單片機的電子密碼鎖設(shè)計它通過多次修改和整理可以滿足設(shè)計的基本規(guī)定輸入密碼時如三次輸入錯誤則進行報警在輸入時LCD顯示為"*"在修改密碼時則顯示數(shù)字次設(shè)計還具有防盜功能如對密碼控制系統(tǒng)進行破壞有報警功能通過對該課題的研究加深對所學(xué)知識的理解提高對課外知識的學(xué)習能力增強知識的應(yīng)用能力提高解決實際問題的能力培養(yǎng)自我創(chuàng)新意識積累實踐經(jīng)驗為以后的發(fā)展打下基礎(chǔ)也為以后我們自己在這方面的發(fā)展打下基礎(chǔ)并可以在這方面培養(yǎng)自己的愛好在設(shè)計中我們必須一方面熟悉和掌握單片機的結(jié)構(gòu)及工作原理單片機的接口技術(shù)及相關(guān)外圍芯片的外特性控制方法以單片機核心的電路設(shè)計的基本方法和技術(shù)了解表關(guān)電路參數(shù)的計算方法單片機不是完畢某一個邏輯功能的芯片而是把一個計算機系統(tǒng)集成到一個芯片上概括的講:一塊芯片就成了一臺計算機它的體積小、質(zhì)量輕、價格便宜、為學(xué)習、應(yīng)用和開發(fā)提供了便利條件同時學(xué)習使用單片機了解計算機原理與結(jié)構(gòu)的最佳選擇目前單片機滲透到我們生活的各個領(lǐng)域幾乎很難找到哪個領(lǐng)域沒有單片機的蹤跡導(dǎo)航裝置飛機上各種儀表的控制計算機的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸工業(yè)自動化過程的實時控制和數(shù)據(jù)解決廣泛使用的各種智能IC卡民用豪華轎車的安全保障系統(tǒng)錄像機、攝像機、全自動洗衣機的控制以及程控玩具、電子寵物等等這些都離不開單片機更不用說自動控制領(lǐng)域的機器人、智能儀表、醫(yī)療器械了因此單片機的學(xué)習、開發(fā)與應(yīng)用將造就一批計算機應(yīng)用與智能化控制的科學(xué)家、工程師隨著單片機的廣泛應(yīng)用將大大促進各領(lǐng)域的技術(shù)更新向自動化、小型化、智能化方向邁進而對于我們來說我們這代人的目的和任務(wù)是把這些高科技產(chǎn)品更升一個層次畢業(yè)設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識發(fā)現(xiàn)提出分析和解決實際問題鍛煉實踐能力的重要環(huán)節(jié)是對學(xué)生實際工作能力的具體訓(xùn)練和考察過程隨著科學(xué)技術(shù)發(fā)展的日新日異單片機已經(jīng)成為當今計算機應(yīng)用中空前活躍的領(lǐng)域在生活中可以說得是無處不在因此作為二十一世紀的大學(xué)來說掌握單片機的開發(fā)技術(shù)是十分重要的通過這次畢業(yè)設(shè)計無論從選題到定稿從理論到實踐都使我學(xué)到了很多東西它不僅可以鞏固了以前所學(xué)過的知識并且學(xué)到了很多在書本上所沒有學(xué)到過的知識同時也明白了理論與實踐相結(jié)合的重要性只有理論知識是遠遠不夠的只有把所學(xué)的理論知識與實踐相結(jié)合起來從理論中得出結(jié)論才干真正為社會服務(wù)從而提高自己的實際動手能力和獨立思考的能力致謝四年的大學(xué)生活不知不覺中就要結(jié)束了在這段難忘的生活中有許多美好的回憶在畢業(yè)論文設(shè)計之中我的老師和我的同學(xué)都不吝的指導(dǎo)我我需要感謝的人太多太多一方面要感謝我的學(xué)校感謝在這四年中讓我領(lǐng)悟到誠實做人踏實做事扎實做學(xué)問的深刻道理讓我從一個懵懂得高中生變成一個成熟的大學(xué)生另一方面我要感謝的是我的導(dǎo)師生芳老師雖然生老師平日里工作繁多但在我做畢業(yè)設(shè)計的每個階段都給予我悉心的指導(dǎo)和幫助關(guān)心我們每個階段所做的工作當然還要感謝寢室的兄弟們在我完畢論文的過程中給予我的幫助和鼓勵也是他們陪我度過了這四年的生活感謝能有這段美好的記憶現(xiàn)在即將揮別我的學(xué)校、老師、同學(xué)尚有我四年的大學(xué)生活雖然依依不舍但是對未來的路我充滿了信心最后感謝在大學(xué)期間結(jié)識我和我結(jié)識的所有人有你們的陪同才有我大學(xué)生活的絢麗多彩作者: 2023年5月9日參考文獻[1]童詩白華成英.模擬電子技術(shù)基礎(chǔ)[第四版].高等教育出版社2023[2]閻石.數(shù)字電子技術(shù)基礎(chǔ)[第五版].高等教育出版社.1998.11[3]張毅剛.單片機原理及應(yīng)用.高等教育出版社.2023[4]樓苗然李光飛.單片機課程設(shè)計指導(dǎo).北京航空航天大學(xué)出版社2023[5]蔡朝洋.單片機控制實習與專題制作.北京航空航天大學(xué)出版社2023[6]陳連坤.單片機原理及接口技術(shù).北京交通大學(xué)出版社2023[7]李學(xué)海.標準8051單片機基礎(chǔ)教程.北京航空航天大學(xué)出版2023[8]何立民.單片機高級教程.北京航空航天大學(xué)出版社2023[9]周立功.單片機實驗與實踐教程.北京航空航天大學(xué)出版社2023[10]江志紅.51單片機技術(shù)與應(yīng)用系統(tǒng)開發(fā).清華大學(xué)出版社2023[11]祖龍起.一種新型可編程密碼鎖.大連輕工業(yè)學(xué)院學(xué)報2023(01);[12]李明喜.新型電子密碼鎖的設(shè)計.機電產(chǎn)品開發(fā)與創(chuàng)新2023(03)[13]王寬仁.可靠安全的智能密碼鎖.電子技術(shù)應(yīng)用.2023年第2期[14]董繼成.一種新型安全的單片機密碼鎖.電子技術(shù)2023(03)[15]任艷艷.基于AT89C51單片機多功能密碼鎖的研究.重慶職業(yè)技術(shù)學(xué)院學(xué)報.2023.5[16]周鑫何建新劉琥.基于單片機的電子密碼鎖控制電路設(shè)計.成都信息工程學(xué)院學(xué)報.2023(08)[17]王金國.采用單片機的電子密碼鎖控制電路.山東煤炭科技2023(3):30-33.[18]寧愛民.應(yīng)用AT89C2051單片機設(shè)計電子密碼鎖.淮海工學(xué)院學(xué)報20236附錄程序清單:顯示緩沖區(qū)LED1EQU6FHBUFFEQU6EHTIMERS1EQU6DH;輸入回車的次數(shù)TIMERS2EQU6CH;報警的次數(shù)LED6EQU6AH密碼緩沖區(qū)PS1EQU69HPS2EQU78HPS3EQU67HPS4EQU66HPS5EQU65HPS6EQU64HPS7EQU63HPS8EQU62HAT24C02讀取緩沖區(qū)AT1EQU61HAT2EQU60HAT3EQU5FHAT4EQU5EHAT5EQU5DHAT6EQU5CHAT7EQU5BHAT8EQU5AH按鍵標志位F_0BIT20HF_1BIT21HF_2BIT22HF_3BIT23HF_4BIT24HF_5BIT25HF_6BIT26HF_7BIT27HF_8BIT28HF_9BIT29HCH_STATEBIT2AH;系統(tǒng)更改的狀態(tài)標志位為1表達busyFLAG1BIT2BH;功能鍵標志位為1表達功能按鍵F_F1BIT2CHF_F2BIT2DHPSW_FBIT2EH;密碼是否對的的標志位口資源定義SPKBITP2.1WPBITP3.5SDABITP3.6;定義串口數(shù)據(jù)端SCLBITP3.7ORG0000HAJMPMAINORG000BH;AJMPTIMER0ORG001BH;AJMPTIMER1ORG0030HMAIN:MOVSP#70HMOVTMOD#11HMOVTH0#3CHMOVTL0#0B0HMOVTH1#3CHMOVTL1#0B0HCLRF_0;清除標志位CLRF_1CLRF_2CLRF_3CLRF_4CLRF_5CLRF_6CLRF_7CLRF_8CLRF_9CLRBUF_FULLCLRCH_STATECLRFLAG1CLRF_F1CLRF_F2CLRPSW_FMOVBUFF#00H;調(diào)用LCALLINITPS;初始化環(huán)境LCALLINITATLCALLXSA;調(diào)用默認顯示MOVTIMERS1#00HNOPMOVPS1#11H;初始化密碼830620MOVPS2#0AHMOVPS3#02HMOVPS4#13HMOVPS5#0BHMOVPS6#02HSTART:NOP;程序開始LCALLCH_KEY;檢查鍵盤AJMPSTART;返回CH_KEY:LCALLKS;檢查有沒有按鍵按下JNZLK1AJMPCH_KEYLK1:LCALLT12MSACALLKSJNZLK2RETLK2:NOPLCALLSBIE;按鍵辨認子程序MOVBUFFA;送緩沖區(qū)以辨認是數(shù)字鍵還是功能鍵?LCALLCH_KF;判斷按鍵功能JBFLAG1KEY_FUN;標志為1則為功能鍵***********數(shù)字按鍵輸入并且存放到緩沖區(qū)內(nèi)等待比較******************KEY_DIG:NOP;設(shè)一標志辨別輸入是否滿;SETBTR0INCTIMERS;輸入數(shù)字的位數(shù)MOVATIMERSCLRCSUBBA#01HJNZPS_2MOVPS1BUFF;依照順序存放密碼AJMPNEXTPS_2:MOVATIMERSSUBBA#02HCLRCJNZPS_3MOVPS2BUFFAJMPNEXTPS_3:MOVATIMERSCLRCSUBBA#03HJNZPS_4MOVPS3BUFFAJMPNEXTPS_4:MOVATIMERSCLRCSUBBA#04JNZPS_5MOVPS4BUFFAJMPNEXTPS_5:MOVATIMERSCLRCSUBBA#05JNZPS_6MOVPS5BUFFAJMPNEXTPS_6:MOVATIMERSCLRCSUBBA#06HJNZCH_KEYMOVPS6BUFFNEXT:LCALLXSCMOVR7TIMERS;比較輸入的次數(shù)CJNER7#06HFULLFULL:JCNEXT9SETBBUF_FULLMOVTIMERS#06HCLRL3NOPCLRP2.1LCALLT100MSDSETBP2.1NOPAJMPCH_KEYNEXT9:CLRP2.1;密碼輸入一位鳴叫一聲CLRL3LCALLT100MSD;延時100msSETBL3SETBP2.1AJMPCH_KEY***************開門子程序******************************************CL:NOPSETBL3MOVBUFF#00H;消密碼緩沖MOVTIMERS#00HLCALLINITPS;消除AT緩沖調(diào)電存儲后一定要加上LCALLXSCLCALLBPLCALLBPLCALLT100MSDLCALLBPCLRFLAG1AJMPCH_KEYFU4:NOPLCALLBPLCALLT100MSDLCALLBPLCALLT100MSDLCALLBPLCALLT100MSDLCALLBPLCALLT100MSDLCALLBPCLRFLAG1AJMPCH_KEYFU3:NOPLCALLBPLCALLT100MSDLCALLBPLCALLKILLXS;關(guān)閉顯示CLRFLAG1AJMPCH_KEYFU1:NOPLCALLXSCJBF_F1NEXT_F1CLRL1LCALLBPSETBF_F1AJMPCH_KEYNEXT_F1:SETBL1LCALLBPCLRF_F1;LCALLCH_STATE;查看現(xiàn)在的狀態(tài)以防誤按;SETBTR1;報警限制暫時不開;INCF_F1CLRFLAG1AJMPCH_KEYFU2:NOPJBF_F2NEXT_F2CLRL2LCALLBPSETBF_F2AJMPCH_KEYNEXT_F2:SETBL2LCALLBPCLRF_F2CLRFLAG1AJMPCH_KEY**************各類子程序********************************注意清楚緩沖區(qū)時AT1...AT8不應(yīng)在初始化中執(zhí)行以防兩緩沖區(qū)都為0相同開鎖********************************************************CLR_BUF:MOVR7#06HMOVR0#6FHLOOP1:MOVA#00HMOV@R0ADECR0DJNZR7LOOP1RET*************初始化顯示緩沖區(qū)以及其他緩沖區(qū)**************INITPS:PUSHACCPUSHPSWMOVR7#06HMOVR1#PS1MOVA#00HINIT_PS:MOV@R1ADECR1DJNZR7INIT_PSPOPPSWPOPACCNOPRETINITAT:PUSHACCPUSHPSWMOVR7#06HMOVR1#AT1MOVA#00HINIT_AT:MOV@R1ADECR1DJNZR7INIT_ATMOVTIMERS#00H;密碼輸入的次數(shù)清零POPPSWPOPACCRET****************檢查密碼正誤******************************C_PSW:PUSHPSWPUSHACCMOVR2#06HMOVR0#PS1MOVR1#AT1C_P:CLRCMOVA@R0SUBBA@R1JNZRETURNDECR0DECR1DJNZR2C_PNOPSETBPSW_FAJMPEXIT7RETURN:CLRPSW_FEXIT7:NOPPOPACCPOPPSWRET***************************鎖定鳴笛程序**********************LOCK_1M:MOVR4#3CH;鎖定1分鐘M1_LOOP:LCALLSECDJNZR4M1_LOOPNOPRETWARN2S:PUSHPSWPUSHACCMOVR5#14H;調(diào)用20次BP報警2sWARN:LCALLBPDJNZR5WARNNOPPOPACCPOPPSWNOPRETBP:CLRSPK;鳴笛子程序LCALLT100MSDSETBSPKNOPRET********************************顯示子程序***********************************鎖定狀態(tài)顯示XSA:PUSHACCPUSHPSWMOVATIMERS1MOVDPTR#TABMOVCA@A+DPTRMOVSBUFA;送已經(jīng)輸入密碼的次數(shù)JNBTI$CLRTIMOVSBUF#0FEH;送短線JNBTI$CLRTIMOVSBUF#0FEH;送短線JNBTI$CLRTI;送FMOVSBUF#78HJNBTI$CLRTIMOVSBUF#78HJNBTI$CLRTIMOVSBUF#11HJNBTI$CLRTIPOPPSWPOPACCRET成功開鎖狀態(tài)顯示XSB:PUSHACCPUSHPSWMOVATIMERS1MOVDPTR#TABMOVCA@A+DPTRMOVSBUFAJNBTI$CLRTIMOVSBUF#0FEHJNBTI$CLRTIMOVSBUF#0FEHJNBTI$CLRTIMOVSBUF#10HJNBTI$CLRTIMOVSBUF#10HJNBTI$CLRTIMOVSBUF#10HJNBTI$CLRTIPOPPSWPOPACCRET密碼輸入及修改狀態(tài)XSC:PUSHACCPUSHPSWLCALLKILLXSSETBRS1;切換到第三組寄存器防止操作數(shù)讀取錯誤MOVR6TIMERSMOVAR6SUBBA#01HJNCSC0JZSC1SC0:MOVSBUF#0FEHJNBTI$CLRTISC1:MOVAR6SUBBA#02HJNCSC11JNZSC2SC11:MOVSBUF#0FEHJNBTI$CLRTISC2:MOVAR6SUBBA#03HJNCSC22JNZSC3SC22:MOVSBUF#0FEHJNBTI$CLRTISC3:MOVAR6SUBBA#04HJNCSC33JNZSC4SC33:MOVSBUF#0FEHJNBTI$CLRTISC4:MOVAR6SUBBA#05HJNCSC44JNZSC5SC44:MOVSBUF#0FEHJNBTI$CLRTISC5:MOVAR6SUBBA#06HJNCSC55JNZSC6SC55:MOVSBUF#0FEHJNBTI$CLRTISC6:MOVAR6SUBBA#07HJNCSC66JNZEXIT_CSC66:MOVSBUF#0FEHJNBTI$CLRTINOPNOPEXIT_C:NOPCLRRS1POPPSWPOPACCNOPRET密碼輸入錯誤的提醒XSD:PUSHACCPUSHPSW

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論