電子綜合實(shí)踐報(bào)告_第1頁
電子綜合實(shí)踐報(bào)告_第2頁
電子綜合實(shí)踐報(bào)告_第3頁
電子綜合實(shí)踐報(bào)告_第4頁
電子綜合實(shí)踐報(bào)告_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

簡易密碼控制裝置的設(shè)計(jì)目錄前言 2第一章設(shè)計(jì)要求 31.1基本要求: 31.2提高要求: 3第二章系統(tǒng)的組成及工作原理 32.1系統(tǒng)組成框圖 32.2系統(tǒng)工作原理 4第三章電路設(shè)計(jì) 43.1.STC90C51RC/RD+系列單片機(jī)簡介 43.1.1晶振電路 83.1.2復(fù)位電路 93.2LCD顯示電路 103.3矩陣鍵盤電路 123.4蜂鳴器報(bào)警電路 123.5DS1302時(shí)鐘電路 133.6溫度控制電路 143.7紅外收發(fā): 153.8步進(jìn)電機(jī) 16第四章實(shí)驗(yàn)、調(diào)試及測(cè)試結(jié)果與分析 164.1密碼鎖初始化 164.1.1設(shè)置初始密碼 174.1.2設(shè)置系統(tǒng)時(shí)間 184.2休眠模式與溫度報(bào)警 194.3開鎖系統(tǒng) 194.4步進(jìn)電機(jī)調(diào)試 20第五章實(shí)驗(yàn)結(jié)論 20第六章參考文獻(xiàn) 207.附錄 217.1電路總設(shè)計(jì)圖 217.2元器件清單 227.2源程序清單 23前言隨著人們生活水平的提高,如何實(shí)現(xiàn)家庭防盜這一問題也變的尤其的突出,傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡單,被撬的事件屢見不鮮,電子鎖由于其保密性高,使用靈活性好,安全系數(shù)高,受到了廣大用戶的喜愛。鎖是置于可啟閉的器物上,用以關(guān)住某個(gè)確定的空間范圍或某種器具的,必須以鑰匙或暗碼打開的扣件。鎖具發(fā)展到現(xiàn)在已有若干年的歷史了,人們對(duì)它的結(jié)構(gòu)、機(jī)理也研究得很透徹,因此,不用鑰匙就能打開的方法和工具也層出不窮。致使某些毫無道德觀念的盜賊卻想方設(shè)法利用高科技手段撬門開鎖,使廣大居民防不勝防。為什么會(huì)出現(xiàn)這種情況呢?因?yàn)閭鹘y(tǒng)鎖具都存在致命的弱點(diǎn):

第一、鎖芯采用常見的銅、鋁、鋅等材料,抵抗不了強(qiáng)力破壞;

第二、鎖具制作工藝,技術(shù)落后,無法阻止技術(shù)手段的開啟。

