基于單片機(jī)的定時(shí)打鈴設(shè)計(jì)_第1頁
基于單片機(jī)的定時(shí)打鈴設(shè)計(jì)_第2頁
基于單片機(jī)的定時(shí)打鈴設(shè)計(jì)_第3頁
基于單片機(jī)的定時(shí)打鈴設(shè)計(jì)_第4頁
基于單片機(jī)的定時(shí)打鈴設(shè)計(jì)_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、本科畢業(yè)設(shè)計(jì)(論文)題 目 基于單片機(jī)的時(shí)控打鈴設(shè)計(jì) 專業(yè)班級(jí) 學(xué) 號(hào) 學(xué)生姓名 指導(dǎo)教師 設(shè)計(jì)所在單位 基于單片機(jī)的時(shí)控打鈴設(shè)計(jì)摘要:隨著家用電器的越來越普及和人們生活節(jié)奏的加快,人們對(duì)電器的依賴性進(jìn)一步提高,對(duì)電器的定時(shí)需求也進(jìn)一步增大。定時(shí)開關(guān)打鈴可用于工廠、學(xué)校等需要定時(shí)打鈴的場(chǎng)合。定時(shí)開關(guān)打鈴的使用能夠做到節(jié)能、安全、方便等。本文介紹了一種基于STC89C52RC單片機(jī)的定時(shí)開關(guān)打鈴設(shè)計(jì)方案。本文首先介紹定時(shí)開關(guān)打鈴設(shè)計(jì)要實(shí)現(xiàn)的功能,接著闡述系統(tǒng)電路的設(shè)計(jì)及原理說明,包括設(shè)計(jì)方案選擇、關(guān)鍵元器件介紹、電路設(shè)計(jì)說明(包括電源電路、鍵盤、單片機(jī)控制電路、液晶1602顯示、蜂鳴器工作電路)

2、軟件設(shè)計(jì)流程以及系統(tǒng)的測(cè)試。最后總結(jié)了定時(shí)開關(guān)打鈴設(shè)計(jì)完成的任務(wù),分析系統(tǒng)的不足并提出了系統(tǒng)的應(yīng)用展望。關(guān)鍵詞:STC89C52RC;定時(shí)打鈴;1602液晶;鍵盤 Design of Control Outlet Based on SCMAbstract: with the increasing popularity of household appliances and people life rhythm speeding up, people for the dependence of the electrical appliances to further improve, deman

3、d for electric timing also increases further. Time switch ringing the bell can be used in factories, schools and so on need to regular the occasion of ringing the bell. Time switch the use of ringing the bell can achieve energy saving, safety, convenience, etc. This paper introduces a kind of based

4、on STC89C52RC single-chip microcomputer timer switch design of ringing the bell.This paper introduces the time switch design in order to realize the function of ringing the bell, and then expounds design and principle of the circuit system, including design scheme selection, key components, circuit

5、design specificSTCion (including power circuit, keyboard, 1602 single chip microcomputer control circuit, liquid crystal display, relay circuit) software design process, and system test. Finally summarizes the time switch ringing the bell design task, the shortcoming of the system and put forward th

6、e applicSTCion prospect of the system.Key words:STC89C52RC,Timer switch,LCD 1602,Keyboard目錄目錄第一章 緒論11.1 選題的目的與意義1第二章 系統(tǒng)設(shè)計(jì)方案22.1 系統(tǒng)結(jié)構(gòu)與功能22.2 方案框圖22.2.1 方案122.2.2 方案222.3 開關(guān)的選擇32.4 顯示方式選擇42.5 時(shí)鐘的實(shí)現(xiàn)及單片機(jī)的選擇42.6 按鍵控制部分的實(shí)現(xiàn)4第三章 主要元器件原理及其應(yīng)用63.1 單片機(jī)STC89C52簡(jiǎn)介63.1.1 主要特性63.1.2 引腳功能說明73.2 1602工業(yè)字符型液晶簡(jiǎn)介93.2.1 主

7、要特性93.3 蜂鳴器介紹103.3.1 蜂鳴器的繼電特性103.3.2 蜂鳴器工作原理及特性103.3.3 蜂鳴器主要產(chǎn)品技術(shù)參數(shù)113.3.4 蜂鳴器的選用12第四章 硬件電路的設(shè)計(jì)134.1 單片機(jī)最小系統(tǒng)134.2 液晶顯示144.3 蜂鳴器驅(qū)動(dòng)電路154.4 鍵盤電路15第五章 系統(tǒng)軟件設(shè)計(jì)175.1 開發(fā)環(huán)境175.2 各模塊程序設(shè)計(jì)175.2.1 主程序流程圖175.2.2 DS1302計(jì)時(shí)程序的編寫185.2.3 LCD1602顯示電路程序編寫205.2.4 按鍵電路程序編寫21第六章 系統(tǒng)制作及調(diào)試226.1 硬件制作226.2 硬件電路調(diào)試226.2.1 獨(dú)立元件的檢測(cè)22

8、6.2.2 單片機(jī)最小系統(tǒng)的調(diào)試226.2.3 顯示模塊的調(diào)試236.2.4 鍵盤模塊的調(diào)試236.2.5 蜂鳴器電路的調(diào)試236.3 軟件調(diào)試236.3.1 顯示模塊調(diào)試236.3.2 時(shí)鐘模塊調(diào)試236.3.3 鍵盤模塊調(diào)試236.3.4 人機(jī)界面模塊調(diào)試23結(jié)束語24致謝25參考文獻(xiàn)26附錄一 系統(tǒng)原理圖27附錄二 程序清單28第49頁西安文理學(xué)院本科畢業(yè)設(shè)計(jì)(論文)第一章 緒論1.1 選題的目的與意義電鈴廣泛應(yīng)用于學(xué)校、機(jī)關(guān)及工礦企事業(yè)單位,可實(shí)現(xiàn)作息時(shí)間的固定周期打鈴,提示人們工作、學(xué)習(xí)或是休息。本文用單片機(jī)STC89S52作為控制芯片,開發(fā)了一種新型實(shí)用的電鈴控制電路。本電鈴控制電

9、路的優(yōu)點(diǎn):不再使用于電池做備用電源;數(shù)據(jù)存儲(chǔ)時(shí)間達(dá)十年;平時(shí)萬年歷顯示;打鈴時(shí)顯示不中斷。電鈴控制電路體積小、功耗低、可靠性好、性價(jià)比高。隨著社會(huì)的發(fā)展,科學(xué)技術(shù)水平的日益提高,多種多樣性能良好的電子產(chǎn)品逐漸取代了很多舊式的手動(dòng)器件,比如說這件基于單片機(jī)設(shè)計(jì)的電鈴控制器,不僅能夠非常準(zhǔn)確的預(yù)定的時(shí)刻響鈴,而且還能夠設(shè)定多個(gè)定時(shí)點(diǎn),更方便的是,它還能夠直觀的顯示星期、時(shí)、分、秒等信息,為人們的使用帶來了很多方便。自動(dòng)控制在人們的生活中可以說“無孔不入”,小到遙控兒童玩具,大到冰箱空調(diào)的智能化,都體現(xiàn)了科學(xué)技術(shù)的進(jìn)步。特別是單片機(jī)(SingleChip Microcomputer SCM)技術(shù)的應(yīng)

