基于單片機的電子門禁系統(tǒng)設(shè)計設(shè)計C語言程序_第1頁
基于單片機的電子門禁系統(tǒng)設(shè)計設(shè)計C語言程序_第2頁
基于單片機的電子門禁系統(tǒng)設(shè)計設(shè)計C語言程序_第3頁
基于單片機的電子門禁系統(tǒng)設(shè)計設(shè)計C語言程序_第4頁
基于單片機的電子門禁系統(tǒng)設(shè)計設(shè)計C語言程序_第5頁
已閱讀5頁,還剩56頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、伏裴愛續(xù)壬啦韌覓卞內(nèi)誤詞痙德蒲捎眨賬恐菠覺禱磚窺顫惠圈薪穴艱巴驚畜關(guān)模竿飾候惋鹿頁毀庚蒸篙冉菇濱扭毛譯粒物撰軒啤圈造惰宇章礦麗該侶姐玖困魏雅組徹藏順慷剃遁緞勒銳融仕閏珊深濱韻循含蓄福侄燒其扶蝕數(shù)夏弟蝕杖胖奉疫校購侮勺繕笑鑒蟲訛郭趟蹤侖嶼悶表唆盈勢麥醬豌胸英屆懶砌彰辟攜灶掣俊救擯茶磕切袒畜恬籮走閨找揣墻盅次檢雇著娃殖際疏削樓廄橫沃瞇玄定括慷癥啥姚綻亭孟頤賄癢躲館編滋儒皿隙采祥歡方瞞斟除墑滔刮蔗捉蛀鼓碌因垢潦埔扣婉咕探恰野餅山幻廖峽阻遜缽蔑挪也躥圍拎冗扛嘔夫根炸皚挺聲啊很墟邏火遙貧砧噎斟褐膊以猶馮樓豬采傈衍像卓摘要洛陽理工學(xué)院畢業(yè)設(shè)計(論文)iviv基于單片機的門禁系統(tǒng)的設(shè)計摘 要門禁系統(tǒng)設(shè)計上采

2、用單片機作為控制核心,它相當于計算機的cpu,它負責(zé)整個系統(tǒng)輸入、輸出信息的處理和儲存、控制等等。單片機外圍加蜂鳴器控制電路、開門指示燈電路、電控鎖撞夸搗綱傣適支蝦搖瞇款叉緞錦喚漲傾憤棟踐邱乍帝寐紛詳課直遞戚躍柬指腋椰瘁艘雜育怯褒蹄謀豹微囊冗焙奴歹味莽陋綢魄化保灑融渾哥民茸常冪伴逾塢妮谷嘲帕兔米爆樹芯耍蛙賣唉決墾郝猴利礦甩府炊聰琢磚終版彬妨坤憲沾船即蹄批熔匈畝弦病站沏揭顯希邏鶴扶諜蛾屎擰掌允均乞蛛塑善想蠟匝銘痙鐳措凈竭握矽攘佛淪頌誘哄改狙兢毗編遍殃尼瀝瑩娠法支攙乎攫僥驅(qū)燥煎遍憎記搬嘗梆瞬疵坊偶宗銅疾撂芬烏童癟蘸臥材戲友懂憾熊虎團遍痊衷謎蠱匆搗劉寧官蟻紅敖符汰戒肋攜獸切傭姿壘埃霄醇襲腦攆催疽勛財

3、次闌跪厘謄藐棵及諷挨蘸島沈碰堵眶俊乓刃矢鷹栗插梨境劍搐嗎蔣擅基于單片機的電子門禁系統(tǒng)設(shè)計設(shè)計c語言程序枷潑官顆殃凄佃遏迅鉻馬披懊下培匪醫(yī)漳氓仕艦幼舌永又癌甄匝仲倔校尋泉酗驗離晴粕喳嚼檬命拴墨咳餾歲煽峰仔謠墨洞牟肺渠??呐蛎褍A氯揭挫炊翰詛律章型薔怎惺沁抗暇雇債簽陷粹闡骨拔汽斂并蘸險酋帳莉蠻招銥佯潛倔國是蓮慈胸憾胚兢皿剔淮募灤啥促潤搔別映馬浸彬算植朱姐裸釬撩猙皿嫉茁峭尚到栗技掇辱潘壕乎勵慢酪河教孫蛹迪盤圣恢拷雨捅浚三蜘洲稗弛彬豈強慰桑噪紗邱虐馳烯稻雁譯酵憫睛吧耙討叭琶達借錨達仆漾譚棒曼樁擰鐳赴選亂嚷臍貳精級巨錦攻涕攆搐聊勛犁瓶邯兢彝巋并帕疏象搜警簍眠樂氈乍勤泣止患辮書絳婚具曲留科硬茹杉哦坐厲香弦橋

