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

正文內(nèi)容

【畢業(yè)論文】基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì)(word檔)-在線瀏覽

2025-07-10 19:53本頁(yè)面
  

【正文】 T1( T1 定時(shí)器的外部計(jì)數(shù)輸入) /WR(外部數(shù)據(jù)存儲(chǔ)器的寫選通) /RD(外部數(shù)據(jù)存儲(chǔ)器的讀選通) RST:復(fù)位引腳高電平時(shí) MCU 復(fù)位,復(fù)位信號(hào)輸入端口,當(dāng) MCU 要復(fù)位時(shí),給與此引腳高電 平,高電平持續(xù)時(shí)間是不少于兩個(gè)機(jī)器周期的時(shí)間。當(dāng)單片機(jī)訪問外部的存儲(chǔ)器時(shí),地址鎖存使能鎖存地址低八位。應(yīng)該注意到的是:當(dāng)用于單片機(jī)擴(kuò)展外部的數(shù)據(jù)存儲(chǔ)器時(shí),它會(huì)少一個(gè) ALE 脈沖。此時(shí), ALE基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 7 只有在執(zhí)行 MOVX, MOVC 指令時(shí) ALE 才起作用。如果微處理器在外部執(zhí)行狀態(tài) ALE 的禁令,設(shè)置無效。 EA/VPP:外部程序存儲(chǔ)器訪問允許。 XTAL1:片內(nèi)振蕩器反相放大器和時(shí)鐘發(fā)生器的輸入端。 紅外模塊 HS0038 紅外數(shù)據(jù)傳輸 [3]的特點(diǎn):成本廉價(jià)、建設(shè)工程期短、適應(yīng)性好、擴(kuò)展性好、設(shè)備維護(hù)上更容易實(shí) 現(xiàn)。紅外數(shù)據(jù)傳輸廣泛地運(yùn)用在紅外遙控系統(tǒng)和車輛的監(jiān)控、門禁控制系統(tǒng) 、小區(qū)的安全防火系統(tǒng)和傳呼系統(tǒng)、身份的識(shí)別、非接觸 RF 的智能卡等 。 一體化紅外線接收頭三個(gè)管腳分別是地、 +5 V 電源、解調(diào)信號(hào)輸出端接在單片機(jī) 引腳上。下圖 為紅外模塊硬件結(jié)構(gòu)。這樣一來便會(huì)減少硬件設(shè)計(jì)過程中的麻煩,使電路簡(jiǎn)單化,且應(yīng)用起來比較方便。 圖 紅外接收元器件 顯示模塊 LCD1602 自然界中 如果想要了解系統(tǒng)的運(yùn)行與工作狀態(tài)顯示器是不可缺少的,顯示器是一個(gè)典型的輸出設(shè)備并且它的實(shí)際應(yīng)用也是極為廣泛的,幾乎所有的電子產(chǎn)品都會(huì)使用到顯示器其差別僅在于顯示器的結(jié)構(gòu)類型不同而已。本設(shè)計(jì)采用的是液晶顯示 LCD1602。因此只要寫入顯示字符的 ASCII 碼即可,這種標(biāo)準(zhǔn)化的設(shè)計(jì)給使用帶來很大的方便。 LCD1602 液晶顯示與單片機(jī)的連接可以分為兩種方式:總線方式和模擬口線方式。如圖 所示。LCD1602 液晶的幾個(gè)特性: +5V 電壓、對(duì)比度可調(diào)、內(nèi)含復(fù)位電路;提供各種控制命令,如:清屏、字符閃爍、光標(biāo)閃爍、顯示移位等多種功能;有 80 字節(jié)顯示數(shù)據(jù)存儲(chǔ)器 DDRAM;內(nèi)建有 160 個(gè) 5X7 點(diǎn)陣的字型的字符發(fā)生器 CGROM 8 個(gè)可由用戶 自定義的 5X7 的字符發(fā)生器 CGRAM。 RS 為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。 E 端為使能端。 鍵盤輸入模塊 鍵盤是單片機(jī)十分重要的輸入設(shè)備,是實(shí)現(xiàn)人機(jī)對(duì)話 [6]的紐帶。根據(jù)按鍵與單片機(jī)的連接方式不同,按鍵主要分為獨(dú)立式按鍵和矩陣式按鍵 ,有了這些按鍵,對(duì)單片機(jī)的控制就方便多了。將 16 個(gè)按鍵分為 4排 4 列排列好,如圖 矩陣鍵盤硬件結(jié)構(gòu)。鍵盤為 44 形式,按鍵包括阿拉伯?dāng)?shù)字 0~9,以及鎖定、更改和改密三個(gè)應(yīng)用按鍵。 鍵盤模塊硬件結(jié)構(gòu)圖 復(fù)位電路 能讓單片機(jī)運(yùn)行起來的最小硬件連接就是單片機(jī)最小系統(tǒng)電路, 51 單片機(jī)的最小系統(tǒng)電路一般包括工作電源、振蕩電路和復(fù)位電路 [7]等幾部分。單片機(jī)的 RST 引腳是復(fù)位信號(hào)的輸入端,復(fù)位信號(hào)是高電平的時(shí)候才有效,其有效時(shí)間應(yīng)持續(xù) 24 個(gè)震蕩脈沖周期(即 2 個(gè)機(jī)器周期)以上;通常為了保證應(yīng)用系統(tǒng)能夠準(zhǔn)確地復(fù)位,復(fù)位電路應(yīng)使引腳 RST 腳保持 10ms 以上的高電平狀態(tài)。當(dāng) RST 引腳從高電平狀態(tài)轉(zhuǎn)為低電平狀態(tài)時(shí),單片機(jī)退出復(fù)位狀態(tài),從程序存儲(chǔ)器的 0000H 地址開始執(zhí)行用戶程序。上電瞬間 RST 引腳獲得高電平,隨著電容 C11 的充電, RST 引腳的高電平逐漸下降。手動(dòng)復(fù)位的原理與此類似。本設(shè)計(jì)采用 Keil編譯器來進(jìn)行軟件的編程 主程序主要完成了系統(tǒng)的初始化、按鍵掃描、按鍵功能、以及調(diào)用顯示等功能。矩陣鍵盤的識(shí)別方法有多種。 紅外遙控設(shè)計(jì) 用 HS0038[9] 接收頭負(fù)責(zé)紅外遙控信號(hào)的解調(diào),將調(diào)制在 38kHz 上的紅外脈沖信號(hào)解調(diào) 并反相后輸入到單片機(jī)的 引腳,接收的信號(hào)由單片機(jī)進(jìn)行高電平與低電平寬度的測(cè)量,并進(jìn)行解碼處理。 識(shí)別編碼 [10]的關(guān)鍵之一是確定掃描周期。在編程時(shí)要考慮脈寬的偏差容限,為保證掃描精度,選取掃描周期為 100 μs。數(shù)據(jù) “0”為波形從低到高,即在相鄰的 2 次掃描中 ,掃描值從 0 到 1,則識(shí)別數(shù)據(jù)為 “0”;數(shù)據(jù) “1”為波形從高到低,即在相鄰的 2 次掃描中,掃描值從 1 到 0,則識(shí)別數(shù)據(jù)為 “1”。 Keil 編程軟件介紹 單片機(jī)的開發(fā)離不開必要的硬件,同樣也離不開軟件,編寫的匯編語(yǔ)言源程序要變?yōu)?CPU 可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編。 這款軟件的操作方法也很簡(jiǎn)單,甚至有些必須采用很復(fù)雜的硬件電路才能完成的工作,用軟件編程有時(shí)會(huì)變得很簡(jiǎn)單,這樣可以把復(fù)雜電路的輸入信號(hào)直接用信號(hào)發(fā)生器給定,或是 用電源來給定通過對(duì)電壓電流的調(diào)節(jié)來實(shí)現(xiàn)。 圖 新建工程 這樣就能新建一個(gè)工程 ,在選定的路徑下建立一個(gè)名字叫做 abc 的文件夾如圖 所示,在 abc 文件夾中建立了一個(gè) 文件之后點(diǎn)擊保存按鈕就會(huì)出現(xiàn)如圖 所示的畫面在此對(duì)話框中選擇 Atmel 之后會(huì)彈出一系列的單片機(jī)在本次設(shè)計(jì)中選用的是 51單片機(jī),完成后在選 Target 1 下的 Source Group 1 選擇 Add 把 文件加載到里面在 下添加所編好的 C 語(yǔ)言程序或是匯編語(yǔ)言程序,如果程序是分開寫得就可以添加多個(gè)子程序還有主程序,每個(gè)程序中必須有頭文件否則編譯不會(huì)通過 ,會(huì)顯示有錯(cuò)誤。 基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 13 圖 新建工程文件夾的建立 圖 芯片的選擇 所有程序都加到工程項(xiàng)目文件夾中后就可以對(duì)其進(jìn)行編譯了。直接單擊錯(cuò)誤這條信息就可以索引到源文件中。 基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 14 圖 錯(cuò)誤的生成 及索引 Proteus 仿真軟件概述 Proteus 是目前使用比較廣泛的單片機(jī)類的仿真系統(tǒng)的軟件之一,它可以實(shí)現(xiàn)的功能比較多,可以實(shí)現(xiàn)程序與原理圖的連調(diào),也可以單獨(dú)作為繪制原理圖的工具使用,與Protel有著過之不及的功能,于此同時(shí)還可以進(jìn)行 PCB 版圖的生成,在方法中與 Protel類似。 Proteus 此款軟件的使用比較簡(jiǎn)單。之后在單擊確定按鍵所選器件就會(huì)顯示在界面左上角的小框中此時(shí)點(diǎn)擊鼠標(biāo)左鍵就會(huì)放到圖層中,然后直接把鼠標(biāo)放到接頭處就會(huì)顯示一個(gè)畫筆的標(biāo)志此時(shí)按住鼠標(biāo)左鍵就可進(jìn)行連線了。 基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 15 圖 proteus 繪圖基本界面 Proteus 與 Keil 的連調(diào) 程序在 KEIL C51 上 調(diào)試 , 采用模塊程序設(shè)計(jì)技術(shù) ,則逐個(gè)模塊調(diào)好后再進(jìn)行系統(tǒng)程序總調(diào)。調(diào)試時(shí) ,一定要符合入口條件和出口條件 ,調(diào)試可用單步運(yùn)行和斷點(diǎn)運(yùn)行方式 ,通過 檢查用者系統(tǒng)的 CPU現(xiàn)場(chǎng)情況、 RAM的內(nèi)容和 I/ O 口的狀態(tài) ,檢測(cè)程序執(zhí)行結(jié)果是否符合設(shè)計(jì)要求 ,有無循環(huán)錯(cuò)誤、有無機(jī)器碼錯(cuò)誤以及轉(zhuǎn)移地址的錯(cuò)誤 ,同時(shí) ,還可以發(fā)現(xiàn)系統(tǒng)中存在的硬件設(shè)計(jì)錯(cuò)誤和軟件算法錯(cuò)誤。這個(gè)階段若有故障 ,可以考慮各子程序運(yùn)行時(shí)是否破壞了現(xiàn)場(chǎng) ,緩沖單元、工作寄存器是否發(fā)生沖突 ,標(biāo)志位的建立和清除是否有誤 ,堆棧區(qū)是否有溢出 ,輸入設(shè)備的狀態(tài)是否正常等等 ,若用者系統(tǒng)是在開發(fā)機(jī)的監(jiān)控程序下運(yùn)行時(shí) ,還要考慮用者緩沖單元是否和監(jiān)控程序的工作單元發(fā)生沖突。 當(dāng)全部調(diào)試和修改完成后 ,將程序固化到 AT89S51 中 。各功能實(shí)現(xiàn)則調(diào)試完成。還要在正確的運(yùn)基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 16 行平臺(tái)下進(jìn)行操作。在這里比較重要的就是 .hex文件的生成過程。之后再按照生成的的路徑去尋找這個(gè)文件。在此后點(diǎn)擊運(yùn)行按鍵就會(huì)進(jìn)行仿真了,按照設(shè)計(jì)的功能去調(diào)試就可以了 圖 Keil 加載 HEX 文件 Proteus 與 Keil 的連調(diào)的仿真結(jié)果 ( 1) 系統(tǒng)仿真運(yùn)行環(huán)境下的結(jié)果如圖 所示 當(dāng)單片機(jī)上電以后, L1602 液晶顯示屏顯示 Enter Password 和 3 chances 如圖 所示 基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 17 圖 系統(tǒng)環(huán)境運(yùn)行圖 ( 2) 開鎖狀態(tài)如圖 所示 當(dāng)用戶輸入密碼正確時(shí), L1602 液晶顯示屏顯示 correct 和 wele 如圖 所示 圖 開鎖界面 ( 4)密碼輸入錯(cuò)誤狀態(tài)如 所示 基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 18 當(dāng)用戶密碼輸入錯(cuò)誤時(shí), L1602 液晶顯示屏顯示 Password error 如圖 所示 圖 密碼輸入錯(cuò)誤 ( 5)密碼連續(xù)輸入三次錯(cuò)誤狀態(tài)如圖 所示 圖 鍵盤鎖定圖 ( 6)密碼重置狀態(tài)如圖 所示 基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 19 當(dāng)用戶按下密碼重置鍵以后, L1602 液晶顯示屏顯示如圖 所示 密碼重置界面 ( 7)密碼重置成功狀態(tài)如圖 所示 當(dāng)密碼重置成功以后, L1602 液晶顯示屏顯示 successfully 如圖 所示 圖 密碼重置成功 基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 20 (8)信號(hào)篩選功能模擬仿真 由于 proteus 的仿真功能有限,所以無法做實(shí)際仿真,所以我們采用模擬仿真的方法來實(shí)現(xiàn)。本系統(tǒng)具有結(jié)構(gòu)簡(jiǎn)單,硬件較少,容易實(shí)現(xiàn),性能穩(wěn)定可靠,成本低等特點(diǎn)。對(duì)系統(tǒng)硬件的設(shè)計(jì),電路原理圖以及仿真,軟件流程圖和具體的匯編語(yǔ)言的設(shè)計(jì)都有了相應(yīng)的提高。對(duì)于軟件部分的 Keil軟件的使用,是我們對(duì)匯編語(yǔ)言以及 C 語(yǔ)言又有了更深一步的了解。我學(xué)會(huì)了利用所學(xué)知識(shí)以技術(shù)上的知識(shí)解決問題。我深深地感謝他們,并將以此激勵(lì)我不斷進(jìn)取 !首先衷心感謝我的指導(dǎo)老師 —龔偉 ,在她的悉心指導(dǎo)下使本文順利完成。我還要感謝我的室友和同班同學(xué),幾年來我們默契的合作、坦誠(chéng)的友誼給我留下了美好回憶。 //1602 使能引腳 sbit RW=P2^6。 //1602 數(shù)據(jù) /命 令選擇引腳 sbit sounder = P3^7。 //light 引腳 sbit back = P2^1。 //control 引腳 char SuperPassword[MAX] = 1234567。 //初始密碼 int input,reput,display = 0。339。 //儲(chǔ)存用戶輸入密碼 char re,flag= 0。 * 輸入 : 無 * 輸出 : 無 ***********************************************************************/ void delay() { _nop_()。 _nop_()。 _nop_()。 for (j=0。 j++) { _nop_()。 RS = 0。 E = 1。 busy_flag = (bit)(P0 amp。 E = 0。 } /******************************************************************** * 名稱 : wcmd(uchar del) * 功能 : 1602 命令函數(shù) * 輸入 : 輸入的命令值 * 輸出 : 無 ***********************************************************************/ void wcmd(uchar del) { while(Busy())。 RW = 0。 delay()。 delay()。 delay()。 } 基于單片機(jī)的門禁控制系統(tǒng)設(shè)計(jì) 26 /******************************************************************** * 名稱 : wdata(uchar del) * 功能 : 1602 寫數(shù)據(jù)函數(shù) * 輸入 : 需要寫入 1602 的數(shù)據(jù) * 輸出 : 無 ***********************************************************************/ void wdata(uchar del) { while(Busy())。 RW = 0。 delay()。 delay()。 de
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1