基于AT89C51單片機(jī)密碼鎖設(shè)計(jì).doc
《基于AT89C51單片機(jī)密碼鎖設(shè)計(jì).doc》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《基于AT89C51單片機(jī)密碼鎖設(shè)計(jì).doc(66頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、基于AT89C51單片機(jī)密碼鎖設(shè)計(jì)摘 要隨著科技的日益發(fā)展,電子密碼控制系統(tǒng)已越來(lái)越符合人們的要求。本文介紹了基于單片機(jī)和串行EEPROM的智能密碼控制系統(tǒng),對(duì)系統(tǒng)硬件設(shè)計(jì)和軟件實(shí)現(xiàn)進(jìn)行了詳細(xì)的描述。該系統(tǒng)采用AT89C51單片機(jī)和AT24C01串行EEPROM,通過(guò)AT89C51模擬I2C總線(xiàn)和AT24C01通訊,實(shí)現(xiàn)密碼控制的功能。本文從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用美國(guó)Atmel公司的單片機(jī)AT89C51作為主控芯片與數(shù)據(jù)存儲(chǔ)器單元,結(jié)合外圍的矩陣鍵盤(pán)輸入、LCD液晶顯示、報(bào)警、開(kāi)鎖等,用C語(yǔ)言編寫(xiě)主控芯片的控制程序與EEPROM讀寫(xiě)程序相結(jié)合,設(shè)計(jì)了一款可以多次更改密碼,具有報(bào)警功能的電子密
2、碼控制系統(tǒng)。這種電路設(shè)計(jì)具有防試探按鍵輸入、智能控制上鎖、開(kāi)鎖、報(bào)警、修改密碼等多種功能。密碼長(zhǎng)度可變、保密性強(qiáng)、靈活性高。經(jīng)實(shí)驗(yàn)證明,該密碼控制系統(tǒng)具有設(shè)計(jì)方法合理,簡(jiǎn)單易行,成本低,安全使用等特點(diǎn),符合車(chē)輛、辦公室用鎖要求,具有推廣價(jià)值。關(guān)鍵詞: 密碼控制;單片機(jī);EEPROM讀寫(xiě)程序;報(bào)警ABSTRACTAs the development of science and technology day by day, the key control system is more in line with the requirements of people. The paper prese
3、nts a cryptographic smart password control based on MCU and serial EEPROM, describes hardware structure and software design of the system. It adopts AT89C51 and AT24C01, realizes the function of cryptographic smart password control. AT89C51 communicates with AT24C01 by I2C bus to achieve the passwor
4、d control function.This article from the economical and practical point of view, the use of the United States Atmel Corporation AT89C51 microcontroller as a master chip and the data memory unit, combined with the external matrix keyboard input, LED digital display, alarm, unlock and so on, dominated
5、 by the C programming language chip EEPROM of the control procedures and the combination of reading and writing program designed to change a password many times, the police function with the electronic the password control. This circuit design with anti-test button input, intelligent control lock, u
6、nlock, alarm, multiple functions, such as Change Password. Password length can be changed, even more secret and flexible than others.Experiments show that the password control system is characterized by its reasonable designing methods, simple operation, low cost and property of safety and practical
7、ityBesides,the password control can be used in the office and has great potential for commercial developmentKey Words:Password control; Single-chip; EEPROM read and write procedures; Alarm目 錄1 引言11.1 選題背景11.2 電子密碼控制簡(jiǎn)介11.3 電子密碼控制的發(fā)展趨勢(shì)11.4 本設(shè)計(jì)所要實(shí)現(xiàn)的目標(biāo)22 設(shè)計(jì)方案的選擇32.1 方案一:采用數(shù)字電路控制32.2 方案二:采用以單片機(jī)為核心的控制方案33
8、 主要元器件介紹及I2C總線(xiàn)說(shuō)明43.1 主控芯片AT89C5143.1.1 AT89C51性能簡(jiǎn)介43.1.2 AT89C51引腳功能說(shuō)明53.1.3 AT89C51芯片內(nèi)部結(jié)構(gòu)73.2 LCD1602顯示器83.2.1 接口信號(hào)說(shuō)明83.2.2 主要技術(shù)參數(shù)93.2.3 基本操作程序93.3 晶體振蕩器93.4 AT24C01串行EEPROM103.5 I2C總線(xiàn)說(shuō)明114 系統(tǒng)硬件構(gòu)成154.1 設(shè)計(jì)原理154.2 電路總圖構(gòu)成154.3 電源輸入部分164.4 鍵盤(pán)輸入部分164.5 復(fù)位部分174.6 晶振部分184.7 顯示部分184.8 報(bào)警部分195 系統(tǒng)軟件設(shè)計(jì)205.1 主
9、程序流程圖205.2 按鍵功能流程圖215.3 密碼設(shè)置流程圖215.4 開(kāi)鎖流程圖22結(jié) 論24參考文獻(xiàn)25致 謝26附錄一:總原理圖27附錄二: 程序29附錄三: 翻譯44天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)1 引言1.1 選題背景在安全技術(shù)防范領(lǐng)域,具有防盜報(bào)警功能的電子密碼控制系統(tǒng)逐漸代替?zhèn)鹘y(tǒng)的機(jī)械式密碼控制系統(tǒng),克服了機(jī)械式密碼控制的密碼量少、安全性能差的缺點(diǎn),使電子密碼控制系統(tǒng)無(wú)論在技術(shù)上還是在性能上都大大提高了一步。隨著大規(guī)模集成電路技術(shù)的發(fā)展,特別是單片機(jī)的問(wèn)世,出現(xiàn)了帶微處理器的智能密碼控制系統(tǒng),它除具有傳統(tǒng)電子密碼控制系統(tǒng)的功能外,還引入了智能化管理、專(zhuān)家分析系統(tǒng)等功能
10、,從而使密碼控制系統(tǒng)具有很高的安全性、可靠性,應(yīng)用日益廣泛。1.2 電子密碼控制簡(jiǎn)介電子密碼控制是一種通過(guò)密碼輸入來(lái)控制電路或是芯片工作,從而控制機(jī)械開(kāi)關(guān)的閉合,完成開(kāi)鎖、閉鎖任務(wù)的電子產(chǎn)品。電子密碼控制不論性能還是安全性都已大大超過(guò)了機(jī)械類(lèi)。其特點(diǎn)如下:1) 保密性好,編碼量多,遠(yuǎn)遠(yuǎn)大于機(jī)械控制。隨機(jī)開(kāi)鎖成功率幾乎為零。2) 密碼可變,用戶(hù)可以隨時(shí)更改密碼,防止密碼被盜,同時(shí)也可以避免因人員的更替而使控制的保密性下降。3) 誤碼輸入保護(hù),當(dāng)輸入密碼多次錯(cuò)誤時(shí),報(bào)警系統(tǒng)自動(dòng)啟動(dòng)。4) 無(wú)活動(dòng)零件,不會(huì)磨損,壽命長(zhǎng)。5) 使用靈活性好,不像機(jī)械鎖必須佩帶鑰匙才能開(kāi)鎖。6) 電子密碼控制系統(tǒng)具有操
11、作簡(jiǎn)單易行,一學(xué)即會(huì)的特點(diǎn)。1.3 電子密碼控制的發(fā)展趨勢(shì)由于電子器件所限,以前開(kāi)發(fā)的電子密碼控制系統(tǒng),其種類(lèi)不多,保密性差,最基本的就是只依靠最簡(jiǎn)單的模擬電子開(kāi)關(guān)來(lái)實(shí)現(xiàn)的,制作簡(jiǎn)單但很不安全,后來(lái)便是基于EDA來(lái)實(shí)現(xiàn)的,其電路結(jié)構(gòu)復(fù)雜,電子元件繁多,也有使用早先的20引腳的2051系列單片機(jī)來(lái)實(shí)現(xiàn)的,但密碼簡(jiǎn)單,易破解。隨著電子元件的進(jìn)一步發(fā)展,電子密碼控制系統(tǒng)也出現(xiàn)了很多的種類(lèi),功能日益強(qiáng)大,使用更加方便,安全保密性更強(qiáng),由以前的單密碼輸入發(fā)展到現(xiàn)在的,密碼加感應(yīng)元件,實(shí)現(xiàn)了更為真正的電子加密,用戶(hù)只有密碼或電子鑰匙中的一樣,是打不開(kāi)鎖的,隨著電子元件的發(fā)展及人們對(duì)保密性需求的提高出現(xiàn)了越
12、來(lái)越多的電子密碼控制系統(tǒng) 。由于數(shù)字、字符、圖形圖像、人體生物特征和時(shí)間等要素均可成為電子信息,組合使用這些信息能夠使電子防盜密碼控制獲得更高的保密性,如防范森嚴(yán)的金庫(kù),需要使用復(fù)合信息密碼的電子防盜密碼控制系統(tǒng)。組合使用信息也能夠使電子防盜密碼控制系統(tǒng)獲得無(wú)窮擴(kuò)展的可能??梢钥闯鼋M合使用電子信息是電子密碼控制系統(tǒng)今后發(fā)展的趨勢(shì) 。1.4 本設(shè)計(jì)所要實(shí)現(xiàn)的目標(biāo)本設(shè)計(jì)采用單片機(jī)為主控芯片,結(jié)合外圍電路,組成電子密碼控制系統(tǒng),用戶(hù)想要打開(kāi)鎖,必先通過(guò)提供的鍵盤(pán)輸入正確的密碼才可以,密碼輸入錯(cuò)誤有提示,為了提高安全性,當(dāng)密碼輸入錯(cuò)誤三次將報(bào)警。密碼可以由用戶(hù)自己修改設(shè)定,鎖打開(kāi)后才能修改密碼。修改密
13、碼之前必須再次輸入密碼,在輸入新密碼時(shí)候需要二次確認(rèn),以防止誤操作。62天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)2 設(shè)計(jì)方案的選擇2.1 方案一:采用數(shù)字電路控制用以74LS112雙JK觸發(fā)器構(gòu)成的數(shù)字邏輯電路作為密碼控制系統(tǒng)的核心控制,共設(shè)了9個(gè)用戶(hù)輸入鍵,其中只有4個(gè)是有效的密碼按鍵,其它的都是干擾按鍵,若按下干擾鍵,鍵盤(pán)輸入電路自動(dòng)清零,原先輸入的密碼無(wú)效,需要重新輸入;如果用戶(hù)輸入密碼的時(shí)間超過(guò)10秒(一般情況下,用戶(hù)不會(huì)超過(guò)10秒,若用戶(hù)覺(jué)得不便,還可以修改)電路將報(bào)警20秒,若電路連續(xù)報(bào)警三次,電路將鎖定鍵盤(pán)2分鐘,防止他人的非法操作 。采用數(shù)字電路設(shè)計(jì)方案時(shí)設(shè)計(jì)雖然簡(jiǎn)單,但控制的
14、準(zhǔn)確性和靈活性差。故不采用。2.2 方案二:采用以單片機(jī)為核心的控制方案由于單片機(jī)種類(lèi)繁多,各種型號(hào)都有其一定的應(yīng)用環(huán)境,因此在選用時(shí)要多加比較,合理選擇,以期獲得最佳的性?xún)r(jià)比。一般來(lái)說(shuō)在選取單片機(jī)時(shí)從下面幾個(gè)方面考慮:性能、存儲(chǔ)器、運(yùn)行速度、I/O口、定時(shí)/計(jì)數(shù)器、串行接口、模擬電路功能、工作電壓、功耗、封裝形式、抗干擾性、保密性,除了以上的一些還有一些最基本的,比如:中斷源的數(shù)量和優(yōu)先級(jí)、工作溫度范圍、有沒(méi)有低電壓檢測(cè)功能、單片機(jī)內(nèi)有無(wú)時(shí)鐘振蕩器、有無(wú)上電復(fù)位功能等。在開(kāi)發(fā)過(guò)程中單片機(jī)還受到:開(kāi)發(fā)工具、編程器、開(kāi)發(fā)成本、開(kāi)發(fā)人員的適應(yīng)性、技術(shù)支持和服務(wù)等等因素 ?;谝陨弦蛩乇驹O(shè)計(jì)選用單片
15、機(jī)AT89C51作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的I/O端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的密碼控制功能。在單片機(jī)的外圍電路外接輸入鍵盤(pán)用于密碼的輸入和一些功能的控制,外接LCD1602顯示器用于顯示作用。當(dāng)用戶(hù)需要開(kāi)鎖時(shí),先按鍵盤(pán)開(kāi)鎖鍵之后按鍵盤(pán)的數(shù)字鍵09、AF輸入密碼。密碼輸完后按下確認(rèn)鍵,如果密碼輸入正確則開(kāi)鎖,不正確顯示密碼錯(cuò)誤重新輸入密碼,當(dāng)三次密碼錯(cuò)誤則發(fā)出報(bào)警;當(dāng)用戶(hù)需要修改密碼時(shí),先按下鍵盤(pán)設(shè)置鍵后輸入原來(lái)的密碼,只有當(dāng)輸入的原密碼正確后才能設(shè)置新密碼。新密碼輸入無(wú)誤后按確認(rèn)鍵使新密碼將得到存儲(chǔ),密碼修改成功??梢钥闯龇桨付目刂旗`活,準(zhǔn)確性好,且保密性強(qiáng)還
16、具有擴(kuò)展功能,根據(jù)現(xiàn)實(shí)生活的需要此次設(shè)計(jì)采用此方案。天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)3 主要元器件介紹及I2C總線(xiàn)說(shuō)明3.1 主控芯片AT89C51AT89C51是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes的可反復(fù)擦寫(xiě)1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及AT80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89C51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性?xún)r(jià)比的解決方案。3.1.1 AT89C51性能簡(jiǎn)介 AT89C51具有如下特點(diǎn)
17、:40個(gè)引腳,4k Bytes Flash片內(nèi)程序存儲(chǔ)器,128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,片內(nèi)時(shí)鐘振蕩器。此外,AT89C51設(shè)計(jì)和配置了振蕩頻率可為0Hz并可通過(guò)軟件設(shè)置省電模式。空閑模式下,CPU暫停工作,而RAM定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時(shí)該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。 圖3-1 AT89C51芯片引腳圖其主
18、要功能特性: 兼容MCS-51指令系統(tǒng) 4k可反復(fù)擦寫(xiě)(1000次)Flash ROM32個(gè)雙向I/O口 4.5-5.5V工作電壓2個(gè)16位可編程定時(shí)/計(jì)數(shù)器 時(shí)鐘頻率0-33MHz全雙工UART串行中斷口線(xiàn) 128x8 bit內(nèi)部RAM2個(gè)外部中斷源 低功耗空閑和省電模式中斷喚醒省電模式 3級(jí)加密軟件設(shè)置空閑和省電功能 雙數(shù)據(jù)寄存器指針 可以看出AT89C51提供以下標(biāo)準(zhǔn)功能:4K字節(jié)Flash閃速存儲(chǔ)器,128字節(jié)內(nèi)部RAM,32個(gè)I/O口線(xiàn),兩個(gè)數(shù)據(jù)指針,兩個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,以及片內(nèi)振蕩器和時(shí)鐘。同時(shí), AT89C51可降至0Hz的靜態(tài)
19、邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式時(shí)停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式是在RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到一個(gè)硬件復(fù)位。3.1.2 AT89C51引腳功能說(shuō)明VCC:電源電壓GND:地P0口:P0口是一組8位漏極開(kāi)路型雙向I/O口,也即地址/數(shù)據(jù)總線(xiàn)復(fù)用口,作為輸出口用時(shí),每位能驅(qū)動(dòng)8個(gè)TTL邏輯門(mén)電路,對(duì)端口寫(xiě)“1”可作為高阻抗輸入端口。在訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線(xiàn)分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線(xiàn)復(fù)用,在訪(fǎng)問(wèn)期間激活內(nèi)部上拉電阻。在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí)
20、,輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)校驗(yàn)期間,P1接收低8位地址。P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流I。在訪(fǎng)問(wèn)位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行:MOV
21、X Ri 指令)時(shí),P2口線(xiàn)上的內(nèi)(也即特殊功能寄存器,在整個(gè)訪(fǎng)問(wèn)期間不改變。Flash 編程或校驗(yàn)時(shí),P2也接收高位地址和其它控制信號(hào)。P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)P3口寫(xiě)入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作輸入端口時(shí),被外部拉低的P3口將用上拉電阻輸出電流I。P3口除了作為一般的I/O口線(xiàn)外,更重要的用途是它的第二功能,P3口的第二功能如下表3-2。表3-2 為 P3口的第二功能端口功能第二功能端口引腳第二功能RXD(P3.0)串行輸入口T0(P3.4)定時(shí)/計(jì)數(shù)器0外部輸入TXD
22、(P3.1)串行輸出口T1(P3.5)定時(shí)/計(jì)數(shù)器1外部輸入INT0(P3.2)外中斷0WR(P3.6)外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通INT1(P3.3)外中斷1RD(P3.7)外部數(shù)據(jù)存儲(chǔ)器讀選通RST:復(fù)位輸入。當(dāng)振蕩工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期上高電平將使單片機(jī)復(fù)位。ALE/PROG:當(dāng)訪(fǎng)問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使不再訪(fǎng)問(wèn)外部存儲(chǔ)器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目地,要注意的是:當(dāng)訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。如有必要,可通過(guò)對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單
23、元的D0位置位,可禁止ALE操作。該位置禁位后,只有一條MOVX 和MOVC指令A(yù)LE才會(huì)被激活。此外,該引腳伎被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無(wú)效。PSEN:程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89S51由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。當(dāng)訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器,高有兩次有效的PSEN信號(hào)。EA/VPP:外部訪(fǎng)問(wèn)允許。欲使CPU訪(fǎng)問(wèn)外部程序存儲(chǔ)器(地址0000HFFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接VCC端),CPU則
24、執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。Flash存儲(chǔ)器編程時(shí),該引腳加上12V的編程電壓VPP。XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器的輸出端。3.1.3 AT89C51芯片內(nèi)部結(jié)構(gòu)特殊功能寄存器:特殊功能寄存器的片內(nèi)空間分布如下圖3-3所示。這些地址并沒(méi)有全部占用,沒(méi)有占用的地址不可使用,讀這些地址將得到一個(gè)隨意的數(shù)值。而寫(xiě)這些地址單元將不能得到預(yù)期的結(jié)果。中斷寄存器:各中斷允許控制位于IE寄存器,5個(gè)中斷源的中斷優(yōu)先級(jí)控制位于IP寄存器。表3-3為 AUXR輔助寄存器。ARXR 地址=8EH 復(fù)位狀態(tài)=XXX00XX0B Not BitAddressabl
25、e WDIDLEDISRTO DISALEBit 7 6 5 4 32 10 保留為將來(lái)擴(kuò)展用途位DISALE ALE禁止/使用 DISALE 操作模式 0 ALE 輸出1/6震蕩時(shí)鐘頻率脈沖 1 ALE 僅在執(zhí)行MOVX或MOVC指令期間輸出脈沖DISRTO 禁止/使能復(fù)位輸出 DISRTO 0 復(fù)位引腳在WET溢出時(shí)變高1 復(fù)位引腳僅為輸入WDIDLE 禁止/使能IDLE模式的WDTWDIDLE 0 IDLE模式WDT繼續(xù)計(jì)數(shù)1 IDLE模式WDT停止計(jì)數(shù)雙時(shí)鐘指針寄存器:為方便地訪(fǎng)問(wèn)內(nèi)部和外部數(shù)據(jù)存儲(chǔ)器,提供了兩個(gè)16位數(shù)據(jù)指針寄存儲(chǔ)器:PD0位于SFR區(qū)塊中的地址82H、83H和DP1
26、位于地址84H、85H,當(dāng)SFR中的位DPS=0時(shí)選擇DP0,而DPS=1時(shí)選擇DP1。在使用前初始化DPS。表3-4 雙時(shí)鐘指針寄存器AUXR1 地址=A2H不可尋址位 復(fù)位狀態(tài)=XXXXXXX0B DPS Bit 7 6 5 4 3 2 1 0 保留為今后擴(kuò)展用途DPS 數(shù)據(jù)指針選擇位 DPS 0 選擇DPTR寄存器DP0L.DP0H 1 選擇DPTR寄存器DP1L.DP1H電源空閑標(biāo)志:電源空閑標(biāo)志(POF)在特殊功能寄存儲(chǔ)器SFR中PCON的第4位(PCON.4),電源打開(kāi)時(shí)POF置“1”,它可由軟件設(shè)置睡眠狀態(tài)并不為復(fù)位所影響。存儲(chǔ)器結(jié)構(gòu):MCS-51單片機(jī)內(nèi)核采用程序存儲(chǔ)器和數(shù)據(jù)存
27、儲(chǔ)器空間分開(kāi)的結(jié)構(gòu),均具有64KB外部程序和數(shù)據(jù)的尋址空間。程序存儲(chǔ)器:如果EA引腳接地(GND),全部程序均執(zhí)行外部存儲(chǔ)器。在AT89S51,假如接至VCC(電源),程序首先執(zhí)行從地址0000H0FFFH(4KB)內(nèi)部程序存儲(chǔ)器,再執(zhí)行地址為1000HFFFFH(60KB)的外部程序存儲(chǔ)器。數(shù)據(jù)存儲(chǔ)器:在AT89C51的具有128字節(jié)的內(nèi)部RAM,這128字節(jié)可利用直接或間接尋址方式訪(fǎng)問(wèn),堆棧操作可利用間接尋址方式進(jìn)行,128字節(jié)均可設(shè)置為堆棧區(qū)空間。3.2 LCD1602顯示器現(xiàn)在的字符型液晶模塊已經(jīng)是單片機(jī)應(yīng)用設(shè)計(jì)中最常用的信息顯示器件了。1602型LCD顯示模塊具有體積小,功耗低,顯示
28、內(nèi)容豐富等特點(diǎn)。1602型LCD可以顯示2行16個(gè)字符,有8位數(shù)據(jù)總線(xiàn)D0-D7和RS,R/W,EN三個(gè)控制端口,工作電壓為5V,并且具有字符對(duì)比度調(diào)節(jié)和背光功能。 3.2.1 接口信號(hào)說(shuō)明1602型LCD的接口信號(hào)說(shuō)明如表3-5所示:表3-5為 1602型LCD的接口信號(hào)說(shuō)明編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1VSS電源地9D2Data I/O2VDD電源正極10D3Data I/O3V0液晶顯示偏壓信號(hào)11D4Data I/O4RS數(shù)據(jù)/命令選擇端(H/L)12D5Data I/O5R/W讀寫(xiě)選擇端(H/L)13D6Data I/O6E使能信號(hào)14D7Data I/O7D0Data I/O1
29、5BLA背光源正極8D1Data I/O16BLK背光源負(fù)極 3.2.2 主要技術(shù)參數(shù) 1602型LCD的主要技術(shù)參數(shù)如表3-6所示:表3-6為 1602型LCD的主要技術(shù)參數(shù)顯示容量芯片工作電壓工作電流模塊最佳工作電壓字符尺寸16X2個(gè)字符4.55.5V2.0mA(5.0V)5.0V2.95X4.35(WXH)mm 3.2.3 基本操作程序 讀狀態(tài):輸入:RS=L,RW=L,E=H 輸出:D0-D7=狀態(tài)字讀數(shù)據(jù):輸入:RS=H,RW=H,E=H 輸出:無(wú)寫(xiě)指令:輸入:RS=L,RW=L,D0-D7=指令碼,E=高脈沖 輸出:D0-D7=數(shù)據(jù)寫(xiě)數(shù)據(jù):輸入:RS=H,RW=L,D0-D7=數(shù)據(jù)
30、,E=高脈沖 輸出:無(wú)3.3 晶體振蕩器 晶體振蕩器,簡(jiǎn)稱(chēng)晶振,其作用在于產(chǎn)生原始的時(shí)鐘頻率,這個(gè)頻率經(jīng)過(guò)頻率發(fā)生器的放大或縮小后就成了電腦中各種不同的總線(xiàn)頻率。以聲卡為例,要實(shí)現(xiàn)對(duì)模擬信號(hào)44.1kHz或48kHz的采樣,頻率發(fā)生器就必須提供一個(gè)44.1kHz或48kHz的時(shí)鐘頻率。如果需要對(duì)這兩種音頻同時(shí)支持的話(huà),聲卡就需要有兩顆晶振。但是現(xiàn)在的娛樂(lè)級(jí)聲卡為了降低成本,通常都采用SCR將輸出的采樣頻率固定在48kHz,但是SRC會(huì)對(duì)音質(zhì)帶來(lái)?yè)p害,而且現(xiàn)在的娛樂(lè)級(jí)聲卡都沒(méi)有很好地解決這個(gè)問(wèn)題?,F(xiàn)在應(yīng)用最廣泛的是石英晶體振蕩器。 石英晶體振蕩器是一種高精度和高穩(wěn)定度的振蕩器,石英晶體振蕩器也稱(chēng)
31、石英晶體諧振器,它用來(lái)穩(wěn)定頻率和選擇頻率,是一種可以取代LC諧振回路的晶體諧振元件。石英晶體振蕩器廣泛地應(yīng)用在電視機(jī)、影碟機(jī)、錄像機(jī)、無(wú)線(xiàn)通訊設(shè)備、電子鐘表、單片機(jī)、數(shù)字儀器儀表等電子設(shè)備中。為數(shù)據(jù)處理設(shè)備產(chǎn)生時(shí)鐘信號(hào)和為特定系統(tǒng)提供基準(zhǔn)信號(hào)。在單片機(jī)中為其提供時(shí)鐘頻率。石英晶體振蕩器是利用石英晶體(二氧化硅的結(jié)晶體)的壓電效應(yīng)制成的一種諧振器件,它的基本構(gòu)成大致是:從一塊石英晶體上按一定方位角切下薄片(簡(jiǎn)稱(chēng)為晶片,它可以是正方形、矩形或圓形等),在它的兩個(gè)對(duì)應(yīng)面上涂敷上銀層用作電極使用,在每個(gè)電極上各焊一根引線(xiàn)接到管腳上,再加上封裝外殼就構(gòu)成了石英晶體諧振器,簡(jiǎn)稱(chēng)為石英晶體或晶體、晶振。其產(chǎn)
32、品一般用金屬外殼封裝,也有用玻璃殼、陶瓷或塑料封裝的。只要在晶體振子板極上施加交變電壓,就會(huì)使晶片產(chǎn)生機(jī)械變形振動(dòng),此現(xiàn)象即所謂逆壓電效應(yīng)。當(dāng)外加電壓頻率等于晶體諧振器的固有頻率時(shí),就會(huì)發(fā)生壓電諧振,從而導(dǎo)致機(jī)械變形的振幅突然增大。本設(shè)計(jì)中采用12MHZ做系統(tǒng)的外部晶振。電容取值為20pF。3.4 AT24C01串行EEPROM 如圖3-2為AT24C01的芯片引腳圖。圖3-2 AT24C01的芯片引腳圖 特點(diǎn):低壓和標(biāo)準(zhǔn)電壓運(yùn)行模式 2.7 (VCC = 2.7V to 5.5V) 1.8 (VCC = 1.8V to 5.5V)內(nèi)建128x8存儲(chǔ)序列2線(xiàn)制串行接口雙向數(shù)據(jù)傳送協(xié)議100kH
33、z(1.8V,2.5V,2.7V) 和400kHz(5V)兼容寫(xiě)同步時(shí)鐘(最大10ms)高可靠性-極限:1M寫(xiě)時(shí)鐘周期-數(shù)據(jù)保存:100年不斷推進(jìn)的芯片等級(jí)擴(kuò)大了設(shè)備的可用溫度范圍8腳PDIP,8腳JEDEC SOIC和8腳TSSOP封裝描述:AT24C01提供電可擦除的串行1024位存儲(chǔ)或可編程只讀存儲(chǔ)器(EEPROM)128字(8位/字)。芯片在低壓的工業(yè)與商業(yè)應(yīng)用中進(jìn)行了最優(yōu)化。AT24C01的封裝為8腳PDIP、8腳JEDECSOIC、8腳TSSOP,通過(guò)2線(xiàn)制串行接口進(jìn)行數(shù)據(jù)傳輸。另外,整個(gè)系列有2.7V(2.7V至5.5V)和1.8V (1.8V至5.5V)兩個(gè)版本。設(shè)備操作:C
34、L O C K 和 D A T A 變化:SDA管腳通常外部要拉高。SDA管腳上的數(shù)據(jù)只能在SCL低期間改變。數(shù)據(jù)在SCL高期間改變定義為一個(gè)開(kāi)始或停止信號(hào)。開(kāi)始狀態(tài):在任何操作之前必須有一個(gè)開(kāi)始信號(hào)-在SCL為高時(shí)SDA上產(chǎn)生一個(gè)下降沿。停止?fàn)顟B(tài): SCL為高時(shí)SDA產(chǎn)生一個(gè)上升沿是停止信號(hào),停止信號(hào)后將停止所有通信。在一個(gè)讀的序列之后,停止信號(hào)將讓EEPROM進(jìn)入備用電源模式。3.5 I2C總線(xiàn)說(shuō)明I2C(InterIntegrated Circuit)總線(xiàn)是一種由PHILIPS公司開(kāi)發(fā)的兩線(xiàn)式串行總線(xiàn),用于連接微控制器及其外圍設(shè)備。I2C總線(xiàn)產(chǎn)生于在80年代,最初為音頻和視頻設(shè)備開(kāi)發(fā),如
35、今主要在服務(wù)器管理中使用,其中包括單個(gè)組件狀態(tài)的通信。例如管理員可對(duì)各個(gè)組件進(jìn)行查詢(xún),以管理系統(tǒng)的配置或掌握組件的功能狀態(tài),如電源和系統(tǒng)風(fēng)扇??呻S時(shí)監(jiān)控內(nèi)存、硬盤(pán)、網(wǎng)絡(luò)、系統(tǒng)溫度等多個(gè)參數(shù),增加了系統(tǒng)的安全性,方便了管理。1 I2C總線(xiàn)的硬件結(jié)構(gòu)I2C串行總線(xiàn)一般有兩根信號(hào)線(xiàn),一根是雙向的數(shù)據(jù)線(xiàn)SDA,另一根是時(shí)鐘線(xiàn)SCL。所有接到I2C總線(xiàn)設(shè)備上的串行數(shù)據(jù)SDA都接到總線(xiàn)的SDA上,各設(shè)備的時(shí)鐘線(xiàn)SCL接到總線(xiàn)的SCL上。為了避免總線(xiàn)信號(hào)的混亂,要求各設(shè)備連接到總線(xiàn)的輸出端時(shí)必須是開(kāi)漏輸出或集電極開(kāi)路輸出。設(shè)備上的串行數(shù)據(jù)線(xiàn)SDA接口電路應(yīng)該是雙向的,輸出電路用于向總線(xiàn)上發(fā)送數(shù)據(jù),輸入電路用
36、于接收總線(xiàn)上的數(shù)據(jù)。而串行時(shí)鐘線(xiàn)也應(yīng)是雙向的,作為控制總線(xiàn)數(shù)據(jù)傳送的主機(jī),一方面要通過(guò)SCL輸出電路發(fā)送時(shí)鐘信號(hào),另一方面還要檢測(cè)總線(xiàn)上的SCL電平,以決定什么時(shí)候發(fā)送下一個(gè)時(shí)鐘脈沖電平;作為接受主機(jī)命令的從機(jī),要按總線(xiàn)上的SCL信號(hào)發(fā)出或接收SDA上的信號(hào),也可以向SCL線(xiàn)發(fā)出低電平信號(hào)以延長(zhǎng)總線(xiàn)時(shí)鐘信號(hào)周期。總線(xiàn)空閑時(shí),因各設(shè)備都是開(kāi)漏輸出,上拉電阻RP使SDA和SCL線(xiàn)都保持高電平。任一設(shè)備輸出的低電平都將使相應(yīng)的總線(xiàn)信號(hào)線(xiàn)變低,也就是說(shuō):各設(shè)備的SDA是“與”關(guān)系,SCL也是“與”關(guān)系。 總線(xiàn)對(duì)設(shè)備接口電路的制造工藝和電平都沒(méi)有特殊的要求(NMOS、CMOS都可以兼容)。在I2C總線(xiàn)上
37、的數(shù)據(jù)傳送率可高達(dá)每秒十萬(wàn)位,高速方式時(shí)在每秒四十萬(wàn)位以上。另外,總線(xiàn)上允許連接的設(shè)備數(shù)以其電容量不超過(guò)400pF為限。 總線(xiàn)的運(yùn)行(數(shù)據(jù)傳輸)由主機(jī)控制。所謂主機(jī)是指啟動(dòng)數(shù)據(jù)的傳送(發(fā)出啟動(dòng)信號(hào))、發(fā)出時(shí)鐘信號(hào)以及傳送結(jié)束時(shí)發(fā)出停止信號(hào)的設(shè)備,通常主機(jī)都是微處理器。被主機(jī)尋訪(fǎng)的設(shè)備稱(chēng)為從機(jī)。為了進(jìn)行通訊,每個(gè)接到I2C總線(xiàn)的設(shè)備都有一個(gè)唯一的地址,以便于主機(jī)尋訪(fǎng)。主機(jī)和從機(jī)的數(shù)據(jù)傳送,可以由主機(jī)發(fā)送數(shù)據(jù)到從機(jī),也可以由從機(jī)發(fā)到主機(jī)。凡是發(fā)送數(shù)據(jù)到總線(xiàn)的設(shè)備稱(chēng)為發(fā)送器,從總線(xiàn)上接收數(shù)據(jù)的設(shè)備被稱(chēng)為接受器。I2C總線(xiàn)上允許連接多個(gè)微處理器以及各種外圍設(shè)備,如存儲(chǔ)器、LED及LCD驅(qū)動(dòng)器、A/D及
38、D/A轉(zhuǎn)換器等。為了保證數(shù)據(jù)可靠地傳送,任一時(shí)刻總線(xiàn)只能由某一臺(tái)主機(jī)控制,各微處理器應(yīng)該在總線(xiàn)空閑時(shí)發(fā)送啟動(dòng)數(shù)據(jù),為了妥善解決多臺(tái)微處理器同時(shí)發(fā)送啟動(dòng)數(shù)據(jù)的傳送(總線(xiàn)控制權(quán))沖突,以及決定由哪一臺(tái)微處理器控制總線(xiàn)的問(wèn)題,I2C總線(xiàn)允許連接不同傳送速率的設(shè)備。多臺(tái)設(shè)備之間時(shí)鐘信號(hào)的同步過(guò)程稱(chēng)為同步化。2 I2C總線(xiàn)工作原理:2.1 總線(xiàn)的構(gòu)成及信號(hào)類(lèi)型:I2C總線(xiàn)是由數(shù)據(jù)線(xiàn)SDA和時(shí)鐘SCL構(gòu)成的串行總線(xiàn),可發(fā)送和接收數(shù)據(jù)。在CPU與被控IC之間、IC與IC之間進(jìn)行雙向傳送,最高傳送速率100kbps。各種被控制電路均并聯(lián)在這條總線(xiàn)上,但就像電話(huà)機(jī)一樣只有撥通各自的號(hào)碼才能工作,所以每個(gè)電路和模
39、塊都有唯一的地址,在信息的傳輸過(guò)程中,I2C總線(xiàn)上并接的每一模塊電路既是主控器(或被控器),又是發(fā)送器(或接收器),這取決于它所要完成的功能。CPU發(fā)出的控制信號(hào)分為地址碼和控制量?jī)刹糠郑刂反a用來(lái)選址,即接通需要控制的電路,確定控制的種類(lèi);控制量決定該調(diào)整的類(lèi)別(如對(duì)比度、亮度等)及需要調(diào)整的量。這樣,各控制電路雖然掛在同一條總線(xiàn)上,卻彼此獨(dú)立,互不相關(guān)。I2C總線(xiàn)在傳送數(shù)據(jù)過(guò)程中共有三種類(lèi)型信號(hào), 它們分別是:開(kāi)始信號(hào)、結(jié)束信號(hào)和應(yīng)答信號(hào)。開(kāi)始信號(hào):SCL為高電平時(shí),SDA由高電平向低電平跳變,開(kāi)始傳送數(shù)據(jù)。結(jié)束信號(hào):SCL為高電平時(shí),SDA由低電平向高電平跳變,結(jié)束傳送數(shù)據(jù)。 應(yīng)答信號(hào):
40、接收數(shù)據(jù)的IC在接收到8bit數(shù)據(jù)后,向發(fā)送數(shù)據(jù)的IC發(fā)出特定的低電平脈沖,表示已收到數(shù)據(jù)。CPU向受控單元發(fā)出一個(gè)信號(hào)后,等待受控單元發(fā)出一個(gè)應(yīng)答信號(hào),CPU接收到應(yīng)答信號(hào)后,根據(jù)實(shí)際情況作出是否繼續(xù)傳遞信號(hào)的判斷。若未收到應(yīng)答信號(hào),由判斷為受控單元出現(xiàn)故障。如圖3-3所示:SDASCL開(kāi)始結(jié)束圖3-3 開(kāi)始、結(jié)束信號(hào)圖目前有很多半導(dǎo)體集成電路上都集成了I2C接口。帶有I2C接口的單片機(jī)有:CYGNAL的 C8051F0XX系列,PHILIPSP87LPC7XX系列,MICROCHIP的PIC16C6XX系列等。很多外圍器件如存儲(chǔ)器、監(jiān)控芯片等也提供I2C接口。3 總線(xiàn)基本操作:I2C規(guī)程運(yùn)
41、用主/從雙向通訊。器件發(fā)送數(shù)據(jù)到總線(xiàn)上,則定義為發(fā)送器,器件接收數(shù)據(jù)則定義為接收器。主器件和從器件都可以工作于接收和發(fā)送狀態(tài)。 總線(xiàn)必須由主器件(通常為微控制器)控制,主器件產(chǎn)生串行時(shí)鐘(SCL)控制總線(xiàn)的傳輸方向,并產(chǎn)生起始和停止條件。SDA線(xiàn)上的數(shù)據(jù)狀態(tài)僅在SCL為低電平的期間才能改變,SCL為高電平的期間,SDA狀態(tài)的改變被用來(lái)表示起始和停止條件。1) 控制字節(jié):在起始條件之后,必須是器件的控制字節(jié),其中高四位為器件類(lèi)型識(shí)別符(不同的芯片類(lèi)型有不同的定義,EEPROM一般應(yīng)為1010),接著三位為片選,最后一位為讀寫(xiě)位,當(dāng)為1時(shí)為讀操作,為0時(shí)為寫(xiě)操作。2)寫(xiě)操作:寫(xiě)操作分為字節(jié)寫(xiě)和頁(yè)面
42、寫(xiě)兩種操作,對(duì)于頁(yè)面寫(xiě)根據(jù)芯片的一次裝載的字節(jié)不同有所不同。3) 讀操作:讀操作有三種基本操作:當(dāng)前地址讀、隨機(jī)讀和順序讀。圖4給出的是順序讀的時(shí)序圖。應(yīng)當(dāng)注意的是:最后一個(gè)讀操作的第9個(gè)時(shí)鐘周期不是“不關(guān)心”。為了結(jié)束讀操作,主機(jī)必須在第9個(gè)周期時(shí)發(fā)出停止條件或者在第9個(gè)時(shí)鐘周期內(nèi)保持SDA為高電平、然后發(fā)出停止條件。在I2C總線(xiàn)的應(yīng)用中應(yīng)注意的事項(xiàng)總結(jié)為以下幾點(diǎn) : a) 嚴(yán)格按照時(shí)序圖的要求進(jìn)行操作, b) 若與口線(xiàn)上帶內(nèi)部上拉電阻的單片機(jī)接口連接,可以不外加上拉電阻。 c) 程序中為配合相應(yīng)的傳輸速率,在對(duì)口線(xiàn)操作的指令后可用NOP指令加一定的延時(shí)。d) 為了減少意外的干擾信號(hào)將EEP
43、ROM內(nèi)的數(shù)據(jù)改寫(xiě)可用外部寫(xiě)保護(hù)引腳(如果有),或者在EEPROM內(nèi)部沒(méi)有用的空間寫(xiě)入標(biāo)志字,每次上電時(shí)或復(fù)位時(shí)做一次檢測(cè),判斷EEPROM是否被意外改寫(xiě)。 添加:I2C 總線(xiàn):在現(xiàn)代電子系統(tǒng)中,有為數(shù)眾多的IC 需要進(jìn)行相互之間以及與外界的通信。為了提供硬件的效率和簡(jiǎn)化電路的設(shè)計(jì),PHILIPS 開(kāi)發(fā)了一種用于內(nèi)部IC 控制的簡(jiǎn)單的雙向兩線(xiàn)串行總線(xiàn)I2C(inter IC 總線(xiàn))。I2C 總線(xiàn)支持任何一種IC 制造工藝,并且PHILIPS 和其他廠(chǎng)商提供了種類(lèi)非常豐富的I2C 兼容芯片。作為一個(gè)專(zhuān)利的控制總線(xiàn),I2C 已經(jīng)成為世界性的工業(yè)標(biāo)準(zhǔn)。每個(gè)I2C 器件都有一個(gè)唯一的地址,而且可以是單
44、接收的器件(例如:LCD 驅(qū)動(dòng)器)或者可以接收也可以發(fā)送的器件(例如:存儲(chǔ)器)。發(fā)送器或接收器可以在主模式或從模式下操作,這取決于芯片是否必須啟動(dòng)數(shù)據(jù)的傳輸還是僅僅被尋址。I2C 是一個(gè)多主總線(xiàn),即它可以由多個(gè)連接的器件控制。早期的I2C 總線(xiàn)數(shù)據(jù)傳輸速率最高為100Kbits/s,采用7 位尋址。但是由于數(shù)據(jù)傳輸速率和應(yīng)用功能的迅速增加,I2C 總線(xiàn)也增強(qiáng)為快速模式(400Kbits/s)和10 位尋址以滿(mǎn)足更高速度和更大尋址空間的需求。I2C 總線(xiàn)始終和先進(jìn)技術(shù)保持同步,但仍然保持其向下兼容性。并且最近還增加了高速模式,其速度可達(dá)3.4Mbits/s。它使得I2C 總線(xiàn)能夠支持現(xiàn)有以及將來(lái)
45、的高速串行傳輸應(yīng)用,例如EEPROM 和Flash 存儲(chǔ)器。天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)4 系統(tǒng)硬件構(gòu)成4.1 設(shè)計(jì)原理本設(shè)計(jì)主要由單片機(jī)、矩陣鍵盤(pán)、液晶顯示器和密碼存儲(chǔ)等部分組成。其中矩陣鍵盤(pán)用于輸入數(shù)字密碼和進(jìn)行各種功能的實(shí)現(xiàn)。由用戶(hù)通過(guò)連接單片機(jī)的矩陣鍵盤(pán)輸入密碼,后經(jīng)過(guò)單片機(jī)對(duì)用戶(hù)輸入的密碼與自己保存的密碼進(jìn)行對(duì)比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開(kāi)鎖電路或者報(bào)警電路控制開(kāi)鎖還是報(bào)警。本系統(tǒng)共有兩部分構(gòu)成,即硬件部分與軟件部分。其中硬件部分由電源輸入部分、鍵盤(pán)輸入部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分組成,軟件部分對(duì)應(yīng)的由主程序、初始化程序、LCD顯示
46、程序、鍵盤(pán)掃描程序、啟動(dòng)程序、關(guān)閉程序、鍵功能程序、密碼設(shè)置程序、EEPROM讀寫(xiě)程序和延時(shí)程序等組成。其原理框圖如圖4-1所示。AT89C51鍵盤(pán)輸入復(fù)位電路晶振電路電源輸入顯示電路報(bào)警電路開(kāi)鎖電路 圖4-1 電子密碼鎖原理框圖4.2 電路總圖構(gòu)成在確定了選用什么型號(hào)的單片機(jī)后,就要確定在外圍電路,其外圍電路包括電源輸入部分、鍵盤(pán)輸入部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分組成,根據(jù)實(shí)際情況鍵盤(pán)輸入部分選擇4*4矩陣鍵盤(pán),顯示部分選擇字符型液晶顯示LCD1602。其原理圖如圖4-2所示:圖4-2 電路總圖4.3 電源輸入部分 密碼鎖主要控制部分電源需要用5V直流電源供電,其電路如圖4-3
47、所示,而5V電源輸入時(shí)往往伴有雜波,所以加一個(gè)2.2uF的電容濾波。這樣輸出的電壓一般能滿(mǎn)足要求。 圖4-3 電源輸入電路原理圖4.4 鍵盤(pán)輸入部分 由于本設(shè)計(jì)所用到的按鍵數(shù)量較多而不適合用獨(dú)立按鍵式鍵盤(pán)。采用的是矩陣式按鍵鍵盤(pán),它由行線(xiàn)和列線(xiàn)組成,也稱(chēng)行列式鍵盤(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ī)引腳接法如圖4-4所示: 圖4-4 鍵盤(pán)輸入原理圖 4.5 復(fù)位部分
48、單片機(jī)復(fù)位是使CPU和系統(tǒng)中的其他功能部件都處在一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開(kāi)始工作,例如復(fù)位后PC0000H,使單片機(jī)從第個(gè)單元取指令。無(wú)論是在單片機(jī)剛開(kāi)始接上電源時(shí),還是斷電后或者發(fā)生故障后都要復(fù)位。在復(fù)位期間(即RST為高電平期間),P0口為高組態(tài),P1P3口輸出高電平;外部程序存儲(chǔ)器讀選通信號(hào)PSEN無(wú)效。地址鎖存信號(hào)ALE也為高電平。根據(jù)實(shí)際情況選擇如圖4-5所示的復(fù)位電路。該電路在最簡(jiǎn)單的復(fù)位電路下增加了手動(dòng)復(fù)位按鍵,在接通電源瞬間,電容C1上的電壓很小,復(fù)位下拉電阻上的電壓接近電源電壓,即RST為高電平,在電容充電的過(guò)程中RST端電壓逐漸下降,當(dāng)RST端的電壓小于某一數(shù)值后,
49、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分壓比決定。由于R53?報(bào)警程序NYNY返回確認(rèn)程序再次輸新密碼兩次新密碼輸入相同?NY設(shè)置程序圖5-3 密碼設(shè)置流程圖5.4 開(kāi)鎖流程圖如圖5-4為開(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圖
50、5-4開(kāi)鎖流程圖天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)結(jié) 論以上為畢業(yè)期間所設(shè)計(jì)的電子密碼控制系統(tǒng)的電路,它經(jīng)過(guò)多次修改和整理,可以滿(mǎn)足設(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ī)
51、作為核心的控制元件,配合其它器件,使本密碼控制系統(tǒng)具有功能強(qiáng)、性能可靠、電路簡(jiǎn)單、成本低的特點(diǎn),加上經(jīng)過(guò)優(yōu)化的程序,使其有很高的智能化水平。天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)參考文獻(xiàn)1 石文軒,宋薇.基于單片機(jī)MCS-51的智能密碼鎖設(shè)計(jì)M.武漢工程職業(yè)技術(shù)學(xué)院學(xué)報(bào),2004,(01);2 祖龍起,劉仁杰.一種新型可編程密碼鎖J.大連輕工業(yè)學(xué)院學(xué)報(bào),2002,(01);3 葉啟明.單片機(jī)制作的新型安全密碼鎖J.家庭電子,2005,(10);4 李明喜.新型電子密碼鎖的設(shè)計(jì)J.機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新,2004,(03);5 董繼成.一種新型安全的單片機(jī)密碼鎖J.電子技術(shù),2004,(03);6
52、 楊茂濤.一種電子密碼鎖的實(shí)現(xiàn)J.福建電腦,2004,(08);7 瞿貴榮.實(shí)用電子密碼鎖J.家庭電子,2000,(07);8 ATmega.ATmega8L-8AC,2006,(01);9 Wireless World,1998,vol、84,No、1509,p69;10 王千.實(shí)用電子電路大全M,電子工業(yè)出版社,2001,p101;11 何立民.單片機(jī)應(yīng)用技術(shù)選編M,北京:北京航空大學(xué)出版社,1998;12 李華.MCS-51系列單片機(jī)使用接口技術(shù)M,北京航空航天大學(xué)出版社,1993;13 彭為.單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講M,北京:電子工業(yè)出版社,2006;14 潘永雄.新編單片機(jī)原理與應(yīng)
53、用M,西安:西安電子科技大學(xué)出版社,2003;15 童詩(shī)白,華成英,模擬電子技術(shù)基礎(chǔ)M,北京:高等教育出版社,2000;16 閻石主.數(shù)字電子技術(shù)基礎(chǔ)M,北京:高等教育出版社,1998;27 樊昌信,曹麗娜.通信原理M,北京:國(guó)防工業(yè)出版社,2007;28 李瀚蓀.電路分析基礎(chǔ)M,北京:高等教育出版社1991;19 郭海英.基于單片機(jī)的電子安全密碼鎖的設(shè)計(jì)M.現(xiàn)代電子技術(shù),2005,(13);20 何希才,杜煜.實(shí)用電子電路設(shè)計(jì)M.北京:電子工業(yè)出版社,199821 康華光.電子技術(shù)基礎(chǔ)(第四版)M.北京:高等教育出版社,1998天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)致 謝四年的大學(xué)生活不知
54、不覺(jué)中就要結(jié)束了,在這段難忘的生活中,我有許多美好的回憶。在這份大學(xué)的最后一頁(yè)里,我要感謝的人很多,首先要感謝我的學(xué)校,感謝在這四年中教給我的做人的道理,讓我從一個(gè)懵懂得高中生變成一個(gè)成熟的青年。還要感謝我的論文指導(dǎo)老師,在他的指導(dǎo)下我完成了論文,老師多次詢(xún)問(wèn)研究進(jìn)程,并為我指點(diǎn)迷津。當(dāng)然,還要感謝寢室的兄弟們?cè)谖彝瓿烧撐牡倪^(guò)程中給予我的幫助和鼓勵(lì),也是他們陪我度過(guò)了這四年的生活,最后要感謝的就是我的父母,對(duì)于他們我更是有千言萬(wàn)語(yǔ),還是匯聚成一句話(huà):感謝你們一直都伴隨著我。現(xiàn)在即將揮別我的學(xué)校、老師、同學(xué),還有我四年的大學(xué)生活,雖然依依不舍,但是對(duì)未來(lái)的路,我充滿(mǎn)了信心。最后,感謝在大學(xué)期間認(rèn)識(shí)我和我認(rèn)識(shí)的所有人,有你們的伴隨,才有我大學(xué)生活的豐富多彩,絢麗多姿!謝謝!天津工程師范學(xué)院2009屆本科生畢業(yè)設(shè)計(jì)附錄一:總原理圖附錄二: 程序#include #include #include #include lcd.h#include key.huchar key_buf16=0;uchar old_key16=0;uchar key_index=0;uchar string_buf17=0;uchar key;uchar key_statu=0;uchar clear
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 外研版(一起)英語(yǔ)一年級(jí)上冊(cè)Module-5課件
- 外研版(一起)五上Module-10《Unit-1-You-should-tidy-your課件
- 認(rèn)識(shí)線(xiàn)段課件
- 患者病情評(píng)估培訓(xùn)完整
- 早產(chǎn)兒的護(hù)理教學(xué)
- 我們吃的食物安全嗎
- 鹽酸硫酸—浙教版九級(jí)科學(xué)上冊(cè)課件1
- 人工智能遺傳算法
- 硬質(zhì)景觀(guān)的細(xì)部處理龍湖
- 人教版小學(xué)二年級(jí)上冊(cè)數(shù)學(xué)8的乘法口訣
- 郵輪旅游世界郵輪產(chǎn)業(yè)經(jīng)濟(jì)的發(fā)展
- 如何繪制出高品質(zhì)的學(xué)科思維導(dǎo)圖
- 美國(guó)癲癇學(xué)會(huì)驚厥性癲癇持續(xù)狀態(tài)治療指南解讀
- 城市公共空間設(shè)計(jì)理論及方法課件
- (課件)正弦定理公開(kāi)課