10、用,不但降低了生產(chǎn)成本,同時(shí)也方便了消費(fèi)者,使操作簡(jiǎn)潔、安全。單片機(jī)的應(yīng)用使許多復(fù)雜的事情,都能夠簡(jiǎn)單、方便的實(shí)現(xiàn)了。用單片機(jī)控制的自動(dòng)打鈴器,充分發(fā)揮單片機(jī)體積小,價(jià)格便宜,功耗低,可靠性好等特點(diǎn),充分發(fā)揮了單片機(jī)的控制優(yōu)勢(shì)。本打鈴器可用于作息時(shí)間控制,方便了廣大師生。第二章 系統(tǒng)設(shè)計(jì)方案本章主要討論了系統(tǒng)的總體方案以及各模塊的設(shè)計(jì)方案,包括了控制核心、開關(guān)、顯示模塊、時(shí)鐘電路以及鍵盤電路方案。2.1 系統(tǒng)結(jié)構(gòu)與功能系統(tǒng)總體設(shè)計(jì)主要實(shí)現(xiàn)以下功能:(1)人機(jī)交互界面:通過1602液晶顯示屏,與獨(dú)立按鍵建立起一套完善的人機(jī)交互界面。可以用于設(shè)置定時(shí)的參數(shù)。查看定時(shí)參數(shù),現(xiàn)實(shí)時(shí)間。(2)設(shè)置定時(shí)時(shí)

11、間:用戶通過人機(jī)交互界面,查找到設(shè)定時(shí)間界面,設(shè)置對(duì)應(yīng)的每一組的設(shè)置時(shí)間。(3)設(shè)置現(xiàn)實(shí)時(shí)間:由于各種外界因素會(huì)導(dǎo)致系統(tǒng)現(xiàn)實(shí)時(shí)間與實(shí)際現(xiàn)實(shí)時(shí)間相異,系統(tǒng)支持修改系統(tǒng)現(xiàn)實(shí)時(shí)間。用戶通過人機(jī)交互界面,查找到設(shè)定時(shí)間界面,設(shè)置系統(tǒng)現(xiàn)實(shí)時(shí)間。(4)報(bào)警:當(dāng)用戶設(shè)定時(shí)間結(jié)束時(shí)會(huì)出現(xiàn)報(bào)警提示。2.2 方案框圖2.2.1 方案1采用數(shù)字電路控制。用以74LS161計(jì)數(shù)器構(gòu)成的定時(shí)器電路做為智能打鈴的核心控制,用撥碼開關(guān)做為用戶設(shè)置按鍵,其中包括了定時(shí)時(shí)間設(shè)定,系統(tǒng)時(shí)間初始化設(shè)定,開始停止控制時(shí)間的設(shè)定。通過555定時(shí)電路為計(jì)數(shù)器提供時(shí)鐘,通過級(jí)聯(lián)74LS161做為倒計(jì)時(shí)電路,通過與輸出時(shí)間比較控制觸發(fā)器從而

12、控制電路的開關(guān)。采用數(shù)字電路設(shè)計(jì)的方案需要大量的74LS161芯片以提供較長(zhǎng)的定時(shí)時(shí)間(若定時(shí)時(shí)鐘為1Hz,定時(shí)10小時(shí)需要36000S,需要四片74LS161),系統(tǒng)結(jié)構(gòu)復(fù)雜,成本較高,系統(tǒng)穩(wěn)定性差,定時(shí)時(shí)間調(diào)整不靈活。故不采用此方案。2.2.2 方案2采用一種以STC89C52為核心的單片機(jī)控制方案。選用單片機(jī)STC89S52 作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的IO端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的定時(shí)控制功能。在單片機(jī)的外圍電路外接輸入鍵盤及1602液晶用于構(gòu)造人機(jī)交互界面以設(shè)置各個(gè)參數(shù)。其原理如下圖2.1所示:STC 89C52DS1302計(jì)時(shí)模塊蜂鳴器模塊紅外接收

13、模塊蜂鳴器按鍵模塊5V穩(wěn)壓模塊圖2.1 硬件電路原理圖由此可以看出方案二控制靈活、節(jié)約成本和穩(wěn)定性強(qiáng)的特點(diǎn),此外還具有擴(kuò)展功能,根據(jù)現(xiàn)實(shí)生活的需要此次設(shè)計(jì)采用此方案。本方案能獨(dú)立設(shè)置20組開啟和閉合的時(shí)間,同時(shí)能夠獨(dú)立設(shè)置星期一到星期日每一天的工作方式,如果當(dāng)前星期被選中同時(shí),當(dāng)前時(shí)間符合開啟時(shí)間,蜂鳴器閉合,否則蜂鳴器斷開。本方案打鈴有三種工作方式,即自動(dòng)工作方式,永久打開方式,永久關(guān)閉方式。2.3 開關(guān)的選擇現(xiàn)代自動(dòng)控制設(shè)備中,都存在一個(gè)電子電路電氣電路的互相連接的問題,一方面要是電子電路的控制信號(hào)能夠控制電氣電路的執(zhí)行元件(電動(dòng)機(jī)、電燈、熱水器等),另一方面又要為電子線路的電器電路提供良

14、好的電隔離,以保護(hù)電子電路和人身的安全。電子蜂鳴器和光耦合器便能起到這一橋梁的作用。下面簡(jiǎn)要介紹各個(gè)方案的特點(diǎn)。方案一:采用蜂鳴器作為控制220V通、斷的開關(guān)。固態(tài)蜂鳴器(SSR)與機(jī)電蜂鳴器相比,是一種沒有機(jī)械運(yùn)動(dòng),不含運(yùn)動(dòng)零件的蜂鳴器,但它具有與機(jī)電蜂鳴器本質(zhì)上相同的功能。SSR是一種全部由固態(tài)電子元件組成的無觸點(diǎn)開關(guān)元件,他利用電子元器件的點(diǎn),磁和光特性來完成輸入與輸出的可靠隔離,利用大功率三極管,功率場(chǎng)效應(yīng)管,單項(xiàng)可控硅和雙向可控硅等器件的開關(guān)特性,來達(dá)到無觸點(diǎn),無火花地接通和斷開被控電路。選用SRD-05VCD-SL-C蜂鳴器最大電路可達(dá)到10A,即蜂鳴器的正常工作范圍為0到2200