目前,市場(chǎng)上很多國內(nèi)外的鎖具,實(shí)際上都不具備真正的防盜功能。在慣偷面前,兩根鋼絲或幾件簡單的工具就可以把這些鎖打開,有的慣偷甚至公開揚(yáng)言:“沒有我打不開的鎖?!逼鋵?shí),不是他們多高明,而是一般鎖具技術(shù)原理太過簡單。面對(duì)這一殘酷的現(xiàn)狀,新時(shí)代提出了鎖具必須革命的迫切的要求。隨著社會(huì)科技的進(jìn)步,鎖已發(fā)展到了密碼鎖、磁性鎖、電子鎖、激光鎖、聲控鎖等等。在傳統(tǒng)鑰匙的基礎(chǔ)上,加了一組或多組密碼,不同聲音,不同磁場(chǎng),不同聲波,不同光束光波,不同圖像。(如指紋、眼底視網(wǎng)膜等)來控制鎖的開啟。從而大大提高了鎖的安全性,使不法之徒無從下手,人們也就能對(duì)自身財(cái)產(chǎn)安全有了更多的保障。當(dāng)今安全信息系統(tǒng)應(yīng)用越來越廣泛,特別在保護(hù)機(jī)密、維護(hù)隱私和財(cái)產(chǎn)保護(hù)方面起到重大作用,而基于電子密碼鎖的安全系統(tǒng)是其中的組成部分,因此研究它具有重大的現(xiàn)實(shí)意義。第一章設(shè)計(jì)要求1.1基本要求:(1)設(shè)置6位密碼并確認(rèn),密碼通過鍵盤輸入,若密碼正確,則將鎖打開。(2)報(bào)警、鎖定鍵盤功能。密碼輸入錯(cuò)誤數(shù)碼顯示器會(huì)出現(xiàn)錯(cuò)誤提示,若密碼輸入錯(cuò)誤次數(shù)超過3次,蜂鳴器報(bào)警并且鎖定鍵盤。(3)電子密碼鎖的設(shè)計(jì)主要4×4矩陣鍵盤接口電路、密碼鎖的控制電路。(4)要有顯示界面。1.2提高要求:(1)功能擴(kuò)展:本設(shè)計(jì)擴(kuò)展了顯示界面功能,增加日歷時(shí)鐘功能,并增加了溫控報(bào)警電路,顯示實(shí)時(shí)溫度,充分利用顯示界面,提升設(shè)計(jì)的實(shí)用性。第二章系統(tǒng)的組成及工作原理2.1系統(tǒng)組成框圖圖2.1系統(tǒng)組成模塊圖圖2.2系統(tǒng)運(yùn)行流程圖2.2系統(tǒng)工作原理以STC90C51單片機(jī)為主控制單元,4*4矩陣鍵盤為主要輸入單元,溫控采集和A/D轉(zhuǎn)換電路,實(shí)時(shí)時(shí)鐘電路,報(bào)警器和顯示器完成整個(gè)系統(tǒng)設(shè)計(jì)。系統(tǒng)的運(yùn)行過程大致如下:假設(shè)初始狀態(tài)為閉鎖,此時(shí)整個(gè)系統(tǒng)只等待按鍵輸入,LCD顯示”Pressanykeytostart”,此時(shí)按下任意鍵,系統(tǒng)顯示“systeminitial”,并設(shè)置初始密碼。每按下一個(gè)數(shù)據(jù)鍵(即每輸入一個(gè)密碼),數(shù)碼管相應(yīng)的顯示一個(gè)“*”標(biāo)志,當(dāng)6位密碼全部輸入完成后,此時(shí)系統(tǒng)顯示要求確認(rèn)密碼,之后設(shè)置日期,時(shí)鐘,設(shè)置完成后LCD顯示日期,時(shí)間,并顯示測(cè)得的實(shí)時(shí)溫度。系統(tǒng)初始化完成。按休眠鍵可使系統(tǒng)進(jìn)入休眠狀態(tài)。按任意鍵將系統(tǒng)從休眠狀態(tài)喚醒,顯示“enterpassword”,每按下一個(gè)數(shù)據(jù)鍵(即每輸入一個(gè)密碼),數(shù)碼管相應(yīng)的顯示一個(gè)“*”標(biāo)志,當(dāng)6位密碼全部輸入完成后,判斷密碼是否正確,正確則開鎖(顯示“welcomeHome!”),錯(cuò)誤則顯示“passworderror!repeat”重新輸入密碼,若連續(xù)3次輸錯(cuò)密碼,顯示“systemshut!”并報(bào)警。若按下復(fù)位鍵可見將整個(gè)系統(tǒng)復(fù)位。本試驗(yàn)采用89C51單片機(jī)開發(fā)板(得飛萊LY—51S型號(hào)),KeiluVision5軟件編程實(shí)現(xiàn)系統(tǒng)功能,并將程序燒寫到開發(fā)板實(shí)現(xiàn)密碼鎖系統(tǒng)。第三章電路設(shè)計(jì)3.1.STC90C51RC/RD+系列單片機(jī)簡介STC90C51RC/RD+系列單片機(jī)是宏晶科技推出的新一代超強(qiáng)抗干擾、高速、低功耗的單片機(jī),指令代碼完全兼容傳統(tǒng)8051單片機(jī),12時(shí)鐘機(jī)器周期和6時(shí)鐘機(jī)器周期可以任意選擇。內(nèi)部集成MAX810專用復(fù)位電路,時(shí)鐘頻率在12MHz以下時(shí),復(fù)位腳可直接接地。STC90C51RC/RD+單片機(jī)中包含中央處理器(CPU)、程序存儲(chǔ)器(FLASH)、數(shù)據(jù)存儲(chǔ)器(SPAM)、定時(shí)/計(jì)數(shù)器、UART串口、I/O接口、EEPROM、看門狗等模塊。STC90C51RC/RD+系列單片機(jī)幾乎包含了數(shù)據(jù)采集和控制所需要的所有單元模塊,可稱得上一個(gè)片上系統(tǒng)。1、增強(qiáng)型6時(shí)鐘/機(jī)器周期,12時(shí)鐘/機(jī)器周期8051CPU。2、工作電壓:5.5V-3.8V(5V單片機(jī))/3.6V-2.0V(3V單片機(jī))。3、工作頻率范圍:0-40MHz,相當(dāng)于普通8051的0~80MHz,實(shí)際工作頻率可達(dá)48MHz。4用戶應(yīng)用程序空4K/6K/7K/8K/10K/12K/13K/16K/32K/40K/48K/56K/61K/字節(jié)。5、片上集成1280字節(jié)/512/256字節(jié)RAM。6、通用I/O口(35/39個(gè)),復(fù)位后為:P1/P2/P3/P4是準(zhǔn)雙向口/弱上拉(普通8051傳統(tǒng)I/O口)。P0口是開漏輸出,作為總線擴(kuò)展用時(shí),不用加上拉電阻,作為I/O口用時(shí),需加上拉電阻。7、ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無需專用編程器/仿真器,可通過串口(P3.0/P3.1)直接下載用戶程序,8K程序3-5秒即可完成一片。8、EEPROM功能。9、看門狗。10、內(nèi)部集成MAX810專用復(fù)位電路,外部晶體12M以下時(shí),可省外部復(fù)位電路,復(fù)位腳可直接接地。11、共3個(gè)16位定時(shí)器/計(jì)數(shù)器,其中定時(shí)器0還可以當(dāng)成2個(gè)8位定時(shí)器使用。12、外部中斷4路,下降沿中斷或低電平觸發(fā)中斷,PowerDown模式可由外部中斷低電平觸發(fā)中斷方式喚醒。13、通用異步串行口(UART),還可用定時(shí)器軟件實(shí)現(xiàn)多個(gè)UART。14、工作溫度范圍:0-75℃/-40-+85℃。15、封裝:LQFP-44,PDIP-40,PLCC-44。圖3-1STC90C51RC/RD+系列單片機(jī)引腳圖圖3-2STC90C51RC系列單片機(jī)封裝圖1、電源Vcc(引腳號(hào)40),芯片電源,接+5V;Gnd(引腳號(hào)20),電源接地端。2、時(shí)鐘XTAL1(引腳號(hào)19)內(nèi)部振蕩電路反相放大器的輸入端,是外接晶振的一個(gè)引腳。當(dāng)采用外部振蕩器時(shí),此引腳接地。XTAL2(引腳號(hào)18)內(nèi)部振蕩器的反相放大器輸出端,是外接晶振的另一端。當(dāng)采用外部振蕩器時(shí),此引腳接外部振蕩源。3、控制總線(1)ALE/(引腳號(hào)30):正常操作時(shí)為ALE功能(允許地址鎖存),用來把地址的低字節(jié)鎖存到外部鎖存器。ALE引腳以不變的頻率(振蕩器頻率的1/6)周期性地發(fā)出正脈沖信號(hào)。因此,它可用作對(duì)外輸出的時(shí)鐘信號(hào)或用于定時(shí)。但要注意,每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。ALE端可以驅(qū)動(dòng)(吸收或輸出電流)8個(gè)LSTTL電路。(2)(引腳號(hào)29):外部程序存儲(chǔ)器讀選通信號(hào)。在從外部程序存儲(chǔ)器取指令(或數(shù)據(jù))期間,在每個(gè)機(jī)器周期內(nèi)兩次有效??梢则?qū)動(dòng)8個(gè)LSTTL電路。(3)RST/VPD(引腳號(hào)9):復(fù)位信號(hào)輸入端。振蕩器工作時(shí),該引腳上持續(xù)2個(gè)機(jī)器周期的高電平可實(shí)現(xiàn)復(fù)位操作。此引腳還可接上備用電源。在Vcc掉電期間,由VPD向內(nèi)部RAM提供電源,以保持內(nèi)部RAM中的數(shù)據(jù)。(4)/Vpp(引腳號(hào)31):為內(nèi)部程序存儲(chǔ)器和外部程序存儲(chǔ)器的選擇端。當(dāng)為高電平時(shí),訪問內(nèi)部程序存儲(chǔ)器;當(dāng)為低電平時(shí),訪問外部程序存儲(chǔ)器。4、I/O線P0口(引腳號(hào)32~39):單片機(jī)的雙向數(shù)據(jù)總線和低8位地址總線。在訪問外部存儲(chǔ)器時(shí)實(shí)現(xiàn)分時(shí)操作,先用作地址總線,在ALE信號(hào)的下降沿,地址被鎖存;然后用作為數(shù)據(jù)總線。它也可以用作雙向輸入/輸出口。P0口能驅(qū)動(dòng)8個(gè)LSTTL負(fù)載。P1口(引腳號(hào)1~8):準(zhǔn)雙向輸入/輸出口,它能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。(3)P2口(引腳號(hào)21~28):準(zhǔn)雙向輸入/輸出口。在訪問外部存儲(chǔ)器時(shí),用作高8位地址總線。P2口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。(4)P3口(引腳號(hào)10~17):準(zhǔn)雙向輸入/輸出口,它能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。P3口的每一引腳還有另外一種功能:P3.0——RXD:串行口輸入端。P3.1——TXD:串行口輸出端。P3.2——:外部中斷0中斷請(qǐng)求輸入端。P3.3——:外部中斷1中斷請(qǐng)求輸入端。P3.4——T0:定時(shí)器/計(jì)數(shù)器0外部輸入端。P3.5——T1:定時(shí)器/計(jì)數(shù)器1外部輸入端。P3.6——:外部數(shù)據(jù)存儲(chǔ)器寫選通信號(hào)。P3.7——:外部數(shù)據(jù)存儲(chǔ)器讀選通信號(hào)。3.1.1晶振電路單片機(jī)工作時(shí),從取指令到譯碼再進(jìn)行微操作,必須在時(shí)鐘信號(hào)控制下才能有序地進(jìn)行,時(shí)鐘電路就是為單片機(jī)工作提供基本時(shí)鐘的。單片機(jī)的時(shí)鐘信號(hào)通常有兩種產(chǎn)生方式:內(nèi)部時(shí)鐘方式和外部時(shí)鐘方式。內(nèi)部時(shí)鐘方式是在單片機(jī)XTAL1和XTAL2引腳上跨接上一個(gè)晶振和兩個(gè)穩(wěn)頻電容,可以與單片機(jī)片內(nèi)的電路構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。晶振的取值范圍一般為0~24MHz,常用的晶振頻率有6MHz、12MHz、11.0592MHz、24MHz等。一些新型的單片機(jī)還可以選擇更高的頻率。外接電容的作用是對(duì)振蕩器進(jìn)行頻率微調(diào),使振蕩信號(hào)頻率與晶振頻率一致,同時(shí)起到穩(wěn)定頻率的作用,一般選用20~30pF的瓷片電容。外部時(shí)鐘方式則是在單片機(jī)XTAL1引腳上外接一個(gè)穩(wěn)定的時(shí)鐘信號(hào)源,它一般適用于多片單片機(jī)同時(shí)工作的情況,使用同一時(shí)鐘信號(hào)可以保證單片機(jī)的工作同步。時(shí)序是單片機(jī)在執(zhí)行指令時(shí)CPU發(fā)出的控制信號(hào)在時(shí)間上的先后順序。單片機(jī)的時(shí)序概念有4個(gè),可用定時(shí)單位來說明,包括振蕩周期、時(shí)鐘周期、機(jī)器周期和指令周期。振蕩周期:是片內(nèi)振蕩電路或片外為單片機(jī)提供的脈沖信號(hào)的周期。時(shí)序中1個(gè)振蕩周期定義為1個(gè)節(jié)拍,用P表示。時(shí)鐘周期:振蕩脈沖送入內(nèi)部時(shí)鐘電路,由時(shí)鐘電路對(duì)其二分頻后輸出的時(shí)鐘脈沖周期稱為時(shí)鐘周期。時(shí)鐘周期為振蕩周期的2倍。時(shí)序中1個(gè)時(shí)鐘周期定義為1個(gè)狀態(tài),用S表示。每個(gè)狀態(tài)包括2個(gè)節(jié)拍,用P1、P2表示。機(jī)器周期:機(jī)器周期是單片機(jī)完成一個(gè)基本操作所需要的時(shí)間。一條指令的執(zhí)行需要一個(gè)或幾個(gè)機(jī)器周期。一個(gè)機(jī)器周期固定的由6個(gè)狀態(tài)S1~S6組成。指令周期:執(zhí)行一條指令所需要的時(shí)間稱為指令周期。一般用指令執(zhí)行所需機(jī)器周期數(shù)表示。單片機(jī)多數(shù)指令的執(zhí)行需要1個(gè)或2個(gè)機(jī)器周期,只有乘除兩條指令的執(zhí)行需要4個(gè)機(jī)器周期。了解了以上幾個(gè)時(shí)序的概念后,我們就可以很快的計(jì)算出執(zhí)行一條指令所需要的時(shí)間。例如:若單片機(jī)使用12MHz的晶振頻率,則振蕩周期=1/(12MHz)=1/12us,時(shí)鐘周期=1/6us,機(jī)器周期=1us,執(zhí)行一條單周期指令只需要1us,執(zhí)行一條雙周期指令則需要2us。晶振電路如圖3-3所示:圖3-3系統(tǒng)晶振電路圖3.1.2復(fù)位電路無論是在單片機(jī)剛開始接上電源時(shí),還是運(yùn)行過程中發(fā)生故障都需要復(fù)位。復(fù)位電路用于將單片機(jī)內(nèi)部各電路的狀態(tài)恢復(fù)到一個(gè)確定的初始值,并從這個(gè)狀態(tài)開始工作。單片機(jī)的復(fù)位條件:必須使其RST引腳上持續(xù)出現(xiàn)兩個(gè)(或以上)機(jī)器周期的高電平。單片機(jī)的復(fù)位形式:上電復(fù)位、按鍵復(fù)位,此處采用上電復(fù)位。按鍵復(fù)位電路中,當(dāng)按鍵沒有按下時(shí),電路同上電復(fù)位電路。如在單片機(jī)運(yùn)行過程中,按下RESET鍵,已經(jīng)充好電的電容會(huì)快速通過電阻的回路放電,從而使得RST引腳上的電位快速變?yōu)楦唠娖?,此高電平?huì)維持到按鍵釋放,從而滿足單片機(jī)復(fù)位的條件實(shí)現(xiàn)按鍵復(fù)位。單片機(jī)要復(fù)位只需要在第9引腳接個(gè)高電平持續(xù)2μs就可以實(shí)現(xiàn),電容的的大小是10uF,電阻的大小是10k。所以根據(jù)公式,可以算出電容充電到電源電壓的0.7倍(單片機(jī)的電源是5V,所以充電到0.7倍即為3.5V),需要的時(shí)間是10K×10UF=0.1S。單片機(jī)最小系統(tǒng)復(fù)位電路的極性電容C1的大小直接影響單片機(jī)的復(fù)位時(shí)間,一般采用10~30uF,單片機(jī)最小系統(tǒng)容值越大需要的復(fù)位時(shí)間越短。單片機(jī)復(fù)位電路如圖3-4所示:圖3-4系統(tǒng)復(fù)位電路3.2LCD顯示電路顯示電路中的顯示器件為LCD1602,其數(shù)據(jù)端口與單片機(jī)的P0口相接,電路連接如圖3-5所示:圖3-5LCD1602連接圖1602采用標(biāo)準(zhǔn)的16腳接口,其中:第1腳:VSS為地電源。第2腳:VCC接5V正電源。第3腳:V0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過高時(shí)會(huì)產(chǎn)生重影,使用時(shí)可以通過一個(gè)1K的電位器調(diào)整對(duì)比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器,低電平時(shí)選擇指令寄存器。第5腳:RW為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平RW為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。第15~16腳:背光燈電源。LCD1602指令與時(shí)序說明如下:數(shù)據(jù)位命令RSRWDB7DB6DB5DB4DB3DB2DB1DB0清屏0000000001歸位000000000*輸入方式00000001I/DS顯示開關(guān)0000001DCB光標(biāo)、畫面000001S/CR/L**功能設(shè)置00001DLNF**CGRAM地址0001A5A4A3A2A1A0DDRAM地址001A6A5A4A3A2A1A0讀BF及AC01BFAC6AC5AC4AC3AC2AC1AC0寫數(shù)據(jù)10數(shù)據(jù)讀數(shù)據(jù)11數(shù)據(jù)表3-1LCD1602指令表LCD1602在工作的過程中,在數(shù)據(jù)線上傳送數(shù)據(jù)時(shí),需將傳送數(shù)據(jù)在數(shù)據(jù)線上持續(xù)一小段時(shí)間,保證單片機(jī)的P0口數(shù)據(jù)傳送或接收成功,其基本操作時(shí)序如表3-2所示:表STYLEREF1\s32LCD1602基本操作時(shí)序操作輸入輸出讀狀態(tài)RS=L,R/W=H,E=HD0~D7=狀態(tài)字寫指令RS=L,R/W=L,D0~D7=指令碼,E=高脈沖無讀數(shù)據(jù)RS=H,R/W=H,E=HD0~D7=數(shù)據(jù)寫數(shù)據(jù)RS=H,R/W=L,D0~D7=數(shù)據(jù),E=高脈沖無3.3矩陣鍵盤電路在單片機(jī)應(yīng)用系統(tǒng)中,除了復(fù)位按鍵外,還需要其他按鍵,即鍵盤按鍵,以便控制系統(tǒng)的運(yùn)行狀態(tài)或向系統(tǒng)輸入運(yùn)行參數(shù)。鍵盤電路一般由鍵盤接口電路、按鍵(由控制系統(tǒng)運(yùn)行狀態(tài)的功能鍵和向系統(tǒng)輸入數(shù)據(jù)的數(shù)字調(diào)節(jié)鍵組合)以及鍵盤掃描程序等部分組成。本系統(tǒng)鍵盤電路共有16個(gè)按鍵組成,按4×4的格式布置。鍵盤的電路連接如圖3-6所示:圖3-6矩陣鍵盤電路和封裝3.4蜂鳴器報(bào)警電路系統(tǒng)中單片機(jī)的P3.1腳與蜂鳴器相連,開啟蜂鳴器功能。當(dāng)單片機(jī)的管腳輸出固定頻率電平時(shí)蜂鳴器響起。聲音是由振動(dòng)所產(chǎn)生的,一定頻率的震動(dòng)就產(chǎn)生了一定頻率的聲音,其電路連接圖如圖2-7所示:圖3-7蜂鳴器電路連接圖一般情況下,P3.1腳處于高電平,當(dāng)系統(tǒng)進(jìn)入報(bào)警時(shí)間時(shí),單片機(jī)控制P3.1腳輸出一定頻率方波,蜂鳴器振動(dòng)發(fā)聲,實(shí)現(xiàn)聲音報(bào)警功能。3.5DS1302時(shí)鐘電路DS1302是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路,它可以對(duì)年、月、日、周、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功能,工作電壓為2.5V~5.5V。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或RAM數(shù)據(jù)。DS1302內(nèi)部有一個(gè)31×8的用于臨時(shí)性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級(jí)產(chǎn)品,與DS1202兼容,但增加了主電源/后備電源雙電源引腳,同時(shí)提供了對(duì)后備電源進(jìn)行涓細(xì)電流充電的能力。DS1302的引腳排列,其中Vcc2為主電源,VCC1為后備電源。在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于Vcc1+0.2V時(shí),Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1時(shí),DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768kHz晶振。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動(dòng)置高電平來啟動(dòng)所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)傳送的方法。當(dāng)RST為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對(duì)DS1302進(jìn)行操作。如果在傳送過程中RST置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在Vcc>2.0V之前,RST必須保持低電平。只有在SCLK為低電平時(shí),才能將RST置為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說明。SCLK為時(shí)鐘輸入端。下圖為DS1302的引腳功能圖:圖3-8DS1302封裝圖圖3-9DS1302時(shí)鐘電路DS1302與CPU的連接需要三條線,即SCLK(7)、I/O(6)、RST(5)。在調(diào)試程序時(shí)可以不加電容器,只加一個(gè)32.768kHz的晶振即可。只是選擇晶振時(shí),不同的晶振,誤差也較大。3.6溫度控制電路溫度控制電路由溫度傳感器經(jīng)A/D轉(zhuǎn)換構(gòu)成,其中A/D轉(zhuǎn)換電路主要由PCF8591芯片實(shí)現(xiàn),PCF8591是一個(gè)單片集成、單獨(dú)供電、低功耗、8-bitCMOS圖3-10熱敏光敏電阻圖3-11溫度傳感器圖3-12A/D轉(zhuǎn)換電路連接圖數(shù)據(jù)獲取器件。PCF8591具有4個(gè)模擬輸入、1個(gè)模擬輸出和1個(gè)串行I2C總線接口。PCF8591的3個(gè)地址引腳A0,A1和A2可用于硬件地址編程,允許在同個(gè)I2C總線上接入8個(gè)PCF8591器件,而無需額外的硬件。在PCF8591器件上輸入輸出的地址、控制和數(shù)據(jù)信號(hào)都是通過雙線雙向I2C總線以串行的方式進(jìn)行傳輸。PCF8591引腳功能如下:AIN0~AIN3:模擬信號(hào)輸入端。A0~A2:引腳地址端。VDD、VSS:電源端。(2.5~6V)SDA、SCL:I2C總線的數(shù)據(jù)線、時(shí)鐘線。OSC:外部時(shí)鐘輸入端,內(nèi)部時(shí)鐘輸出端。圖3-11PCF8951引腳圖EXT:內(nèi)部、外部時(shí)鐘選擇線,使用內(nèi)部時(shí)鐘時(shí)EXT接地。AGND:模擬信號(hào)地。AOUT:D/A轉(zhuǎn)換輸出端。VREF:基準(zhǔn)電源端。3.7紅外收發(fā):紅外接收頭的工作原理為:內(nèi)置接受管將紅外發(fā)射出來的光信號(hào)轉(zhuǎn)換為微弱的電信號(hào),此信號(hào)經(jīng)由IC內(nèi)部放大器進(jìn)行放大,然后通過自動(dòng)增益控制、帶通濾波、解調(diào)、波形整形后還原為遙控器發(fā)射出的原始編碼,經(jīng)由接收頭的信號(hào)輸出腳輸出到電器的編碼識(shí)別電路。紅外收發(fā)電路原理圖如下:圖3-12紅外發(fā)信電路原理圖圖3-13紅外接收電路原理圖3.8步進(jìn)電機(jī)步進(jìn)電機(jī)是將電脈沖信號(hào)轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元步進(jìn)電機(jī)件。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),而不受負(fù)載變化的影響,當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度,稱為“步距角”,它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^控制脈沖個(gè)數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)可以通過控制脈沖頻率來控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。步進(jìn)電機(jī)是一種感應(yīng)電機(jī),它的工作原理是利用電子電路,將直流電變成分時(shí)供電的,多相時(shí)序控制電流,用這種電流為步進(jìn)電機(jī)供電,步進(jìn)電機(jī)才能正常工作,驅(qū)動(dòng)器就是為步進(jìn)電機(jī)分時(shí)供電的,多相時(shí)序控制器。圖3-14步進(jìn)電機(jī)圖3-15步進(jìn)電機(jī)電路第四章實(shí)驗(yàn)、調(diào)試及測(cè)試結(jié)果與分析4.1密碼鎖初始化4.1.1設(shè)置初始密碼將在KeiluVision5軟件中所建工程下載到開發(fā)板中,根據(jù)程序中的電路設(shè)計(jì)及引腳分牌將開發(fā)板中各模塊鏈接,板圖如下所示,運(yùn)行密碼鎖初始化:圖4-1電路板及運(yùn)行初始界面圖(為使連線簡單這里去掉了步進(jìn)電機(jī)電路)按任意鍵,顯示如下界面,此時(shí)輸入初始密碼111111,之后彈出確認(rèn)界面,確認(rèn)后進(jìn)入系統(tǒng)時(shí)間設(shè)置。圖4-2初始化界面圖4-3密碼確認(rèn)界面4.1.2設(shè)置系統(tǒng)時(shí)間通過矩陣鍵盤輸入年份,月份和日期,系統(tǒng)保存后出現(xiàn)設(shè)置時(shí)間的界面,設(shè)置當(dāng)前時(shí)間的時(shí),分,秒,設(shè)置成功后,界面提升設(shè)置成功,顯示萬年歷界面,并將溫控系統(tǒng)采集的實(shí)時(shí)氣溫顯示在LCD液晶顯示屏上。圖4-4設(shè)置年、月、日?qǐng)D4-5設(shè)置周(周三)圖4-6設(shè)置時(shí)、分鐘圖4-7設(shè)置完成圖4-8顯示萬年歷和實(shí)時(shí)氣溫圖4-9進(jìn)入休眠模式4.2休眠模式與溫度報(bào)警按矩陣鍵盤的12鍵即可進(jìn)入休眠模式。在休眠模式下,系統(tǒng)界面顯示進(jìn)入休眠模式后,就不再顯示任何內(nèi)容,同時(shí)溫度檢測(cè)系統(tǒng)監(jiān)測(cè)實(shí)時(shí)氣溫,若超過40℃便蜂鳴報(bào)警。如圖4-10所示。進(jìn)入休眠模式后,按任意鍵將系統(tǒng)從休眠模式喚醒,進(jìn)入開鎖系統(tǒng)。圖4-10氣溫升高至30℃4.3開鎖系統(tǒng)從休眠模式將系統(tǒng)喚醒,系統(tǒng)提示輸入密碼,通過矩陣鍵盤輸入六位密碼,若密碼正確,系統(tǒng)顯示“WelcomeHome!”,開鎖成功。若密碼錯(cuò)誤,系統(tǒng)提示密碼錯(cuò)誤,并提示重新輸入密碼,若密碼錯(cuò)誤3次,則系統(tǒng)封鎖,并蜂鳴報(bào)警,圖4-11輸入開鎖密碼圖4-12密碼正確圖4-13密碼錯(cuò)誤圖4-14三次密碼錯(cuò)誤系統(tǒng)報(bào)警4.4步進(jìn)電機(jī)調(diào)試使用紅外遙控器“前進(jìn)”、“后退”鍵進(jìn)行對(duì)步進(jìn)電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)的調(diào)試,用來模擬家中窗簾的升降。實(shí)驗(yàn)結(jié)果證明系統(tǒng)確實(shí)可以控制步進(jìn)電機(jī)的正轉(zhuǎn)與反轉(zhuǎn),并同時(shí)測(cè)試了紅外收發(fā)系統(tǒng)的性能。結(jié)果證明系統(tǒng)確實(shí)具有此功能。第五章實(shí)驗(yàn)結(jié)論在本設(shè)計(jì)中,除了實(shí)現(xiàn)了電子密碼鎖的基本設(shè)置密碼、上鎖、密碼解鎖、錯(cuò)碼報(bào)警等基本密碼鎖防盜功能外,還增設(shè)了萬年歷系統(tǒng)和實(shí)時(shí)溫度監(jiān)測(cè)系統(tǒng)等方便日常生活的功能,真正做到了多功能,充分利用電路板和元器件,有很強(qiáng)的實(shí)用行。在本次設(shè)計(jì)中學(xué)到很多很多的的東西,不僅可以鞏固了以前所學(xué)過的知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí)。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程中遇到問題,可以說得是困難重重,遇到過各種各樣的問題,同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固,對(duì)單片機(jī)C語言掌握得不好,對(duì)keil軟件也掌握不夠熟悉。通過這次課程設(shè)計(jì)之后,一定把以前所學(xué)過的知識(shí)重新溫故。這次電子綜合實(shí)踐設(shè)計(jì)終于順利完成了,在漫長的設(shè)計(jì)過程中,除了自己的努力外,離不開院方為我們制定的嚴(yán)格的計(jì)劃,離不開指導(dǎo)老師的嚴(yán)格的督查和耐心的教導(dǎo)指點(diǎn),離不開班級(jí)同學(xué)、宿舍友人的幫助與支持,在此,向所有幫助過我的人致以衷心的感謝!第六章參考文獻(xiàn)[1]于殿泓,王新年.單片機(jī)原理與程序設(shè)計(jì)實(shí)驗(yàn)教程[M].西安:西安電子科技大學(xué)出版社,2007,8.[2]趙文博,劉文濤.單片機(jī)語言C51程序設(shè)計(jì)[M].北京:人民郵電出版社,2005,10.[3]陳杰,黃鴻.傳感器與檢測(cè)技術(shù)[M].北京:高等教育出版社,2010,8.[4]周航慈.單片機(jī)應(yīng)用程序設(shè)計(jì)技術(shù)[M].北京:北京航空航天大學(xué)出版社,2011,2.[5]李朝青.單片機(jī)原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2005,10.[6]孫育才.MCS-51系列單片微型計(jì)算機(jī)及其應(yīng)用[M].東南大學(xué)出版社,2004,6.7.附錄7.1電路總設(shè)計(jì)圖圖7-1電路總設(shè)計(jì)圖圖7-2總設(shè)計(jì)板圖7.2元器件清單表7-1元器件清單原件名稱備注單片機(jī)開發(fā)板得飛萊LY—51S型號(hào)單片機(jī)STC90C51液晶顯示屏LCD16021塊實(shí)時(shí)時(shí)鐘電路DS1302芯片5V蜂鳴器1只晶振12MHZ按健17個(gè)PCF89511個(gè)ULN2003N1塊DS18B202塊LEDD1,D2,D3,D4綠,黃,紅,藍(lán)各一個(gè)發(fā)光二極管1只熱敏,光敏電阻各1個(gè)DS18B202個(gè)步進(jìn)電機(jī)1個(gè)電阻若干電容若干7.2源程序清單#include<reg52.h>/*LCD1602.c顯示子程序*/#include"LCD1602.h"#include"delay.h"#include<intrins.h>sbitRS=P2^4;//定義端口sbitRW=P2^5;sbitEN=P2^6;unsignedcharcodelocation[]={12,13,0x2d,8,9,0x2d,6,7,'','w','e','e','k',0x3a,11,4,5,0x3a,2,3,0x3a,0,1};voidLCD_command_transmit(unsignedchart){while(LCD_Check_Busy());RS=0;RW=0;EN=1;dataport=t;_nop_();EN=0;}voidLCD_initial(){LCD_command_transmit(0x38);/*顯示模式*/DelayMs(5);LCD_command_transmit(0x38);DelayMs(5);LCD_command_transmit(0x38);DelayMs(5);LCD_command_transmit(0x38);LCD_command_transmit(0x08);/*顯示關(guān)閉*/LCD_command_transmit(0x01);/*顯示清屏*/LCD_command_transmit(0x06);/*顯示光標(biāo)移動(dòng)設(shè)置*/DelayMs(6);LCD_command_transmit(0x0C);}voidLCD_clear(){LCD_command_transmit(0x01);DelayMs(5);}voidLCD_write_data(unsignedcharstart,unsignedcharline_num,char*p){if(line_num==1){LCD_command_transmit(0x80+start);}else{LCD_command_transmit(0xc0+start);}while(*p!=0){while(LCD_Check_Busy());RS=1;RW=0;EN=1;dataport=*p;_nop_();EN=0;p++;}}bitLCD_Check_Busy(void){dataport=0xFF;RS=0;RW=1;EN=0;_nop_();EN=1;return(bit)(dataport&0x80);}voidLCD_write_data_ASCII(unsignedcharstart,unsignedcharline_num,unsignedcharnum){if(line_num==1){LCD_command_transmit(0x80+start);}else{LCD_command_transmit(0xc0+start);}while(LCD_Check_Busy());RS=1;RW=0;EN=1;dataport=num;_nop_();EN=0;}voidDS1302_LCD_show(){unsignedchari;for(i=0;i<15;i++){if(i==2||i==5||(i>8&&(i<14)))LCD_write_data_ASCII(i+1,1,location[i]);elseif(i!=8)LCD_write_data_ASCII(i+1,1,tempasc[location[i]]);}LCD_write_data_ASCII(4,2,tempasc[4]);LCD_write_data_ASCII(5,2,tempasc[5]);LCD_write_data_ASCII(6,2,0x3a);LCD_write_data_ASCII(7,2,tempasc[2]);LCD_write_data_ASCII(8,2,tempasc[3]);LCD_write_data_ASCII(12,2,tempasc[14]);LCD_write_data_ASCII(13,2,tempasc[15]);LCD_write_data_ASCII(14,2,0xdf);}/*keyhandler.c按鍵子程序*/unsignedcharkeyhandle(){unsignedchartemp;temp=keyscan();switch(temp){case0x7e:keyvoice();return15;break;//0case0x7d:keyvoice();return14;break;//1case0x7b:keyvoice();return13;break;//2case0x77:keyvoice();return12;break;//3case0xbe:keyvoice();return11;break;//4case0xbd:keyvoice();return10;break;//5case0xbb:keyvoice();return9;break;//6case0xb7:keyvoice();return8;break;//7case0xde:keyvoice();return7;break;//8case0xdd:keyvoice();return6;break;//9case0xdb:keyvoice();return5;break;//acase0xd7:keyvoice();return4;break;//bcase0xee:keyvoice();return3;break;//ccase0xed:keyvoice();return2;break;//dcase0xeb:keyvoice();return1;break;//ecase0xe7:keyvoice();return0;break;//fdefault:return16;break;}}unsignedcharkeyscan(){unsignedcharkeydata;unsignedintcount=20000;P1=0xf0;if(mark==1){while(--count){if(P1!=0xf0){DelayMs(10);if(P1!=0xf0){P1=0xfe;if(P1!=0xfe){keydata=P1;while(P1!=0xfe); DelayMs(10);//去抖 while(P1!=0xfe);returnkeydata;}P1=0xfd;if(P1!=0xfd){keydata=P1;while(P1!=0xfd); DelayMs(10);//去抖 while(P1!=0xfd);returnkeydata;}P1=0xfb;if(P1!=0xfb){keydata=P1;while(P1!=0xfb); DelayMs(10);//去抖 while(P1!=0xfb);returnkeydata;}P1=0xf7;if(P1!=0xf7){keydata=P1;while(P1!=0xf7); DelayMs(10);//去抖 while(P1!=0xf7);returnkeydata;}}}}}else{while(1){if(P1!=0xf0){DelayMs(10);if(P1!=0xf0){P1=0xfe;if(P1!=0xfe){keydata=P1;while(P1!=0xfe); DelayMs(10);//去抖 while(P1!=0xfe);returnkeydata;}P1=0xfd;if(P1!=0xfd){keydata=P1;while(P1!=0xfd); DelayMs(10);//去抖 while(P1!=0xfd);returnkeydata;}P1=0xfb;if(P1!=0xfb){keydata=P1;while(P1!=0xfb); DelayMs(10);//去抖 while(P1!=0xfb);returnkeydata;} P1=0xf7;if(P1!=0xf7){keydata=P1;while(P1!=0xf7); DelayMs(10);//去抖 while(P1!=0xf7);returnkeydata;}}}}}}voidDelayUs2x(unsignedchart)/*delay.c延時(shí)子程序*/{while(--t);}voidDelayMs(unsignedintt){while(--t){DelayUs2x(245); DelayUs2x(245);}}voiddelayus(unsignedchart){unsignedchari;for(i=0;i<t;i++)_nop_();}/*DS1302_USE.c萬年歷子程序*/#include"DS1302_USE.h"#include"delay.h"#include"LCD1602.h"#include"matrix_key.h"#include"NTC.h"#include"control.h"sbitRESET=P2^0;sbitIO=P2^1;sbitSCLK=P2^2;unsignedchartempdata[8];unsignedchartempasc[16];unsignedcharcodetrans[]={'0','1','2','3','4','5','6','7','8','9'};unsignedchartimedata[6]={14,8,20,3,12,0};//unsignedchartimeasc[]={'2','0','1','4','-','0','8','-','2','0','3','1','2',':','0','0'};unsignedcharLCD_temp1;LCD_temp2;unsignedcharcommand[9]={0xBE};//0x00,0x59,0x20,0x19,0x08,0x02,0x14,0x80};//0x8e0x00:turnoffwriteprotect//0xbeburst//secminhourdaymonthweekyearprotect//intialdatavoidDS1302_initial(){unsignedcharbcd1,bcd2;unsignedchari;for(i=0;i<6;i++){bcd1=timedata[i]/10;bcd2=timedata[i]%10;bcd1=bcd1<<4;tempdata[i]=bcd1+bcd2;}command[8]=0x80;command[7]=tempdata[0];//yearcommand[6]=tempdata[3];//weekcommand[5]=tempdata[1];//monthcommand[4]=tempdata[2];//daycommand[3]=tempdata[4];//hourcommand[2]=tempdata[5];//mincommand[1]=0;//secwrite_protect_de();for(i=0;i<9;i++)write_command(command[i]);delayus(5);RESET=0;}voidwrite_command(unsignedchartemp){unsignedchari;for(i=0;i<8;i++){IO=(bit)((temp>>i)&0x01);SCLK=1;delayus(5);SCLK=0;delayus(5);}}voidDS1302_Read(){unsignedchari,j,temp=0;write_protect_de();RESET=0;SCLK=0;DelayMs(1);RESET=1;delayus(5);write_command(0xBF);for(j=0;j<7;j++)//burstread7bytedata{for(i=0;i<8;i++){ temp=temp>>1; if(IO) temp|=0x80; else temp&=0x7F;SCLK=1;delayus(5);SCLK=0;delayus(5);}tempdata[j]=temp;}for(i=0;i<5;i++){SCLK=1;delayus(5);SCLK=0;delayus(5);}RESET=0;tempdata[7]=AD_temperature();if(tempdata[7]>=40)warn_fire(); BCD_process();}voidBCD_process()//bcdtoasc{unsignedchartemp,num1,num2;unsignedchari,j;for(i=0,j=0;j<7;j++,i=i+2){temp=tempdata[j]&0xf0;temp=temp>>4;temp=temp*10+(tempdata[j]&0x0f);num1=temp/10;num2=temp%10;tempasc[i]=trans[num1];tempasc[i+1]=trans[num2];}num1=tempdata[7]/10;num2=tempdata[7]%10;tempasc[14]=trans[num1];tempasc[15]=trans[num2];}voidwrite_protect_de(){RESET=0;SCLK=0;DelayMs(1);RESET=1;write_command(0x8e);write_command(0x00);RESET=0;SCLK=0;DelayMs(1);RESET=1;}voidreadySettime(){unsignedchari,keytemp,keyasc,j,temp;unsignedchartemptime[15];LCD_initial();LCD_clear(); mark=0;LCD_write_data(1,1,"year-month-day"); for(i=0,j=0;i<10;i++){keytemp=keyhandle(); keyasc=trans[keytemp];LCD_write_data_ASCII(i+2,2,keyasc); if((i==3)||(i==6)){LCD_write_data_ASCII(i+3,2,'-'); i++;}temptime[j]=keytemp; j++;}DelayMs(1000);LCD_clear(); LCD_write_data(0,1,"week:"); keytemp=keyhandle(); keyasc=trans[keytemp];LCD_write_data_ASCII(10,1,keyasc); temptime[j]=keytemp; j++; DelayMs(2000);LCD_clear();LCD_write_data(0,1,"hour:min"); for(i=0;i<5;i++){ keytemp=keyhandle(); keyasc=trans[keytemp];LCD_write_data_ASCII(4+i,2,keyasc); temptime[j]=keytemp; if(i==1){LCD_write_data_ASCII(5+i,2,':');i++;}j++; } DelayMs(1000); for(i=0,j=2;i<6;i++) {if(i==3){timedata[i]=temptime[j];j++;}else{timedata[i]=temptime[j]*10+temptime[j+1];j=j+2;}} LCD_clear();LCD_write_data(0,1,"TimeIsSet");LCD_write_data(2,2,"SystemIsOk");temp=keyhandle();DelayMs(2000);LCD_clear(); DS1302_initial();}#include"control.h"/*control.c控制子程序*/#include"LCD1602.h"#include"DS1302_USE.h"#include"matrix_key.h"#include"delay.h"#include"NTC.h"#include"initial.h"bitmark;unsignedcharfrq;voidAT_HOME(){unsignedcharsysoff;mark=1;EX0=1;ET0=1;TR0=1;LCD_clear();while(1){DS1302_Read();DS1302_LCD_show();sysoff=keyhandle();if(sysoff==12)break; elseif(sysoff==11)readySettime();}standby();}voidstandby(){unsignedcharwaitdata,tempe_check;LCD_clear();LCD_write_data(1,2,"SystemDormant!");DelayMs(1000);LCD_command_transmit(0x08);while(1){waitdata=keyhandle();tempe_check=AD_temperature();if(tempe_check>40)warn_fire();if(waitdata!=16)break;}restart_check();}voidrestart_check(){unsignedchartempdata[6],i,count=0;mark=0;LCD_initial();Loop:LCD_clear();LCD_write_data(0,1,"EnterPassword:");for(i=0;i<6;i++){tempdata[i]=keyhandle();LCD_write_data_ASCII(i+3,2,'*');}DelayMs(1000);for(i=0;i<6;i++)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論