版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 課程:電子綜合設(shè)計(jì)實(shí)驗(yàn)</p><p> 項(xiàng)目:基于單片機(jī)的電子密碼鎖</p><p> 學(xué)期:2011~2012. </p><p> 學(xué)院:電子信息與自動(dòng)化學(xué)院</p><p> 專(zhuān)業(yè):電氣工程及其自動(dòng)化 </p><p> 班級(jí):109070402
2、 </p><p> 姓名:葛誠(chéng) </p><p> 學(xué)號(hào):10907990203 </p><p> 指導(dǎo)教師: 陳古波 </p><p> 電工電子技術(shù)實(shí)驗(yàn)中心</p><p><b> 目錄</b></p>
3、<p><b> 摘 要3</b></p><p><b> 引言4</b></p><p><b> 1.1選題背景4</b></p><p> 1.2電子密碼控制簡(jiǎn)介4</p><p> 1.3電子密碼控制的發(fā)展趨勢(shì)4</p&g
4、t;<p> 1.4本設(shè)計(jì)所要實(shí)現(xiàn)的目標(biāo)5</p><p> 2.1方案一:采用數(shù)字電路控制5</p><p> 2.2方案二:采用以單片機(jī)為核心的控制方案5</p><p><b> 主要元器件介紹6</b></p><p> 3.1主控芯片AT89s526</p>&l
5、t;p> 3.2 AT89s52引腳功能說(shuō)明6</p><p> 3.3 LCD1602顯示器7</p><p><b> 系統(tǒng)硬件構(gòu)成7</b></p><p><b> 4.1設(shè)計(jì)原理7</b></p><p> 4.2電源輸入部分8</p><p&
6、gt; 4.3 復(fù)位部分8</p><p> 4.4 晶振部分9</p><p> 4.5 顯示部分9</p><p> 4.6 報(bào)警部分10</p><p><b> 系統(tǒng)軟件設(shè)計(jì)10</b></p><p> 5.1主程序流程圖11</p><p&
7、gt; 5.2按鍵功能流程圖11</p><p> 5.3密碼設(shè)置流程圖12</p><p> 5.4開(kāi)鎖流程圖13</p><p><b> 結(jié) 論15</b></p><p><b> 附錄一16</b></p><p><b> P
8、CB制版圖16</b></p><p><b> 附錄二17</b></p><p><b> 摘 要</b></p><p> 隨著科技的日益發(fā)展,電子密碼控制系統(tǒng)已越來(lái)越符合人們的要求。本文介紹了基于單片機(jī)密碼控制系統(tǒng),對(duì)系統(tǒng)硬件設(shè)計(jì)和軟件實(shí)現(xiàn)進(jìn)行了詳細(xì)的描述。該系統(tǒng)采用AT89s52單片機(jī)
9、,通過(guò)AT89s52實(shí)現(xiàn)密碼控制的功能。</p><p> 本文從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用美國(guó)Atmel公司的單片機(jī)AT89s52作為主控芯片與數(shù)據(jù)存儲(chǔ)器單元,結(jié)合外圍的矩陣鍵盤(pán)輸入、LCD1602液晶顯示、報(bào)警、開(kāi)鎖等,用C語(yǔ)言編寫(xiě)主控芯片的控制程序,設(shè)計(jì)了一款可以多次更改密碼,具有報(bào)警功能的電子密碼控制系統(tǒng)。這種電路設(shè)計(jì)具有防試探按鍵輸入、智能控制上鎖、開(kāi)鎖、報(bào)警、修改密碼等多種功能。</p>
10、<p> 經(jīng)實(shí)驗(yàn)證明,該密碼控制系統(tǒng)具有設(shè)計(jì)方法合理,簡(jiǎn)單易行,成本低,安全使用等特點(diǎn),符合車(chē)輛、辦公室用鎖要求,具有推廣價(jià)值。</p><p> 關(guān)鍵字:密碼控制 單片機(jī) 報(bào)警</p><p><b> 引言</b></p><p><b> 1.1選題背景</b></p><
11、p> 在安全技術(shù)防范領(lǐng)域,具有防盜報(bào)警功能的電子密碼控制系統(tǒng)逐漸代替?zhèn)鹘y(tǒng)的機(jī)械式密碼控制系統(tǒng),克服了機(jī)械式密碼控制的密碼量少、安全性能差的缺點(diǎn),使電子密碼控制系統(tǒng)無(wú)論在技術(shù)上還是在性能上都大大提高了一步。隨著大規(guī)模集成電路技術(shù)的發(fā)展,特別是單片機(jī)的問(wèn)世,出現(xiàn)了帶微處理器的智能密碼控制系統(tǒng),它除具有傳統(tǒng)電子密碼控制系統(tǒng)的功能外,還引入了智能化管理、專(zhuān)家分析系統(tǒng)等功能,從而使密碼控制系統(tǒng)具有很高的安全性、可靠性,應(yīng)用日益廣泛。<
12、;/p><p> 1.2電子密碼控制簡(jiǎn)介</p><p> 電子密碼控制是一種通過(guò)密碼輸入來(lái)控制電路或是芯片工作,從而控制機(jī)械開(kāi)關(guān)的閉合,完成開(kāi)鎖、閉鎖任務(wù)的電子產(chǎn)品。電子密碼控制不論性能還是安全性都已大大超過(guò)了機(jī)械類(lèi)。其特點(diǎn)如下:</p><p> 1) 保密性好,編碼量多,遠(yuǎn)遠(yuǎn)大于機(jī)械控制。隨機(jī)開(kāi)鎖成功率幾乎為零。</p><p>
13、2) 密碼可變,用戶(hù)可以隨時(shí)更改密碼,防止密碼被盜,同時(shí)也可以避免因人員的更替而使控制的保密性下降。</p><p> 3) 誤碼輸入保護(hù),當(dāng)輸入密碼多次錯(cuò)誤時(shí),報(bào)警系統(tǒng)自動(dòng)啟動(dòng)。</p><p> 4) 無(wú)活動(dòng)零件,不會(huì)磨損,壽命長(zhǎng)。</p><p> 5) 使用靈活性好,不像機(jī)械鎖必須佩帶鑰匙才能開(kāi)鎖。</p><p> 6) 電
14、子密碼控制系統(tǒng)具有操作簡(jiǎn)單易行,一學(xué)即會(huì)的特點(diǎn)。</p><p> 1.3電子密碼控制的發(fā)展趨勢(shì)</p><p> 由于電子器件所限,以前開(kāi)發(fā)的電子密碼控制系統(tǒng),其種類(lèi)不多,保密性差,最基本的就是只依靠最簡(jiǎn)單的模擬電子開(kāi)關(guān)來(lái)實(shí)現(xiàn)的,制作簡(jiǎn)單但很不安全,后來(lái)便是基于EDA來(lái)實(shí)現(xiàn)的,其電路結(jié)構(gòu)復(fù)雜,電子元件繁多,也有使用早先的20引腳的2051系列單片機(jī)來(lái)實(shí)現(xiàn)的,但密碼簡(jiǎn)單,易破解。隨著電
15、子元件的進(jìn)一步發(fā)展,電子密碼控制系統(tǒng)也出現(xiàn)了很多的種類(lèi),功能日益強(qiáng)大,使用更加方便,安全保密性更強(qiáng),由以前的單密碼輸入發(fā)展到現(xiàn)在的,密碼加感應(yīng)元件,實(shí)現(xiàn)了更為真正的電子加密,用戶(hù)只有密碼或電子鑰匙中的一樣,是打不開(kāi)鎖的,隨著電子元件的發(fā)展及人們對(duì)保密性需求的提高出現(xiàn)了越來(lái)越多的電子密碼控制系統(tǒng) 。</p><p> 由于數(shù)字、字符、圖形圖像、人體生物特征和時(shí)間等要素均可成為電子信息,組合使用這些信息能夠使電子防
16、盜密碼控制獲得更高的保密性,如防范森嚴(yán)的金庫(kù),需要使用復(fù)合信息密碼的電子防盜密碼控制系統(tǒng)。組合使用信息也能夠使電子防盜密碼控制系統(tǒng)獲得無(wú)窮擴(kuò)展的可能??梢钥闯鼋M合使用電子信息是電子密碼控制系統(tǒng)今后發(fā)展的趨勢(shì) 。</p><p> 1.4本設(shè)計(jì)所要實(shí)現(xiàn)的目標(biāo)</p><p> 本設(shè)計(jì)采用單片機(jī)為主控芯片,結(jié)合外圍電路,組成電子密碼控制系統(tǒng),用戶(hù)想要打開(kāi)鎖,必先通過(guò)提供的鍵盤(pán)輸入正確的密碼
17、才可以,密碼輸入錯(cuò)誤有提示,為了提高安全性,當(dāng)密碼輸入錯(cuò)誤三次將報(bào)警。密碼可以由用戶(hù)自己修改設(shè)定,鎖打開(kāi)后才能修改密碼。修改密碼之前必須再次輸入密碼,在輸入新密碼時(shí)候需要二次確認(rèn),以防止誤操作。</p><p><b> 設(shè)計(jì)方案的選擇</b></p><p> 2.1方案一:采用數(shù)字電路控制</p><p> 用以74LS112雙JK觸
18、發(fā)器構(gòu)成的數(shù)字邏輯電路作為密碼控制系統(tǒng)的核心控制,共設(shè)了9個(gè)用戶(hù)輸入鍵,其中只有4個(gè)是有效的密碼按鍵,其它的都是干擾按鍵,若按下干擾鍵,鍵盤(pán)輸入電路自動(dòng)清零,原先輸入的密碼無(wú)效,需要重新輸入;如果用戶(hù)輸入密碼的時(shí)間超過(guò)10秒(一般情況下,用戶(hù)不會(huì)超過(guò)10秒,若用戶(hù)覺(jué)得不便,還可以修改)電路將報(bào)警20秒,若電路連續(xù)報(bào)警三次,電路將鎖定鍵盤(pán)2分鐘,防止他人的非法操作 。采用數(shù)字電路設(shè)計(jì)方案時(shí)設(shè)計(jì)雖然簡(jiǎn)單,但控制的準(zhǔn)確性和靈活性差。故不采用。
19、</p><p> 2.2方案二:采用以單片機(jī)為核心的控制方案</p><p> 由于單片機(jī)種類(lèi)繁多,各種型號(hào)都有其一定的應(yīng)用環(huán)境,因此在選用時(shí)要多加比較,合理選擇,以期獲得最佳的性?xún)r(jià)比。一般來(lái)說(shuō)在選取單片機(jī)時(shí)從下面幾個(gè)方面考慮:性能、存儲(chǔ)器、運(yùn)行速度、I/O口、定時(shí)/計(jì)數(shù)器、串行接口、模擬電路功能、工作電壓、功耗、封裝形式、抗干擾性、保密性,除了以上的一些還有一些最基本的,比如:中斷
20、源的數(shù)量和優(yōu)先級(jí)、工作溫度范圍、有沒(méi)有低電壓檢測(cè)功能、單片機(jī)內(nèi)有無(wú)時(shí)鐘振蕩器、有無(wú)上電復(fù)位功能等。在開(kāi)發(fā)過(guò)程中單片機(jī)還受到:開(kāi)發(fā)工具、編程器、開(kāi)發(fā)成本、開(kāi)發(fā)人員的適應(yīng)性、技術(shù)支持和服務(wù)等等因素 ?;谝陨弦蛩乇驹O(shè)計(jì)選用單片機(jī)AT89S52作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的I/O端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的密碼控制功能。在單片機(jī)的外圍電路外接輸入鍵盤(pán)用于密碼的輸入和一些功能的控制,外接LCD1602顯示器用于顯示
21、作用。當(dāng)用戶(hù)需要開(kāi)鎖時(shí),先按鍵盤(pán)開(kāi)鎖鍵之后按鍵盤(pán)的數(shù)字鍵0-9輸入密碼。密碼輸完后按下確認(rèn)鍵,如果密碼輸入正確則開(kāi)鎖,不正確顯示密碼錯(cuò)誤重新輸入密碼,當(dāng)三次密碼錯(cuò)誤則發(fā)出報(bào)警;當(dāng)用戶(hù)需要修改密碼時(shí),先按下鍵盤(pán)設(shè)置鍵后輸入原來(lái)的密碼,只有當(dāng)輸入的原密碼正確</p><p> 可以看出方案二的控制靈活,準(zhǔn)確性好,且保密性強(qiáng)還具有擴(kuò)展功能,根據(jù)現(xiàn)實(shí)生活的需要此次設(shè)計(jì)采用此方案。</p><p>
22、;<b> 主要元器件介紹</b></p><p> 3.1主控芯片AT89s52</p><p> AT89s52是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes的可反復(fù)擦寫(xiě)1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及AT80s52引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處
23、理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89s52可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性?xún)r(jià)比的解決方案。</p><p> 3.2 AT89s52引腳功能說(shuō)明</p><p> P0口:P0口是一組8位漏極開(kāi)路型雙向I/O口,也即地址/數(shù)據(jù)總線(xiàn)復(fù)用口,作為輸出口用時(shí),每位能驅(qū)動(dòng)8個(gè)TTL邏輯門(mén)電路,對(duì)端口寫(xiě)“1”可作為高阻抗輸入端口。在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),
24、這組口線(xiàn)分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線(xiàn)復(fù)用,在訪問(wèn)期間激活內(nèi)部上拉電阻。在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。</p><p> P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)
25、引腳被外部信號(hào)校驗(yàn)期間,P1接收低8位地址。</p><p> P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流I。在訪問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行:MOVX @Ri 指令)時(shí),P2口線(xiàn)上的內(nèi)(也即特殊功能寄存器,
26、在整個(gè)訪問(wèn)期間不改變。Flash 編程或校驗(yàn)時(shí),P2也接收高位地址和其它控制信號(hào)。</p><p> P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)P3口寫(xiě)入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作輸入端口時(shí),被外部拉低的P3口將用上拉電阻輸出電流I。P3口除了作為一般的I/O口線(xiàn)外,更重要的用途是它的第二功能。</p&
27、gt;<p> RST:復(fù)位輸入。當(dāng)振蕩工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期上高電平將使單片機(jī)復(fù)位。ALE/PROG:當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使不再訪問(wèn)外部存儲(chǔ)器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目地,要注意的是:當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。如有必要,可通過(guò)對(duì)特殊功能寄存器(SFR)區(qū)中的8E
28、H單元的D0位置位,可禁止ALE操作。該位置禁位后,只有一條MOVX 和MOVC指令A(yù)LE才會(huì)被激活。此外,該引腳伎被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無(wú)效。</p><p> PSEN:程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89S51由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,高有兩次有效的PSEN信號(hào)。</
29、p><p> EA/VPP:外部訪問(wèn)允許。欲使CPU訪問(wèn)外部程序存儲(chǔ)器(地址0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接VCC端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程電壓VPP。</p><p> XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸
30、入端。</p><p> XTAL2:振蕩器反相放大器的輸出端。</p><p> 3.3 LCD1602顯示器</p><p> 現(xiàn)在的字符型液晶模塊已經(jīng)是單片機(jī)應(yīng)用設(shè)計(jì)中最常用的信息顯示器件了。1602型LCD顯示模塊具有體積小,功耗低,顯示內(nèi)容豐富等特點(diǎn)。1602型LCD可以顯示2行16個(gè)字符,有8位數(shù)據(jù)總線(xiàn)D0-D7和RS,R/W,EN三個(gè)控制端口,工
31、作電壓為5V,并且具有字符對(duì)比度調(diào)節(jié)和背光功能。</p><p><b> 系統(tǒng)硬件構(gòu)成</b></p><p><b> 4.1設(shè)計(jì)原理</b></p><p> 本設(shè)計(jì)主要由單片機(jī)、矩陣鍵盤(pán)、液晶顯示器和密碼存儲(chǔ)等部分組成。其中矩陣鍵盤(pán)用于輸入數(shù)字密碼和進(jìn)行各種功能的實(shí)現(xiàn)。由用戶(hù)通過(guò)連接單片機(jī)的矩陣鍵盤(pán)輸入密碼,
32、后經(jīng)過(guò)單片機(jī)對(duì)用戶(hù)輸入的密碼與自己保存的密碼進(jìn)行對(duì)比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開(kāi)鎖電路或者報(bào)警電路控制開(kāi)鎖還是報(bào)警。</p><p> 本系統(tǒng)共有兩部分構(gòu)成,即硬件部分與軟件部分。其中硬件部分由電源輸入部分、鍵盤(pán)輸入部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分組成,軟件部分對(duì)應(yīng)的由主程序、初始化程序、LCD顯示程序、鍵盤(pán)掃描程序、啟動(dòng)程序、關(guān)閉程序、鍵功能程序、密碼設(shè)置程序、EEPROM
33、讀寫(xiě)程序和延時(shí)程序等組成。其原理框圖如圖4-1所示。</p><p> 圖4-1 電子密碼鎖原理框圖</p><p><b> 4.2電源輸入部分</b></p><p> 密碼鎖主要控制部分電源需要用5V直流電源供電,其電路如圖4-3所示,而5V電源輸入時(shí)往往伴有雜波,所以加一個(gè)2.2uF的電容濾波。這樣輸出的電壓一般能滿(mǎn)足要求。<
34、;/p><p> 圖4-3 電源輸入電路原理圖</p><p><b> 4.3 復(fù)位部分 </b></p><p> 單片機(jī)復(fù)位是使CPU和系統(tǒng)中的其他功能部件都處在一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開(kāi)始工作,例如復(fù)位后PC=0000H,使單片機(jī)從第—個(gè)單元取指令。無(wú)論是在單片機(jī)剛開(kāi)始接上電源時(shí),還是斷電后或者發(fā)生故障后都要復(fù)位。在復(fù)位期間(
35、即RST為高電平期間),P0口為高組態(tài),P1-P3口輸出高電平;外部程序存儲(chǔ)器讀選通信號(hào)PSEN無(wú)效。地址鎖存信號(hào)ALE也為高電平。根據(jù)實(shí)際情況選擇如圖4-5所示的復(fù)位電路。該電路在最簡(jiǎn)單的復(fù)位電路下增加了手動(dòng)復(fù)位按鍵,在接通電源瞬間,電容C1上的電壓很小,復(fù)位下拉電阻上的電壓接近電源電壓,即RST為高電平,在電容充電的過(guò)程中RST端電壓逐漸下降,當(dāng)RST端的電壓小于某一數(shù)值后,CPU脫離復(fù)位狀態(tài),由于電容C1足夠大,可以保證RST高電
36、平有效時(shí)間大于24個(gè)振蕩周期,CPU能夠可靠復(fù)位。增加手動(dòng)復(fù)位按鍵是為了避免死機(jī)時(shí)無(wú)法可靠復(fù)位。當(dāng)復(fù)位按鍵按下后電容C1通過(guò)R5放電。當(dāng)電容C1放電結(jié)束后,RST端的電位由R5與R6分壓比決定。由于R5<<R6 因此RST為高電平,CPU處于復(fù)位狀態(tài),松手后,電容C1充電,RST端電位下降,CPU脫離復(fù)位狀態(tài)。R5的作用在于限制按鍵按</p><p> 圖4-5 復(fù)位電路原理圖</p>
37、<p><b> 4.4 晶振部分</b></p><p> AT89s52引腳XTAL1和XTAL2與晶體振蕩器及電容C2、C1按圖4-6所示方式連接。晶振、電容C1/C2及片內(nèi)與非門(mén)(作為反饋、放大元件)構(gòu)成了電容三點(diǎn)式振蕩器,振蕩信號(hào)頻率與晶振頻率及電容C1、C2的容量有關(guān),但主要由晶振頻率決定,范圍在0~33MHz之間,電容C1、C2取值范圍在5~30pF之間。根據(jù)實(shí)
38、際情況,本設(shè)計(jì)中采用12MHZ做系統(tǒng)的外部晶振。電容取值為20pF。</p><p> 圖4-6 晶振電路原理圖</p><p><b> 4.5 顯示部分</b></p><p> 為了提高密碼鎖的密碼顯示效果能力。本設(shè)計(jì)的顯示部分由液晶顯示器LCD1602取代普通的數(shù)碼管來(lái)完成。只有按下鍵盤(pán)上的開(kāi)啟按鍵后,顯示器才處于開(kāi)啟狀態(tài)。同理只
39、有按下關(guān)閉按鍵后顯示器才處于關(guān)閉狀態(tài)。否則顯示器將一直處于初始狀態(tài),當(dāng)需要對(duì)密碼鎖進(jìn)行開(kāi)鎖時(shí),按下鍵盤(pán)上的開(kāi)鎖按鍵后利用鍵盤(pán)上的數(shù)字鍵0-9輸入密碼,每按下一個(gè)數(shù)字鍵后在顯示器上顯示一個(gè)*,輸入多少位就顯示多少個(gè)*。當(dāng)密碼輸入完成時(shí),按下確認(rèn)鍵,如果輸入的密碼正確的話(huà), LCD子顯示“RIGHT”,單片機(jī)其中P2.0引角會(huì)輸出低電平,使三極管T2導(dǎo)通,電磁鐵吸合,電子密碼鎖被打開(kāi),如果密碼不正確,LCD顯示屏?xí)@示“ERROR”,P2.
40、0輸出的是高電平,電子密碼鎖不能被打開(kāi)。通過(guò)LCD顯示屏,可以清楚的判斷出密碼鎖所處的狀態(tài) 。其顯示部分引腳接口如圖4-7所示:</p><p> 圖4-7 顯示電路原理圖</p><p><b> 4.6 報(bào)警部分</b></p><p> 報(bào)警部分由陶瓷壓電發(fā)聲裝置及外圍電路組成,加電后不發(fā)聲,當(dāng)有鍵按下時(shí),“?!甭?,每按一下,發(fā)聲
41、一次,密碼正確時(shí),不發(fā)聲直接開(kāi)鎖,當(dāng)密碼輸入錯(cuò)誤時(shí),單片機(jī)的P2.1引腳為低電平,三極管T3導(dǎo)通轟鳴器發(fā)出噪鳴聲報(bào)警。如圖4-8所示:</p><p> 圖4-8 報(bào)警電路原理圖</p><p><b> 系統(tǒng)軟件設(shè)計(jì)</b></p><p> 本系統(tǒng)軟件設(shè)計(jì)由主程序、初始化程序、LCD顯示程序、鍵盤(pán)掃描程序、鍵功能程序、密碼設(shè)置程序、E
42、EPROM讀寫(xiě)程序和延時(shí)程序等組成。</p><p><b> 5.1主程序流程圖</b></p><p> 如圖5-1所示為主程序流程圖,開(kāi)始接上電源,程序進(jìn)行初始化設(shè)置,然后在鍵盤(pán)上輸入密碼,此系統(tǒng)進(jìn)行鍵盤(pán)掃描,然后啟動(dòng)程序,進(jìn)行保護(hù),再次在鍵盤(pán)上輸入密碼,系統(tǒng)進(jìn)行掃描,如和之前一樣,則執(zhí)行程序,如不是,則執(zhí)行另一種程序,最后結(jié)束。</p>&l
43、t;p> 圖5-1 主程序流程圖</p><p> 5.2按鍵功能流程圖</p><p> 如圖5-2為按鍵功能流程圖,在按鍵當(dāng)中,有與輸入、開(kāi)鎖、清除、設(shè)置、確認(rèn)的程序相對(duì)應(yīng)的按鍵,并按順序與輸入的數(shù)相比較,當(dāng)輸入正確時(shí),進(jìn)入密碼程序,錯(cuò)誤時(shí)進(jìn)行清除,輸入兩次正確的,可進(jìn)行重新設(shè)置,最后確認(rèn)程序。</p><p> 5.3密碼設(shè)置流程圖</p&
44、gt;<p> 如圖5-3為密碼設(shè)置流程圖,開(kāi)始按下設(shè)置鍵,輸入舊密碼,如果錯(cuò)誤,累計(jì)三次錯(cuò)誤,進(jìn)行報(bào)警程序。如輸入正確,可以改密碼,確認(rèn)后再次輸入更改后密碼,如兩次輸入一樣,則更改成功。</p><p> 圖5-3 密碼設(shè)置流程圖</p><p><b> 5.4開(kāi)鎖流程圖</b></p><p> 如圖5-4為開(kāi)鎖流程
45、圖,開(kāi)始時(shí)按開(kāi)鎖鍵,輸入密碼,如果輸入正確,則開(kāi)鎖成功。如果輸入錯(cuò)誤累計(jì)達(dá)到三次,則執(zhí)行報(bào)警程序。</p><p><b> 圖5-4開(kāi)鎖流程圖</b></p><p><b> 結(jié) 論</b></p><p> 以上為畢業(yè)期間所設(shè)計(jì)的電子密碼控制系統(tǒng)的電路,它經(jīng)過(guò)多次修改和整理,可以滿(mǎn)足設(shè)計(jì)的基本要求。輸入密
46、碼時(shí),如三次輸入錯(cuò)誤,則進(jìn)行報(bào)警,在輸入時(shí),LCD顯示為“*”,在修改密碼時(shí),則顯示數(shù)字。次設(shè)計(jì)還具有防盜功能,如對(duì)密碼控制系統(tǒng)進(jìn)行破壞,有報(bào)警功能。但因?yàn)槲业乃接邢蓿穗娐分幸泊嬖谝欢ǖ膯?wèn)題。譬如說(shuō)電路的密碼不能遺忘,一旦遺忘,就很難打開(kāi),這可以通過(guò)增加電路解決,但由于過(guò)于復(fù)雜,本設(shè)計(jì)并未加入;電路密碼只有16種可供修改,但由于他人不知道密碼的位數(shù),而且還要求在規(guī)定的時(shí)間內(nèi)按一定的順序開(kāi)鎖,所以他人開(kāi)鎖的幾率很小。由于使用的是單片機(jī)
47、作為核心的控制元件,配合其它器件,使本密碼控制系統(tǒng)具有功能強(qiáng)、性能可靠、電路簡(jiǎn)單、成本低的特點(diǎn),加上經(jīng)過(guò)優(yōu)化的程序,使其有很高的智能化水平。</p><p><b> 附錄一</b></p><p><b> 原理總圖</b></p><p><b> PCB制版圖</b></p>
48、<p><b> 附錄二程序</b></p><p> #include<reg52.h></p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> uint key,key_num,
49、keycount=0,beeflag,loop1,compflag=0,xg_flag=5,new=5,again=5,x_comflag=0;</p><p> uchar cuo=0;</p><p> uchar code table[]="Enter The Key";</p><p> uchar code table1[]=&q
50、uot;****";</p><p> uchar code table2[]="ERROR";</p><p> uchar code table3[]="OPEN";</p><p> uchar code table4[]="The Old Key";</p><p
51、> uchar code table5[]="The New Key";</p><p> uchar code table6[]="Again New Key";</p><p> uchar code table7[]="Succeed";</p><p> uchar data mima
52、[4]={0,1,2,3};</p><p> uchar data cucun[5];</p><p> uchar data mima_new[4];</p><p> uchar data mima_again[4];</p><p> sbit lcdrs=P2^0;</p><p> sbit lc
53、drw=P2^1;</p><p> sbit lcden=P2^2;</p><p> sbit beef=P2^7;</p><p> sbit JDQ=P2^6;</p><p> void delay(uint z)</p><p><b> {</b></p>&
54、lt;p><b> uint x,y;</b></p><p> for(x=z;x>0;x--)</p><p> for(y=110;y>0;y--);</p><p><b> }</b></p><p> void write_com(uchar com)<
55、/p><p><b> {</b></p><p><b> lcdrs=0;</b></p><p><b> P0=com;</b></p><p><b> delay(5);</b></p><p><b>
56、 lcden=1;</b></p><p><b> delay(5);</b></p><p><b> lcden=0;</b></p><p><b> }</b></p><p> void write_data(uchar date)</p&
57、gt;<p><b> {</b></p><p><b> lcdrs=1;</b></p><p><b> P0=date;</b></p><p><b> delay(5);</b></p><p><b> l
58、cden=1;</b></p><p><b> delay(5);</b></p><p><b> lcden=0;</b></p><p><b> }</b></p><p> void init()</p><p> {
59、lcdrw=0;</p><p><b> lcden=0;</b></p><p> write_com(0x38);</p><p> write_com(0x0e);</p><p> write_com(0x06);</p><p> write_com(0x01);</p
60、><p><b> }</b></p><p><b> keys()</b></p><p><b> {</b></p><p> unsigned char temp;</p><p> key_num=0xff;</p>&l
61、t;p><b> P1=0xf7; </b></p><p> if(P1!=0xf7){</p><p> delay(5); </p><p><b> P1=0xf7;</b></p><p> if(P1!=0xf7){ </p><p> tem
62、p = P1;</p><p> switch(temp){</p><p> case 0xe7: key_num=0;break;</p><p> case 0xd7: key_num=1;break;</p><p> case 0xb7: key_num=2;break;</p><p> case
63、 0x77: key_num=3;break;</p><p><b> }</b></p><p> P1 = 0xf0; </p><p> while(P1!=0xf0) P1=0xf0;</p><p><b> }</b></p><p><b
64、> }</b></p><p> P1=0xfb; </p><p> if(P1!=0xfb){</p><p><b> delay(5);</b></p><p><b> P1=0xfb;</b></p><p> if(P1!=0xf
65、b){</p><p> temp = P1;</p><p> switch(temp){</p><p> case 0xeb:key_num=4;break;</p><p> case 0xdb:key_num=5;break;</p><p> case 0xbb:key_num=6;break;&
66、lt;/p><p> case 0x7b:key_num=7;break;</p><p><b> }</b></p><p> P1 = 0xf0; </p><p> while(P1!=0xf0) P1=0xf0;</p><p><b> }</b>&l
67、t;/p><p><b> }</b></p><p> P1=0xfd; </p><p> if(P1!=0xfd){</p><p> delay(5); </p><p><b> P1=0xfd;</b></p><p> if(P
68、1!=0xfd){</p><p> temp = P1;</p><p> switch(temp){</p><p> case 0xed:key_num=8;break;</p><p> case 0xdd:key_num=9;break;</p><p> case 0xbd:key_num=10
69、;break;</p><p> case 0x7d:key_num=11;break;</p><p><b> }</b></p><p> P1 = 0xf0; </p><p> while(P1!=0xf0) P1=0xf0;</p><p><b> }&l
70、t;/b></p><p><b> }</b></p><p> P1=0xfe; </p><p> if(P1!=0xfe){</p><p> delay(5); </p><p><b> P1=0xfe;</b></p><p
71、> if(P1!=0xfe){ </p><p> temp = P1;</p><p> switch(temp){</p><p> case 0xee:key_num=12;break;//確認(rèn) </p><p> case 0xde:key_num=13;break;//設(shè)置密碼</p><
72、p> case 0xbe:key_num=14;break;//取消</p><p> case 0x7e:key_num=15;break;//刪除 </p><p><b> }</b></p><p> P1 = 0xf0; </p><p> while(P1!=0xf0) P1=0xf
73、0;</p><p><b> }</b></p><p><b> }</b></p><p><b> } </b></p><p> void beef_a()</p><p><b> { </b>
74、</p><p><b> uint j;</b></p><p> beeflag=0;</p><p><b> if(cuo<2)</b></p><p><b> {</b></p><p><b> cuo++;<
75、;/b></p><p> for(j=0;j<3000;j++)</p><p><b> {</b></p><p> beef=~beef;</p><p><b> delay(1);</b></p><p><b> }</b&
76、gt;</p><p><b> }</b></p><p><b> else </b></p><p><b> {</b></p><p> for(j=0;j<10000;j++)</p><p><b> {<
77、/b></p><p> beef=~beef;</p><p><b> delay(5);</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b>
78、</p><p> void a_display()</p><p> {uint num;</p><p> write_com(0x80+0x05);</p><p> for(num=0;num<5;num++)</p><p><b> {</b></p>
79、<p> write_data(table2[num]);</p><p><b> delay(5);</b></p><p><b> }</b></p><p><b> }</b></p><p> void c_display()</p>
80、;<p> {uint num;</p><p> write_com(0x80+0x06);</p><p> for(num=0;num<4;num++)</p><p><b> {</b></p><p> write_data(table3[num]);</p>&
81、lt;p><b> delay(5);</b></p><p><b> }</b></p><p><b> }</b></p><p> void d_display()</p><p><b> {</b></p>&l
82、t;p> uint num,k;</p><p> write_com(0x80+0x02);</p><p> for(num=0;num<11;num++)</p><p><b> {</b></p><p> write_data(table4[num]);</p><p
83、><b> delay(5);</b></p><p><b> }</b></p><p> write_com(0x80+0x45);</p><p> for(k=0;k<keycount;k++)</p><p><b> {</b></p&
84、gt;<p> write_data(table1[k]);</p><p><b> delay(5);</b></p><p><b> } </b></p><p><b> }</b></p><p> void e_display()</
85、p><p> {uint num,k;</p><p> write_com(0x80+0x01);</p><p> for(num=0;num<11;num++)</p><p><b> {</b></p><p> write_data(table5[num]);</
86、p><p><b> delay(5);</b></p><p><b> }</b></p><p> write_com(0x80+0x45);</p><p> for(k=0;k<keycount;k++)</p><p><b> {</
87、b></p><p> write_data(table1[k]);</p><p><b> delay(5);</b></p><p><b> } </b></p><p><b> }</b></p><p> void f_di
88、splay()</p><p> {uint num,k;</p><p> write_com(0x80+0x01);</p><p> for(num=0;num<13;num++)</p><p><b> {</b></p><p> write_data(table6[
89、num]);</p><p><b> delay(5);</b></p><p><b> }</b></p><p> write_com(0x80+0x45);</p><p> for(k=0;k<keycount;k++)</p><p><b&
90、gt; {</b></p><p> write_data(table1[k]);</p><p><b> delay(5);</b></p><p><b> } </b></p><p><b> }</b></p><p>
91、 void g_display()</p><p> {uint num;</p><p> write_com(0x80+0x06);</p><p> for(num=0;num<7;num++)</p><p><b> {</b></p><p> write_data
92、(table7[num]);</p><p><b> delay(5);</b></p><p><b> }</b></p><p><b> }</b></p><p> void b_display()</p><p> { uint
93、 num,k;</p><p> write_com(0x80+0x01);</p><p> for(num=0;num<13;num++)</p><p><b> {</b></p><p> write_data(table[num]);</p><p><b>
94、 delay(5);</b></p><p><b> }</b></p><p> write_com(0x80+0x45);</p><p> for(k=0;k<keycount;k++)</p><p><b> {</b></p><p>
95、 write_data(table1[k]);</p><p><b> delay(5);</b></p><p><b> } </b></p><p><b> } </b></p><p> void input()</p><p>&
96、lt;b> {</b></p><p> keycount++;</p><p> if(keycount>=4) keycount=4; </p><p> if((key_num!=0xff)&&(keycount==1)) </p><p><b> {</b&
97、gt;</p><p> if(xg_flag<5)</p><p> { if(xg_flag>3) xg_flag=3;</p><p> d_display();</p><p> xg_flag++;</p><p><b> }</b></p>&l
98、t;p> else if(new<=3)</p><p> {if(new==3) {again=0;new=4;init();keycount=0;f_display();}</p><p> else e_display();</p><p><b> new++;</b></p><p>&
99、lt;b> }</b></p><p> else if(again<5)</p><p><b> {</b></p><p> if(again>=3)again=3;</p><p> f_display();</p><p><b>
100、again++;</b></p><p><b> }</b></p><p> else b_display();</p><p><b> }</b></p><p> if((key_num!=0xff)&&(keycount==2)) &l
101、t;/p><p><b> { </b></p><p> if(xg_flag<5)</p><p><b> {</b></p><p> if(xg_flag>3) xg_flag=3;</p><p> d_display();</p>
102、<p> xg_flag++;</p><p><b> }</b></p><p> else if(new<=3)</p><p> {if(new==3) {again=0;new=4;init();keycount=0;f_display();}</p><p> else e_
103、display();</p><p><b> new++;</b></p><p><b> }</b></p><p> else if(again<5)</p><p><b> {</b></p><p> if(again>
104、;=3)again=3;</p><p> f_display();</p><p><b> again++;</b></p><p><b> } </b></p><p> else b_display();</p><p><b> }&
105、lt;/b></p><p> if((key_num!=0xff)&&(keycount==3)) </p><p><b> {</b></p><p> if(xg_flag<5)</p><p><b> {</b></p><p&g
106、t; if(xg_flag>3) xg_flag=3;</p><p> d_display();</p><p> xg_flag++;</p><p><b> }</b></p><p> else if(new<=3)</p><p> {if(new==3) {
107、again=0;new=4;init();keycount=0;f_display();}</p><p> else e_display();</p><p><b> new++;</b></p><p><b> }</b></p><p> else if(again<5)&
108、lt;/p><p><b> {</b></p><p> if(again>=3)again=3;</p><p> f_display();</p><p><b> again++;</b></p><p><b> } </b&
109、gt;</p><p> else b_display();</p><p><b> }</b></p><p> if((key_num!=0xff)&&(keycount==4)) </p><p><b> {</b></p><p>
110、 if(xg_flag<5)</p><p> {if(xg_flag>3) xg_flag=3;</p><p> d_display();</p><p> xg_flag++;</p><p><b> }</b></p><p> else if(new<=3
111、)</p><p> {if(new==3) {again=0;new=4;init();keycount=0;f_display();}</p><p> else e_display();</p><p><b> new++;</b></p><p><b> }</b></p
112、><p> else if(again<5)</p><p><b> {</b></p><p> if(again>=3)again=3;</p><p> f_display();</p><p><b> again++;</b></p>
113、;<p><b> }</b></p><p> else b_display();</p><p><b> } </b></p><p><b> }</b></p><p> void func()</p>
114、;<p><b> {</b></p><p> if(key_num==12)</p><p><b> { </b></p><p> x_comflag=0;</p><p> if(keycount==4) keycount++;</p><p&
115、gt; if((mima[0]==cucun[0])&&(mima[1]==cucun[1])&&(mima[2]==cucun[2])&&(mima[3]==cucun[3])){compflag=1;}//判定成功</p><p> if((mima_new[0]==mima_again[0])&&(mima_new[1]==mima_a
116、gain[1])&&(mima_new[2]==mima_again[2])&&(mima_new[3]==mima_again[3]))//修改成功</p><p><b> {</b></p><p> x_comflag=1; mima[0]=mima_again[0];mima[1]=mima_again[1];mima[2
117、]=mima_again[2];mima[3]=mima_again[3];</p><p><b> }</b></p><p><b> }</b></p><p> if(key_num==13) </p><p><b> { </b&g
118、t;</p><p> xg_flag=0; </p><p> keycount=0;</p><p> init();d_display();</p><p><b> }</b></p><p> if(key_num==15)</p><p><
119、b> {</b></p><p> if(keycount<=0) keycount=1;</p><p> keycount--;</p><p> init();b_display();</p><p><b> }</b></p><p><b&g
120、t; }</b></p><p> void main()</p><p><b> {</b></p><p><b> JDQ=1;</b></p><p> loop1:init();</p><p> b_display();<
121、/p><p><b> while(1)</b></p><p><b> {</b></p><p><b> keys();</b></p><p> if((key_num!=0xff)&&(key_num<=9)) </p>&
122、lt;p> {if(new<=4) mima_new[new]=key_num;</p><p> else if(again<=4) mima_again[again]=key_num;</p><p> else cucun[keycount]=key_num;</p><p><b> input();</b>
123、</p><p><b> }</b></p><p> if(key_num==14) { keycount=0;xg_flag=5;again=5;new=5;goto loop1;}</p><p> func();</p><p> if(keycount>4) </p>&
124、lt;p><b> {</b></p><p> if((xg_flag==4)&&(compflag==1)){init();xg_flag=5;compflag=0;new=0;keycount=0; e_display();}</p><p> else if((again==4)&&(x_comflag==1)){
125、init();again=6;x_comflag=0;keycount=0;g_display();delay(2000);goto loop1;}//修改成功</p><p><b> else</b></p><p><b> {</b></p><p> if(compflag==1)</p>&
126、lt;p><b> {</b></p><p> compflag=0;</p><p><b> JDQ=0;</b></p><p><b> init();</b></p><p> c_display();</p><p>
127、delay(500);delay(500);</p><p><b> JDQ=1;</b></p><p><b> cuo=0;</b></p><p> if(again!=6)</p><p> {mima[0]=0;mima[1]=1;mima[2]=2;mima[3]=3;}&l
128、t;/p><p> keycount=0;</p><p> goto loop1;</p><p><b> }</b></p><p> if(compflag==0)</p><p><b> {</b></p><p> beefla
129、g=1;</p><p><b> init();</b></p><p> a_display(); </p><p><b> beef_a();</b></p><p> if(again!=6)</p><p> {again=5;mima[0]=0;mim
130、a[1]=1;mima[2]=2;mima[3]=3;}</p><p> keycount=0; </p><p> goto loop1;</p><p><b> }</b></p><p><b> } </b></p><p><b> }
131、</b></p><p><b> } </b></p><p><b> } </b></p><p><b> 附件</b></p><p><b> 目 錄</b></p><p> 大學(xué)本科生畢業(yè)論文
132、(設(shè)計(jì))</p><p> 管理規(guī)定 (2013年11月修訂)……………………1</p><p> 大學(xué)本科畢業(yè)論文(設(shè)計(jì))</p><p> 格式和打印要求…………………………………17</p><p> 大學(xué)本科畢業(yè)論文(設(shè)計(jì))</p><p> 封面及表格………………………………………27</p&
133、gt;<p> 大學(xué)本科畢業(yè)論文(設(shè)計(jì))</p><p> 指導(dǎo)教師職責(zé)……………………………………47</p><p> 大學(xué)本科畢業(yè)論文(設(shè)計(jì))</p><p> 管理人員職責(zé)……………………………………50</p><p> 大學(xué)校級(jí)優(yōu)秀本科畢業(yè)論文(設(shè)計(jì))</p><p> 評(píng)選的有關(guān)
134、規(guī)定…………………………………51</p><p> 大學(xué)關(guān)于本科生到校外做畢業(yè)論文(設(shè)計(jì))</p><p> 的有關(guān)規(guī)定………………………………………56</p><p> 大學(xué)本科生畢業(yè)論文(設(shè)計(jì))</p><p><b> 管理規(guī)定</b></p><p> 二○一三年十一月修訂&
135、lt;/p><p> 本科生畢業(yè)論文(設(shè)計(jì))【以下簡(jiǎn)稱(chēng)畢業(yè)論文(設(shè)計(jì))】是實(shí)現(xiàn)高等學(xué)校人才培養(yǎng)目標(biāo)的重要教學(xué)環(huán)節(jié),是培養(yǎng)學(xué)生創(chuàng)新意識(shí)和創(chuàng)新能力的重要手段,是理論學(xué)習(xí)與社會(huì)實(shí)踐相結(jié)合的重要體現(xiàn)。</p><p> 為進(jìn)一步規(guī)范畢業(yè)論文(設(shè)計(jì))管理,提高畢業(yè)論文(設(shè)計(jì))質(zhì)量,提高我校人才培養(yǎng)工作水平,特制定本規(guī)定。本規(guī)定適用于我校對(duì)全校全日制本科生畢業(yè)論文(設(shè)計(jì))的管理,是各學(xué)院開(kāi)展畢業(yè)論文管
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機(jī)at89s52數(shù)字密碼鎖設(shè)計(jì)畢業(yè)論文
- 基于at89s52的多功能電子密碼鎖設(shè)計(jì)【開(kāi)題報(bào)告】
- 課程設(shè)計(jì)-- 基于at89s52單片機(jī)的密碼鎖設(shè)計(jì)
- 電子密碼鎖畢業(yè)論文
- 畢業(yè)論文——電子密碼鎖
- 電子密碼鎖-畢業(yè)論文
- 電子密碼鎖畢業(yè)論文
- 基于at89s52測(cè)溫系統(tǒng)畢業(yè)論文
- 基于at89s52數(shù)字電子鐘設(shè)計(jì)畢業(yè)論文
- 基于at89s52的往返小車(chē)畢業(yè)論文
- 基于at89c51的電子密碼鎖的設(shè)計(jì)【畢業(yè)論文】
- 電子密碼鎖設(shè)計(jì)畢業(yè)論文
- 基于stc89c52的電子密碼鎖設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 電子密碼鎖的設(shè)計(jì)畢業(yè)論文
- 基于at89s52智能風(fēng)扇設(shè)計(jì)畢業(yè)論文
- 基于at89s52的廣告燈設(shè)計(jì)畢業(yè)論文
- 基于pld的電子密碼鎖設(shè)計(jì)【畢業(yè)論文】
- 基于plc的電子密碼鎖畢業(yè)論文設(shè)計(jì)
- 基于plc的電子密碼鎖畢業(yè)論文設(shè)計(jì)
- 畢業(yè)論文范文——電子密碼鎖
評(píng)論
0/150
提交評(píng)論