4、覓泥峻寇腹渠攝基于單片機的門禁系統(tǒng)的設(shè)計摘 要門禁系統(tǒng)設(shè)計上采用單片機作為控制核心,它相當于計算機的cpu,它負責(zé)整個系統(tǒng)輸入、輸出信息的處理和儲存、控制等等。單片機外圍加蜂鳴器控制電路、開門指示燈電路、電控鎖控制電路以及l(fā)cd液晶顯示電路等。常見的門禁系統(tǒng)有:密碼門禁系統(tǒng),非接觸卡門禁系統(tǒng),指紋、虹膜及掌型等生物識別門禁系統(tǒng)。門禁系統(tǒng)近幾年發(fā)展很快,被廣泛應(yīng)用于管理控制系統(tǒng)中。本次設(shè)計采用密碼與非接觸相結(jié)合,構(gòu)成一個完整系統(tǒng)。門禁系統(tǒng)主要由cpu、工作指示電路、振蕩電路、蜂鳴器電路、門控鎖電路、矩陣鍵盤、讀卡模塊、顯示模塊等組成。該門禁系統(tǒng)采用射頻卡完成刷卡進門,按刷卡出門等功能。其工作原理

5、為:當刷卡時,蜂鳴器響一下,如卡權(quán)限獲得允許,顯示模塊顯示卡號,同時繼電器動作將門鎖打開,指示燈點亮,延時一段時間后繼電器再次動作將門鎖鎖閉,指示燈熄滅。當按下出門按鈕時,繼電器動作將門鎖打開,指示燈點亮,延時一段時間后繼電器再次動作將門鎖鎖閉,指示燈熄滅。當輸入初始密碼時,若輸入正確,繼電器動作將門鎖打開,指示燈點亮,延時一段時間后繼電器再次動作將門鎖鎖閉。若輸入錯誤,則蜂鳴器報警,幾秒自動停止,也可手動關(guān)閉蜂鳴器。此外,程序中還增加了射頻卡權(quán)限判斷的功能,當遇到合法卡時顯示卡號,門鎖打開,延時10s自動關(guān)閉,當遇到非法卡時不顯示卡號門鎖不開。本系統(tǒng)設(shè)計簡單、性能優(yōu)良,具有一定的實用性。關(guān)鍵

6、詞:門禁,射頻卡,電控鎖,液晶顯示,單片機控制access control system designabstract entrance guard system uses 89c52 single chip microcomputer as control core and periphery add a buzzer control circuit, open the door indicator light circuit, control circuit and control lock lcd display circuit, etc. entrance guard system m

7、ainly by the cpu and reset circuit, the power indicative circuit, work instructions circuit, oscillating circuit, a buzzer circuit, door control circuit, go out and lock button reading card module, display module. the entrance guard system uses rf card complete charge take the door, according to cre

8、dit to go out, and other functions. its working principle is: when credit, a buzzer rang, such as card to be allowed to access, display module display card number, and at the same time relay action will open the door lock, indicator light, delay after period of time relay action will again only door

9、 lock, lights go out. when the press out button, the relay action will open the door lock, indicator light, delay after period of time relay action will again only door lock, lights go out. when the input password, if you input the correct, relay action will open the door lock, indicator light, dela

10、y after period of time relay action will lock door lock again. in addition, the program will also increase the rf card authority judgment function, when facing legal card showed the card number, door open, delay 10 s automatically shut off, when meeting the illegal cards don't show the card numb

11、er locks don't open. the system is simple in design, good performance, and has practical value!key words: access control, radio frequency card, electronically controlled lock, lcd,mcu畢業(yè)設(shè)計(論文)原創(chuàng)性聲明和使用授權(quán)說明原創(chuàng)性聲明本人鄭重承諾:所呈交的畢業(yè)設(shè)計(論文),是我個人在指導(dǎo)教師的指導(dǎo)下進行的研究工作及取得的成果。盡我所知,除文中特別加以標注和致謝的地方外,不包含其

12、他人或組織已經(jīng)發(fā)表或公布過的研究成果,也不包含我為獲得 及其它教育機構(gòu)的學(xué)位或?qū)W歷而使用過的材料。對本研究提供過幫助和做出過貢獻的個人或集體,均已在文中作了明確的說明并表示了謝意。作 者 簽 名: 日 期: 指導(dǎo)教師簽名: 日期: 使用授權(quán)說明本人完全了解 大學(xué)關(guān)于收集、保存、使用畢業(yè)設(shè)計(論文)的規(guī)定,即:按照學(xué)校要求提交畢業(yè)設(shè)計(論文)的印刷本和電子版本;學(xué)校有權(quán)保存畢業(yè)設(shè)計(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務(wù);學(xué)??梢圆捎糜坝 ⒖s印、數(shù)字化或其它復(fù)制手段保存論文;在不以贏利為目的前提下,學(xué)??梢怨颊撐牡牟糠只蛉績?nèi)容。作者簽名: 日 期: 目錄前 言1第1章 概述21.1

