freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

單片機(jī)控制密碼鎖c語(yǔ)言程序畢業(yè)論文(編輯修改稿)

2024-07-24 14:05 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 線始終和先進(jìn)技術(shù)保持同步,但仍然保持其向下兼容性。并且最近還增加了高速模式。它使得I2C 總線能夠支持現(xiàn)有以及將來(lái)的高速串行傳輸應(yīng)用,例如EEPROM 和Flash 存儲(chǔ)器。天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)4 系統(tǒng)硬件構(gòu)成 設(shè)計(jì)原理本設(shè)計(jì)主要由單片機(jī)、矩陣鍵盤(pán)、液晶顯示器和密碼存儲(chǔ)等部分組成。其中矩陣鍵盤(pán)用于輸入數(shù)字密碼和進(jìn)行各種功能的實(shí)現(xiàn)。由用戶通過(guò)連接單片機(jī)的矩陣鍵盤(pán)輸入密碼,后經(jīng)過(guò)單片機(jī)對(duì)用戶輸入的密碼與自己保存的密碼進(jìn)行對(duì)比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開(kāi)鎖電路或者報(bào)警電路控制開(kāi)鎖還是報(bào)警。本系統(tǒng)共有兩部分構(gòu)成,即硬件部分與軟件部分。其中硬件部分由電源輸入部分、鍵盤(pán)輸入部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分組成,軟件部分對(duì)應(yīng)的由主程序、初始化程序、LCD顯示程序、鍵盤(pán)掃描程序、啟動(dòng)程序、關(guān)閉程序、鍵功能程序、密碼設(shè)置程序、EEPROM讀寫(xiě)程序和延時(shí)程序等組成。其原理框圖如圖41所示。AT89C51鍵盤(pán)輸入復(fù)位電路晶振電路電源輸入顯示電路報(bào)警電路開(kāi)鎖電路 圖41 電子密碼鎖原理框圖 電路總圖構(gòu)成在確定了選用什么型號(hào)的單片機(jī)后,就要確定在外圍電路,其外圍電路包括電源輸入部分、鍵盤(pán)輸入部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分組成,根據(jù)實(shí)際情況鍵盤(pán)輸入部分選擇4*4矩陣鍵盤(pán),顯示部分選擇字符型液晶顯示LCD1602。其原理圖如圖42所示:圖42 電路總圖 電源輸入部分 密碼鎖主要控制部分電源需要用5V直流電源供電,其電路如圖43所示,而5V電源輸入時(shí)往往伴有雜波。這樣輸出的電壓一般能滿足要求。 圖43 電源輸入電路原理圖 鍵盤(pán)輸入部分 由于本設(shè)計(jì)所用到的按鍵數(shù)量較多而不適合用獨(dú)立按鍵式鍵盤(pán)。采用的是矩陣式按鍵鍵盤(pán),它由行線和列線組成,也稱行列式鍵盤(pán),按鍵位于行列的交叉點(diǎn)上,密碼鎖的密碼由鍵盤(pán)輸入完成,與獨(dú)立式按鍵鍵盤(pán)相比,要節(jié)省很多I/O口。本設(shè)計(jì)中使用的這個(gè)4*4鍵盤(pán)不但能完成密碼的輸入還能作特別功能鍵使用,比如清空顯示功能等。鍵盤(pán)的每個(gè)按鍵功能在程序設(shè)計(jì)中設(shè)置 。其大體功能(看鍵盤(pán)按鍵上的標(biāo)記)及與單片機(jī)引腳接法如圖44所示: 圖44 鍵盤(pán)輸入原理圖 復(fù)位部分 單片機(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ù)位期間(即RST為高電平期間),P0口為高組態(tài),P1-P3口輸出高電平;外部程序存儲(chǔ)器讀選通信號(hào)PSEN無(wú)效。地址鎖存信號(hào)ALE也為高電平。根據(jù)實(shí)際情況選擇如圖45所示的復(fù)位電路。該電路在最簡(jiǎn)單的復(fù)位電路下增加了手動(dòng)復(fù)位按鍵,在接通電源瞬間,電容C1上的電壓很小,復(fù)位下拉電阻上的電壓接近電源電壓,即RST為高電平,在電容充電的過(guò)程中RST端電壓逐漸下降,當(dāng)RST端的電壓小于某一數(shù)值后,CPU脫離復(fù)位狀態(tài),由于電容C1足夠大,可以保證RST高電平有效時(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分壓比決定。由于R5R6 因此RST為高電平,CPU處于復(fù)位狀態(tài),松手后,電容C1充電,RST端電位下降,CPU脫離復(fù)位狀態(tài)。R5的作用在于限制按鍵按下瞬間電容C1的放電電流,避免產(chǎn)生火花,以保護(hù)按鍵觸電 。圖45 復(fù)位電路原理圖 晶振部分 AT89C51引腳XTAL1和XTAL2與晶體振蕩器及電容CC1按圖46所示方式連接。晶振、電容C1/C2及片內(nèi)與非門(mén)(作為反饋、放大元件)構(gòu)成了電容三點(diǎn)式振蕩器,振蕩信號(hào)頻率與晶振頻率及電容CC2的容量有關(guān),但主要由晶振頻率決定,范圍在0~33MHz之間,電容CC2取值范圍在5~30pF之間。根據(jù)實(shí)際情況,本設(shè)計(jì)中采用12MHZ做系統(tǒng)的外部晶振。電容取值為20pF。圖46 晶振電路原理圖 顯示部分 為了提高密碼鎖的密碼顯示效果能力。本設(shè)計(jì)的顯示部分由液晶顯示器LCD1602取代普通的數(shù)碼管來(lái)完成。只有按下鍵盤(pán)上的開(kāi)啟按鍵后,顯示器才處于開(kāi)啟狀態(tài)。同理只有按下關(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)鍵,如果輸入的密碼正確的話, LCD子顯示“RIGHT”,使三極管T2導(dǎo)通,電磁鐵吸合,電子密碼鎖被打開(kāi),如果密碼不正確,LCD顯示屏?xí)@示“ERROR”,電子密碼鎖不能被打開(kāi)。通過(guò)LCD顯示屏,可以清楚的判斷出密碼鎖所處的狀態(tài) 。其顯示部分引腳接口如圖47所示: 圖47 顯示電路原理圖 報(bào)警部分報(bào)警部分由陶瓷壓電發(fā)聲裝置及外圍電路組成,加電后不發(fā)聲,當(dāng)有鍵按下時(shí),“叮”聲,每按一下,發(fā)聲一次,密碼正確時(shí),不發(fā)聲直接開(kāi)鎖,當(dāng)密碼輸入錯(cuò)誤時(shí),三極管T3導(dǎo)通轟鳴器發(fā)出噪鳴聲報(bào)警。如圖48所示:圖48 報(bào)警電路原理圖天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)5 系統(tǒng)軟件設(shè)計(jì) 本系統(tǒng)軟件設(shè)計(jì)由主程序、初始化程序、LCD顯示程序、鍵盤(pán)掃描程序、鍵功能程序、密碼設(shè)置程序、EEPROM讀寫(xiě)程序和延時(shí)程序等組成。 主程序流程圖如圖51所示為主程序流程圖,開(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é)束。開(kāi)始初始化鍵盤(pán)掃描啟動(dòng)程序鍵盤(pán)掃描鍵功能程序結(jié)束關(guān)閉程序 圖51 主程序流程圖 按鍵功能流程圖如圖52為按鍵功能流程圖,在按鍵當(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)程序。鍵功能程序鍵值=‘輸入’?鍵值=‘開(kāi)鎖’?鍵值=‘清除’?鍵值=‘設(shè)置’?鍵值=‘確認(rèn)’?密碼輸入程序設(shè)置程序清除程序開(kāi)鎖程序確認(rèn)程序YYYYYNNNN返回N圖52 按鍵功能流程圖 密碼設(shè)置流程圖如圖53為密碼設(shè)置流程圖,開(kāi)始按下設(shè)置鍵,輸入舊密碼,如果錯(cuò)誤,累計(jì)三次錯(cuò)誤,進(jìn)行報(bào)警程序。如輸入正確,可以改密碼,確認(rèn)后再次輸入更改后密碼,如兩次輸入一樣,則更改成功。按下設(shè)置鍵輸舊密碼所輸入舊密碼正確?輸新密碼確認(rèn)程序設(shè)置成功輸入次數(shù)加1次數(shù)3?報(bào)警程序NYNY返回確認(rèn)程序再次輸新密碼兩次新密碼輸入相同?NY設(shè)置程序圖53 密碼設(shè)置流程圖 開(kāi)鎖流程圖如圖54為開(kāi)鎖流程圖,開(kāi)始時(shí)按開(kāi)鎖鍵,輸入密碼,如果輸入正確,則開(kāi)鎖成功。如果輸入錯(cuò)誤累計(jì)達(dá)到三次,則執(zhí)行報(bào)警程序。初始化按開(kāi)鎖鍵輸入密碼確認(rèn)程序所輸入密碼正確?Y開(kāi)鎖成功開(kāi)鎖程序輸入次數(shù)加1次數(shù)3?報(bào)警程序返回NYN圖54開(kāi)鎖流程圖天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)結(jié) 論以上為畢業(yè)期間所設(shè)計(jì)的電子密碼控制系統(tǒng)的電路,它經(jīng)過(guò)多次修改和整理,可以滿足設(shè)計(jì)的基本要求。輸入密碼時(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ī)作為核心的控制元件,配合其它器件,使本密碼控制系統(tǒng)具有功能強(qiáng)、性能可靠、電路簡(jiǎn)單、成本低的特點(diǎn),加上經(jīng)過(guò)優(yōu)化的程序,使其有很高的智能化水平。天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)參考文獻(xiàn)[1] 石文軒,[M].武漢工程職業(yè)技術(shù)學(xué)院學(xué)報(bào),2004,(01)。[2] 祖龍起,[J].大連輕工業(yè)學(xué)院學(xué)報(bào),2002,(01)。[3] [J].家庭電子,2005,(10)。[4] [J].機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新,2004,(03)。[5] [J].電子技術(shù),2004,(03)。[6] [J].福建電腦,2004,(08)。[7] [J].家庭電子,2000,(07)。[8] ,2006,(01)。[9] Wireless World,1998,vol、84,No、1509,p69。[10] [M],電子工業(yè)出版社,2001,p101。[11] [M],北京:北京航空大學(xué)出版社,1998。[12] [M],北京航空航天大學(xué)出版社,1993。[13] [M],北京:電子工業(yè)出版社,2006。[14] [M],西安:西安電子科技大學(xué)出版社,2003。[15] 童詩(shī)白,華成英,模擬電子技術(shù)基礎(chǔ)[M],北京:高等教育出版社,2000。[16] [M],北京:高等教育出版社,1998。[27] 樊昌信,[M],北京:國(guó)防工業(yè)出版社,2007。[28] [M],北京:高等教育出版社1991。[19] [M].現(xiàn)代電子技術(shù),2005,(13)。[20] 何希才,[M].北京:電子工業(yè)出版社,1998[21] (第四版)[M].北京:高等教育出版社,1998天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)致 謝四年的大學(xué)生活不知不覺(jué)中就要結(jié)束了,在這段難忘的生活中,我有許多美好的回憶。在這份大學(xué)的最后一頁(yè)里,我要感謝的人很多,首先要感謝我的學(xué)校,感謝在這四年中教給我的做人的道理,讓我從一個(gè)懵懂得高中生變成一個(gè)成熟的青年。還要感謝我的論文指導(dǎo)老師,在他的指導(dǎo)下我完成了論文,老師多次詢問(wèn)研究進(jìn)程,并為我指點(diǎn)迷津。當(dāng)然,還要感謝寢室的兄弟們?cè)谖彝瓿烧撐牡倪^(guò)程中給予我的幫助和鼓勵(lì),也是他們陪我度過(guò)了這四年的生活,最后要感謝的就是我的父母,對(duì)于他們我更是有千言萬(wàn)語(yǔ),還是匯聚成一句話:感謝你們一直都伴隨著我?,F(xiàn)在即將揮別我的學(xué)校、老師、同學(xué),還有我四年的大學(xué)生活,雖然依依不舍,但是對(duì)未來(lái)的路,我充滿了信心。最后,感謝在大學(xué)期間認(rèn)識(shí)我和我認(rèn)識(shí)的所有人,有你們的伴隨,才有我大學(xué)生活的豐富多彩,絢麗多姿!謝謝!天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)附錄一:總原理圖附錄二: 程序include include include include include uchar key_buf[16]={0}。uchar old_key[16]={0}。uchar key_index=0。uchar string_buf[17]={0}。uchar key。uchar key_statu=0。uchar clear=1。uchar check=0。char times=3。uchar change=0。 void delay_ms(uint t){ uint i,j。 for(i=0。it。i++) { j=2000。 while(j)。 }}void save_iic(){ iic_writes(0,(uchar *)(key_buf),16)。}void read_iic(){ iic_reads(0,(uchar *)(old_key),16)。}void runtimer1(){ TH1= 38。 TL1=228。 TR1=1。 ET1=1。 EA=1。}void timer1(void)interrupt 3{if(times=0||!alarm)ir_out=~ir_out。}uchar ir_key_check(){ uchar i=0。 uchar j。 if(!ir_key1) { if(!check) { for(i=0。i16。i++) { if(key_buf[i]!=old_key[i]) { lcd_set_addr(0xa8)。 lcd_print( PassWord Error!)。 times。 delay_ms(250)。 lcd_set_addr(0xa8)。 lcd_print( )。 key_index=0。 for(j=0。j16。j++) { string_buf[j]=0x0。 key_
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1