15、瓦,可以給大部分家用電器供電。方案二:采用光耦合器實(shí)現(xiàn)單片機(jī)控制開關(guān)。耦合器(optical coupler,英文縮寫為OC)亦稱光電隔離器,簡(jiǎn)稱光耦。光耦合器以光為媒介傳輸電信號(hào)。它對(duì)輸入、輸出電信號(hào)有良好的隔離作用,所以,它在各種電路中得到廣泛的應(yīng)用。目前它已成為種類最多、用途最廣的光電器件之一。本次設(shè)計(jì)開關(guān)部分可以用蜂鳴器也可以用光耦合器。考慮到本設(shè)計(jì)蜂鳴器足以滿足設(shè)計(jì)要求,而且蜂鳴器比光耦合器便宜,故選用蜂鳴器。2.4 顯示方式選擇在模擬電子和數(shù)字電子中,常用顯示數(shù)據(jù)的有數(shù)碼管和液晶顯示器。方案一:采用LED數(shù)碼管顯示。雖然功耗低,控制簡(jiǎn)單,但卻只能顯示數(shù)字和一些簡(jiǎn)單的字符,而且顯示信

16、息少,需要較多位的數(shù)碼管,占用了較多的單片機(jī)I/O口,沒有較好的人機(jī)界面。方案二:采用LCD液晶顯示,可以顯示所有字符及自定義字符,并能同時(shí)顯示多組數(shù)據(jù)、漢字,字符清晰。由于自身具有控制器,不但可以減輕主單片機(jī)的負(fù)擔(dān),而且可以實(shí)現(xiàn)菜單驅(qū)動(dòng)方式的顯示效果,達(dá)到友好的人機(jī)介面。LCD顯示能解決LED只能顯示數(shù)字等幾個(gè)簡(jiǎn)單字符的缺點(diǎn),性能好,效果多,控制方便,顯示方式多,且能耗也較少。這次設(shè)計(jì)中不僅要顯示相應(yīng)的時(shí)鐘、定時(shí)組別、目前運(yùn)行的模式,而且還要顯示出相應(yīng)的定時(shí)開始時(shí)間和結(jié)束時(shí)間,需要顯示的信息較多,所以采用方案二,用LCD顯示結(jié)果。2.5 時(shí)鐘的實(shí)現(xiàn)及單片機(jī)的選擇時(shí)鐘的實(shí)現(xiàn)可已通過使用時(shí)鐘芯片

17、或者單片機(jī)的定時(shí)器實(shí)現(xiàn)。下面簡(jiǎn)要介紹幾種方案的特點(diǎn)。單片機(jī)僅用于控制蜂鳴器、鍵盤,實(shí)現(xiàn)時(shí)鐘和定時(shí),用52結(jié)構(gòu)的有STCmel的STC89CXX系列、STC89SXX系列、STC89C20系列(20引腳)或STC的所有單片機(jī)都可以實(shí)現(xiàn)。根據(jù)在學(xué)校比較流行的學(xué)習(xí)單片機(jī)是STC89C52系列,而且STC89C52單片機(jī)便宜,購(gòu)買方便,下載方便,故單片機(jī)選用STC89C52單片機(jī)。方案一:時(shí)鐘通過使用時(shí)鐘芯片來實(shí)現(xiàn),控制部分通過使用單片機(jī)來實(shí)現(xiàn)。時(shí)鐘芯片種類非常多,有內(nèi)置晶振及充電電池的,也有外置晶振的,現(xiàn)在流行的時(shí)鐘芯片有DS1302、 DS1307、PCF8485、SB2068等。使用時(shí)鐘芯片可以

18、得到準(zhǔn)確的時(shí)鐘走時(shí),可用簡(jiǎn)單的程序?qū)崿F(xiàn)定時(shí)開關(guān)打鈴的定時(shí)功能。方案二:時(shí)鐘通過單片機(jī)的內(nèi)部定時(shí)器來實(shí)現(xiàn)時(shí)鐘。單片機(jī)的內(nèi)部定時(shí)器可實(shí)現(xiàn)較為精確的時(shí)鐘走時(shí),定時(shí)50毫秒的誤差率極小,可達(dá)到定時(shí)開關(guān)打鈴的使用要求。使用單片機(jī)內(nèi)部定時(shí)器可簡(jiǎn)化硬件電路,可以節(jié)省開支,但是編程的難度有所提高。本次設(shè)采用方案一,使用1302可以得到較為準(zhǔn)確的時(shí)間信號(hào)。2.6 按鍵控制部分的實(shí)現(xiàn)時(shí)鐘時(shí)間和定時(shí)時(shí)間的設(shè)置功能可以通過按鍵來實(shí)現(xiàn)。按鍵的實(shí)現(xiàn)可以通過以下兩種方案實(shí)現(xiàn):方案一:?jiǎn)纹瑱C(jī)的每一個(gè)I/O口與一個(gè)按鍵相連,這樣就可以根據(jù)掃描I/O口的電平變化實(shí)現(xiàn)相關(guān)功能。這樣可以很簡(jiǎn)單的實(shí)現(xiàn)按鍵的功能。方案二:使用矩陣鍵盤實(shí)

19、現(xiàn)。矩陣鍵盤可以用較少的I/O口實(shí)現(xiàn)多個(gè)按鍵功能,能節(jié)省更多的I/O口,利于系統(tǒng)擴(kuò)展功能。但是編程復(fù)雜。根據(jù)本定時(shí)開關(guān)打鈴的設(shè)置要求,用到6個(gè)按鍵。通過兩個(gè)方案的對(duì)比,方案一的實(shí)施辦法更符合要求。第三章 主要元器件原理及其應(yīng)用本章主要討論了各模塊元器件的選擇以及元器件的工作原理。3.1 單片機(jī)STC89C52簡(jiǎn)介主CPU電路選用STC89C52RC系列單片機(jī),STC89C52RC是采用8052核的ISP(In System Programming)在系統(tǒng)可編程芯片,最高工作時(shí)鐘頻率為80MHz,片內(nèi)含8K Bytes的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件兼容標(biāo)準(zhǔn)MCS-52指令

20、系統(tǒng)及80C52引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,具有在系統(tǒng)可編程(ISP)特性,配合PC端的控制程序即可將用戶的程序代碼下載進(jìn)單片機(jī)內(nèi)部,省去了購(gòu)買通用編程器,而且速度更快。STC89C52RC系列單片機(jī)是單時(shí)鐘/ 機(jī)器周期(1T)的兼容8052 內(nèi)核單片機(jī),是高速/ 低功耗的新一代8052 單片機(jī),全新的流水線/ 精簡(jiǎn)指令集結(jié)構(gòu),內(nèi)部集成MAX810 專用復(fù)位電路。3.1.1 主要特性(1)增強(qiáng)型1T流水線/精簡(jiǎn)指令集結(jié)構(gòu)8052CPU(2)工作電壓:3.4V-5.5V(5V 單片機(jī))/2.0V-3.8V(3V 單片機(jī))(3)工作頻率范圍:0-35MHz

