版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 基于AT24C01的多功能密碼控制系統(tǒng)的設(shè)計(jì)</p><p> The Design Of Multi-functions password control System Based on AT24C01</p><p><b> 2009年6月</b></p><p><b> 摘 要</b&
2、gt;</p><p> 隨著科技的日益發(fā)展,電子密碼控制系統(tǒng)已越來越符合人們的要求。本文介紹了基于單片機(jī)和串行EEPROM的智能密碼控制系統(tǒng),對(duì)系統(tǒng)硬件設(shè)計(jì)和軟件實(shí)現(xiàn)進(jìn)行了詳細(xì)的描述。該系統(tǒng)采用AT89C51單片機(jī)和AT24C01串行EEPROM,通過AT89C51模擬I2C總線和AT24C01通訊,實(shí)現(xiàn)密碼控制的功能。</p><p> 本文從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用美國Atmel
3、公司的單片機(jī)AT89C51作為主控芯片與數(shù)據(jù)存儲(chǔ)器單元,結(jié)合外圍的矩陣鍵盤輸入、LCD液晶顯示、報(bào)警、開鎖等,用C語言編寫主控芯片的控制程序與EEPROM讀寫程序相結(jié)合,設(shè)計(jì)了一款可以多次更改密碼,具有報(bào)警功能的電子密碼控制系統(tǒng)。這種電路設(shè)計(jì)具有防試探按鍵輸入、智能控制上鎖、開鎖、報(bào)警、修改密碼等多種功能。密碼長度可變、保密性強(qiáng)、靈活性高。</p><p> 經(jīng)實(shí)驗(yàn)證明,該密碼控制系統(tǒng)具有設(shè)計(jì)方法合理,簡單易行
4、,成本低,安全使用等特點(diǎn),符合車輛、辦公室用鎖要求,具有推廣價(jià)值。</p><p> 關(guān)鍵詞: 密碼控制;單片機(jī);EEPROM讀寫程序;報(bào)警</p><p><b> ABSTRACT</b></p><p> As the development of science and technology day by day, the key
5、 control system is more in line with the requirements of people. The paper presents a cryptographic smart password control based on MCU and serial EEPROM, describes hardware structure and software design of the system. I
6、t adopts AT89C51 and AT24C01, realizes the function of cryptographic smart password control. AT89C51 communicates with AT24C01 by I2C bus to achieve the password control function.</p><p> This article from
7、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
8、display, alarm, unlock and so on, dominated 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 func
9、tion with the electronic the password cont</p><p> Experiments show that the password control system is characterized by its reasonable designing methods, simple operation, low cost and property of safety a
10、nd practicality.Besides,the password control can be used in the office and has great potential for commercial development.</p><p> Key Words:Password control; Single-chip; EEPROM read and write procedures
11、; Alarm</p><p><b> 目 錄</b></p><p><b> 1 引言1</b></p><p> 1.1 選題背景1</p><p> 1.2 電子密碼控制簡介1</p><p> 1.3 電子密碼控制的發(fā)展趨勢1</p&
12、gt;<p> 1.4 本設(shè)計(jì)所要實(shí)現(xiàn)的目標(biāo)2</p><p> 2 設(shè)計(jì)方案的選擇3</p><p> 2.1 方案一:采用數(shù)字電路控制3</p><p> 2.2 方案二:采用以單片機(jī)為核心的控制方案3</p><p> 3 主要元器件介紹及I2C總線說明4</p><p> 3
13、.1 主控芯片AT89C514</p><p> 3.1.1 AT89C51性能簡介4</p><p> 3.1.2 AT89C51引腳功能說明5</p><p> 3.1.3 AT89C51芯片內(nèi)部結(jié)構(gòu)7</p><p> 3.2 LCD1602顯示器8</p><p> 3.2.1 接口信號(hào)說明
14、8</p><p> 3.2.2 主要技術(shù)參數(shù)9</p><p> 3.2.3 基本操作程序9</p><p> 3.3 晶體振蕩器9</p><p> 3.4 AT24C01串行EEPROM10</p><p> 3.5 I2C總線說明11</p><p> 4 系統(tǒng)硬
15、件構(gòu)成15</p><p> 4.1 設(shè)計(jì)原理15</p><p> 4.2 電路總圖構(gòu)成15</p><p> 4.3 電源輸入部分16</p><p> 4.4 鍵盤輸入部分16</p><p> 4.5 復(fù)位部分17</p><p> 4.6 晶振部分18<
16、/p><p> 4.7 顯示部分18</p><p> 4.8 報(bào)警部分19</p><p> 5 系統(tǒng)軟件設(shè)計(jì)20</p><p> 5.1 主程序流程圖20</p><p> 5.2 按鍵功能流程圖21</p><p> 5.3 密碼設(shè)置流程圖21</p>
17、<p> 5.4 開鎖流程圖22</p><p><b> 結(jié) 論24</b></p><p><b> 參考文獻(xiàn)25</b></p><p><b> 致 謝26</b></p><p> 附錄一:總原理圖27</p>
18、<p> 附錄二: 程序29</p><p> 附錄三: 翻譯44</p><p><b> 引言</b></p><p><b> 選題背景</b></p><p> 在安全技術(shù)防范領(lǐng)域,具有防盜報(bào)警功能的電子密碼控制系統(tǒng)逐漸代替?zhèn)鹘y(tǒng)的機(jī)械式密碼控制系統(tǒng),克服了機(jī)械式密碼控
19、制的密碼量少、安全性能差的缺點(diǎn),使電子密碼控制系統(tǒng)無論在技術(shù)上還是在性能上都大大提高了一步。隨著大規(guī)模集成電路技術(shù)的發(fā)展,特別是單片機(jī)的問世,出現(xiàn)了帶微處理器的智能密碼控制系統(tǒng),它除具有傳統(tǒng)電子密碼控制系統(tǒng)的功能外,還引入了智能化管理、專家分析系統(tǒng)等功能,從而使密碼控制系統(tǒng)具有很高的安全性、可靠性,應(yīng)用日益廣泛。</p><p><b> 電子密碼控制簡介</b></p>&
20、lt;p> 電子密碼控制是一種通過密碼輸入來控制電路或是芯片工作,從而控制機(jī)械開關(guān)的閉合,完成開鎖、閉鎖任務(wù)的電子產(chǎn)品。電子密碼控制不論性能還是安全性都已大大超過了機(jī)械類。其特點(diǎn)如下:</p><p> 1) 保密性好,編碼量多,遠(yuǎn)遠(yuǎn)大于機(jī)械控制。隨機(jī)開鎖成功率幾乎為零。</p><p> 2) 密碼可變,用戶可以隨時(shí)更改密碼,防止密碼被盜,同時(shí)也可以避免因人員的更替而使控制的
21、保密性下降。</p><p> 3) 誤碼輸入保護(hù),當(dāng)輸入密碼多次錯(cuò)誤時(shí),報(bào)警系統(tǒng)自動(dòng)啟動(dòng)。</p><p> 4) 無活動(dòng)零件,不會(huì)磨損,壽命長。</p><p> 5) 使用靈活性好,不像機(jī)械鎖必須佩帶鑰匙才能開鎖。</p><p> 6) 電子密碼控制系統(tǒng)具有操作簡單易行,一學(xué)即會(huì)的特點(diǎn)。</p><p>
22、; 電子密碼控制的發(fā)展趨勢</p><p> 由于電子器件所限,以前開發(fā)的電子密碼控制系統(tǒng),其種類不多,保密性差,最基本的就是只依靠最簡單的模擬電子開關(guān)來實(shí)現(xiàn)的,制作簡單但很不安全,后來便是基于EDA來實(shí)現(xiàn)的,其電路結(jié)構(gòu)復(fù)雜,電子元件繁多,也有使用早先的20引腳的2051系列單片機(jī)來實(shí)現(xiàn)的,但密碼簡單,易破解。隨著電子元件的進(jìn)一步發(fā)展,電子密碼控制系統(tǒng)也出現(xiàn)了很多的種類,功能日益強(qiáng)大,使用更加方便,安全保密性
23、更強(qiáng),由以前的單密碼輸入發(fā)展到現(xiàn)在的,密碼加感應(yīng)元件,實(shí)現(xiàn)了更為真正的電子加密,用戶只有密碼或電子鑰匙中的一樣,是打不開鎖的,隨著電子元件的發(fā)展及人們對(duì)保密性需求的提高出現(xiàn)了越來越多的電子密碼控制系統(tǒng) 。</p><p> 由于數(shù)字、字符、圖形圖像、人體生物特征和時(shí)間等要素均可成為電子信息,組合使用這些信息能夠使電子防盜密碼控制獲得更高的保密性,如防范森嚴(yán)的金庫,需要使用復(fù)合信息密碼的電子防盜密碼控制系統(tǒng)。組合
24、使用信息也能夠使電子防盜密碼控制系統(tǒng)獲得無窮擴(kuò)展的可能。可以看出組合使用電子信息是電子密碼控制系統(tǒng)今后發(fā)展的趨勢 。</p><p> 本設(shè)計(jì)所要實(shí)現(xiàn)的目標(biāo)</p><p> 本設(shè)計(jì)采用單片機(jī)為主控芯片,結(jié)合外圍電路,組成電子密碼控制系統(tǒng),用戶想要打開鎖,必先通過提供的鍵盤輸入正確的密碼才可以,密碼輸入錯(cuò)誤有提示,為了提高安全性,當(dāng)密碼輸入錯(cuò)誤三次將報(bào)警。密碼可以由用戶自己修改設(shè)定,鎖
25、打開后才能修改密碼。修改密碼之前必須再次輸入密碼,在輸入新密碼時(shí)候需要二次確認(rèn),以防止誤操作。</p><p><b> 設(shè)計(jì)方案的選擇</b></p><p> 方案一:采用數(shù)字電路控制</p><p> 用以74LS112雙JK觸發(fā)器構(gòu)成的數(shù)字邏輯電路作為密碼控制系統(tǒng)的核心控制,共設(shè)了9個(gè)用戶輸入鍵,其中只有4個(gè)是有效的密碼按鍵,其它
26、的都是干擾按鍵,若按下干擾鍵,鍵盤輸入電路自動(dòng)清零,原先輸入的密碼無效,需要重新輸入;如果用戶輸入密碼的時(shí)間超過10秒(一般情況下,用戶不會(huì)超過10秒,若用戶覺得不便,還可以修改)電路將報(bào)警20秒,若電路連續(xù)報(bào)警三次,電路將鎖定鍵盤2分鐘,防止他人的非法操作 。采用數(shù)字電路設(shè)計(jì)方案時(shí)設(shè)計(jì)雖然簡單,但控制的準(zhǔn)確性和靈活性差。故不采用。</p><p> 方案二:采用以單片機(jī)為核心的控制方案</p>
27、<p> 由于單片機(jī)種類繁多,各種型號(hào)都有其一定的應(yīng)用環(huán)境,因此在選用時(shí)要多加比較,合理選擇,以期獲得最佳的性價(jià)比。一般來說在選取單片機(jī)時(shí)從下面幾個(gè)方面考慮:性能、存儲(chǔ)器、運(yùn)行速度、I/O口、定時(shí)/計(jì)數(shù)器、串行接口、模擬電路功能、工作電壓、功耗、封裝形式、抗干擾性、保密性,除了以上的一些還有一些最基本的,比如:中斷源的數(shù)量和優(yōu)先級(jí)、工作溫度范圍、有沒有低電壓檢測功能、單片機(jī)內(nèi)有無時(shí)鐘振蕩器、有無上電復(fù)位功能等。在開發(fā)過程中單
28、片機(jī)還受到:開發(fā)工具、編程器、開發(fā)成本、開發(fā)人員的適應(yīng)性、技術(shù)支持和服務(wù)等等因素 ?;谝陨弦蛩乇驹O(shè)計(jì)選用單片機(jī)AT89C51作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的I/O端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的密碼控制功能。在單片機(jī)的外圍電路外接輸入鍵盤用于密碼的輸入和一些功能的控制,外接LCD1602顯示器用于顯示作用。當(dāng)用戶需要開鎖時(shí),先按鍵盤開鎖鍵之后按鍵盤的數(shù)字鍵0-9、A—F輸入密碼。密碼輸完后按下確認(rèn)鍵,如果密碼輸
29、入正確則開鎖,不正確顯示密碼錯(cuò)誤重新輸入密碼,當(dāng)三次密碼錯(cuò)誤則發(fā)出報(bào)警;當(dāng)用戶需要修改密碼時(shí),先按下鍵盤設(shè)置鍵后輸入原來的密碼,只有當(dāng)輸入的原</p><p> 可以看出方案二的控制靈活,準(zhǔn)確性好,且保密性強(qiáng)還具有擴(kuò)展功能,根據(jù)現(xiàn)實(shí)生活的需要此次設(shè)計(jì)采用此方案。</p><p> 主要元器件介紹及I2C總線說明</p><p> 主控芯片AT89C51<
30、/p><p> AT89C51是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes的可反復(fù)擦寫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)提供高性價(jià)比的解決方案。</p>
31、<p> AT89C51性能簡介 </p><p> AT89C51具有如下特點(diǎn):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í)鐘振蕩器。</p><p> 此外,AT89C51設(shè)計(jì)和配
32、置了振蕩頻率可為0Hz并可通過軟件設(shè)置省電模式??臻e模式下,CPU暫停工作,而RAM定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時(shí)該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。</p><p> 圖3-1 AT89C51芯片引腳圖</p><p><b> 其主要功
33、能特性:</b></p><p> 兼容MCS-51指令系統(tǒng) 4k可反復(fù)擦寫(>1000次)Flash ROM</p><p> 32個(gè)雙向I/O口 4.5-5.5V工作電壓</p><p> 2個(gè)16位可編程定時(shí)/計(jì)數(shù)器 時(shí)鐘頻率0-33MHz</p>&l
34、t;p> 全雙工UART串行中斷口線 128x8 bit內(nèi)部RAM</p><p> 2個(gè)外部中斷源 低功耗空閑和省電模式</p><p> 中斷喚醒省電模式 3級(jí)加密</p><p> 軟件設(shè)置空閑和省電功能 雙數(shù)據(jù)寄存器指針 </p&
35、gt;<p> 可以看出AT89C51提供以下標(biāo)準(zhǔn)功能:4K字節(jié)Flash閃速存儲(chǔ)器,128字節(jié)內(nèi)部RAM,32個(gè)I/O口線,兩個(gè)數(shù)據(jù)指針,兩個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)5向量兩級(jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,以及片內(nèi)振蕩器和時(shí)鐘。同時(shí), AT89C51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式時(shí)停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式是在RAM中
36、的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到一個(gè)硬件復(fù)位。</p><p> AT89C51引腳功能說明</p><p><b> VCC:電源電壓</b></p><p><b> GND:地</b></p><p> P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總
37、線復(fù)用口,作為輸出口用時(shí),每位能驅(qū)動(dòng)8個(gè)TTL邏輯門電路,對(duì)端口寫“1”可作為高阻抗輸入端口。在訪問外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。</p><p> P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4
38、個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)校驗(yàn)期間,P1接收低8位地址。</p><p> P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信
39、號(hào)拉低時(shí)會(huì)輸出一個(gè)電流I。在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行:MOVX @Ri 指令)時(shí),P2口線上的內(nèi)(也即特殊功能寄存器,在整個(gè)訪問期間不改變。Flash 編程或校驗(yàn)時(shí),P2也接收高位地址和其它控制信號(hào)。</p><p> P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作
40、輸入端口時(shí),被外部拉低的P3口將用上拉電阻輸出電流I。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,P3口的第二功能如下表3-2。</p><p> 表3-2 為 P3口的第二功能</p><p> RST:復(fù)位輸入。當(dāng)振蕩工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期上高電平將使單片機(jī)復(fù)位。ALE/PROG:當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖
41、存地址的低8位字節(jié)。即使不再訪問外部存儲(chǔ)器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目地,要注意的是:當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。如有必要,可通過對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置禁位后,只有一條MOVX 和MOVC指令A(yù)LE才會(huì)被激活。此外,該引腳伎被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無效。</p><p&
42、gt; PSEN:程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89S51由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,高有兩次有效的PSEN信號(hào)。</p><p> EA/VPP:外部訪問允許。欲使CPU訪問外部程序存儲(chǔ)器(地址0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖
43、存EA端狀態(tài)。如EA端為高電平(接VCC端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程電壓VPP。</p><p> XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。</p><p> XTAL2:振蕩器反相放大器的輸出端。</p><p> AT89C51芯片內(nèi)部結(jié)構(gòu)</p><p>
44、 特殊功能寄存器:特殊功能寄存器的片內(nèi)空間分布如下圖3-3所示。這些地址并沒有全部占用,沒有占用的地址不可使用,讀這些地址將得到一個(gè)隨意的數(shù)值。而寫這些地址單元將不能得到預(yù)期的結(jié)果。</p><p> 中斷寄存器:各中斷允許控制位于IE寄存器,5個(gè)中斷源的中斷優(yōu)先級(jí)控制位于IP寄存器。</p><p> 表3-3為 AUXR輔助寄存器。</p><p> A
45、RXR 地址=8EH 復(fù)位狀態(tài)=XXX00XX0B</p><p><b> Not Bit</b></p><p> Addressable</p><p> 保留為將來擴(kuò)展用途位</p><p> DISALE ALE禁止/使用</p>&l
46、t;p><b> DISALE</b></p><p><b> 操作模式</b></p><p> 0 ALE 輸出1/6震蕩時(shí)鐘頻率脈沖</p><p> 1 ALE 僅在執(zhí)行MOVX或MOVC指令期間輸出脈沖</p><p> DISRTO 禁止/使能復(fù)位輸出&l
47、t;/p><p><b> DISRTO</b></p><p> 0 復(fù)位引腳在WET溢出時(shí)變高</p><p> 1 復(fù)位引腳僅為輸入</p><p> WDIDLE 禁止/使能IDLE模式的WDT</p><p><b> WDIDLE </b>&
48、lt;/p><p> 0 IDLE模式WDT繼續(xù)計(jì)數(shù)</p><p> 1 IDLE模式WDT停止計(jì)數(shù)</p><p> 雙時(shí)鐘指針寄存器:為方便地訪問內(nèi)部和外部數(shù)據(jù)存儲(chǔ)器,提供了兩個(gè)16位數(shù)據(jù)指針寄存儲(chǔ)器:PD0位于SFR區(qū)塊中的地址82H、83H和DP1位于地址84H、85H,當(dāng)SFR中的位DPS=0時(shí)選擇DP0,而DPS=
49、1時(shí)選擇DP1。在使用前初始化DPS。</p><p> 表3-4 雙時(shí)鐘指針寄存器</p><p><b> AUXR1</b></p><p><b> 地址=A2H</b></p><p> 不可尋址位 復(fù)位狀態(tài)=XX
50、XXXXX0B</p><p> 保留為今后擴(kuò)展用途</p><p> DPS 數(shù)據(jù)指針選擇位</p><p><b> DPS</b></p><p> 0 選擇DPTR寄存器DP0L.DP0H</p><p> 1 選擇DPTR寄存器DP1L.
51、DP1H</p><p> 電源空閑標(biāo)志:電源空閑標(biāo)志(POF)在特殊功能寄存儲(chǔ)器SFR中PCON的第4位(PCON.4),電源打開時(shí)POF置“1”,它可由軟件設(shè)置睡眠狀態(tài)并不為復(fù)位所影響。</p><p> 存儲(chǔ)器結(jié)構(gòu):MCS-51單片機(jī)內(nèi)核采用程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器空間分開的結(jié)構(gòu),均具有64KB外部程序和數(shù)據(jù)的尋址空間。</p><p> 程序存儲(chǔ)器:如果
52、EA引腳接地(GND),全部程序均執(zhí)行外部存儲(chǔ)器。在AT89S51,假如接至VCC(電源+),程序首先執(zhí)行從地址0000H-0FFFH(4KB)內(nèi)部程序存儲(chǔ)器,再執(zhí)行地址為1000H-FFFFH(60KB)的外部程序存儲(chǔ)器。</p><p> 數(shù)據(jù)存儲(chǔ)器:在AT89C51的具有128字節(jié)的內(nèi)部RAM,這128字節(jié)可利用直接或間接尋址方式訪問,堆棧操作可利用間接尋址方式進(jìn)行,128字節(jié)均可設(shè)置為堆棧區(qū)空間。<
53、;/p><p> LCD1602顯示器</p><p> 現(xiàn)在的字符型液晶模塊已經(jīng)是單片機(jī)應(yīng)用設(shè)計(jì)中最常用的信息顯示器件了。1602型LCD顯示模塊具有體積小,功耗低,顯示內(nèi)容豐富等特點(diǎn)。1602型LCD可以顯示2行16個(gè)字符,有8位數(shù)據(jù)總線D0-D7和RS,R/W,EN三個(gè)控制端口,工作電壓為5V,并且具有字符對(duì)比度調(diào)節(jié)和背光功能。</p><p> 3.2.1
54、 接口信號(hào)說明</p><p> 1602型LCD的接口信號(hào)說明如表3-5所示:</p><p> 表3-5為 1602型LCD的接口信號(hào)說明</p><p> 3.2.2 主要技術(shù)參數(shù) </p><p> 1602型LCD的主要技術(shù)參數(shù)如表3-6所示:</p><p> 表3-6為 1602型LCD的主
55、要技術(shù)參數(shù)</p><p> 3.2.3 基本操作程序 </p><p> 讀狀態(tài):輸入:RS=L,RW=L,E=H 輸出:D0-D7=狀態(tài)字</p><p> 讀數(shù)據(jù):輸入:RS=H,RW=H,E=H 輸出:無</p><p> 寫指令:輸入:RS=L,RW=L,
56、D0-D7=指令碼,E=高脈沖 輸出:D0-D7=數(shù)據(jù)</p><p> 寫數(shù)據(jù):輸入:RS=H,RW=L,D0-D7=數(shù)據(jù),E=高脈沖 輸出:無</p><p><b> 晶體振蕩器 </b></p><p> 晶體振蕩器,簡稱晶振,其作用在于產(chǎn)生原始的時(shí)鐘頻率,這個(gè)頻率經(jīng)過頻率發(fā)生器的放大或縮小后就成了電腦中各種不同
57、的總線頻率。以聲卡為例,要實(shí)現(xiàn)對(duì)模擬信號(hào)44.1kHz或48kHz的采樣,頻率發(fā)生器就必須提供一個(gè)44.1kHz或48kHz的時(shí)鐘頻率。如果需要對(duì)這兩種音頻同時(shí)支持的話,聲卡就需要有兩顆晶振。但是現(xiàn)在的娛樂級(jí)聲卡為了降低成本,通常都采用SCR將輸出的采樣頻率固定在48kHz,但是SRC會(huì)對(duì)音質(zhì)帶來損害,而且現(xiàn)在的娛樂級(jí)聲卡都沒有很好地解決這個(gè)問題。現(xiàn)在應(yīng)用最廣泛的是石英晶體振蕩器。</p><p> 石英晶體振
58、蕩器是一種高精度和高穩(wěn)定度的振蕩器,石英晶體振蕩器也稱石英晶體諧振器,它用來穩(wěn)定頻率和選擇頻率,是一種可以取代LC諧振回路的晶體諧振元件。石英晶體振蕩器廣泛地應(yīng)用在電視機(jī)、影碟機(jī)、錄像機(jī)、無線通訊設(shè)備、電子鐘表、單片機(jī)、數(shù)字儀器儀表等電子設(shè)備中。為數(shù)據(jù)處理設(shè)備產(chǎn)生時(shí)鐘信號(hào)和為特定系統(tǒng)提供基準(zhǔn)信號(hào)。在單片機(jī)中為其提供時(shí)鐘頻率。</p><p> 石英晶體振蕩器是利用石英晶體(二氧化硅的結(jié)晶體)的壓電效應(yīng)制成的一種
59、諧振器件,它的基本構(gòu)成大致是:從一塊石英晶體上按一定方位角切下薄片(簡稱為晶片,它可以是正方形、矩形或圓形等),在它的兩個(gè)對(duì)應(yīng)面上涂敷上銀層用作電極使用,在每個(gè)電極上各焊一根引線接到管腳上,再加上封裝外殼就構(gòu)成了石英晶體諧振器,簡稱為石英晶體或晶體、晶振。其產(chǎn)品一般用金屬外殼封裝,也有用玻璃殼、陶瓷或塑料封裝的。只要在晶體振子板極上施加交變電壓,就會(huì)使晶片產(chǎn)生機(jī)械變形振動(dòng),此現(xiàn)象即所謂逆壓電效應(yīng)。當(dāng)外加電壓頻率等于晶體諧振器的固有頻率時(shí)
60、,就會(huì)發(fā)生壓電諧振,從而導(dǎo)致機(jī)械變形的振幅突然增大。</p><p> 本設(shè)計(jì)中采用12MHZ做系統(tǒng)的外部晶振。電容取值為20pF。</p><p> AT24C01串行EEPROM </p><p> 如圖3-2為AT24C01的芯片引腳圖。</p><p> 圖3-2 AT24C01的芯片引腳圖</p><p
61、> 特點(diǎn):低壓和標(biāo)準(zhǔn)電壓運(yùn)行模式</p><p> – 2.7 (VCC = 2.7V to 5.5V)</p><p> – 1.8 (VCC = 1.8V to 5.5V)</p><p> 內(nèi)建128x8存儲(chǔ)序列</p><p><b> 2線制串行接口</b></p><p&g
62、t;<b> 雙向數(shù)據(jù)傳送協(xié)議</b></p><p> 100kHz(1.8V,2.5V,2.7V) 和400kHz(5V)兼容</p><p> 寫同步時(shí)鐘(最大10ms)</p><p><b> 高可靠性</b></p><p> -極限:1M寫時(shí)鐘周期</p>&l
63、t;p> -數(shù)據(jù)保存:100年</p><p> 不斷推進(jìn)的芯片等級(jí)擴(kuò)大了設(shè)備的可用溫度范圍</p><p> 8腳PDIP,8腳JEDEC SOIC和8腳TSSOP封裝</p><p><b> 描述:</b></p><p> AT24C01提供電可擦除的串行1024位存儲(chǔ)或可編程只讀存儲(chǔ)器(EEPR
64、OM)128字(8位/字)。</p><p> 芯片在低壓的工業(yè)與商業(yè)應(yīng)用中進(jìn)行了最優(yōu)化。AT24C01的封裝為8腳PDIP、8腳JEDEC</p><p> SOIC、8腳TSSOP,通過2線制串行接口進(jìn)行數(shù)據(jù)傳輸。另外,整個(gè)系列有2.7V(2.7V至5.5V)和1.8V (1.8V至5.5V)兩個(gè)版本。</p><p><b> 設(shè)備操作:<
65、;/b></p><p> C L O C K 和 D A T A 變化:SDA管腳通常外部要拉高。SDA管腳上的數(shù)據(jù)只能在SCL低期間改變。數(shù)據(jù)在SCL高期間改變定義為一個(gè)開始或停止信號(hào)。</p><p> 開始狀態(tài):在任何操作之前必須有一個(gè)開始信號(hào)----在SCL為高時(shí)SDA上產(chǎn)生一個(gè)下降沿。</p><p> 停止?fàn)顟B(tài): SCL為高時(shí)SDA產(chǎn)生一個(gè)
66、上升沿是停止信號(hào),停止信號(hào)后將停止所有通信。</p><p> 在一個(gè)讀的序列之后,停止信號(hào)將讓EEPROM進(jìn)入備用電源模式。</p><p><b> I2C總線說明</b></p><p> I2C(Inter-Integrated Circuit)總線是一種由PHILIPS公司開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設(shè)備。I2
67、C總線產(chǎn)生于在80年代,最初為音頻和視頻設(shè)備開發(fā),如今主要在服務(wù)器管理中使用,其中包括單個(gè)組件狀態(tài)的通信。例如管理員可對(duì)各個(gè)組件進(jìn)行查詢,以管理系統(tǒng)的配置或掌握組件的功能狀態(tài),如電源和系統(tǒng)風(fēng)扇??呻S時(shí)監(jiān)控內(nèi)存、硬盤、網(wǎng)絡(luò)、系統(tǒng)溫度等多個(gè)參數(shù),增加了系統(tǒng)的安全性,方便了管理。</p><p> 1 I2C總線的硬件結(jié)構(gòu)</p><p> I2C串行總線一般有兩根信號(hào)線,一根是雙向的數(shù)據(jù)線
68、SDA,另一根是時(shí)鐘線SCL。所有接到I2C總線設(shè)備上的串行數(shù)據(jù)SDA都接到總線的SDA上,各設(shè)備的時(shí)鐘線SCL接到總線的SCL上。</p><p> 為了避免總線信號(hào)的混亂,要求各設(shè)備連接到總線的輸出端時(shí)必須是開漏輸出或集電極開路輸出。設(shè)備上的串行數(shù)據(jù)線SDA接口電路應(yīng)該是雙向的,輸出電路用于向總線上發(fā)送數(shù)據(jù),輸入電路用于接收總線上的數(shù)據(jù)。而串行時(shí)鐘線也應(yīng)是雙向的,作為控制總線數(shù)據(jù)傳送的主機(jī),一方面要通過SC
69、L輸出電路發(fā)送時(shí)鐘信號(hào),另一方面還要檢測總線上的SCL電平,以決定什么時(shí)候發(fā)送下一個(gè)時(shí)鐘脈沖電平;作為接受主機(jī)命令的從機(jī),要按總線上的SCL信號(hào)發(fā)出或接收SDA上的信號(hào),也可以向SCL線發(fā)出低電平信號(hào)以延長總線時(shí)鐘信號(hào)周期。總線空閑時(shí),因各設(shè)備都是開漏輸出,上拉電阻RP使SDA和SCL線都保持高電平。任一設(shè)備輸出的低電平都將使相應(yīng)的總線信號(hào)線變低,也就是說:各設(shè)備的SDA是“與”關(guān)系,SCL也是“與”關(guān)系。 </p>&l
70、t;p> 總線對(duì)設(shè)備接口電路的制造工藝和電平都沒有特殊的要求(NMOS、CMOS都可以兼容)。在I2C總線上的數(shù)據(jù)傳送率可高達(dá)每秒十萬位,高速方式時(shí)在每秒四十萬位以上。另外,總線上允許連接的設(shè)備數(shù)以其電容量不超過400pF為限。 </p><p> 總線的運(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ī)尋訪
71、的設(shè)備稱為從機(jī)。為了進(jìn)行通訊,每個(gè)接到I2C總線的設(shè)備都有一個(gè)唯一的地址,以便于主機(jī)尋訪。主機(jī)和從機(jī)的數(shù)據(jù)傳送,可以由主機(jī)發(fā)送數(shù)據(jù)到從機(jī),也可以由從機(jī)發(fā)到主機(jī)。凡是發(fā)送數(shù)據(jù)到總線的設(shè)備稱為發(fā)送器,從總線上接收數(shù)據(jù)的設(shè)備被稱為接受器。</p><p> I2C總線上允許連接多個(gè)微處理器以及各種外圍設(shè)備,如存儲(chǔ)器、LED及LCD驅(qū)動(dòng)器、A/D及D/A轉(zhuǎn)換器等。為了保證數(shù)據(jù)可靠地傳送,任一時(shí)刻總線只能由某一臺(tái)主機(jī)控制
72、,各微處理器應(yīng)該在總線空閑時(shí)發(fā)送啟動(dòng)數(shù)據(jù),為了妥善解決多臺(tái)微處理器同時(shí)發(fā)送啟動(dòng)數(shù)據(jù)的傳送(總線控制權(quán))沖突,以及決定由哪一臺(tái)微處理器控制總線的問題,I2C總線允許連接不同傳送速率的設(shè)備。多臺(tái)設(shè)備之間時(shí)鐘信號(hào)的同步過程稱為同步化。</p><p> 2 I2C總線工作原理:</p><p> 2.1 總線的構(gòu)成及信號(hào)類型:</p><p> I2C總線是由數(shù)據(jù)線
73、SDA和時(shí)鐘SCL構(gòu)成的串行總線,可發(fā)送和接收數(shù)據(jù)。在CPU與被控IC之間、IC與IC之間進(jìn)行雙向傳送,最高傳送速率100kbps。各種被控制電路均并聯(lián)在這條總線上,但就像電話機(jī)一樣只有撥通各自的號(hào)碼才能工作,所以每個(gè)電路和模塊都有唯一的地址,在信息的傳輸過程中,I2C總線上并接的每一模塊電路既是主控器(或被控器),又是發(fā)送器(或接收器),這取決于它所要完成的功能。CPU發(fā)出的控制信號(hào)分為地址碼和控制量兩部分,地址碼用來選址,即接通需要
74、控制的電路,確定控制的種類;控制量決定該調(diào)整的類別(如對(duì)比度、亮度等)及需要調(diào)整的量。這樣,各控制電路雖然掛在同一條總線上,卻彼此獨(dú)立,互不相關(guān)。</p><p> I2C總線在傳送數(shù)據(jù)過程中共有三種類型信號(hào), 它們分別是:開始信號(hào)、結(jié)束信號(hào)和應(yīng)答信號(hào)。</p><p> 開始信號(hào):SCL為高電平時(shí),SDA由高電平向低電平跳變,開始傳送數(shù)據(jù)。</p><p>
75、 結(jié)束信號(hào):SCL為高電平時(shí),SDA由低電平向高電平跳變,結(jié)束傳送數(shù)據(jù)。 </p><p> 應(yīng)答信號(hào):接收數(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所示:</p><
76、p> 圖3-3 開始、結(jié)束信號(hào)圖</p><p> 目前有很多半導(dǎo)體集成電路上都集成了I2C接口。帶有I2C接口的單片機(jī)有:CYGNAL的 C8051F0XX系列,PHILIPSP87LPC7XX系列,MICROCHIP的PIC16C6XX系列等。很多外圍器件如存儲(chǔ)器、監(jiān)控芯片等也提供I2C接口。</p><p><b> 3 總線基本操作:</b><
77、;/p><p> I2C規(guī)程運(yùn)用主/從雙向通訊。器件發(fā)送數(shù)據(jù)到總線上,則定義為發(fā)送器,器件接收數(shù)據(jù)則定義為接收器。主器件和從器件都可以工作于接收和發(fā)送狀態(tài)。 總線必須由主器件(通常為微控制器)控制,主器件產(chǎn)生串行時(shí)鐘(SCL)控制總線的傳輸方向,并產(chǎn)生起始和停止條件。SDA線上的數(shù)據(jù)狀態(tài)僅在SCL為低電平的期間才能改變,SCL為高電平的期間,SDA狀態(tài)的改變被用來表示起始和停止條件。</p><
78、p><b> 1) 控制字節(jié):</b></p><p> 在起始條件之后,必須是器件的控制字節(jié),其中高四位為器件類型識(shí)別符(不同的芯片類型有不同的定義,EEPROM一般應(yīng)為1010),接著三位為片選,最后一位為讀寫位,當(dāng)為1時(shí)為讀操作,為0時(shí)為寫操作。</p><p><b> 2)寫操作:</b></p><p&
79、gt; 寫操作分為字節(jié)寫和頁面寫兩種操作,對(duì)于頁面寫根據(jù)芯片的一次裝載的字節(jié)不同有所不同。</p><p><b> 3) 讀操作:</b></p><p> 讀操作有三種基本操作:當(dāng)前地址讀、隨機(jī)讀和順序讀。圖4給出的是順序讀的時(shí)序圖。應(yīng)當(dāng)注意的是:最后一個(gè)讀操作的第9個(gè)時(shí)鐘周期不是“不關(guān)心”。為了結(jié)束讀操作,主機(jī)必須在第9個(gè)周期時(shí)發(fā)出停止條件或者在第9個(gè)時(shí)鐘
80、周期內(nèi)保持SDA為高電平、然后發(fā)出停止條件。</p><p> 在I2C總線的應(yīng)用中應(yīng)注意的事項(xiàng)總結(jié)為以下幾點(diǎn) : </p><p> a) 嚴(yán)格按照時(shí)序圖的要求進(jìn)行操作, </p><p> b) 若與口線上帶內(nèi)部上拉電阻的單片機(jī)接口連接,可以不外加上拉電阻。 </p><p> c) 程序中為配合相應(yīng)的傳輸速率,在對(duì)口線操作的指令
81、后可用NOP指令加一定的延時(shí)。</p><p> d) 為了減少意外的干擾信號(hào)將EEPROM內(nèi)的數(shù)據(jù)改寫可用外部寫保護(hù)引腳(如果有),或者在EEPROM內(nèi)部沒有用的空間寫入標(biāo)志字,每次上電時(shí)或復(fù)位時(shí)做一次檢測,判斷EEPROM是否被意外改寫。 </p><p> 添加:I2C 總線:</p><p> 在現(xiàn)代電子系統(tǒng)中,有為數(shù)眾多的IC 需要進(jìn)行相互之間以及與
82、外界的通信。為了提供硬件的效率和簡化電路的設(shè)計(jì),PHILIPS 開發(fā)了一種用于內(nèi)部IC 控制的簡單的雙向兩線串行總線I2C(inter IC 總線)。I2C 總線支持任何一種IC 制造工藝,并且PHILIPS 和其他廠商提供了種類非常豐富的I2C 兼容芯片。作為一個(gè)專利的控制總線,I2C 已經(jīng)成為世界性的工業(yè)標(biāo)準(zhǔn)。</p><p> 每個(gè)I2C 器件都有一個(gè)唯一的地址,而且可以是單接收的器件(例如:LCD 驅(qū)動(dòng)
83、器)或者可以接收也可以發(fā)送的器件(例如:存儲(chǔ)器)。發(fā)送器或接收器可以在主模式或從模式下操作,這取決于芯片是否必須啟動(dòng)數(shù)據(jù)的傳輸還是僅僅被尋址。I2C 是一個(gè)多主總線,即它可以由多個(gè)連接的器件控制。</p><p> 早期的I2C 總線數(shù)據(jù)傳輸速率最高為100Kbits/s,采用7 位尋址。但是由于數(shù)據(jù)傳輸速率和應(yīng)用功能的迅速增加,I2C 總線也增強(qiáng)為快速模式(400Kbits/s)和10 位尋址以滿足更高速度和
84、更大尋址空間的需求。I2C 總線始終和先進(jìn)技術(shù)保持同步,但仍然保持其向下兼容性。并且最近還增加了高速模式,其速度可達(dá)3.4Mbits/s。它使得I2C 總線能夠支持現(xiàn)有以及將來的高速串行傳輸應(yīng)用,例如EEPROM 和Flash 存儲(chǔ)器。</p><p><b> 系統(tǒng)硬件構(gòu)成</b></p><p><b> 設(shè)計(jì)原理</b></p&g
85、t;<p> 本設(shè)計(jì)主要由單片機(jī)、矩陣鍵盤、液晶顯示器和密碼存儲(chǔ)等部分組成。其中矩陣鍵盤用于輸入數(shù)字密碼和進(jìn)行各種功能的實(shí)現(xiàn)。由用戶通過連接單片機(jī)的矩陣鍵盤輸入密碼,后經(jīng)過單片機(jī)對(duì)用戶輸入的密碼與自己保存的密碼進(jìn)行對(duì)比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開鎖電路或者報(bào)警電路控制開鎖還是報(bào)警。</p><p> 本系統(tǒng)共有兩部分構(gòu)成,即硬件部分與軟件部分。其中硬件部分由電源輸入部分、
86、鍵盤輸入部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分組成,軟件部分對(duì)應(yīng)的由主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、啟動(dòng)程序、關(guān)閉程序、鍵功能程序、密碼設(shè)置程序、EEPROM讀寫程序和延時(shí)程序等組成。其原理框圖如圖4-1所示。</p><p> 圖4-1 電子密碼鎖原理框圖</p><p><b> 電路總圖構(gòu)成</b></p><p&
87、gt; 在確定了選用什么型號(hào)的單片機(jī)后,就要確定在外圍電路,其外圍電路包括電源輸入部分、鍵盤輸入部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分組成,根據(jù)實(shí)際情況鍵盤輸入部分選擇4*4矩陣鍵盤,顯示部分選擇字符型液晶顯示LCD1602。其原理圖如圖4-2所示:</p><p><b> 圖4-2 電路總圖</b></p><p><b> 電源輸入部分&l
88、t;/b></p><p> 密碼鎖主要控制部分電源需要用5V直流電源供電,其電路如圖4-3所示,而5V電源輸入時(shí)往往伴有雜波,所以加一個(gè)2.2uF的電容濾波。這樣輸出的電壓一般能滿足要求。</p><p> 圖4-3 電源輸入電路原理圖</p><p><b> 鍵盤輸入部分 </b></p><p>
89、由于本設(shè)計(jì)所用到的按鍵數(shù)量較多而不適合用獨(dú)立按鍵式鍵盤。采用的是矩陣式按鍵鍵盤,它由行線和列線組成,也稱行列式鍵盤,按鍵位于行列的交叉點(diǎn)上,密碼鎖的密碼由鍵盤輸入完成,與獨(dú)立式按鍵鍵盤相比,要節(jié)省很多I/O口。本設(shè)計(jì)中使用的這個(gè)4*4鍵盤不但能完成密碼的輸入還能作特別功能鍵使用,比如清空顯示功能等。鍵盤的每個(gè)按鍵功能在程序設(shè)計(jì)中設(shè)置 。其大體功能(看鍵盤按鍵上的標(biāo)記)及與單片機(jī)引腳接法如圖4-4所示:</p><p&
90、gt; 圖4-4 鍵盤輸入原理圖</p><p><b> 復(fù)位部分 </b></p><p> 單片機(jī)復(fù)位是使CPU和系統(tǒng)中的其他功能部件都處在一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作,例如復(fù)位后PC=0000H,使單片機(jī)從第—個(gè)單元取指令。無論是在單片機(jī)剛開始接上電源時(shí),還是斷電后或者發(fā)生故障后都要復(fù)位。在復(fù)位期間(即RST為高電平期間),P0口為高組態(tài),P
91、1-P3口輸出高電平;外部程序存儲(chǔ)器讀選通信號(hào)PSEN無效。地址鎖存信號(hào)ALE也為高電平。根據(jù)實(shí)際情況選擇如圖4-5所示的復(fù)位電路。該電路在最簡單的復(fù)位電路下增加了手動(dòng)復(fù)位按鍵,在接通電源瞬間,電容C1上的電壓很小,復(fù)位下拉電阻上的電壓接近電源電壓,即RST為高電平,在電容充電的過程中RST端電壓逐漸下降,當(dāng)RST端的電壓小于某一數(shù)值后,CPU脫離復(fù)位狀態(tài),由于電容C1足夠大,可以保證RST高電平有效時(shí)間大于24個(gè)振蕩周期,CPU能夠可
92、靠復(fù)位。增加手動(dòng)復(fù)位按鍵是為了避免死機(jī)時(shí)無法可靠復(fù)位。當(dāng)復(fù)位按鍵按下后電容C1通過R5放電。當(dāng)電容C1放電結(jié)束后,RST端的電位由R5與R6分壓比決定。由于R5<<R6 因此RST為高電平,CPU處于復(fù)位狀態(tài),松手后,電容C1充電,RST端電位下降,CPU脫離復(fù)位狀態(tài)。R5的作用在于限制按鍵按</p><p> 圖4-5 復(fù)位電路原理圖</p><p><b>
93、晶振部分</b></p><p> AT89C51引腳XTAL1和XTAL2與晶體振蕩器及電容C2、C1按圖4-6所示方式連接。晶振、電容C1/C2及片內(nèi)與非門(作為反饋、放大元件)構(gòu)成了電容三點(diǎn)式振蕩器,振蕩信號(hào)頻率與晶振頻率及電容C1、C2的容量有關(guān),但主要由晶振頻率決定,范圍在0~33MHz之間,電容C1、C2取值范圍在5~30pF之間。根據(jù)實(shí)際情況,本設(shè)計(jì)中采用12MHZ做系統(tǒng)的外部晶振。電
94、容取值為20pF。</p><p> 圖4-6 晶振電路原理圖</p><p><b> 顯示部分</b></p><p> 為了提高密碼鎖的密碼顯示效果能力。本設(shè)計(jì)的顯示部分由液晶顯示器LCD1602取代普通的數(shù)碼管來完成。只有按下鍵盤上的開啟按鍵后,顯示器才處于開啟狀態(tài)。同理只有按下關(guān)閉按鍵后顯示器才處于關(guān)閉狀態(tài)。否則顯示器將一直處于
95、初始狀態(tài),當(dāng)需要對(duì)密碼鎖進(jìn)行開鎖時(shí),按下鍵盤上的開鎖按鍵后利用鍵盤上的數(shù)字鍵0-9輸入密碼,每按下一個(gè)數(shù)字鍵后在顯示器上顯示一個(gè)*,輸入多少位就顯示多少個(gè)*。當(dāng)密碼輸入完成時(shí),按下確認(rèn)鍵,如果輸入的密碼正確的話, LCD子顯示“RIGHT”,單片機(jī)其中P2.0引角會(huì)輸出低電平,使三極管T2導(dǎo)通,電磁鐵吸合,電子密碼鎖被打開,如果密碼不正確,LCD顯示屏?xí)@示“ERROR”,P2.0輸出的是高電平,電子密碼鎖不能被打開。通過LCD顯示屏,
96、可以清楚的判斷出密碼鎖所處的狀態(tài) 。其顯示部分引腳接口如圖4-7所示:</p><p> 圖4-7 顯示電路原理圖</p><p><b> 報(bào)警部分</b></p><p> 報(bào)警部分由陶瓷壓電發(fā)聲裝置及外圍電路組成,加電后不發(fā)聲,當(dāng)有鍵按下時(shí),“?!甭暎堪匆幌?,發(fā)聲一次,密碼正確時(shí),不發(fā)聲直接開鎖,當(dāng)密碼輸入錯(cuò)誤時(shí),單片機(jī)的P2.1
97、引腳為低電平,三極管T3導(dǎo)通轟鳴器發(fā)出噪鳴聲報(bào)警。如圖4-8所示:</p><p> 圖4-8 報(bào)警電路原理圖</p><p><b> 系統(tǒng)軟件設(shè)計(jì)</b></p><p> 本系統(tǒng)軟件設(shè)計(jì)由主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、鍵功能程序、密碼設(shè)置程序、EEPROM讀寫程序和延時(shí)程序等組成。</p><
98、p><b> 主程序流程圖</b></p><p> 如圖5-1所示為主程序流程圖,開始接上電源,程序進(jìn)行初始化設(shè)置,然后在鍵盤上輸入密碼,此系統(tǒng)進(jìn)行鍵盤掃描,然后啟動(dòng)程序,進(jìn)行保護(hù),再次在鍵盤上輸入密碼,系統(tǒng)進(jìn)行掃描,如和之前一樣,則執(zhí)行程序,如不是,則執(zhí)行另一種程序,最后結(jié)束。</p><p> 圖5-1 主程序流程圖</p><p
99、><b> 按鍵功能流程圖</b></p><p> 如圖5-2為按鍵功能流程圖,在按鍵當(dāng)中,有與輸入、開鎖、清除、設(shè)置、確認(rèn)的程序相對(duì)應(yīng)的按鍵,并按順序與輸入的數(shù)相比較,當(dāng)輸入正確時(shí),進(jìn)入密碼程序,錯(cuò)誤時(shí)進(jìn)行清除,輸入兩次正確的,可進(jìn)行重新設(shè)置,最后確認(rèn)程序。</p><p> 圖5-2 按鍵功能流程圖</p><p><b
100、> 密碼設(shè)置流程圖</b></p><p> 如圖5-3為密碼設(shè)置流程圖,開始按下設(shè)置鍵,輸入舊密碼,如果錯(cuò)誤,累計(jì)三次錯(cuò)誤,進(jìn)行報(bào)警程序。如輸入正確,可以改密碼,確認(rèn)后再次輸入更改后密碼,如兩次輸入一樣,則更改成功。</p><p> 圖5-3 密碼設(shè)置流程圖</p><p><b> 開鎖流程圖</b></p
101、><p> 如圖5-4為開鎖流程圖,開始時(shí)按開鎖鍵,輸入密碼,如果輸入正確,則開鎖成功。如果輸入錯(cuò)誤累計(jì)達(dá)到三次,則執(zhí)行報(bào)警程序。</p><p><b> 圖5-4開鎖流程圖</b></p><p><b> 結(jié) 論</b></p><p> 以上為畢業(yè)期間所設(shè)計(jì)的電子密碼控制系統(tǒng)的電路
102、,它經(jīng)過多次修改和整理,可以滿足設(shè)計(jì)的基本要求。輸入密碼時(shí),如三次輸入錯(cuò)誤,則進(jìn)行報(bào)警,在輸入時(shí),LCD顯示為“*”,在修改密碼時(shí),則顯示數(shù)字。次設(shè)計(jì)還具有防盜功能,如對(duì)密碼控制系統(tǒng)進(jìn)行破壞,有報(bào)警功能。</p><p> 但因?yàn)槲业乃接邢?,此電路中也存在一定的問題。譬如說電路的密碼不能遺忘,一旦遺忘,就很難打開,這可以通過增加電路解決,但由于過于復(fù)雜,本設(shè)計(jì)并未加入;電路密碼只有16種可供修改,但由于他人不
103、知道密碼的位數(shù),而且還要求在規(guī)定的時(shí)間內(nèi)按一定的順序開鎖,所以他人開鎖的幾率很小。由于使用的是單片機(jī)作為核心的控制元件,配合其它器件,使本密碼控制系統(tǒng)具有功能強(qiáng)、性能可靠、電路簡單、成本低的特點(diǎn),加上經(jīng)過優(yōu)化的程序,使其有很高的智能化水平。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 石文軒,宋薇.基于單片機(jī)MCS-51的智能密碼鎖設(shè)計(jì)[
104、M].武漢工程職業(yè)技術(shù)學(xué)院學(xué)報(bào),2004,(01);</p><p> [2] 祖龍起,劉仁杰.一種新型可編程密碼鎖[J].大連輕工業(yè)學(xué)院學(xué)報(bào),2002,(01);</p><p> [3] 葉啟明.單片機(jī)制作的新型安全密碼鎖[J].家庭電子,2005,(10);</p><p> [4] 李明喜.新型電子密碼鎖的設(shè)計(jì)[J].機(jī)電產(chǎn)品開發(fā)與創(chuàng)新,2004,(0
105、3);</p><p> [5] 董繼成.一種新型安全的單片機(jī)密碼鎖[J].電子技術(shù),2004,(03);</p><p> [6] 楊茂濤.一種電子密碼鎖的實(shí)現(xiàn)[J].福建電腦,2004,(08);</p><p> [7] 瞿貴榮.實(shí)用電子密碼鎖[J].家庭電子,2000,(07);</p><p> [8] ATmega.ATm
106、ega8L-8AC,2006,(01);</p><p> [9] Wireless World,1998,vol、84,No、1509,p69;</p><p> [10] 王千.實(shí)用電子電路大全[M],電子工業(yè)出版社,2001,p101;</p><p> [11] 何立民.單片機(jī)應(yīng)用技術(shù)選編[M],北京:北京航空大學(xué)出版社,1998;</p>
107、<p> [12] 李華.MCS-51系列單片機(jī)使用接口技術(shù)[M],北京航空航天大學(xué)出版社,1993;</p><p> [13] 彭為.單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講[M],北京:電子工業(yè)出版社,2006;</p><p> [14] 潘永雄.新編單片機(jī)原理與應(yīng)用[M],西安:西安電子科技大學(xué)出版社,2003;</p><p> [15] 童詩白
108、,華成英,模擬電子技術(shù)基礎(chǔ)[M],北京:高等教育出版社,2000;</p><p> [16] 閻石主.數(shù)字電子技術(shù)基礎(chǔ)[M],北京:高等教育出版社,1998;</p><p> [27] 樊昌信,曹麗娜.通信原理[M],北京:國防工業(yè)出版社,2007;</p><p> [28] 李瀚蓀.電路分析基礎(chǔ)[M],北京:高等教育出版社1991;</p>
109、<p> [19] 郭海英.基于單片機(jī)的電子安全密碼鎖的設(shè)計(jì)[M].現(xiàn)代電子技術(shù),2005,(13);</p><p> [20] 何希才,杜煜.實(shí)用電子電路設(shè)計(jì)[M].北京:電子工業(yè)出版社,1998</p><p> [21] 康華光.電子技術(shù)基礎(chǔ)(第四版)[M].北京:高等教育出版社,1998</p><p><b> 致
110、謝</b></p><p> 四年的大學(xué)生活不知不覺中就要結(jié)束了,在這段難忘的生活中,我有許多美好的回憶。在這份大學(xué)的最后一頁里,我要感謝的人很多,首先要感謝我的學(xué)校,感謝在這四年中教給我的做人的道理,讓我從一個(gè)懵懂得高中生變成一個(gè)成熟的青年。還要感謝我的論文指導(dǎo)老師,在他的指導(dǎo)下我完成了論文,老師多次詢問研究進(jìn)程,并為我指點(diǎn)迷津。當(dāng)然,還要感謝寢室的兄弟們?cè)谖彝瓿烧撐牡倪^程中給予我的幫助和鼓勵(lì),也
111、是他們陪我度過了這四年的生活,最后要感謝的就是我的父母,對(duì)于他們我更是有千言萬語,還是匯聚成一句話:感謝你們一直都伴隨著我。</p><p> 現(xiàn)在即將揮別我的學(xué)校、老師、同學(xué),還有我四年的大學(xué)生活,雖然依依不舍,但是對(duì)未來的路,我充滿了信心。最后,感謝在大學(xué)期間認(rèn)識(shí)我和我認(rèn)識(shí)的所有人,有你們的伴隨,才有我大學(xué)生活的豐富多彩,絢麗多姿!謝謝!</p><p><b> 附錄一
112、:總原理圖</b></p><p><b> 附錄二: 程序</b></p><p> #include <reg51.h></p><p> #include <stdio.h></p><p> #include <stdlib.h></p>&l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 多功能教室節(jié)能控制系統(tǒng)的研究畢業(yè)論文
- 多功能教室節(jié)能控制系統(tǒng)的研究畢業(yè)論文
- 基于單片機(jī)多功能密碼鎖的設(shè)計(jì)的畢業(yè)論文
- 機(jī)械設(shè)計(jì)專業(yè)畢業(yè)論文-基于plc的供暖鍋爐多功能控制系統(tǒng)設(shè)計(jì)
- 基于at89c51單片機(jī)的多功能秒表系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 家用多功能門禁系統(tǒng)的設(shè)計(jì)【畢業(yè)論文】
- 多功能輪椅的設(shè)計(jì)畢業(yè)論文
- 基于nrf24l01無線測溫系統(tǒng)的設(shè)計(jì)【畢業(yè)論文】
- 多功能輪椅的設(shè)計(jì)畢業(yè)論文
- 基于plc的電梯控制系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 基于plc的風(fēng)機(jī)控制系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 基于plc的溫度控制系統(tǒng)的設(shè)計(jì) 畢業(yè)論文
- 畢業(yè)論文基于智能控制系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的多功能密碼鎖
- 基于fpga的溫度控制系統(tǒng)設(shè)計(jì)【畢業(yè)論文】
- 畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)多功能密碼鎖的設(shè)計(jì)
- 多功能理財(cái)系統(tǒng)畢業(yè)論文
- 多功能工業(yè)控制平臺(tái)---畢業(yè)論文
- 基于plc的溫度控制系統(tǒng)的設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文——多功能工業(yè)控制平臺(tái)
評(píng)論
0/150
提交評(píng)論