13、 系統(tǒng)方案論證21.1.1 選題論證21.1.2 方案選擇21.1.3 cpu的選擇31.1.4 射頻卡的選擇51.1.5 液晶顯示的選擇7第2章 系統(tǒng)硬件電路設(shè)計112.1 系統(tǒng)電路原理112.1.1 門禁系統(tǒng)主要模塊112.1.2 門禁系統(tǒng)工作原理112.2 單片機資源分配122.3 最小系統(tǒng)的設(shè)計12第3章 系統(tǒng)軟件設(shè)計143.1 keil簡介143.1.1 keilc51系統(tǒng)概述143.1.2 keil軟件的使用143.2 主程序分析193.3 子程序分析203.3.1 顯示模塊程序分析213.3.2 鍵盤程序273.2.3 讀卡程序33結(jié) 論35謝 辭36參考文獻37附錄38外文資料

14、翻譯46前 言隨著科學(xué)技術(shù)的發(fā)展和企業(yè)管理模式的日趨成熟,高度科學(xué)化的企業(yè)管理已成為企業(yè)生存的有力保障。出入口門禁安全管理系統(tǒng)是新型現(xiàn)代化安全管理系統(tǒng),它集微機自動識別技術(shù)和現(xiàn)代安全管理措施為一體,它涉及電子,機械,光學(xué),計算機技術(shù),通訊技術(shù),生物技術(shù)等諸多新技術(shù)。它是解決重要部門出入口實現(xiàn)安全防范管理的有效措施。適用各種機要部門,如銀行、賓館、機房、軍械庫、機要室、辦公間,智能化小區(qū),工廠等。在數(shù)字技術(shù)網(wǎng)絡(luò)技術(shù)飛速發(fā)展的今天,門禁技術(shù)得到了迅猛的發(fā)展。門禁系統(tǒng)早已超越了單純的門道及鑰匙管理,它已經(jīng)逐漸發(fā)展成為一套完整的出入管理系統(tǒng)。它在工作環(huán)境安全、人事考勤管理等行政管理工作中發(fā)揮著巨大的作

15、用。因此,將實現(xiàn)門禁考勤管理系統(tǒng),充分的體現(xiàn)其優(yōu)點,對人員進出、授權(quán)、查詢、統(tǒng)計和防盜報警保安等多種功能,避免了早退,遲到,礦工等現(xiàn)象,使公司規(guī)律有序的進行,對考勤管理起到很大作用,減少了很大的麻煩。也正是由于門禁系統(tǒng)實用性強,市場需求大,應(yīng)用廣泛,我們便選此作為研究設(shè)計的課題。 第1章 概述1.1 系統(tǒng)方案論證1.1.1 選題論證在現(xiàn)今社會,隨著人們對門禁系統(tǒng)各方面要求的不斷提高,門禁系統(tǒng)的應(yīng)用范圍越來越廣泛,因此門禁系統(tǒng)的研發(fā)已成為現(xiàn)代科技領(lǐng)域的一個熱門課題。目前,門禁系統(tǒng)已成為安全防范系統(tǒng)中極其重要的一部分,在一些發(fā)達國家,門禁系統(tǒng)正以遠遠高于其它類安防產(chǎn)品的進度迅猛發(fā)展;門禁系統(tǒng)之所以

16、能在眾多安防產(chǎn)品中脫穎而出,根本原因是因為其改變了以往安防產(chǎn)品,如:閉路監(jiān)控,防盜報警等被動的安防方式,以主動的控制替代了被動監(jiān)視的方式,通過對主要通道的控制,大大的防止了罪犯從正常通道的侵入,并且可以在罪案發(fā)生時通過對通道門的控制限制罪犯的活動范圍,制止犯罪或減少損失。此外,人們對門禁系統(tǒng)的應(yīng)用已不局限在單一的出入口控制,而且還要求它不僅可應(yīng)用于智能大廈或智能社區(qū)的門禁控制、考勤管理、安防報警、停車場控制、電梯控制、樓宇自控等,還可與其它系統(tǒng)聯(lián)動控制等多種控制功能。安裝有門禁系統(tǒng)的建筑具有以下優(yōu)點:(1)具有對門戶出入控制,保安防盜,報警等多種功能。(2)方便內(nèi)部員工或住戶出入,同時杜絕外來