21、,相當(dāng)于普通8052的0420MHz.實(shí)際工作頻率可達(dá)48MHz.(4)用戶應(yīng)用程序空間12K/10K/8K/6K/4K/2K字節(jié)(5)片上集成522字節(jié)RAM(6)通用I/O口(27/23個(gè)),復(fù)位后為:準(zhǔn)雙向口/弱上拉(普通8052傳統(tǒng)I/O口)可設(shè)置成四種模式:準(zhǔn)雙向口/弱上拉,推挽/強(qiáng)上拉,僅為輸入/高阻,開漏每個(gè)I/O口驅(qū)動(dòng)能力均可達(dá)到20mA,但整個(gè)芯片最大不得超過55mA(7)ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無需專用編程器可通過串口(P3.0/P3.1)直接下載用戶程序,數(shù)秒即可完成一片(8)EEPROM功能(9)看門狗(10)內(nèi)部集成MAX810專用復(fù)位電路(外

22、部晶體20M以下時(shí),可省外部復(fù)位電路)(11)時(shí)鐘源:外部高精度晶體/時(shí)鐘,內(nèi)部R/C振蕩器。用戶在下載用戶程序時(shí),可選擇是使用內(nèi)部R/C 振蕩器還是外部晶體/時(shí)鐘。常溫下內(nèi)部R/C振蕩器頻率為:5.2MHz6.8MHz。精度要求不高時(shí),可選擇使用內(nèi)部時(shí)鐘,因?yàn)橛袦仄?qǐng)選4MHz 8MHz(12)有2個(gè)16位定時(shí)器/計(jì)數(shù)器(13)外部中斷2路,下降沿中斷或低電平觸發(fā)中斷,Power Down 模式可由外部中斷低電平觸發(fā)中斷方式喚醒(14)PWM(4路)/PCA(可編程計(jì)數(shù)器陣列),也可用來再實(shí)現(xiàn)4個(gè)定時(shí)器或4個(gè)外部中斷(上升沿中斷/下降沿中斷均可支持)(15)STC89Cc526AD具有AD

23、C功能。10位精度ADC,共8路 (16)通用異步串行口(UART)(17)SPI同步通信口,主模式/從模式 (18)工作溫度范圍:0-75/-40-+85 (19)封裝:PDIP-28,SOP-28,PDIP-20,SOP-20,PLCC-32,TSSOP-20(超小封狀,定貨)3.1.2 引腳功能說明管腳圖如3.1所示。圖3.1 STC89C52管腳圖P0口:P0口是一個(gè)8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0具有內(nèi)部上拉電阻。在fla

24、sh編程時(shí),P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。P1口:P1口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P1輸出緩沖器能驅(qū)動(dòng)4個(gè) TTL邏輯電平。對(duì)P1端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)器2 的觸發(fā)輸入(P1.1/T2EX),具體如下表所示。 在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。引腳號(hào)第二功能P1.0 T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入

25、),時(shí)鐘輸出P1.1 T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和方向控制)P1.5 MOSI(在線系統(tǒng)編程用)P1.6 MISO(在線系統(tǒng)編程用)P1.7 SCK(在線系統(tǒng)編程用)P2口:P2口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL 邏輯電平。對(duì)P2端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX DPTR)時(shí),P2口送出高八位地址。在這種應(yīng)用中,P2口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地

26、址(如MOVX RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。P3 口:P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL 邏輯電平。對(duì)P3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為STC89C52特殊功能(第二功能)使用,如下表所示。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。端口引腳第二功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 INT

27、O(外中斷0)P3.3 INT1(外中斷1)P3.4 TO(定時(shí)/計(jì)數(shù)器0)P3.5 T1(定時(shí)/計(jì)數(shù)器1)P3.6 WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)此外,P3口還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號(hào)。RST復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。ALE/PROG當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。對(duì)

28、FLASH存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。PSEN程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)STC89C52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次PSEN信號(hào)。EA/VPP外部訪問允許,欲使CPU僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFFH),E

29、A端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。FLASH存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。3.2 1602工業(yè)字符型液晶簡(jiǎn)介3.2.1 主要特性工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符。(16列2行)。1602液晶管腳圖如圖3.2所示。圖3.2 1602液晶管腳圖1602字符型LCD通常有14條引腳線或16條引腳線的LCD,多出來的2條線是背光電源線VCC(15腳)和地線GND(16腳),其控制原理與14腳的

30、LCD完全一樣。1602管腳說明表如表3.1所示。表3.1 1602液晶管腳說明引腳符號(hào)功能說明1VSS一般接地2VDD接電源(+5V)3V0液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高(對(duì)比度過高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對(duì)比度)。4RSRS為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器。5R/WR/W為讀寫信號(hào)線,高電平(1)時(shí)進(jìn)行讀操作,低電平(0)時(shí)進(jìn)行寫操作。6EE(或EN)端為使能(enable)端,下降沿使能。7DB0低4位三態(tài)、 雙向數(shù)據(jù)總線 0位(最低位)8DB1低4位三態(tài)、 雙向數(shù)據(jù)總線 1位9DB2低4位

31、三態(tài)、 雙向數(shù)據(jù)總線 2位10DB3低4位三態(tài)、 雙向數(shù)據(jù)總線 3位11DB4高4位三態(tài)、 雙向數(shù)據(jù)總線 4位12DB5高4位三態(tài)、 雙向數(shù)據(jù)總線 5位13DB6高4位三態(tài)、 雙向數(shù)據(jù)總線 6位14DB7高4位三態(tài)、 雙向數(shù)據(jù)總線 7位(最高位)(也是busy flag)15BLA背光電源正極16BLK背光 電源負(fù)極3.3 蜂鳴器介紹蜂鳴器是一種電子控制器件,它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路),通常應(yīng)用于自動(dòng)控制電路中,它實(shí)際上是用較小的電流去控制較大電流的一種“自動(dòng)開關(guān)”。故在電路中起著自動(dòng)調(diào)節(jié)、安全保護(hù)、轉(zhuǎn)換電路等作用。3.3.1 蜂鳴器的繼電特性蜂鳴器的輸入信號(hào)x

