【正文】
腳圖如圖4所示。1602型LCD顯示模塊具有體積小,功耗低,顯示內(nèi)容豐富等特點(diǎn)。1602型LCD基本操作程序如表1所示。顯示容量:162個(gè)字符工作電流:()字符尺寸:(WH)mm1602型LCD的接口信號(hào)如表2所示。晶振、電容C1/C2及片內(nèi)與非門(作為反饋、放大元件)構(gòu)成了電容三點(diǎn)式振蕩器,振蕩信號(hào)頻率與晶振頻率及電容CC2的容量有關(guān),但主要由晶振頻率決定,范圍在0~33MHz之間,電容CC2取值范圍在5~30pF之間。電容取值為30pF。圖3 晶振電路 復(fù)位電路單片機(jī)復(fù)位是使CPU和系統(tǒng)中的其他功能部件都處在一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。增加手動(dòng)復(fù)位按鍵是為了避免死機(jī)時(shí)無法可靠復(fù)位。當(dāng)電容C1放電結(jié)束后,CPU處于復(fù)位狀態(tài),松手后,電容C3充電,RST端電位下降,CPU脫離復(fù)位狀態(tài)。其電路如圖4所示。圖6 報(bào)警電路 開鎖電路開鎖控制電路的功能是當(dāng)輸入正確的密碼后發(fā)光二極點(diǎn)亮將鎖打開。當(dāng)用戶輸入密碼后,單片機(jī)自動(dòng)識(shí)別密碼,如果密碼輸入三次不符,則報(bào)警。具體電路如圖7所示。采用的是矩陣式按鍵鍵盤,它由行線和列線組成,也稱行列式鍵盤,按鍵位于行列的交叉點(diǎn)上,密碼鎖的密碼由鍵盤輸入完成,與獨(dú)立式按鍵鍵盤相比,要節(jié)省很多I/O口。鍵盤的每個(gè)按鍵功能在程序設(shè)計(jì)中設(shè)置[9]。圖5 4*4矩陣按鍵4. 電子密碼鎖的軟件設(shè)計(jì)本系統(tǒng)軟件設(shè)計(jì)由主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、鍵功能程序、密碼設(shè)置程序、EEPROM讀寫程序和延時(shí)程序等組成。然后啟動(dòng)程序,進(jìn)行保護(hù),再次在鍵盤上輸入密碼,系統(tǒng)進(jìn)行掃描,如果和之前一樣,則執(zhí)行相同程序,如不是,則執(zhí)行另一種程序[10]。圖9 按鍵功能流程圖 密碼設(shè)置軟件設(shè)計(jì)密碼設(shè)置流程圖如圖10所示,開始按下設(shè)置鍵,輸入舊密碼,如果錯(cuò)誤累計(jì)三次,進(jìn)行報(bào)警程序。如果兩次輸入的新密碼不一樣,則修改密碼失敗,重新返回設(shè)置新密碼[11]。如果輸入錯(cuò)誤累計(jì)達(dá)到三次,則執(zhí)行報(bào)警程序。 對(duì)于模塊結(jié)構(gòu)程序.要一個(gè)個(gè)子程序分別調(diào)試。 各程序模塊通過后,則可以把相關(guān)功能塊連在一起進(jìn)行總調(diào)。 單步和斷點(diǎn)調(diào)試后,還應(yīng)進(jìn)行連續(xù)調(diào)試,用以確定定時(shí)精度、CPU的實(shí)時(shí)響應(yīng)等問題。進(jìn)行整機(jī)調(diào)試。 Proteus仿真在軟件能實(shí)現(xiàn)的條件下,利用Proteus進(jìn)行仿真,通過不停的調(diào)試與改正,最后終于實(shí)現(xiàn)了密碼鎖的功能,Proteus仿真結(jié)果如圖12與圖13所示??傊谠械睦碚摶A(chǔ)上,通過Proteus能夠成功的進(jìn)行密碼鎖基本操作的仿真,實(shí)現(xiàn)了相關(guān)的功能。Protel99 SE的功能完善,包括Service pack 6,并且提供了各種元件庫,為用戶提供了大量的電子器件參考手冊(cè)及全套教程。在proteus運(yùn)行仿真實(shí)現(xiàn)的條件下,利用Protel99 SE 畫出原理圖,生成PCB圖如圖14所示。 常見的硬件故障: (1) 邏輯錯(cuò)誤 硬件的邏輯錯(cuò)誤是由于設(shè)計(jì)錯(cuò)誤和焊接過程中的工藝錯(cuò)誤而造成的,包括錯(cuò)線、開路、短路等,其中最常見的是短路故障。 (3) 可靠性差 應(yīng)用系統(tǒng)可靠性差的原因很多,如內(nèi)部和外部的干擾、電壓紋波系數(shù)過大、器件負(fù)載過重等均會(huì)造成系統(tǒng)的可靠性差。 (4) 電源故障 電源故障包括:電壓值不符合設(shè)計(jì)要求、電源功率不足、負(fù)載能力差、紋波太重等。 經(jīng)過軟件和硬件調(diào)試成功后,所做實(shí)物演示如圖116以及圖17所示。輸入密碼時(shí),如三次輸入錯(cuò)誤,則進(jìn)行報(bào)警,在輸入時(shí),LCD顯示為“*”,在修改密碼時(shí),則顯示數(shù)字。通過對(duì)該課題的研究,加深對(duì)所學(xué)知識(shí)的理解,提高對(duì)課外知識(shí)的學(xué)習(xí)能力, 增強(qiáng)知識(shí)的應(yīng)用能力,提高解決實(shí)際問題的能力,培養(yǎng)自我創(chuàng)新意識(shí)。在設(shè)計(jì)中我們必須首先熟悉和掌握單片機(jī)的結(jié)構(gòu)及工作原理,單片機(jī)的接口技術(shù)及相關(guān)外圍芯片的外特性,控制方法。單片機(jī)不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。更不用說自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。隨著單片機(jī)的廣泛應(yīng)用,將大大促進(jìn)各領(lǐng)域的技術(shù)更新,向自動(dòng)化、小型化、智能化方向邁進(jìn)。畢業(yè)設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程,隨著科學(xué)技術(shù)發(fā)展的日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域, 在生活中可以說得是無處不在。通過這次畢業(yè)設(shè)計(jì),無論從選題到定稿,從理論到實(shí)踐都使我學(xué)到了很多東西,它不僅可以鞏固了以前所學(xué)過的知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí)。參考文獻(xiàn)[1] [J].國(guó)外電子測(cè)量技術(shù),2010,(07) :5861.[2] (數(shù)字部分)第4版[M].北京:高等教育出版社,2008.[3] [J].現(xiàn)代電子技術(shù),2005,(13):95 97.[4] [M].西安:西安電子科技大學(xué)出版社,2002.[5] 岳學(xué)軍,陳姍,[J].云南大學(xué)學(xué)報(bào),2009,(05):2 6.[6] (模擬部分)第4版[M].北京:高等教育出版社,2006.[7] [J].硅谷,2010,(01):126130.[8] [J].山東煤炭科技,2000,(03):3033.[9] [J].電子技術(shù),2004,(03) :5860. [10] [J].科技資訊,2006,(04):27 28.[11] 周 勇,付大鵬,[J].機(jī)械,2002,29(增刊):128129.[12] [J].綿陽師范學(xué)院學(xué)報(bào),2007,(05):112 115.[13] [M].北京:北京希望電子出版社,2002. [14] 周鑫,何建新,[J].成都信息工程學(xué)院學(xué)報(bào),2009,(04):341345.[15] [M].北京:清華大學(xué)出版社,2003.Design of Electric Password Lock Based on MCUDepartment of Physics and Electronic Information Science and Electronic Information Science and Technology ProfessionalAbstract: As people living standard rise and security awareness strengthening, people’s safety requirements will higher and higher too. The safe standard of the traditional mechanical locks and the night lock is high cost and low use very inconvenient that cannot meet the need of people’s need. One that based on singlechip processor electronic locks arises at the historic moment .This article is based on the safety and economical practical point of view, uses the United States Atmel Corporation STC89C52 microcontroller and Low power consumption CMOS type E 178。 Enter the wrong password can alarm。STC89C52 MCU。LCD Display。雖然楊利容老師平日里工作繁多,但在我做畢業(yè)設(shè)計(jì)的每個(gè)階段,都給予我悉心的指導(dǎo)和幫助,關(guān)心我們每個(gè)階段所做的工作,當(dāng)然,還要感謝寢室的兄弟們?cè)谖彝瓿烧撐牡倪^程中給予我的幫助和鼓勵(lì),也是他們陪我度過了這四年的生活,感謝能有這段美好的記憶。最后,感謝在大學(xué)期間認(rèn)識(shí)我和我認(rèn)識(shí)的所有人,有你們的陪伴,才有我大學(xué)生活的絢麗多彩。_nop_()。_nop_()。 sbit sda=P3^3。 //串行時(shí)鐘bit flag=0,aa。 //顯示緩沖uchar Userpassword[6]=""。 sbit rd=P2^1。sbit led=P2^7。 //定義蜂鳴器端口uchar code table2[]=123456。 //標(biāo)題字符串void delayms(uint z) // 延時(shí)子程序{ uint x,y。x0。y0。} void delay() //短延時(shí),兩個(gè)機(jī)器周期,做總線的延時(shí)用{。 rd=0。 P1=。 lcden=1。 lcden=0。 rd=0。 P1=date。 lcden=1。 lcden=0。 write_()。i16。 }}void init_lcd() // LCD 初始化{ lcden=0。 //設(shè)置功能兩行顯示 write_(0x0c)。 // 設(shè)置光標(biāo)向右移 write_(0x01)。 //顯示數(shù)據(jù)儲(chǔ)存器地址 Display_String(table,0x80)。}void start() //起始位(scl保持“高”時(shí),sda由“高”變?yōu)椤暗汀睘殚_始條件){ sda=1。 delay4us()。 delay4us()。}void stop