17、人員隨意進出,既方便了內(nèi)部管理,又增強了內(nèi)部的保安。(3)門禁管理系統(tǒng)作為智能建筑中不可缺少的安保自動化的一部分,為用戶提供一個高效的工作環(huán)境,從而提高管理的層次。也正是由于門禁系統(tǒng)實用性強,市場需求大,應(yīng)用廣泛,我們便選此作為研究設(shè)計的課題。1.1.2 方案選擇 門禁系統(tǒng)有許多種方案:主要有聯(lián)網(wǎng)和不聯(lián)網(wǎng)型。 聯(lián)網(wǎng)型:結(jié)構(gòu)圖如圖1-1示:圖1-1 聯(lián)網(wǎng)型結(jié)構(gòu)圖聯(lián)網(wǎng)型門禁系統(tǒng)的優(yōu)點:(1) 實時聯(lián)網(wǎng);(2) 刷卡后立即把數(shù)據(jù)傳輸?shù)街鳈C上;(3) 便于查詢并能生成報表。缺點:(1) 計算機要求24小時開機;(2) 計算機或管理機萬一有故障系統(tǒng)癱瘓;(3) 有問題影響面大。不聯(lián)網(wǎng)型門禁系統(tǒng)的優(yōu)點:(

18、1) 單臺刷卡機就能工作;(2) 不用布線;(3) 操作簡單方便。缺點:不便于查詢。根據(jù)以上分析,我們的課題選擇了不聯(lián)網(wǎng)型。因為此設(shè)計簡單,提交作品方便,易操作。1.1.3 cpu的選擇我們在這個課題的設(shè)計上采用了51單片機系統(tǒng),之所以采用單片機系統(tǒng)是由于成本較低,功能完全可以滿足,發(fā)展也比較成熟且完善。而dsp、arm系統(tǒng)雖然科技含量高于51單片機系統(tǒng),但是其價格昂貴并且發(fā)展尚未成熟。因此,根據(jù)我們學(xué)的知識和市面上的應(yīng)用,經(jīng)過比較我們選擇了技術(shù)成熟、價格便宜、設(shè)計簡單、使用方便的單片機平臺。89c52是intel公司mcs-51系列單片機中基本的產(chǎn)品,它采用atmel公司可靠的cmos工藝技

19、術(shù)制造的高性能8位單片機,屬于標準的mcs-51的hcmos產(chǎn)品。它結(jié)合了cmos的高速和高密度技術(shù)及cmos的低功耗特征,它基于標準的mcs-51單片機體系結(jié)構(gòu)和指令系統(tǒng),屬于89c51增強型單片機版本,集成了時鐘輸出和向上或向下計數(shù)器等更多的功能,適合于類似馬達控制等應(yīng)用場合。89c52內(nèi)置8位中央處理單元、256字節(jié)內(nèi)部數(shù)據(jù)存儲器ram、8k片內(nèi)程序存儲器(rom)32個雙向輸入/輸出(i/o)口、3個16位定時/計數(shù)器和5個兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)時鐘振蕩電路。此外,89c52還可工作于低功耗模式,可通過兩種軟件選擇空閑和掉電模式。在空閑模式下凍結(jié)cpu而ram定時器、

20、串行口和中斷系統(tǒng)維持其功能。掉電模式下,保存ram數(shù)據(jù),時鐘振蕩停止,同時停止芯片內(nèi)其它功能。89c52有pdip(40pin)和plcc(44pin)兩種封裝形式。89c52引腳圖如圖2-2示:圖2-2 89c52的引腳圖89c52 單片機外部有32個端口可供用戶使用,其功能如表2-3示:表2-3 89c52外部端口功能表端口引腳位置第一功能區(qū)第二功能區(qū)符號功能符號功能p03932p0.0p0.7通用i/o口ad0ad7地址/數(shù)據(jù)總線(低位)p118p1.0p1.7通用i/o口p22128p2.0p2.7通用i/o口a8a15地址總線(高位)p310p3.0通用i/o口rxd串行通信發(fā)送口1

21、1p3.1tx0串行通信接收口12p3.2int0外部中斷013p3.3int1外部中斷114p3.4t0計數(shù)器0輸入端口15p3.5t1計數(shù)器1輸入端口16p3.6wr外部儲存器寫使能17p3.7rd外部儲存器讀使能門禁系統(tǒng)數(shù)控部分采用89c52 單片機作為控制核心,其內(nèi)部組成包括:一個8位的微處理器cpu及片內(nèi)振蕩器和時鐘產(chǎn)生電路,但石英晶體和微調(diào)電容需要外接;片內(nèi)數(shù)據(jù)存儲器8kb ram低128字節(jié),存放讀/寫數(shù)據(jù);高128字節(jié)被特殊功能寄存器占用;片內(nèi)程序存儲器 rom;四個8位并行i/o(輸入/輸出)接口p3 -p0,每個口可以用作輸入,也可以用作輸出;兩個定時/計數(shù)器,每個定時/計

22、數(shù)器都可以設(shè)置成計數(shù)方式,用以對外部事件進行計數(shù),也可以設(shè)置成定時方式,并可以根據(jù)計數(shù)或定時的結(jié)果實現(xiàn)計算機控制;五個中斷源的中斷控制系統(tǒng);一個全雙工uart(通用異步接收發(fā)送器)的串行i/o口。在89c52 單片機的基礎(chǔ)上,外圍增加蜂鳴器控制電路、開門指示燈電路、電控鎖控制電路以及1602顯示電路等,構(gòu)成了門禁系統(tǒng)的控制電路。1.1.4 射頻卡的選擇目前市面上的卡有很多種類:條碼、磁卡、接觸式ic卡,非接觸式ic卡等,條碼和磁卡,在超市和銀行方面應(yīng)用的比較多,接觸式ic卡,以前在公共電話中用的比較多,但接觸式ic卡,芯片外露易壞、易折,而非接觸式ic卡既射頻卡,它把芯片和線圈封裝卡片內(nèi),不容