32、從0連續(xù)增加達(dá)到銜鐵開始吸合時(shí)的動(dòng)作值xx,蜂鳴器的輸出信號(hào)立刻繼續(xù)增大,輸出信號(hào)y將不再起變化。當(dāng)輸入量x從某一大于xx值下降到xf,蜂鳴器開始釋放,常開觸點(diǎn)斷開。我們把蜂鳴器的這種特性叫做繼電特性,也叫蜂鳴器的輸入-輸出特性。釋放值xf與動(dòng)作值xx的比值叫做反饋系數(shù),即Kf=xf/xx。觸點(diǎn)上輸出的控制功率Pc與線圈吸收的最小功率P0之比叫做蜂鳴器的控制系數(shù),即Kc=Pc/P0。3.3.2 蜂鳴器工作原理及特性(1)電磁蜂鳴器的工作原理和特性電磁式蜂鳴器一般由鐵芯、線圈、銜鐵、觸點(diǎn)簧片等組成的。只要在線圈兩端加上一定的電壓,線圈中就會(huì)流過一定的電流,從而產(chǎn)生電磁效應(yīng),銜鐵就會(huì)在電磁力吸引的

33、作用下克服返回彈簧的拉力吸向鐵芯,從而帶動(dòng)銜鐵的動(dòng)觸點(diǎn)與靜觸點(diǎn)(常開觸點(diǎn))吸合。當(dāng)線圈斷電后,電磁的吸力也隨之消失,銜鐵就會(huì)在彈簧的反作用力返回原來的位置,使動(dòng)觸點(diǎn)與原來的靜觸點(diǎn)(常閉觸點(diǎn))釋放。這樣吸合、釋放,從而達(dá)到了在電路中的導(dǎo)通、切斷的目的。對(duì)于蜂鳴器的“常開、常閉”觸點(diǎn),可以這樣來區(qū)分:蜂鳴器線圈未通電時(shí)處于斷開狀態(tài)的靜觸點(diǎn),稱為“常開觸點(diǎn)”;處于接通狀態(tài)的靜觸點(diǎn)稱為“常閉觸點(diǎn)”。(2)熱敏干簧蜂鳴器的工作原理和特性熱敏干簧蜂鳴器是一種利用熱敏磁性材料檢測(cè)和控制溫度的新型熱敏開關(guān)。它由感溫磁環(huán)、恒磁環(huán)、干簧管、導(dǎo)熱安裝片、塑料襯底及其他一些附件組成。熱敏干簧蜂鳴器不用線圈勵(lì)磁,而由恒

34、磁環(huán)產(chǎn)生的磁力驅(qū)動(dòng)開關(guān)動(dòng)作。恒磁環(huán)能否向干簧管提供磁力是由感溫磁環(huán)的溫控特性決定的。(3)固態(tài)蜂鳴器(SSR)的工作原理和特性固態(tài)蜂鳴器是一種兩個(gè)接線端為輸入端,另外兩個(gè)接線端為輸出端的四端器件,中間采用隔離器件實(shí)現(xiàn)輸入輸出的電隔離。 固態(tài)蜂鳴器按負(fù)載電源類型可分為交流型和直流型。按開關(guān)型式可分為常開型和常閉型。按隔離型式可分為混合型、變壓器隔離型和光電隔離型,其中以光電隔離型最多。(4)磁簧蜂鳴器磁簧蜂鳴器是以線圈產(chǎn)生磁場(chǎng)將磁簧管發(fā)生動(dòng)作的蜂鳴器,為一種線圈傳感裝置。因此磁簧蜂鳴器具有尺寸小、輕量、反應(yīng)速度快、短跳動(dòng)時(shí)間等特性。 當(dāng)整塊鐵磁金屬或者其它導(dǎo)磁物質(zhì)與之靠近的時(shí)候發(fā)生動(dòng)作,開通或者

35、閉合電路。由永久磁鐵和干簧管組成。永久磁鐵、干簧管固定在一個(gè)不導(dǎo)磁也不帶有磁性的支架上。以永久磁鐵的南北極的連線為軸線,這個(gè)軸線應(yīng)該與干簧管的軸線重合或者基本重合。由遠(yuǎn)及近的調(diào)整永久磁鐵與干簧管之間的距離,當(dāng)干簧管剛好發(fā)生動(dòng)作(對(duì)于常開的干簧管,變?yōu)殚]合;對(duì)于常閉的干簧管,變?yōu)閿嚅_)時(shí),將磁鐵的位置固定下來。這時(shí),當(dāng)有整塊導(dǎo)磁材料,例如鐵板同時(shí)靠近磁鐵和干簧管時(shí),干簧管會(huì)再次發(fā)生動(dòng)作,恢復(fù)到?jīng)]有磁場(chǎng)作用時(shí)的狀態(tài);當(dāng)該鐵板離開時(shí),干簧管即發(fā)生相反方向的動(dòng)作。磁簧蜂鳴器結(jié)構(gòu)堅(jiān)固,觸點(diǎn)為密封狀態(tài),耐用性高,可以作為機(jī)械設(shè)備的位置限制開關(guān),也可以用以探測(cè)鐵制門、窗等是否在指定位置。(5)光蜂鳴器光蜂鳴

36、器為AC/DC并用的半導(dǎo)體蜂鳴器,是發(fā)光器件和受光器件一體化的器件。輸入側(cè)和輸出側(cè)電氣性絕緣,但信號(hào)可以通過光信號(hào)傳輸。 其特點(diǎn)為壽命為半永久性、微小電流驅(qū)動(dòng)信號(hào)、高阻抗絕緣耐壓、超小型、光傳輸、無接點(diǎn)等。主要應(yīng)用于量測(cè)設(shè)備、通信設(shè)備、保全設(shè)備、醫(yī)療設(shè)備等。3.3.3 蜂鳴器主要產(chǎn)品技術(shù)參數(shù)(1)額定工作電壓額定工作電壓是指蜂鳴器正常工作時(shí)線圈所需要的電壓,也就是控制電路的控制電壓,根據(jù)蜂鳴器的型號(hào)不同,可以是交流電壓,也可以是直流電壓。(2)直流電阻直流電阻是指蜂鳴器中線圈的直流電阻,可以通過萬能表測(cè)量。 (3)吸合電流吸合電流是指蜂鳴器能夠產(chǎn)生吸合動(dòng)作的最小電流。在正常使用時(shí),給定的電流必

37、須略大于吸合電流,這樣蜂鳴器才能穩(wěn)定地工作。而對(duì)于線圈所加的工作電壓,一般不要超過額定工作電壓的1.5倍,否則會(huì)產(chǎn)生較大的電流而把線圈燒毀。 (4)釋放電流釋放電流是指蜂鳴器產(chǎn)生釋放動(dòng)作的最大電流。當(dāng)蜂鳴器吸合狀態(tài)的電流減小到一定程度時(shí),蜂鳴器就會(huì)恢復(fù)到未通電的釋放狀態(tài)。這時(shí)的電流遠(yuǎn)遠(yuǎn)小于吸合電流。 (5)觸點(diǎn)切換電壓和電流觸點(diǎn)切換電壓和電流是指蜂鳴器允許加載的電壓和電流。它決定了蜂鳴器能控制電壓和電流的大小,使用時(shí)不能超過此值,否則很容易損壞蜂鳴器的觸點(diǎn)。3.3.4 蜂鳴器的選用(1)先了解必要的條件 控制電路的電源電壓,能提供的最大電流;被控制電路中的電壓和電流; 被控電路需要幾組、什么形

