版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 本科畢業(yè)論文(設(shè)計(jì))</p><p> 題 目 智能紅外遙控門(mén)的設(shè)計(jì) </p><p> 智能紅外遙控門(mén)的設(shè)計(jì) </p><p><b> 摘 要 </b></p><p> 在科學(xué)技術(shù)不斷發(fā)展的今天,隨著人們生活水平的提高,如何實(shí)現(xiàn)家庭防盜變得越來(lái)越重要。傳統(tǒng)機(jī)
2、械鎖構(gòu)造簡(jiǎn)單,攜帶鑰匙易丟;智能門(mén)禁控制系統(tǒng)作為一種新的防盜工具具有保密性高,使用靈活性好,穩(wěn)定性高等優(yōu)點(diǎn)。</p><p> 本設(shè)計(jì)以單片機(jī)STC89C52作為智能電子密碼鎖的核心處理單元,簡(jiǎn)化了硬件電路的設(shè)計(jì),節(jié)約了生產(chǎn)成本。其通過(guò)芯片程序控制電路的工作方式。通過(guò)鍵盤(pán)輸入密碼,當(dāng)檢測(cè)到3次輸入密碼錯(cuò)誤時(shí)會(huì)通過(guò)報(bào)警電路發(fā)出報(bào)警實(shí)現(xiàn)提示作用。電子鎖就是生活中所用的機(jī)械裝置,在本次設(shè)計(jì)中用LED燈和電機(jī)代替。燈亮
3、且電機(jī)轉(zhuǎn)時(shí)表示開(kāi)鎖。軟件設(shè)計(jì)采用自上而下的模塊化設(shè)計(jì)思想,以使系統(tǒng)朝著小型化方向發(fā)展,增強(qiáng)系統(tǒng)運(yùn)行的穩(wěn)定性。測(cè)試最終結(jié)果表明,本設(shè)計(jì)可以達(dá)到市場(chǎng)要求。</p><p> 關(guān)鍵詞 STC89C52/電子鎖/紅外遙控</p><p> Electronic cipher lock of Intelligence</p><p><b> ABSTRAC
4、T</b></p><p> Alone with the constantly development of science and technology today ,the promotion of quality of life ,it becomes more and more important to how to bring about the family to guard agai
5、nst theft .Because of the simple construct of traditional machine lock, and the key is easy to lock . As a new tool to guard against theft, Access Control System of Intelligence is provided of its safer confidentiality,
6、and using the vivid good, the high of safe coefficient. </p><p> The design takes STC89C52 as its processing unit of heart, simplifying the design of hardware circuit, saving cost. It controls operation mod
7、e of circuit by program of chip, and import cipher by the keyboard. When checking 3 times false cipher, it can bring about prompt to give an alarm. Electronic lock is simple machine in everyday life, which is replaced by
8、 LED light in the design. When giving out light, meaning that the lock is open. The software design adoption the design thought from top to</p><p> Keyword STC89C52/ Electronics lock/ </p><p>
9、<b> 目 錄</b></p><p> 中文摘要 ………………………………………………………………I </p><p> 英文摘要 ………………………………………………………………Ⅱ</p><p> 1 緒論 …………………………………………………………………3</p><p> 1.1 課
10、題背景及意義 ………………………………………………3 </p><p> 1.2 智能紅外遙控門(mén)的發(fā)展趨勢(shì) …………………………………4</p><p> 2 系統(tǒng)總體方案設(shè)計(jì) …………………………………………………5</p><p> 2.1 智能紅外遙控門(mén)的設(shè)計(jì)要求 …………………………………5 </p><p>
11、 2.2 總體設(shè)計(jì)方案選定 ……………………………………………6</p><p> 3 硬件設(shè)計(jì) ……………………………………………………………6</p><p> 3.1 單片機(jī)簡(jiǎn)介 ………………………………………………………6</p><p> 3.1.1 主要特征 ……………………………………………………6</p><p&
12、gt; 3.1.2 引腳介紹 ……………………………………………………7</p><p> 3.1.3 液晶顯示1602介紹 ……………………………………………9</p><p> 3.2 硬件電路設(shè)計(jì) …………………………………………………11</p><p> 3.2.1 最小系統(tǒng)設(shè)計(jì) ………………………………………………12</
13、p><p> 3.2.2 紅外遙控介紹 …………………………………………………13</p><p> 3.2.3 遙控發(fā)射器及編碼 ……………………………………………13</p><p> 3.2.4 遙控接收及其解碼 ……………………………………………13</p><p> 3.2.5 顯示電路設(shè)計(jì) ………………………………
14、………………14 </p><p> 4 軟件設(shè)計(jì) …………………………………………………………15</p><p> 4.1 軟件設(shè)計(jì)思路 …………………………………………………15</p><p> 5 系統(tǒng)調(diào)試 ………………………………………………………18</p><p> 5.1 焊接注意事項(xiàng) ……
15、……………………………………………18</p><p> 5.2 硬件調(diào)試及問(wèn)題解決 …………………………………………19 </p><p> 6 總結(jié) ………………………………………………………………21 </p><p> 致謝 ……………………………………………………………………22 </p><p> 參考文獻(xiàn) …
16、……………………………………………………………23</p><p> 附錄 ……………………………………………………………………24</p><p> 硬件原理圖 ………………………………………………………24 </p><p> 測(cè)試結(jié)果圖 ………………………………………………………24</p><p> 程序源代碼 ………
17、………………………………………………25</p><p><b> 1 緒論</b></p><p> 1.1 課題背景及意義</p><p> 隨著社會(huì)科技的進(jìn)步,鎖已發(fā)展到了密碼鎖、磁性鎖、電子鎖、激光鎖、聲控鎖等等。在傳統(tǒng)鑰匙的基礎(chǔ)上,加了一組或多組密碼,來(lái)控制鎖的開(kāi)啟。從而大大提高了鎖的安全性,使不法之徒無(wú)從下手,人們也就能對(duì)自
18、身財(cái)產(chǎn)安全有了更多的保障。當(dāng)今安全信息系統(tǒng)應(yīng)用越來(lái)越廣泛,特別在保護(hù)機(jī)密、維護(hù)隱私和財(cái)產(chǎn)保護(hù)方面起到重大作用,而智能門(mén)禁控制系統(tǒng)在其中的扮演著重要角色。</p><p> 隨著電子技術(shù)和計(jì)算機(jī)技術(shù)的飛速發(fā)展,單片機(jī)性能不斷完善,性能價(jià)格比日益提高,技術(shù)日趨完善。另外單片機(jī)具有體積小、重量輕、價(jià)格便宜、功耗低、控制功能強(qiáng)及運(yùn)算速度快等特點(diǎn),因而在國(guó)民經(jīng)濟(jì)建設(shè)、軍事及家用電器等各個(gè)領(lǐng)域均得到了廣泛的應(yīng)用。本設(shè)計(jì)利用
19、單片機(jī)及電子元器件實(shí)現(xiàn)數(shù)據(jù)采集和控制算法,來(lái)完成某一實(shí)際功能,檢驗(yàn)并提高對(duì)整體電路設(shè)計(jì)和把握能力,了解單片機(jī)系統(tǒng)設(shè)計(jì)流程,以及電路板的實(shí)際制作和調(diào)試能力。同時(shí)也加強(qiáng)對(duì)數(shù)字電路、單片機(jī)和微機(jī)原理等課程知識(shí)的實(shí)際應(yīng)用能力,也為同類(lèi)產(chǎn)品的進(jìn)一步發(fā)展奠定理論和實(shí)踐基礎(chǔ)。</p><p> 電子技術(shù)的不斷發(fā)展,各類(lèi)電子產(chǎn)品應(yīng)運(yùn)而生,智能電子密碼鎖就是其中之一。據(jù)有關(guān)資料介紹,電子密碼鎖系統(tǒng)的研究從20世紀(jì)30年代就開(kāi)始了
20、,在一些特殊場(chǎng)所早就有所應(yīng)用。這種系統(tǒng)是通過(guò)鍵盤(pán)輸入一組密碼完成開(kāi)鎖過(guò)程。研究這種鎖的初衷,就是為提高鎖的安全性。由于電子鎖的密鑰量(密碼量)極大,可以與機(jī)械鎖配合使用,并且可以避免因鑰匙被仿制而留下安全隱患。紅外電子鎖只需攜帶便捷的紅外遙控器,并記下密碼即可,這種方式被越來(lái)越多的人所欣賞。</p><p> 在我國(guó)電子鎖整體水平尚處于初級(jí)階段,電子密碼鎖的成本還很高,市場(chǎng)上仍以按鍵電子鎖為主,按鍵式和卡片鑰匙
21、式電子鎖已引進(jìn)國(guó)際先進(jìn)水平,現(xiàn)國(guó)內(nèi)有幾個(gè)廠生產(chǎn)供應(yīng)市場(chǎng)。但國(guó)內(nèi)自行研制開(kāi)發(fā)的電子鎖,其市場(chǎng)結(jié)構(gòu)尚未形成,應(yīng)用還不廣泛。國(guó)內(nèi)的不少企業(yè)也引進(jìn)了世界上先進(jìn)的技術(shù),發(fā)展前景非??捎^。希望通過(guò)不斷的努力,使紅外電子密碼鎖在我國(guó)也能得到廣泛應(yīng)用。</p><p> 1.2 智能紅外遙控門(mén)的發(fā)展趨勢(shì) </p><p> 智能門(mén)禁系統(tǒng)應(yīng)用于金融業(yè),其根本的作用是“授權(quán)”,即被
22、“授權(quán)”的人才可以存取錢(qián)、物。廣義上講,金融業(yè)的“授權(quán)”主要包括以下三種層次的內(nèi)容:1、授予保管權(quán),如使用保管箱、保險(xiǎn)箱和保險(xiǎn)柜;2、授予出入權(quán),如出入金庫(kù)、運(yùn)鈔車(chē)和保管室;3、授予流通權(quán),如自動(dòng)存取款。目前,金融行業(yè)電子密碼鎖的應(yīng)用主要集中在前兩個(gè)層面上。下面將介紹幾種在金融行業(yè)中使用較多的電子密碼鎖以及它們的技術(shù)發(fā)展方向。當(dāng)然,以上所說(shuō)的授權(quán)技術(shù)再高超,都必須由精良的“鎖具”擔(dān)當(dāng)承載結(jié)構(gòu)部件,實(shí)現(xiàn)開(kāi)啟、閉鎖的功能,而且承擔(dān)實(shí)體防護(hù)作
23、用,抵抗住或盡量延遲破壞行為,讓電子密碼鎖“軟、硬不吃”。一般情況下,鎖具防盜的關(guān)鍵是鎖身外殼、閉鎖的部件的強(qiáng)度、鎖止型式、配合間隙和布局。提高電子密碼鎖之防護(hù)能力的必然途徑是報(bào)警,在金融業(yè)的許多場(chǎng)所有人值守、有電視監(jiān)控,具有報(bào)警功能,可以綜合物理防范和人力防范兩種作用。報(bào)警的前提是具備探測(cè)功能,根據(jù)電子密碼鎖的使用場(chǎng)所和防護(hù)要求,可選擇多種多樣的探測(cè)手段。在中國(guó)的城市金融業(yè)中,實(shí)現(xiàn)聯(lián)網(wǎng)報(bào)警已經(jīng)成為對(duì)各金融網(wǎng)點(diǎn)的基本要求。根據(jù)國(guó)內(nèi)外的實(shí)
24、踐經(jīng)驗(yàn),金融業(yè)實(shí)行安全防范風(fēng)險(xiǎn)等級(jí)很有必要,即依據(jù)使用的防盜報(bào)警器</p><p> 由于數(shù)字、字符、圖形圖像、人體生物特征和時(shí)間等要素均可成為鑰匙的電子信息,組合使用這些信息能夠使電子密碼鎖獲得高度的保密性,如防范森嚴(yán)的金庫(kù),需要使用復(fù)合信息密碼的電子密碼鎖,這樣對(duì)盜賊而言是“道高一尺、魔高一丈”。組合使用信息也能夠使電子密碼鎖獲得無(wú)窮擴(kuò)展的可能,使產(chǎn)品多樣化,對(duì)用戶(hù)而言是“千挑百選、自得其所”。 2 總體設(shè)
25、計(jì)方案的確定</p><p> 2.1 智能紅外遙控門(mén)控制系統(tǒng)設(shè)計(jì)的要求</p><p> ?。?)本設(shè)計(jì)為了防止密碼被竊取要求在輸入密碼時(shí)在LCD屏幕上顯示*號(hào)。</p><p> ?。?)設(shè)計(jì)開(kāi)鎖密碼位八位密碼的電子密碼鎖。</p><p> (3)LCD顯示在密碼正確時(shí)顯示為:綠燈亮,密碼錯(cuò)誤時(shí)顯示ERROR,輸入密碼時(shí)顯示Pass
26、word。</p><p> ?。?)實(shí)現(xiàn)輸入密碼錯(cuò)誤超過(guò)限定的三次電子密碼鎖定。</p><p> ?。?)紅外遙控鍵盤(pán)其中包括0-9的數(shù)字鍵和4個(gè)功能鍵</p><p> ?。?)本產(chǎn)品具備報(bào)警功能,當(dāng)輸入密碼錯(cuò)誤3次時(shí)蜂鳴器響。</p><p> ?。?)密碼可以由用戶(hù)自己修改設(shè)定,修改密碼之前必須再次輸入密碼,在輸入新密碼時(shí)候需要二次
27、確認(rèn),以防止誤操作 。</p><p> 2.2總體設(shè)計(jì)方案選定</p><p> 方案一:采用數(shù)字電路控制。</p><p> 用以74LS112雙JK觸發(fā)器構(gòu)成的數(shù)字邏輯電路作為密碼鎖的核心控制,共設(shè)了9個(gè)用戶(hù)輸入鍵,其中只有4個(gè)是有效的密碼按鍵,其它的都是干擾按鍵,若按下干擾鍵,鍵盤(pán)輸入電路自動(dòng)清零,原先輸入的密碼無(wú)效,需要重新輸入;如果用戶(hù)輸入密碼的時(shí)
28、間超過(guò)10秒(一般情況下,用戶(hù)不會(huì)超過(guò)10秒,若用戶(hù)覺(jué)得不便,還可以修改)電路將報(bào)警20秒,若電路連續(xù)報(bào)警三次,電路將鎖定鍵盤(pán)2分鐘,防止他人的非法操作。采用數(shù)字電路設(shè)計(jì)的方案好處就是設(shè)計(jì)簡(jiǎn)單但控制的準(zhǔn)確性和靈活性差。故不采用。</p><p> 方案二:采用一種是用以STC89C52為核心的單片機(jī)控制方案。</p><p> 選用單片機(jī)STC89C52 作為本設(shè)計(jì)的核心元件,利用單片
29、機(jī)靈活的編程設(shè)計(jì)和豐富的IO端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的密碼鎖功能。在單片機(jī)的外圍電路接紅外遙控接收電路和一些功能的控制,外接LCD1602顯示器用于顯示作用。其原理如下圖2.1所示:</p><p> 圖2.1 單片機(jī)控制密碼鎖原理圖</p><p> 可以看出方案二控制靈活準(zhǔn)確性好且保密性強(qiáng)還具有擴(kuò)展功能,根據(jù)現(xiàn)實(shí)生活的需要此次設(shè)計(jì)采用此方案。</p><
30、;p><b> 3 硬件設(shè)計(jì)</b></p><p> 3.1 單片機(jī)STC89C52簡(jiǎn)介 </p><p> STC89C52是一種帶8K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱(chēng)單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器
31、可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的STC89C52是一種高效微控制器。 </p><p> 3.1.1 主要特性 </p><p> ·與MCS-51 兼容 </p><p> ·4K
32、字節(jié)可編程閃爍存儲(chǔ)器 </p><p> ·壽命:1000寫(xiě)/擦循環(huán)</p><p> ·數(shù)據(jù)保留時(shí)間:10年</p><p> ·全靜態(tài)工作:0Hz-24MHz</p><p> ·三級(jí)程序存儲(chǔ)器鎖定</p><p> ·128×8位內(nèi)部RAM&l
33、t;/p><p> ·32可編程I/O線</p><p> ·兩個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b> ·5個(gè)中斷源 </b></p><p><b> ·可編程串行通道</b></p><p> ·低功耗的閑
34、置和掉電模式</p><p> ·片內(nèi)振蕩器和時(shí)鐘電路</p><p> 3.1.2 引腳功能說(shuō)明 </p><p> 圖2.2 單片機(jī)引腳圖</p><p><b> Vcc:電源電壓 </b></p><p><b> GND:接地 </b></
35、p><p> P0口:P0口是一組8位漏極開(kāi)路型雙向I/0口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能驅(qū)動(dòng)8個(gè)TTL邏輯門(mén)電路,對(duì)端口寫(xiě)“1”可作為高阻抗輸入端用。在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問(wèn)期間激活內(nèi)部上拉電阻。在F1ash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。 </p><p&g
36、t; P1口:Pl 是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,Pl的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“l(fā)”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL),F(xiàn)lash編程和程序校驗(yàn)期間,Pl接收低8位地址。 </p><p> P2 口:P2 是一個(gè)帶有內(nèi)部上拉電阻的8 位雙向I/O 口,
37、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è)電流(IIL),在訪問(wèn)外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX@DPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問(wèn)8 位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行MOVX@Ri 指令)時(shí),P2 口線上的內(nèi)容(也即特殊功能寄存器(
38、SFR)區(qū)中P2寄存器的內(nèi)容),在整個(gè)訪問(wèn)期間不改變。Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和其它控制信號(hào)。 </p><p> P3 口:P3 口是一組帶有內(nèi)部上拉電阻的8 位雙向I/0 口。P3 口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4 個(gè)TTL邏輯門(mén)電路。P3口除了作為一般的I/0口線外,更重要的用途是它的第二功能,如下表所示:P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào) </
39、p><p> RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。WDT 溢出將使該引腳輸出高電平,設(shè)置SFR AUXR的DISRT0 位(地址8EH)可打開(kāi)或關(guān)閉該功能。DISRT0位缺省為RESET輸出高電平打開(kāi)狀態(tài)。 </p><p> ALE/PROG:當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使
40、不訪問(wèn)外部存儲(chǔ)器,ALE 仍以時(shí)鐘振蕩頻率的1/6 輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。 </p><p> PSEN:程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)STC89C52 由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,沒(méi)有兩次有效的PSEN信號(hào)。 </p><p> EA/VPP:
41、外部訪問(wèn)允許。欲使CPU僅訪問(wèn)外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。F1ash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程電壓Vpp。 </p><p> XTALl:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。 </p><p&
42、gt; XTAL2:振蕩器反相放大器的輸出端。 </p><p> 3.1.3 液晶顯示LCD1602的介紹</p><p> 1、LM1602字符型模塊的性能</p><p> 重量輕:<100g;</p><p> 體積小:<11mm 厚;</p><p> 功耗低:10—15mW;<
43、/p><p> 顯示內(nèi)容:192 種字符(5×7 點(diǎn)字型);</p><p> 32 種字符(5×10 點(diǎn)字型);</p><p> 可自編8(5×7)或許(5×10)種字符;</p><p> 指令功能強(qiáng):可組合成各種輸入、顯示、移位方式以滿(mǎn)足不同的要求;</p><p>
44、 接口簡(jiǎn)單方便:可與8 位微處理器或微控制器相聯(lián);</p><p> 工作溫度寬:0—50℃</p><p> 可靠性高:壽命為50,000 小時(shí)(25℃)</p><p><b> 2、 基本原理</b></p><p><b> ① 液晶體</b></p><p&g
45、t; 液晶板上排列著若干5×7 或5×10 點(diǎn)陣的字符顯示位,每個(gè)顯示位可顯示</p><p> 1 個(gè)字符,從規(guī)格上分為每行8、16、20、24、32、40 位,有一行、兩行及四行</p><p><b> 三類(lèi)。</b></p><p><b> ② 工作電路</b></p>
46、<p> 它由KS0066、KS0065 及幾個(gè)電阻電容組成。KS0065 是擴(kuò)展顯示字符用的(例如:16 個(gè)字符×1 行模塊就可不用KS0065,16 個(gè)字符×2 行模塊就要用1 片KS0065)</p><p> 接口方面,有8 條數(shù)據(jù),三條控線??膳c微處理器或微控制相連,通過(guò)送入數(shù)據(jù)和指令,就可使模塊正常工作。</p><p> ?、?LCD 驅(qū)動(dòng)器
47、和控制器</p><p> A LCD 驅(qū)動(dòng)器KS0065</p><p> KS0065 是用低功耗CMOS 技術(shù)制造的大規(guī)模LCD 驅(qū)動(dòng)IC。它既可當(dāng)行驅(qū)動(dòng)用,也可以當(dāng)列驅(qū)動(dòng)用,由20×2Bin 二進(jìn)制移位寄存器、20×2Bin 數(shù)據(jù)鎖存器和20×2Bin 驅(qū)動(dòng)器組成</p><p><b> 功能:</b&g
48、t;</p><p> a 40 通道點(diǎn)陣LCD 驅(qū)動(dòng);</p><p> b 可選擇當(dāng)做行驅(qū)動(dòng)或列驅(qū)動(dòng);</p><p> c 輸入/輸出信號(hào):輸出,能產(chǎn)生20×2 個(gè)LCD 驅(qū)動(dòng)波型;輸入,接受控制器送出的串行數(shù)據(jù)和控制信號(hào),偏壓(V1—V6);</p><p><b> 特性:</b></p
49、><p> a 顯示驅(qū)動(dòng)偏壓低:靜態(tài)~1/5;</p><p> b 電源電壓:+5V+10%;</p><p> c 顯示驅(qū)動(dòng)電源:-5V;</p><p> d CMOS 處理;</p><p> e 60 引腳、塑封;</p><p> B LCD 控制器KS0066</p
50、><p> 見(jiàn)圖4,KS0066 是用低功耗CMOS 技術(shù)制造的大規(guī)模點(diǎn)陣LCD控制器(兼帶驅(qū)動(dòng)器),和4Bin/8Bin 微處理器相連連,它能使點(diǎn)陣LCD 顯示大小英文字母、符號(hào)。應(yīng)用KS0066,用戶(hù)能有少量元件就可組成一個(gè)完整點(diǎn)陣LCD 系統(tǒng)。</p><p><b> 特性:</b></p><p> a 容易和Bin/8Bin Mp
51、u 相連;</p><p> b 可選擇5×7 或5×10 點(diǎn)字符;</p><p> c 顯示數(shù)據(jù)RAM 容量:80×8Bin(80 字符);</p><p> d 字符發(fā)生器ROM 能提供戶(hù)所需字符庫(kù)或標(biāo)準(zhǔn)庫(kù);字符容量:192 個(gè)字符(5×7 點(diǎn)字符);32 個(gè)字符(5×10 點(diǎn)字符);</p>
52、<p> e DDRAM 和CGRAM 都能從Mpu 讀取數(shù)據(jù);</p><p> f 輸出信號(hào):16 個(gè)行掃信號(hào)(common singnal),40 個(gè)列掃信號(hào)(sengment singnal)</p><p><b> g 電源復(fù)位電路;</b></p><p> h 顯示占空比:1/8duty(1Line,5
53、215;7dots+Cursor);1/11 duty(1Line,5×10dote+Cuesor);1/16 duty(2Line,5×7dots+Cuesir);</p><p><b> i 振蕩電路;</b></p><p> j 指令:11 種;</p><p> k 80 引腳、塑封。</p>
54、<p><b> ④技術(shù)參數(shù)</b></p><p><b> a 極限參數(shù)</b></p><p><b> b電參數(shù)</b></p><p> 3.2 硬件電路的設(shè)計(jì)</p><p> 本設(shè)計(jì)單片機(jī)硬件資源的分配:</p><p&g
55、t; P0.0~P0.7用于LCD液晶顯示作用。</p><p> P2.6、P2.7用于蜂鳴器和報(bào)警燈的控制。</p><p> P2.0用于開(kāi)鎖電路的控制。</p><p> P1.0~P1.7用于鍵盤(pán)電路的控制。</p><p> P3.3~P3.5用于LCD顯示模塊的控制端口的控制。</p><p>
56、 3.2.1 最小系統(tǒng)的設(shè)計(jì)</p><p> 當(dāng)MCS-5l系列單片機(jī)的復(fù)位引腳RST(全稱(chēng)RESET)出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就執(zhí)行復(fù)位操作。如果RST持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種基本形式:上電復(fù)位和開(kāi)關(guān)復(fù)位。圖3.3即為手動(dòng)(開(kāi)關(guān))復(fù)位電路。 </p><p> 圖3.3 手動(dòng)復(fù)位電路</p><
57、p><b> ?。?)復(fù)位后的狀態(tài)</b></p><p> a、復(fù)位后PC值為0000H,表明復(fù)位后的程序從0000H開(kāi)始執(zhí)行。</p><p> b、SP值為07H,表明堆棧底部在07H,一般需要重新設(shè)置SP值。</p><p> c、P0~P3口值為FFH。P0~P3口用作輸入口時(shí),必須先寫(xiě)入“1”。單片機(jī)在復(fù)位后,已使P0~
58、P3口每一端線為“1”,為這些端線用作輸入口做好了準(zhǔn)備。</p><p> ?。?)WDT 溢出將使該引腳輸出高電平</p><p> STC89C52 中有一個(gè)用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1 和XTAL2 分別是該放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見(jiàn)圖3.5。外接石英晶體(或陶瓷諧振器)及電容C
59、l、C2 接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對(duì)外接電容Cl、C2 雖然沒(méi)有十分嚴(yán)格的要求,但電容容量的大小會(huì)輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性。如果使用石英晶體,我們推薦電容使用30pF±10pF,而如使用陶瓷諧振器建議選擇40pF±10F。用戶(hù)也可以采用外部時(shí)鐘。采用外部時(shí)鐘的電路如圖1所示。這種情況下,外部時(shí)鐘脈沖接到XTAL1端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端,XTAL2則懸
60、空。由于外部時(shí)鐘信號(hào)是通過(guò)一個(gè)2分頻觸發(fā)器后作為內(nèi)部時(shí)鐘信號(hào)的,所以對(duì)外部時(shí)鐘信號(hào)的占空比沒(méi)有特殊要求,但最小高電平持續(xù)時(shí)間和最大的低電平持續(xù)時(shí)間應(yīng)符合產(chǎn)品技術(shù)條件的要求。 </p><p> 圖3.5 單片機(jī)自激震蕩電路</p><p> 3.2.2紅外遙控介紹</p><p> 通用紅外遙控系統(tǒng)由發(fā)射和接收兩大部分組成,應(yīng)用編/解碼專(zhuān)用集成電路芯片來(lái)進(jìn)行控
61、制操作。發(fā)射部分包括鍵盤(pán)矩陣、編碼調(diào)制、LED紅外發(fā)送器;接收部分包括光、電轉(zhuǎn)換放大器、解調(diào)、解碼電路。遙控器里面是一個(gè)鍵盤(pán)編碼器,每個(gè)按鍵對(duì)應(yīng)一個(gè)編碼,在把編碼調(diào)制到一個(gè)高頻信號(hào)上,其目的是為了降低發(fā)射的功率損耗;再把調(diào)制好的信號(hào)送給紅外發(fā)光管把信號(hào)發(fā)送出去。接收過(guò)程恰好與此相反,首先由紅外接收管收到微弱的信號(hào),經(jīng)放大后解解調(diào)(把高頻載波去掉),再進(jìn)行解碼,就可得到遙控器發(fā)過(guò)來(lái)的數(shù)據(jù)。如圖2.6所示。</p><p
62、> 圖2.6 紅外遙控系統(tǒng)框圖</p><p> 3.2.3遙控發(fā)射器及其編碼</p><p> 紅外遙控發(fā)射器專(zhuān)業(yè)芯片很多,根據(jù)編碼格式可以分成脈沖寬度調(diào)制和脈沖相位調(diào)制兩大類(lèi),這里我們以運(yùn)用比較廣泛,解碼比較容易的脈沖寬度調(diào)制來(lái)加以說(shuō)明,現(xiàn)以LC7461組成發(fā)射電路為例說(shuō)明編碼原理。當(dāng)發(fā)射器按鍵按下后,既有遙控碼發(fā)出,所按的鍵不同遙控碼也不同。這些遙控碼具有以下特征:&
63、lt;/p><p> 采用脈寬調(diào)制的串行碼,以脈寬0.56ms,周期為1.125ms的組合表示二進(jìn)制的“0”;以脈寬為0.56ms、周期為2. 25ms.其波形圖如圖2.7所示。</p><p> 圖2.7 紅外遙控碼波形圖</p><p> LC7461產(chǎn)生的遙控編碼是連續(xù)的42位二進(jìn)制碼組,其中前26位為用戶(hù)識(shí)別碼,能區(qū)別不同的電器設(shè)備,防止不同機(jī)種遙控碼
64、互相干擾。后16位為8位操作碼(功能碼)及其反碼用于核對(duì)數(shù)據(jù)是否接受正確。</p><p> 當(dāng)發(fā)射端一個(gè)鍵按下超過(guò)36ms,LC7461芯片的振蕩器使芯片激活,將發(fā)射一個(gè)特定的同步碼頭,對(duì)于接收端而言就是一個(gè)9ms的低電平,和一個(gè)4.5ma的高電平。這個(gè)同步碼頭可以是使程序知道從這個(gè)碼頭以后開(kāi)始接收數(shù)據(jù)。</p><p> 解碼在于如何識(shí)別“0”和“1”,從位的定義我們可以發(fā)現(xiàn)“0”
65、、“1”均以0.56ms的低電平開(kāi)始,不同的是高電平的寬度不同,“0”為0.56ms,“1”為1.68ms,所以必須根據(jù)高電平的寬度區(qū)別“0”和“1”。如果從0.56ms低電平過(guò)后,開(kāi)始延時(shí),0.56ms以后,若讀到的電平為低,說(shuō)明該位為“0”,反之則為“1”,為了可靠起見(jiàn),延時(shí)必須比0.56ms長(zhǎng)些,但又不能超過(guò)1.12ms,否則如果該位為“0”,讀到的已是下一位的高電平,因此?。?.12ms+0.56ms)/2=0.84ms最為可靠
66、,一般取0.84ms左右即可。</p><p> 根據(jù)紅外編碼的格式,程序應(yīng)該等待9ms的起始碼和4.5ms的結(jié)果碼完成后才能讀碼。</p><p> 3.2.4 遙控接收器及其解碼</p><p> LT0038是塑封一體化紅外接收器,它是一種集紅外線接收、放大、整形于一體的集成電路,不需要任何外接元件,就能完成從紅外線收到輸出與TTL電平信號(hào)兼容的所有工作
67、,沒(méi)有紅外遙控信號(hào)是為高電平,收到紅外信號(hào)是為低電平,而體積和普通的塑料三極管大小一樣,它適合于各種紅外線遙控和紅外線數(shù)據(jù)傳輸。接收器對(duì)外只有3個(gè)引腳:Out、GND、Vcc與單片機(jī)接口非常方便,如圖2.8所示</p><p> 圖2.8 紅外遙控接收器圖</p><p><b> 注:</b></p><p> 1、脈沖信號(hào)輸出接單
68、片機(jī)的P33口;</p><p> 2 、GND接系統(tǒng)的地線(0V);</p><p> 3 、Vcc接系統(tǒng)的電源正極(+5V)</p><p> 3.2.5顯示電路設(shè)計(jì) </p><p> 顯示設(shè)計(jì)采用字符型液晶屏設(shè)計(jì),由單片機(jī)的p0口控制顯示,由p3.3~p3.5控制lcd的控制端口。</p><p>
69、本設(shè)計(jì)采用以下液晶顯示設(shè)計(jì):</p><p> 圖3.9 LCD液晶顯示電路圖</p><p><b> 4 軟件設(shè)計(jì)</b></p><p> 因設(shè)計(jì)主要是作用匯編語(yǔ)言來(lái)開(kāi)發(fā)的51單片機(jī)項(xiàng)目程序,所以首先必須有一個(gè)可以在Windows XP或Windows vista操作系統(tǒng)下執(zhí)行的匯編語(yǔ)言編譯器,本設(shè)計(jì)采用Keil編譯器進(jìn)行編程,因
70、為它可以支持一系列的51單片機(jī)。 </p><p><b> 4.1軟件設(shè)計(jì)思路</b></p><p> 一個(gè)應(yīng)用系統(tǒng)要完成各項(xiàng)功能,首先必須有較完善的硬件作保證。同時(shí)還必須得到相應(yīng)設(shè)計(jì)合理的軟件的支持,尤其是微機(jī)應(yīng)用高速發(fā)展的今天,許多由硬件完成的工作,都可通過(guò)軟件編程而代替。甚至有些必須采用很復(fù)雜的硬件電路才能完成的工作,用軟件編程有時(shí)會(huì)變得很簡(jiǎn)單,如數(shù)字濾
71、波,信號(hào)處理等。因此充分利用其內(nèi)部豐富的硬件資源和軟件資源,采用與C51系列單片機(jī)相對(duì)應(yīng)的C語(yǔ)言和結(jié)構(gòu)化程序設(shè)計(jì)方法進(jìn)行軟件編程。</p><p> 圖4.1 主程序的流程圖</p><p><b> 5 系統(tǒng)調(diào)試</b></p><p> 5.1焊接注意事項(xiàng):</p><p><b> LCD的注意
72、事項(xiàng)</b></p><p> 1. 采用焊接方法將金屬基PIN安裝于LCD時(shí),從玻璃末端到PCB的焊接位置的長(zhǎng)度至少5mm,焊接溫度必須在260℃以下,且焊接時(shí)間必須在10秒以?xún)?nèi),以免焊接過(guò)程中對(duì)裝置的損壞,確保焊接性能。在230℃,30秒條件下,90%的焊料須緊密附著于PIN上。</p><p> 2. 對(duì)LCD基板或基PIN焊接位置的調(diào)整必須在安裝
73、前完成。嚴(yán)禁猛烈移動(dòng)基PIN,否則會(huì)機(jī)械地破壞LCD屏與基PIN之間的連接點(diǎn)。焊接時(shí)平放LCD,盡量不讓LCD受力。</p><p> 3. 焊接LCD基板時(shí),將其小心、平衡地插入PCB插槽,以避免損壞基PIN或LCD基板。</p><p> 4. 焊接時(shí),LCD基板不應(yīng)長(zhǎng)時(shí)間置于焊錫蒸汽中,清洗PCB時(shí),必須避免污染LCD基板,否則可能損壞顯示器表面的偏光片及封口
74、膠。</p><p> 5. 顯示器表面的保護(hù)膜直到焊接完成才可揭掉,禁止手指及其它硬物接觸偏光片,禁止水和其他化學(xué)物質(zhì)沾污裝置,因?yàn)檫@些物質(zhì)會(huì)污染顯示器表面。</p><p><b> 焊接注意事項(xiàng):</b></p><p> ?、贉?zhǔn)備焊接:清潔被焊元件處的積塵及油污,再將被焊元器件周?chē)脑骷笥谊魂?讓電烙鐵頭可以觸到被焊
75、元器件的焊錫處,以免烙鐵頭伸向焊接處時(shí)燙壞其他元器件。焊接新的元器件時(shí),應(yīng)對(duì)元器件的引線鍍錫。②加熱焊接:將沾有少許焊錫和松香的電烙鐵頭接觸被焊元器件約幾秒鐘。若是要拆下印刷板上的元器件,則待烙鐵頭加熱后,用手或銀子輕輕拉動(dòng)元器件,看是否可以取下。③清理焊接面:若所焊部位焊錫過(guò)多,可將烙鐵頭上的焊錫甩掉(注意不要燙傷皮膚,也不要甩到印刷電路板上!),用光烙錫頭"沾"些焊錫出來(lái)。若焊點(diǎn)焊錫過(guò)少、不圓滑時(shí),可以用電烙鐵頭
76、"蘸"些焊錫對(duì)焊點(diǎn)進(jìn)行補(bǔ)焊。④檢查焊點(diǎn):看焊點(diǎn)是否圓潤(rùn)、光亮、牢固,是否有與周?chē)骷B焊的現(xiàn)象。</p><p> 焊接流程按照附錄所示的電子密碼鎖的硬件聯(lián)接原理圖按下列順序依次焊接:</p><p> ?。?)焊接單片機(jī)的晶振電路、復(fù)位電路等單片機(jī)的最小系統(tǒng)的外圍電路。</p><p> ?。?)焊接LCD的相應(yīng)管腳并把LCD的管腳單片機(jī)相
77、連接。</p><p> ?。?)焊接紅外接收電路。</p><p> ?。?)焊接電子密碼鎖的密碼輸入錯(cuò)誤的報(bào)警電路。</p><p> ?。?)焊接密碼鎖的開(kāi)鎖機(jī)構(gòu)電路。</p><p> ?。?)焊接其他接口及輔助電路。</p><p> ?。?)焊接接地及高電平。</p><p> 5
78、.2、硬件調(diào)試問(wèn)題及解決方法</p><p> 本設(shè)計(jì)在焊接調(diào)試時(shí)遇到的問(wèn)題以及解決方法:</p><p> 單片機(jī)的最小系統(tǒng)問(wèn)題:</p><p> 電源、晶振電路和復(fù)位電路都無(wú)異常。</p><p> LCD焊接時(shí)的問(wèn)題:</p><p> (1)接通電源后LCD無(wú)反應(yīng),各個(gè)引腳均屬正常。推斷可能是初始化
79、程序出現(xiàn)問(wèn)題。</p><p> 經(jīng)查找得知是LCD顯示器的15和16管腳控制背光功能,連接好之后還是不能顯示字符。</p><p> ?。?)接通電源開(kāi)門(mén)燈和報(bào)警電路就會(huì)工作,分析原因是單片機(jī)剛開(kāi)始各個(gè)管腳輸出高電平。</p><p> 以下為所做部分實(shí)物:</p><p><b> 結(jié)論</b></p&g
80、t;<p> 課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問(wèn)題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過(guò)程.隨著科學(xué)技術(shù)發(fā)展的日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域, 在生活中可以說(shuō)得是無(wú)處不在。因此作為二十一世紀(jì)的大學(xué)來(lái)說(shuō)掌握單片機(jī)的開(kāi)發(fā)技術(shù)是十分重要的。</p><p> 回顧起此次單片機(jī)課程設(shè)計(jì),至今我仍感慨頗多,的確,從選
81、題到定稿,從理論到實(shí)踐,在整整兩星期的日子里,可以說(shuō)得是苦多于甜,但是可以學(xué)到很多很多的的東西,同時(shí)不僅可以鞏固了以前所學(xué)過(guò)的知識(shí),而且學(xué)到了很多在書(shū)本上所沒(méi)有學(xué)到過(guò)的知識(shí)。通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中遇到問(wèn)題,可以說(shuō)得是困難重重,這畢竟第一次做的,難免
82、會(huì)遇到過(guò)各種各樣的問(wèn)題,同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固,對(duì)單片機(jī)匯編語(yǔ)言掌握得不好,通過(guò)這次課程設(shè)計(jì)之后,一定把以前所學(xué)過(guò)的知識(shí)重新溫故。</p><p> 這次課程設(shè)計(jì)終于順利完成了,在設(shè)計(jì)中遇到了很多編程問(wèn)題,在同學(xué)的幫助下,終于游逆而解。非常感謝!</p><p><b> 致 謝</b></
83、p><p> 時(shí)光易逝,轉(zhuǎn)眼間四年過(guò)去了,大學(xué)生活即將結(jié)束。經(jīng)過(guò)四年的學(xué)習(xí),現(xiàn)在終于就要畢業(yè)了?;赝哪?,在學(xué)習(xí)和生活中經(jīng)歷了風(fēng)風(fēng)雨雨,酸甜苦辣,有歡笑也有憂傷,有目標(biāo)也有困惑,但在各位老師和同學(xué)的幫助和支持下最終得以順利完成,走完這一段大學(xué)生活。</p><p> 在此,首先感謝我的老師,感謝各位老師這四年中在學(xué)習(xí)和生活上給我的關(guān)心和照顧,沒(méi)有你們的教導(dǎo)和幫助,就不會(huì)有今天的我,非常感謝
84、你們;其次感謝各位同學(xué),同學(xué)們?cè)谏詈蛯W(xué)習(xí)中相互幫忙照顧,給予了我很大的鼓勵(lì)和快樂(lè)。指導(dǎo)老師張老師治學(xué)嚴(yán)謹(jǐn),學(xué)識(shí)淵博,平易近人,在平時(shí)的學(xué)習(xí)和生活中對(duì)細(xì)心的教導(dǎo),在我困惑的時(shí)候幫我指明方向。在我做設(shè)計(jì)和論文期間對(duì)給了我很大的幫助將使我終生受益。在論文的選題、資料查詢(xún)、開(kāi)題、研究、設(shè)計(jì)和撰寫(xiě)的每一個(gè)環(huán)節(jié),都得到導(dǎo)師的悉心指導(dǎo)和幫助。</p><p> 在大學(xué)的這四年里,很多老師們也都言傳身教,以他們廣博的知識(shí),敏
85、銳的洞察力,多年的教學(xué)和實(shí)際工作經(jīng)驗(yàn),在學(xué)習(xí)上給予我很大的幫助。在這里我要感謝幾年來(lái)對(duì)我學(xué)習(xí)和生活上照顧的老師們,感謝陪伴我度過(guò)大學(xué)四年的各位同學(xué),更要感謝我的家人對(duì)我學(xué)業(yè)上的支持和鼓勵(lì);最后,我要向百忙之中抽時(shí)間對(duì)本文進(jìn)行審閱,評(píng)議和參與本人論文答辯的各位老師表示感謝。</p><p><b> 參考文獻(xiàn)</b></p><p> [01] 何宏主編. 單片機(jī)原
86、理與接口技術(shù). 北京:國(guó)防工業(yè)出版社. 2006.07</p><p> [02] 先鋒工作室編著. 單片機(jī)程序設(shè)計(jì)實(shí)例. 北京: 清華大學(xué)出版社 .2003.01</p><p> [03] 謝宜仁主編 . 單片機(jī)實(shí)用技術(shù)問(wèn)答. 北京: 人民郵電出版社 . 2003.02</p><p> [04] 梁麗.電子密碼鎖的計(jì)算機(jī)仿真
87、設(shè)計(jì).計(jì)算機(jī)仿真,2005</p><p> [05] 房小翠,王金鳳編著. 單片機(jī)實(shí)用系統(tǒng)設(shè)計(jì)技術(shù). 北京: 國(guó)防工業(yè)出版社 . 1999.06</p><p> [06] 張洪潤(rùn) 單片機(jī)應(yīng)用技術(shù)教程 北京:清華大學(xué)出版社,1997</p><p> [07] 王寬仁. 可靠安全的智能密碼鎖. 電子技術(shù)應(yīng)用 , 2001</p>
88、<p> [08] 董繼成. 能防止多次試探密碼的單片機(jī)密碼鎖.國(guó)外電子元器件 , 2004, 3 </p><p> 版社 , 2002.12</p><p> [10] 路而紅.專(zhuān)用集成電路設(shè)計(jì)與電子設(shè)計(jì)自動(dòng)化.北京:清華大學(xué)出版社,2004</p><p> [11] 劉文濤.MCS-51單片機(jī)培訓(xùn)教程(C51)版.電子工業(yè)出版社,2005.
89、8 </p><p> [12] 王為青 程國(guó)鋼.單片機(jī)Keil Cx51 應(yīng)用開(kāi)發(fā)技術(shù).人民郵電出版社,2007.2 </p><p> [13] JONATHAN D. NASH, DOUGLAS R. CALDWELL, MICHAEL J. ZELMAN, AND JAMES N. MOUM A Thermocouple Probe for High-Speed Temper
90、ature Measurement in the Ocean. Manuscript received 18 August 1997, in final form 9 November 1998:1447-1449.</p><p><b> 附錄 </b></p><p><b> 硬件原理圖</b></p><p&g
91、t;<b> 程序源代碼</b></p><p> # include <REG51.h></p><p> # include "FSM_Task.h"</p><p> #include "LCD1602.h"</p><p> #include &quo
92、t;DS1302.h"</p><p> #include "AT24C02.h"</p><p> #define KeyPort P1</p><p> extern unsigned char Test_LCD1602(void);</p><p> extern unsigned char Pro
93、cess_Menu(void);</p><p> unsigned char Process_sy(void);</p><p> #define FSM_MaxState 3</p><p> PROCESS FSM_MasterS[FSM_MaxState]= //data區(qū),全局變量.定義狀態(tài)機(jī)數(shù)組</p><p><b&
94、gt; {</b></p><p> {Test_LCD1602,1},</p><p> {Process_sy,1},</p><p> {Process_Menu,1},</p><p><b> };</b></p><p> volatile unsigned c
95、har FSM_MasterS_WorkMode=S1; //data區(qū),全局變量.定義當(dāng)前狀態(tài)機(jī)的初始值.</p><p> volatile unsigned char KeyValue=NoKey; //鍵值全局變量.外部Process_KeyScan()會(huì)對(duì)此操作.</p><p> volatile bit KeyState=0;//定義按鍵狀態(tài),1表示有
96、按鍵按下.,程序響應(yīng)后拉低.</p><p> extern volatile unsigned char LockState;</p><p> unsigned char dis[6];</p><p> bit flag22=1;</p><p> extern bit s1_flag;</p><p>
97、 volatile unsigned char DisBuf[2][17]=</p><p><b> {</b></p><p> " Locked ",</p><p> "By Wang Zulong "</p><p><b> };
98、</b></p><p> void Initial_FSM(void);</p><p> unsigned char KeyScan(void);</p><p> unsigned char Process_sy(void)</p><p><b> {</b></p><p
99、> if(s1_flag)</p><p><b> {</b></p><p> s1_flag=0;</p><p> LCD_clear();</p><p> GotoXY(5,0);</p><p> Print( " Locked &qu
100、ot;);</p><p> GotoXY(1,1);</p><p> Print( "By Wang Zulong ");</p><p><b> }</b></p><p> return 1;</p><p><b> }</b>&
101、lt;/p><p> unsigned char KeyScan(void)</p><p><b> {</b></p><p> unsigned char cord_h,cord_l,cord_key;//行列值</p><p> KeyPort=0xf0; //行線輸出全為0&l
102、t;/p><p> cord_h = KeyPort&0xf0; //讀入列線值</p><p> if(cord_h!=0xf0) //先檢測(cè)有無(wú)按鍵按下</p><p><b> {</b></p><p> Delay1ms(10); //延時(shí)去抖&
103、lt;/p><p> if(cord_h!=0xf0)</p><p><b> {</b></p><p> KeyPort=0x0f;</p><p> cord_l=KeyPort&0x0f; //讀入行線值</p><p> cord_key=cord_h|cord_
104、l; //鍵盤(pán)最后組合碼值</p><p> //else cord_key = NoKey; //無(wú)按鍵按下</p><p> switch(cord_key)</p><p><b> {</b></p><p> case 0xee:cord_key=Key1;break; //'1
105、'</p><p> case 0xde:cord_key=Key2;break; //'2'</p><p> case 0xbe:cord_key=Key3;break; //'3'</p><p> case 0x7e:cord_key=KeyESC;break; //ESC</p><
106、p> case 0xed:cord_key=Key4;break; //'4'</p><p> case 0xdd:cord_key=Key5;break; //'5'</p><p> case 0xbd:cord_key=Key6;break; //'6'</p><p> case 0
107、x7d:cord_key=KeyCR;break; //CR</p><p> case 0xeb:cord_key=Key7;break; //'7'</p><p> case 0xdb:cord_key=Key8;break; //'8'</p><p> case 0xbb:cord_key=Key9;brea
108、k; //'9'</p><p> case 0x7b:cord_key=KeyUP;break; //上</p><p> case 0xe7:cord_key=KeyF1;break; //'*'</p><p> case 0xd7:cord_key=Key0;break; //'0'</
109、p><p> case 0xb7:cord_key=KeyF2;break; //'#'</p><p> case 0x77:cord_key=KeyDOWN;break;//下</p><p> default:cord_key=NoKey; //無(wú)按鍵。</p><p><b> }&l
110、t;/b></p><p> while(KeyPort!=0x0f);</p><p><b> }</b></p><p> else cord_key = NoKey; //無(wú)按鍵按下</p><p><b> }</b></p><p>
111、; else cord_key = NoKey; //無(wú)按鍵按下</p><p> return cord_key;</p><p><b> }</b></p><p> //顯示"焦點(diǎn)箭頭"</p><p> if(0==Menu_Focus.Menu_Save_Wher
112、e)</p><p><b> {</b></p><p> DisBuf[0][0]=0x7E;</p><p> DisBuf[1][0]=' ';</p><p><b> }</b></p><p><b> else</b&
113、gt;</p><p><b> {</b></p><p> DisBuf[0][0]=' ';</p><p> DisBuf[1][0]=0x7E; </p><p><b> }</b></p><p> //根據(jù)菜單級(jí)別寫(xiě)顯示內(nèi)容到顯
114、示緩沖區(qū)</p><p> if(Menu_Focus.Menu_Save_Level==0)</p><p><b> { </b></p><p> Menu_Focus.Menu_Save_Items=4;</p><p> sprintf(&DisBuf[0][1],MenuMain[Me
115、nu_Focus.Menu_Save_Index].Menu_Name);</p><p> sprintf(&DisBuf[1][1],MenuMain[Menu_Focus.Menu_Save_Index+1].Menu_Name); </p><p><b> }</b></p><p><b> e
116、lse</b></p><p><b> {</b></p><p> Menu_Focus.Menu_Save_Items=3;</p><p> sprintf(&DisBuf[0][1],Menu1[Menu_Focus.Menu_Save_Index].Menu_Name);</p><p&
117、gt; sprintf(&DisBuf[1][1],Menu1[Menu_Focus.Menu_Save_Index+1].Menu_Name);</p><p><b> }</b></p><p> //顯示,顯示緩沖區(qū)的內(nèi)容到LCD</p><p> GotoXY(0,0);</p><p>
118、Print(DisBuf[0]);</p><p> GotoXY(0,1);</p><p> Print(DisBuf[1]);</p><p> //開(kāi)始按鍵檢測(cè),按鍵檢測(cè)帶消抖功能,并且是跳沿觸發(fā)</p><p> KeyValue = KeyScan();</p><p> if(KeyState=
溫馨提示
- 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. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機(jī)的紅外遙控密碼鎖設(shè)計(jì)-紅外遙控密碼鎖畢業(yè)論文
- 基于單片機(jī)紅外遙控密碼鎖設(shè)計(jì)
- 基于單片機(jī)的紅外遙控電子密碼鎖設(shè)計(jì)畢業(yè)設(shè)計(jì)論文
- 基于單片機(jī)的紅外遙控電子密碼鎖設(shè)計(jì)畢業(yè)設(shè)計(jì)論文
- 基于51單片機(jī)的紅外遙控密碼鎖
- 基于單片機(jī)的電子密碼鎖畢業(yè)論文
- 畢業(yè)論文---基于單片機(jī)的電子密碼鎖
- 基于-單片機(jī)的紅外遙控電子密碼鎖設(shè)計(jì)畢業(yè)設(shè)計(jì)資料論文
- 遠(yuǎn)紅外遙控電子密碼鎖畢業(yè)論文
- 基于單片機(jī)的紅外遙控智能密碼鎖設(shè)計(jì)
- 畢業(yè)論文--基于單片機(jī)的電子密碼鎖設(shè)計(jì)
- 畢業(yè)論文---基于單片機(jī)的電子密碼鎖設(shè)計(jì)
- 基于單片機(jī)紅外遙控密碼鎖的設(shè)計(jì)【畢業(yè)設(shè)計(jì)】
- 畢業(yè)論文---基于單片機(jī)的電子密碼鎖設(shè)計(jì)
- 基于單片機(jī)的電子密碼鎖的設(shè)計(jì)-畢業(yè)論文
- 基于單片機(jī)的電子密碼鎖的設(shè)計(jì)畢業(yè)論文
- 基于單片機(jī)電子密碼鎖設(shè)計(jì)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的紅外遙控智能密碼鎖設(shè)計(jì)
- 基于單片機(jī)的電子密碼鎖的設(shè)計(jì)【畢業(yè)論文】
- 單片機(jī)紅外遙控密碼鎖課程設(shè)計(jì)2
評(píng)論
0/150
提交評(píng)論