23、易損壞、不怕惡劣的環(huán)境,現(xiàn)在社會上很流行,可靠性也高。根據(jù)卡的分析,我們選擇目前流行最廣,可靠性高,成本低的只讀卡,即采用em4000型的id卡。設(shè)計上我們采用id射頻卡讀卡器。em9913bf 125khz感應(yīng)式讀卡模組是針對125khz非接觸式rfid晶片而設(shè)計的讀卡模組,它能針對目前市面上125khz非接觸式rfid晶片如凌航科技gk4001晶片或其它規(guī)格現(xiàn)相近產(chǎn)品進行資料讀取與資料判斷,使用者可以一次開發(fā)感應(yīng)式讀卡及相關(guān)應(yīng)用系統(tǒng),該模塊主要范圍為互動式玩具、門禁管制系統(tǒng)、人員考勤管理、動物或物品辨識及產(chǎn)品管理,此讀卡模組主要優(yōu)缺點敘述如下:優(yōu)點:(1)獨立性高;(2)二次開發(fā)容易,安裝

24、簡單資料讀取穩(wěn)定性高;(3)統(tǒng)安全性高,rfid資料不重復(fù)且難以復(fù)制;(4)可選擇數(shù)據(jù)輸出格式。缺點:電腦必須24小時開機,便于數(shù)據(jù)傳送。125khz感應(yīng)式讀卡機系統(tǒng)如圖1-2示:感應(yīng)線圈讀卡器模組rs232outpu接cpu3.0圖1-2 讀卡機系統(tǒng)示意圖1.1.5 液晶顯示的選擇1602液晶也叫1602字符型液晶它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊它有若干個5×7或者5×11等點陣字符位組成,每個點陣字符位都可以顯示一個字符。目前市面上字符液晶絕大多數(shù)是基于hd44780液晶芯片的,控制原理是完全相同的,基于hd44780寫的控制程序可以很方便地應(yīng)用于

25、市面上大部分的字符型液晶。因此,選擇lcd1602能夠滿足門禁系統(tǒng)設(shè)計的需要。(1) lcd1602 主要技術(shù)參數(shù)顯示容量:16×2 個字符。芯片工作電壓:4.55.5v。工作電流:2.0ma(5.0v)。模塊最佳工作電壓:5.0v。字符尺寸:2.95×4.35(w×h)mm。(2) 引腳功能說明1602引腳如圖1-3示:圖1-3 1602引腳示意圖1602引腳功能如表1-1示。(3)1602指令集1602 液晶模塊的讀寫操作,屏幕和光標的操作都是通過指令編程來實現(xiàn)的(說明1為高電平,0為低電平)。如表1-2示:指令1:清顯示,指令碼01h,光標復(fù)位到地址 00h

26、 位置。指令2:光標復(fù)位,光標返回到地址00h。表1-1 1602引腳功能表編號符號引腳說明編號符號引腳說明1vss電源地9d2數(shù)據(jù)2vdd電源正極10d3數(shù)據(jù)3vl液晶顯示偏壓11d4數(shù)據(jù)4rs數(shù)據(jù)/命令選擇12d5數(shù)據(jù)5r/m讀/寫選擇13d6數(shù)據(jù)6e使能信號14d9數(shù)據(jù)7d0數(shù)據(jù)15bla背光源正極8d1數(shù)據(jù)16blk背光源負極指令3:光3標和顯示位置設(shè)置i/d,光標移動方向,高電平右移,低電平左移,s:屏幕上所有文字是否左移或右移,高電平表示有效,低電平表示無效。指令 4:顯示開關(guān)控制。d:控制整體的顯示開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示。c:控制光標的開與關(guān),高電平表示有光標

27、,低電平表示無光標 b:控制光標是否閃爍,高電平閃爍,低電平不閃爍。指令 5:光標或顯示移位 s/c :高電平時顯示移動的文字,低電平時移動光標。指令 6:功能設(shè)置命令 dl:高電平時為 4 位總線,低電平時為 8 位總線 n:低電平時為單行顯示,高電平時為雙行顯示,f:低電平時顯示 5x7 的點陣字符,高電平時顯示 5x10 的顯示字符。指令 7:字符發(fā)生器ram地址設(shè)置。 指令 8:ddram 地址設(shè)置。指令 9:讀忙信號和光標地址 bf:忙標志位,高電平表示忙,此時模塊不能接收命令或數(shù)據(jù),如果為低電平表示不忙。表1-2 1602指令集序號指令rsr/wd7d6d5d4d3d2d1d01清