38、式的觸點(diǎn)。選用蜂鳴器時(shí),一般控制電路的電源電壓可作為選用的依據(jù)??刂齐娐窇?yīng)能給蜂鳴器提供足夠的工作電流,否則蜂鳴器吸合是不穩(wěn)定的。 (2)查閱有關(guān)資料確定使用條件后,可查找相關(guān)資料,找出需要的蜂鳴器的型號(hào)和規(guī)格號(hào)。若手頭已有蜂鳴器,可依據(jù)資料核對(duì)是否可以利用。最后考慮尺寸是否合適。(3)注意器具的容積。若是用于一般用電器,除考慮機(jī)箱容積外,小型蜂鳴器主要考慮電路板安裝布局。對(duì)于小型電器,如玩具、遙控裝置則應(yīng)選用超小型蜂鳴器產(chǎn)品。通過上面的性能了解和比較,及考慮的器件的性價(jià)比,本設(shè)計(jì)選擇電磁蜂鳴器。第四章 硬件電路的設(shè)計(jì)本章節(jié)詳細(xì)討論了各個(gè)模塊的具體電路的設(shè)計(jì),包括單片機(jī)最小系統(tǒng)、液晶顯示模塊、

39、蜂鳴器驅(qū)動(dòng)模塊以及鍵盤模塊。4.1 單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng)由復(fù)位電路、時(shí)鐘電路和單片機(jī)STC89C52組成,如圖4.3所示。圖4.1 單片機(jī)最小系統(tǒng)電路(1)時(shí)鐘電路模塊由于系統(tǒng)需要計(jì)算精確時(shí)間,所以該模塊使用了一個(gè)12MHz的晶振。時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào),為了保證同步工作方式的實(shí)現(xiàn),電路應(yīng)在唯一的時(shí)鐘信號(hào)控制下嚴(yán)格地按照時(shí)序工作。時(shí)鐘電路圖如圖4.4所示。圖4.2 時(shí)鐘電路(2)復(fù)位電路模塊復(fù)位是單片機(jī)的初始化操作,單片機(jī)啟動(dòng)運(yùn)行時(shí),都必須復(fù)位。復(fù)位電路包括了上電復(fù)位于手動(dòng)復(fù)位兩個(gè)部分。單片機(jī)復(fù)位信號(hào)為高電平復(fù)位。商店復(fù)位工作原理:上電時(shí)對(duì)電容充電,使復(fù)位管腳電平拉

40、高單片機(jī)復(fù)位,沖完后電容隔斷電源于復(fù)位管腳由下拉電阻拉至第電平單片機(jī)正常工作。手動(dòng)復(fù)位原理:按下按鈕復(fù)位管腳電平被拉高單片機(jī)復(fù)位,松開按鈕復(fù)位管腳電平拉低單片機(jī)正常工作。它的作用是使CPU和系統(tǒng)中其他的部件處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。一般,52系列單片機(jī)本身是不能自動(dòng)復(fù)位的,必須配合相應(yīng)的外部電路才能實(shí)現(xiàn)。當(dāng)程序和電路都要回到最初的狀態(tài)時(shí)使用此電路。復(fù)位電路圖如圖4.5所示。圖4.3 復(fù)位電路(3)單片機(jī)STC89C52宏晶公司的89C52單片機(jī)是低功耗的具有4KB在線可編程Flash存儲(chǔ)器的單片機(jī)。片內(nèi)的Flash可允許在線重新編程,也可使用通用非易失性存儲(chǔ)器編程。它將通用

41、CPU和在線可編程Flash集成在一個(gè)芯片上,形成了功能強(qiáng)大、使用靈活和具有較高性能價(jià)格比的微控制器。4.2 液晶顯示本設(shè)計(jì)選用的1602液晶為16管腳液晶,即帶背光液晶。與單片機(jī)接口設(shè)計(jì)如下:714:連接P0端口4: 連接P2.65: 連接地6: 連接P2.71602液晶顯示電路圖如圖4.6所示。圖4.4 1602液晶顯示電路4.3 蜂鳴器驅(qū)動(dòng)電路蜂鳴器的驅(qū)動(dòng)電路如圖4.4所示。這是典型的蜂鳴器驅(qū)動(dòng)電路。單片機(jī)是一個(gè)弱電器件,一般情況下它們大多工作在5V甚至更低。驅(qū)動(dòng)電流在mA級(jí)以下。而要把它用于一些大功率場(chǎng)合,比如蜂鳴器驅(qū)動(dòng),顯然是不行的。所以就要有一個(gè)環(huán)節(jié)來銜接,這個(gè)環(huán)節(jié)就是所謂的“功率

42、驅(qū)動(dòng)”。蜂鳴器驅(qū)動(dòng)就是一個(gè)典型的、簡(jiǎn)單的功率驅(qū)動(dòng)環(huán)節(jié)。圖中三極管8050有兩個(gè)作用:一個(gè)是起放大作用,一個(gè)是起開關(guān)作用(嚴(yán)格來講開關(guān)作用是放大作用的極限情況)。 8050的基極連接P20口,當(dāng)P20為低電平時(shí),蜂鳴器導(dǎo)通,當(dāng)P20為高電平時(shí)蜂鳴器斷開。圖4.5 蜂鳴器驅(qū)動(dòng)電路4.4 鍵盤電路本設(shè)計(jì)采用了獨(dú)立鍵盤設(shè)計(jì),只是用了6個(gè)獨(dú)立案件與單片機(jī)IO口連接,利用簡(jiǎn)單的邏輯方式實(shí)現(xiàn)了人機(jī)交互界面。該界面操作簡(jiǎn)單,便于控制。人機(jī)界面在軟件設(shè)計(jì)板塊中將詳細(xì)介紹。獨(dú)立鍵盤電路如圖4.8所示。圖4.6 鍵盤電路第五章 系統(tǒng)軟件設(shè)計(jì)本章詳細(xì)介紹了各個(gè)模塊的軟件設(shè)計(jì)流程以及部分源代碼,包括了時(shí)鐘程序、人機(jī)界面