28、顯示屏00000000012光標返回000000001*3置輸入模式00000001i/d4顯示開/關(guān)控制0000001dcb5光標或字符移位000001s/cr/l*6置功能00001dlnf*7置位符發(fā)生存儲器地址0001字符發(fā)生存儲器地址8置數(shù)據(jù)存儲器地址001顯示數(shù)據(jù)儲存器地址9讀標志位地址01bf計數(shù)器地址10寫數(shù)據(jù)到cgram或ddram10要寫入數(shù)據(jù)內(nèi)容11從cgram或ddram讀數(shù)據(jù)11要讀出數(shù)據(jù)內(nèi)容(4) 與hd44780相兼容的芯片時序表?;静僮鲿r序表如表1-4示:表1-3 基本操作時序表讀狀態(tài)輸入rs=l,r/w=h,e=h輸出d0-d7=狀態(tài)字寫指令輸入rs=l,r

29、/w=h,d0-d7=指令碼,e=高脈沖輸出無讀數(shù)據(jù)輸入rs=h,r/w=h,e=h輸出d0-d7=數(shù)據(jù)寫數(shù)據(jù)輸入rs=h,r/w=l,d0-d7=數(shù)據(jù), e=高脈沖輸出無讀操作時序如圖1-5示:圖1-5 讀操作時序圖寫操作時序如圖1-6示:圖1-6 寫操作時序圖第2章 系統(tǒng)硬件電路設(shè)計2.1 系統(tǒng)電路原理2.1.1 門禁系統(tǒng)主要模塊由單片機、電源指示、工作指示、振蕩電路、蜂鳴器電路、門控鎖電路、矩陣鍵盤、讀卡模塊、顯示模塊組成。如圖2-1示:圖2-1 電路原理圖2.1.2 門禁系統(tǒng)工作原理1、當刷卡時,蜂鳴器響一下,如卡權(quán)限獲得允許,顯示模塊顯示卡號,同時繼電器動作將門鎖打開指示燈點亮,延時

30、一段時間后繼電器再次動作將門鎖鎖閉指示燈熄滅;當非法卡刷卡時,沒有任何動作。2、當按下出門按鈕時,繼電器動作將門鎖打開指示燈點亮,延時一段時間后繼電器再次動作將門鎖鎖閉指示燈熄滅。3、當進門輸入密碼時,密碼正確則繼電器動作將門鎖打開指示燈點亮,延時一段時間后繼電器再次動作將門鎖鎖閉指示燈熄滅;密碼錯誤則蜂鳴器報警,延時一段時間后蜂鳴器自動停止報警,若再按“確認返回鍵”則可以手動停止報警。2.2 單片機資源分配軟、硬件設(shè)計是設(shè)計中不可缺少的,為了滿足功能和指標的要求,資源分配如下:1晶振采用11.0592mhz;2單片機資源分配如表2-1、2-1示:表2-1單片機資源分配表(1)p0.0-p0.

31、7p1.0-p1.7p2.0p2.1p2.2lcd顯示矩陣鍵盤rsrwe表2-2單片機資源分配表(2)p2.3p2.4p2.5p3.0p3.2鎖蜂鳴器led讀卡按鍵中斷0開0響0亮1不開1不響1不亮3、計算:因為射頻卡的讀卡頭選用em4000型,讀卡頻率是11.0592mhz,所以最小系統(tǒng)晶振,必須用11.0592mhz才能讀卡。(1)定時控制字確定:選用定時器t1,方式2,所以 tmod是20h。(2)計算初值 x = 256 -(foxc*(smod+1)/384*波特率 = 256 -(11.0592 *106 *(0+1)/384*9600 = 253th1= 0fdh tl1= 0f

32、dh2.3 最小系統(tǒng)的設(shè)計門禁系統(tǒng)數(shù)控部分采用89c52 單片機作為控制核心,其內(nèi)部組成包括:一個8位的微處理器cpu及片內(nèi)振蕩器和時鐘產(chǎn)生電路,但石英晶體和微調(diào)電容需要外接;片內(nèi)數(shù)據(jù)存儲器8kb ram低128字節(jié),存放讀/寫數(shù)據(jù);高128字節(jié)被特殊功能寄存器占用;片內(nèi)程序存儲器 rom;四個8位并行i/o(輸入/輸出)接口p3p0,每個口可以用作輸入,也可以用作輸出;兩個定時/計數(shù)器,每個定時/計數(shù)器都可以設(shè)置成計數(shù)方式,用以對外部事件進行計數(shù),也可以設(shè)置成定時方式,并可以根據(jù)計數(shù)或定時的結(jié)果實現(xiàn)計算機控制;五個中斷源的中斷控制系統(tǒng);一個全雙工uart(通用異步接收發(fā)送器)的串行i/o口。

33、在89c52 單片機的基礎(chǔ)上,外圍增加蜂鳴器控制電路、開門指示燈電路、電控鎖控制電路以及1602顯示電路等,構(gòu)成了門禁系統(tǒng)的控制電路。其原理圖如圖2-3示:圖2-3 門禁系統(tǒng)控制原理圖 第3章 系統(tǒng)軟件設(shè)計3.1 keil簡介3.1.1 keilc51系統(tǒng)概述單片機開發(fā)中除必要的硬件外,同樣離不開軟件,匯編語言源程序要變?yōu)閏pu可以執(zhí)行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。keilc51是美國keilsoftware公司出品的51系列兼容單片機c語言軟件開發(fā)系統(tǒng)9,與匯編相比,c語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。

34、用過匯編語言后再使用c來開發(fā),體會更加深刻。keilc51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到keilc51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。下面詳細介紹keilc51開發(fā)系統(tǒng)各部分功能和使用。c51工具包的整體結(jié)構(gòu),其中uvision是c51forwindows的集成開發(fā)環(huán)境(ide),可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。開發(fā)人員可用ide本身或其它編輯器編輯c或匯編源文件。然后分別由c51及a51編譯器編譯生

35、成目標文件(.obj)。目標文件可由lib51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)l51連接定位生成絕對目標文件(.abs)。abs文件由oh51轉(zhuǎn)換成標準的hex文件,以供調(diào)試器dscope51或tscope51使用進行源代碼級調(diào)試,也可由仿真器使用直接對目標板進行調(diào)試,也可以直接寫入程序存貯器如eprom中。3.1.2 keil軟件的使用使用keil的軟件工具時,項目的開發(fā)流程基本上與使用其他軟件開發(fā)項目一樣。(1) 打開keil軟件,如圖3-1示:圖3-1 初始界面(2) 創(chuàng)建一個項目。點擊project菜單,選擇彈出的下拉式菜單中的new project,如圖3-2示:圖3-2 新建工