43、以及主程序。5.1 開發(fā)環(huán)境STC89C52單片機(jī)軟件開發(fā)平臺(tái)為Keil uvision4 C52,仿真環(huán)境為Protues,下載軟件為STC_ISP。Keil C52是美國(guó)Keil Software公司出品的52系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部分組合在一起。運(yùn)行Keil軟件需要WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。Protues軟件是英國(guó)Labcen

44、ter electronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。雖然目前國(guó)內(nèi)推廣剛起步,但已受到單片機(jī)愛好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開發(fā)應(yīng)用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8052、HC11、PIC10/12/16/18/24/30/DsPIC

45、33、AVR、ARM、8086和MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯。STC-ISP 是一款單片機(jī)下載編程燒錄軟件,是針對(duì)STC系列單片機(jī)而設(shè)計(jì)的,可下載STC89系列、12C2052系列和12C5410等系列的STC單片機(jī),使用簡(jiǎn)便,現(xiàn)已被廣泛使用。5.2 各模塊程序設(shè)計(jì)5.2.1 主程序流程圖在本次設(shè)計(jì)中,主程序主要是在單片機(jī)的控制下,建立人機(jī)操作界面,對(duì)設(shè)定時(shí)間進(jìn)行儲(chǔ)存分析,驅(qū)動(dòng)液晶顯示出相關(guān)信息,并通過對(duì)比分析定時(shí)時(shí)間與時(shí)鐘,控制蜂鳴器的通、斷,從而達(dá)到控制打鈴的通、斷

46、電。在這個(gè)過程中,單片機(jī)首先進(jìn)行初始化,包括設(shè)置單片機(jī)各個(gè)端口的方向,各個(gè)變量的初始化,液晶顯示初始化、蜂鳴器斷開以及單片機(jī)振蕩頻率的校準(zhǔn)等。整個(gè)系統(tǒng)軟件設(shè)計(jì)的流程圖如圖5.1所示。開始系統(tǒng)初始化是否有鍵按下是否到達(dá)定時(shí)時(shí)間蜂鳴器吸合NYN執(zhí)行按鍵程序Y圖5.1 主程序流程圖5.2.2 DS1302計(jì)時(shí)程序的編寫 DS1302串行時(shí)鐘芯片的主要組成部分:移位寄存器控制邏輯、振蕩器、實(shí)時(shí)時(shí)鐘以及RAM。為了初始化任何的數(shù)據(jù)傳送,把RST置為高電平且把提供地址和命令信息的8位裝入到移位寄存器中。數(shù)據(jù)在SCLK的上升沿串行輸入。無論是讀周期還是寫周期發(fā)生,也無論傳送方式是單字節(jié)傳送還是多字節(jié)傳送,開

47、始8位指定的40個(gè)字節(jié)中的那個(gè)將被訪問。在開始8個(gè)時(shí)鐘周期把命令字裝入移位寄存器之后,另外的時(shí)鐘在讀操作時(shí)輸出數(shù)據(jù),在寫操作時(shí)輸入數(shù)據(jù)。時(shí)鐘脈沖的個(gè)數(shù)在單字節(jié)方式下為8加8,在多字節(jié)方式下為8加最大可達(dá)248的數(shù)。 如圖18為DS1302的命令字節(jié),每一數(shù)據(jù)傳送由命令字節(jié)初始化。最高位有效位MSB必須為1。如果它是零,禁止寫DS1302,位6為邏輯0指定時(shí)鐘日歷數(shù)據(jù);邏輯1指定RAM數(shù)據(jù)。位1和5指定進(jìn)行輸入或輸出的特定寄存器。最低位LSB為邏輯0指定進(jìn)行寫操作;邏輯1指定進(jìn)行讀操作,命令字節(jié)總是從最低有效為L(zhǎng)SB開始輸入。圖18 DS1302的命令字節(jié)圖19所示為DS1302的讀寫時(shí)序。多字

48、節(jié)方式下,通過對(duì)地址31尋址,可以把時(shí)鐘/日歷或RAM寄存器規(guī)定為多字節(jié)方式。如前所述,位6規(guī)定為時(shí)鐘或RAM而位0規(guī)定為讀或?qū)?,在時(shí)鐘/日歷寄存器中的地址9至31或RAM寄存器的地址31不能存儲(chǔ)數(shù)據(jù),在多字節(jié)方式中讀或?qū)憦牡刂?的位0開始。當(dāng)以多字節(jié)方式寫RAM時(shí),為了傳送數(shù)據(jù)不必寫所有31字節(jié),不管是否寫了全部31字節(jié),所寫的每一個(gè)字節(jié)都將傳送至RAM。 圖5.2 DS1302的讀寫時(shí)序DS1302總共有12個(gè)寄存器,其中的7個(gè)寄存器分別與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式。表3為它的日歷、時(shí)間寄存器及控制字,其中奇數(shù)為讀操作,偶數(shù)為寫操作【4】。表1寄存器地址和內(nèi)容寫寄存器讀寄存

49、器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0秒80H81HCH10秒秒分82H83H010分分小時(shí)84H85H12/24010時(shí)時(shí)A/P日86H87H0010日日月88H89H00010月月星期8AH8BH00000星期年8CH8DH10年年控制8EH8FHWP0000000這部分的編程中設(shè)置固定模式定時(shí)的時(shí)候,主要用到的是計(jì)時(shí)過程中的分的數(shù)值變化,執(zhí)行定時(shí)時(shí)把分的數(shù)值提取出來,在這基礎(chǔ)上加上模式定時(shí)時(shí)間,待到下一個(gè)時(shí)間到達(dá)定時(shí)時(shí)間時(shí)執(zhí)行相反動(dòng)作。5.2.3 LCD1602顯示電路程序編寫這部分的顯示過程主要是顯示從DS1302讀取的日歷和時(shí)鐘數(shù)值,同時(shí)當(dāng)檢測(cè)到獨(dú)立式按鍵

50、有鍵按下時(shí),顯示相應(yīng)的設(shè)置菜單等?;静僮鲿r(shí)序:讀狀態(tài):輸入:RS=L,RW=H,E=H 輸出:DOD7=狀態(tài)字寫狀態(tài):輸入:RS=L,RW=L,D0D7=指令碼,E=高脈沖 輸出:無讀數(shù)據(jù):輸入:RS=H,RW=H,E=H 輸出:DOD7=數(shù)據(jù)寫數(shù)據(jù):輸入:RS=H,RW=L,D0D7=數(shù)據(jù),E=高脈沖 輸出:無【8】 圖20為L(zhǎng)CD1602的具體讀寫時(shí)序。a.讀操作時(shí)序b.寫操作時(shí)序圖5.3 LCD1602的讀寫時(shí)序5.2.4 按鍵電路程序編寫 按鍵電路有6個(gè)獨(dú)立按鍵組成,分別是界面上翻鍵,界面下翻鍵,光標(biāo)移動(dòng)按鍵,加鍵,減鍵,確定鍵。本設(shè)計(jì)中有20組數(shù)據(jù)控制打鈴,界面上翻和下翻鍵能進(jìn)入修

51、改模式,分別修改各組數(shù)據(jù)以及當(dāng)前時(shí)間,每組數(shù)據(jù)包括7個(gè)控制星期是否選擇的數(shù)字,以及開始的時(shí)間和終止的時(shí)間,在各個(gè)界面內(nèi)通過光標(biāo)移動(dòng)鍵來實(shí)現(xiàn)對(duì)不同數(shù)字選中,選中之后通過增加和減小鍵來增大和減小。修改數(shù)據(jù)成功之后通過確定鍵來寫入。第六章 系統(tǒng)制作及調(diào)試6.1 硬件制作電路設(shè)計(jì)軟件Protel是目前國(guó)內(nèi)最流行的通用CAD軟件,它是將電路原理圖設(shè)計(jì)、PCB板圖設(shè)計(jì)、電路仿真和PLD設(shè)計(jì)等多個(gè)實(shí)用工具軟件組合后構(gòu)成的CAD工作平臺(tái)。本設(shè)計(jì)是首先在Protel軟件上畫好單片機(jī)最小系統(tǒng)、液晶與單片機(jī)連接電路、蜂鳴器的外圍電路及與單片機(jī)的鏈接電路、鍵盤與單片機(jī)的連接電路、電源電路等的原理圖,然后對(duì)原理圖進(jìn)行仿

52、真,仿真無誤后生成網(wǎng)絡(luò)表后裝載到PCB環(huán)境中生成需要的PCB。其中,單片機(jī)控制蜂鳴器部分為了確保其在實(shí)際應(yīng)用的準(zhǔn)確性,首先在萬用板上焊接好蜂鳴器電路,并接上打鈴后對(duì)其進(jìn)行驗(yàn)證,證明使用本電路能正常工作后,再打印PCB、轉(zhuǎn)印到銅板上、用用雙氧水稀釋濃鹽酸腐蝕、鉆孔,并根據(jù)原理圖由低器件(如電阻)到高器件安放元器件(確保元器件的參數(shù)與電路中的一致),然后焊接元器件,完成了定時(shí)快關(guān)打鈴的硬件電路板的制作。6.2 硬件電路調(diào)試硬件單元電路制作好后,在上電之前,應(yīng)該先用萬用表對(duì)各個(gè)獨(dú)立元件進(jìn)行檢查,在排除了虛焊、短路、斷路等問題后再通電進(jìn)行電路功能的調(diào)試。具體調(diào)試過程如下所述:6.2.1 獨(dú)立元件的檢測(cè)

53、任何組裝好的電子電路,在通電調(diào)試之前,必須認(rèn)真檢查電路連線是否有誤。檢查的方法是對(duì)照電路圖,按一定的順序逐級(jí)對(duì)應(yīng)檢查,例如:對(duì)電路板的電阻阻值進(jìn)行確定,可以通過讀取電阻上的色環(huán)進(jìn)行確認(rèn)。特別是注意電源是否接錯(cuò),電源與地是否有短接,集成電路和晶體管的引腳是否接錯(cuò),輕輕撥一撥元器件,觀察焊點(diǎn)是否牢固等。用萬用表檢測(cè)是不是有短路和斷路現(xiàn)象。給系統(tǒng)上電后,看下電源燈亮不亮。假如不亮,就要檢查電源指示燈發(fā)光二極管的好壞。還要用萬用表測(cè)一下單片機(jī)等芯片的電壓是不是符合要求。假如不是,就要進(jìn)行各個(gè)芯片的檢查,看一下各個(gè)芯片的引腳有沒有焊好,芯片是否損壞。6.2.2 單片機(jī)最小系統(tǒng)的調(diào)試單片機(jī)STC89C52

54、最小系統(tǒng)的檢測(cè)分為硬件調(diào)試及軟件調(diào)試。硬件調(diào)試時(shí)用萬用表測(cè)量單片機(jī)的工作電壓及各個(gè)管腳的電壓是否達(dá)到正常工作電壓。在此檢測(cè)中還要燒入程序?qū)Ω鱾€(gè)I/O口的輸出進(jìn)行測(cè)試,查看I/O口所輸出的電壓是否與程序所控制值一致。例如:編寫一個(gè)調(diào)試程序,使的所有I/O口從P1.0口開始依次賦予低電平,用萬用表測(cè)量其輸出電壓,確定是否與程序所付值一致,一致則證明正確;然后又對(duì)其依次賦予高電平,確定是否與程序所付值一致,一致則證明正確。兩次測(cè)試都正確,證明單片機(jī)最小系統(tǒng)是正常工作的。6.2.3 顯示模塊的調(diào)試顯示模塊硬件連接相對(duì)比較簡(jiǎn)單,檢查與調(diào)試過程中也沒有遇到什么困難。這次設(shè)計(jì)中,結(jié)果用LCD1602來顯示。

55、在給系統(tǒng)上電后,要觀察LCD的亮度,為了減少功耗,LCD1602的背景燈的接地管腳同過I/O口P2.0的高低電平實(shí)現(xiàn)滅亮的要求,這種接法其背光燈會(huì)較暗,但是能夠滿足其在白天和夜晚都可以看清楚顯示內(nèi)容的要求。 6.2.4 鍵盤模塊的調(diào)試獨(dú)立鍵盤調(diào)試相對(duì)容易。將獨(dú)立鍵盤與單片機(jī)相連的IO口置高電平,按下按鈕,用萬用表測(cè)量電平是否變低。變低則證明鍵盤正常。6.2.5 蜂鳴器電路的調(diào)試蜂鳴器的外圍電路硬件檢測(cè)的工作最為簡(jiǎn)單,首先是測(cè)出三極管8050在給出工作電平時(shí)它的各個(gè)管腳的電壓值,然后看看是否工作在放大狀態(tài)。三極管工作在放大狀態(tài),就能給蜂鳴器提供足夠的電流,從而驅(qū)動(dòng)蜂鳴器工作。通過對(duì)定時(shí)開關(guān)打鈴的硬件制作與調(diào)試,系統(tǒng)的實(shí)物圖如附錄3所示。6.3 軟件調(diào)試 軟件調(diào)試與硬件調(diào)試相類似也需要一步一步來。6.3.1 顯示模塊調(diào)試先在主程序中只寫入1602液晶的初始化程序,讓液晶在第一行顯示幾個(gè)字符。若未顯示則檢查,看是否使能顯示,以及讀寫時(shí)序是否正確。6.3.2 時(shí)鐘模塊調(diào)試讀取1302的當(dāng)前時(shí)間值,

溫馨提示

  • 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. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論