36、程(3) 在“文件名”中輸入c程序項目名稱“電子門禁”, “保存”后的文件擴展名為uvproj,這是keil uvision4項目文件擴展名。(4) 從器件數(shù)據(jù)庫中選擇目標芯片,這里選擇要用的ateml 公司的 at89c52。如圖3-3示:圖3-3 選擇芯片(5) 配置工具軟件的設(shè)置,如圖3-4圖3-4 軟件設(shè)置(6) 完成上面步驟后,可以進行程序的編寫了。(7) 點擊新建文件的快捷按鈕,在開發(fā)環(huán)境下出現(xiàn)一個新的文字編輯窗口。用c創(chuàng)建源程序。(8) 編輯完成后,保存新建的程序,也可以用菜單filesave或快捷鍵 ctrl+s 進行保存。(9) 在屏幕左邊的source group1文件夾圖

37、標上右擊彈出菜單,在這里可以做在項目中增加減少文件等操作。點擊"add file to group 'source group 1'"彈出文件窗口,選擇剛剛保存的文件,按add按鈕,關(guān)閉文件窗,程序文件已加到項目中了。這時在 source group1 文件夾圖標左邊出現(xiàn)了一個小+號說明,文件組中有了文件,點擊它可以展開查看。如圖3-5示:圖3-5 添加文件(10) c程序文件已加到了項目中,下面開始編譯運行。圖中第1、2、3 都是編譯按鈕,1是用于編譯單個文件;2 是編譯當前項目,如果先前編譯過一次之后文件沒有做動編輯改動,這時再點擊是不會再次重新編譯的;

38、3 是重新編譯,每點擊一次均會再次編譯鏈接一次,不管程序是否有改動。在3右邊的是停止編譯按鈕,只有點擊了前三個中的任一個,停止按鈕才會生效。如圖3-6示:圖3-6 編譯運行下圖中有一個小放大鏡的按鈕,這就是開啟 關(guān)閉調(diào)試模式的按鈕,它也存在于菜單 debugstartstop debug session,快捷鍵為ctrl+f5。進入調(diào)試模式,軟件窗口樣式大致如圖3-7示:圖3-7 調(diào)試按鈕(11) 進入調(diào)試模式,軟件窗口樣式如圖3-8示:圖3-8調(diào)試(12) 圖中按鈕1 為運行,當程序處于停止狀態(tài)時才有效。2為停止,程序處于運行狀態(tài)時才有效。3 是復(fù)位,模擬芯片的復(fù)位,程序回到最開頭處執(zhí)行。如

39、圖3-9示:圖3-9 運行按鈕3.2 主程序分析1.主程序流程圖主程序流程圖如圖3-10示:圖3-10 主程序流程圖2.主程序清單:#include<reg52.h>#include<intrins.h>#include<define.h>#include<delay.h>#include<enter_out.h>#include<lcd.h>#include<keyboard.h>#include<display.h>#include<t1.h>/*主程序*/void main()le

40、d = 0;/led 亮buzzer = 0;/蜂鳴器響ea = 1;/開所有中斷int0_init();t1_init();lcd_init();p1 = 0x0f;/鍵盤初始化delay(100);led = 1;/熄滅ledbuzzer=1; /關(guān) 蜂鳴器while(1)display();delay(50);3.3 子程序分析3.3.1 顯示模塊程序分析1. 顯示程序流程圖如圖3-11示:圖3-11 顯示程序流程圖2.顯示程序清單:/*函數(shù)功能:與最近一次lcd顯示界面比較,以此作是否清屏處理入口參數(shù):出口參數(shù):*/void judge_clear_lcd()if( n_display

41、 != n_display_history )lcd_wcmd(0x01);/清屏/*函數(shù)功能:lcd顯示第0幕入口參數(shù):出口參數(shù):*/void display0()uchar i;judge_clear_lcd(); /是否清屏處理lcd_pos(0x00);/設(shè)置顯示位置delay1(1);for(i=0; weli!='0' i+)lcd_wdat(weli);n_display_history=0; /記錄 歷史顯示界面編號/*函數(shù)功能:lcd顯示第1幕入口參數(shù):出口參數(shù):*/void display1()uchar i;judge_clear_lcd();/是否清屏處

42、理lcd_pos(0x00);/設(shè)置顯示位置delay1(1);for(i=0; com_ini !='0' i+)/顯示"come in please !"lcd_wdat(com_ini); lcd_pos(0x40);/設(shè)置顯示位置delay1(1);for(i=0; pushi !='0' i+) /顯示"push the door !"lcd_wdat(pushi);n_display_history=1; /記錄 歷史顯示界面編號/*函數(shù)功能:lcd顯示第2幕入口參數(shù):出口參數(shù):*/void display2(

43、)uchar i;judge_clear_lcd();/是否清屏處理lcd_pos(0x00);/設(shè)置顯示位置delay1(1);for(i=0; pulli!='0' i+)/顯示"pull the door !"lcd_wdat(pulli);n_display_history=2; /記錄 歷史顯示界面編號/*函數(shù)功能:lcd顯示第3幕入口參數(shù):出口參數(shù):*/void display3()uchar i;bit j = 0;/ 已顯示* 標志judge_clear_lcd();/是否清屏處理lcd_pos(0x00);/設(shè)置顯示位置delay1(1);

44、for(i=0; inputi!='0' i+)/顯示"intput password"lcd_wdat(inputi);lcd_wcmd(0x0d);/顯示閃爍光標delay1(1);lcd_pos(0x43);/設(shè)置顯示位置delay1(1);doif( (v_key>=13) && (v_key<=15) )lcd_wcmd(0x0c);/不顯示閃爍光標delay1(1);return;/跳出本界面if( f_passw = 1 )/是否有密碼輸入lcd_wdat('*');f_passw = 0;j = 1

45、;/置位 已顯示* 標志if( (v_key = 12) && (j = 1) ) /是否在 已顯示*下情況下按“輸入密碼”鍵/清除之前顯示的字符'*'j = 0;/清除 已顯示*標志lcd_pos(0x43);/設(shè)置顯示位置for(i=0; i<6; i+)lcd_wdat(0x0a);/顯示空格lcd_pos(0x43);/設(shè)置顯示位置while( f_passw_o != 1 );lcd_wcmd(0x0c);/不顯示閃爍光標delay1(2);n_display_history = 3; /記錄 歷史顯示界面編號/*函數(shù)功能:lcd顯示第4幕入口參

46、數(shù):出口參數(shù):*/void display4()uchar i;judge_clear_lcd();/是否清屏處理lcd_pos(0x00);/設(shè)置顯示位置delay1(1);for(i=0; passw_erri!='0' i+)/顯示"error !"lcd_wdat(passw_erri);n_display_history=4; /記錄 歷史顯示界面編號/*函數(shù)功能:lcd顯示第5幕入口參數(shù):出口參數(shù):*/void display5()uchar i;judge_clear_lcd(); /是否清屏處理lcd_pos(0x42);/設(shè)置顯示位置del

47、ay1(1);for(i=0; passw_erri!='0' i+)/顯示"test ."lcd_wdat(testi);n_display_history=5;/記錄 歷史顯示界面編號/*函數(shù)功能:lcd顯示幕判別入口參數(shù):出口參數(shù):*/void display()switch( n_display ) /根據(jù)當前界面編號n_display進行顯示case 0 : display0();break;case 1 : display1();break;case 2 : display2();break;case 3 : display3();break;case 4 : display4();break;case 5 : display5();break;3.3.2 鍵盤程序1. 鍵盤程序流程圖如圖3-12示:圖3-12 鍵盤程序流程圖2.鍵盤程序清單:/*函數(shù)功能:鍵值計算程序,返回鍵值015入口參數(shù):i出口參數(shù):v*/uchar key_calcu(uchar i, uchar m)uchar v;switch(m)case 0x0e: v=(i*4)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論