




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、智能時(shí)鐘控制課程設(shè)計(jì)題 目:基于單片機(jī)的智能時(shí)鐘控制系統(tǒng)設(shè)計(jì)東華理工大學(xué)姓 名:徐將學(xué) 院:機(jī)械與電子工程學(xué)院班 級(jí): 080612學(xué) 號(hào):08061242得 分:指導(dǎo)教師:朱兆優(yōu)2011 年 10月 08日基于單片機(jī)的智能時(shí)鐘控制畢業(yè)設(shè)計(jì)徐將08061242摘要:本設(shè)計(jì)主要為實(shí)現(xiàn)一款可正常顯示時(shí)鐘/秒表,帶有定時(shí)鬧鈴的多功能智能電腦鐘。本文對(duì)當(dāng)前電腦鐘開(kāi)發(fā)手段進(jìn)行了比較和分析,最終確定了采用單片機(jī)技術(shù)實(shí)現(xiàn)智能電腦鐘。本設(shè)計(jì)應(yīng)用AT89C51芯片作為核心及6位LED數(shù)碼管顯示時(shí)、分、秒,以24時(shí)計(jì)時(shí)方式運(yùn)行,使用按鍵開(kāi)關(guān)可實(shí)現(xiàn)時(shí)、分調(diào)整,時(shí)鐘/秒表功能的轉(zhuǎn)換及定時(shí)等功能。這種實(shí)現(xiàn)方法的優(yōu)點(diǎn)是電
2、路簡(jiǎn)單,性能可靠,實(shí)時(shí)性好,時(shí)間精度高,操作簡(jiǎn)單,編程容易。該電腦鐘可以應(yīng)用于一般的生活和工作中,也可通過(guò)改裝,提高性能,增加新功能,從而給人們的生活和工作帶來(lái)更多的方便。關(guān)鍵詞:智能;鬧鈴;定時(shí);LED數(shù)碼管;ABSTRACTThekey for the realization of a design can be displayed properly clock / stopwatch, timer withmulti-functional intelligent computer alarm clock. This article discusses the development of
3、computer clock means were compared and analyzed, ultimately determined by microcontrollertechnology to achieve intelligent computer clock. AT89C51 chips in this design applicationas a core and six LED digital display hours, minutes and seconds to run 24 hours a time,using the key switch can be reali
4、zed, the sub-adjust, clock / stopwatch functions ofconversion and timer functions. This method provides the advantage of simple circuit,reliable performance, real good time and high precision, simple operation and programmingeasy. The computer can be used in ordinary life and work, can also be modif
5、ied to improvperformance, add new features to peoples life and work more convenient.Key words: computer clock; AT89C51; LED digital tube; stopwatch目 錄摘要ABSTRACT前言1.方案設(shè)計(jì)與論證1.1計(jì)時(shí)模塊1.2鍵盤模塊1.3顯示模塊1.4數(shù)據(jù)通訊模塊2.系統(tǒng)硬件設(shè)計(jì)2.1時(shí)鐘電路模塊設(shè)計(jì)2.2復(fù)位電路模塊設(shè)計(jì)2.3鍵盤電路模塊設(shè)計(jì)2.4顯示模塊模塊設(shè)計(jì)2.5數(shù)據(jù)通信模塊設(shè)計(jì)3.系統(tǒng)軟件設(shè)計(jì)3.1系統(tǒng)主程序設(shè)計(jì)3.2系統(tǒng)子程序設(shè)計(jì)3.2.1顯示程
6、序設(shè)計(jì)3.2.2調(diào)時(shí)功能程序設(shè)計(jì)3.2.3秒表功能程序設(shè)計(jì)3.2.4定時(shí)器T0中斷服務(wù)程序設(shè)計(jì)3.2.5定時(shí)器T1中斷服務(wù)程序設(shè)計(jì)單片機(jī)與PC機(jī)數(shù)據(jù)通信程序設(shè)計(jì)總結(jié)參考文獻(xiàn)前言(引言):基于單片機(jī)的智能時(shí)鐘系統(tǒng)設(shè)計(jì) 時(shí)間是人類生活必不可少的重要元素,如果沒(méi)有時(shí)間的概念,社會(huì)將不會(huì)有所發(fā)展和進(jìn)步。從古代的水漏、十二天干地支,到后來(lái)的機(jī)械鐘表以及當(dāng)今的石英鐘,都充分顯示了時(shí)間的重要,同時(shí)也代表著科技的進(jìn)步。致力于計(jì)時(shí)器的研究和充分發(fā)揮時(shí)鐘的作用,將有著重要的意義。單片機(jī)自20世紀(jì)70年代問(wèn)世以來(lái),以其極高的性能價(jià)格比,受到人們的重視和關(guān)注,應(yīng)用很廣、發(fā)展很快。單片機(jī)具有體積小、重量輕、抗干擾能力強(qiáng)
7、、環(huán)境要求不高、價(jià)格低廉、可靠性高、靈活性好、開(kāi)發(fā)較為容易。目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的蹤跡。在單片機(jī)構(gòu)成的裝置中,數(shù)字時(shí)鐘是必不可少的部件。它以其小巧,價(jià)格低廉,走時(shí)精度高,使用方便,功能多,便于集成化而受廣大消費(fèi)的喜愛(ài)。隨著人類科技文明的發(fā)展,人們對(duì)于時(shí)鐘的要求在不斷地提高。時(shí)鐘已不僅僅被看成一種用來(lái)顯示時(shí)間的工具,在很多實(shí)際應(yīng)用中它還需要能夠?qū)崿F(xiàn)更多其它的功能。高精度、多功能、小體積、低功耗,是現(xiàn)代時(shí)鐘發(fā)展的趨勢(shì)。在這種趨勢(shì)下,時(shí)鐘的數(shù)字化、多功能化已經(jīng)成為現(xiàn)代時(shí)鐘生產(chǎn)研究的主導(dǎo)設(shè)計(jì)方向。多功能數(shù)字鐘不管在性能還是在樣式上都發(fā)生了質(zhì)的變化,有電子鬧
8、鐘、數(shù)字鬧鐘等等。單片機(jī)在多功能數(shù)字鐘中的應(yīng)用已是非常普遍的,人們對(duì)數(shù)字鐘的功能及工作順序都非常熟悉。但是卻很少知道它的內(nèi)部結(jié)構(gòu)以及工作原理。由單片機(jī)作為數(shù)字鐘的核心控制器,可以通過(guò)它的時(shí)鐘信號(hào)進(jìn)行計(jì)時(shí)實(shí)現(xiàn)計(jì)時(shí)功能,將其時(shí)間數(shù)據(jù)經(jīng)單片機(jī)輸出,利用顯示器顯示出來(lái)。通過(guò)鍵盤可以進(jìn)行定時(shí)、校時(shí)功能。輸出設(shè)備顯示器可以用液晶顯示技術(shù)和數(shù)碼管顯示技術(shù)?;贛CS-51單片機(jī)的智能時(shí)鐘系統(tǒng)具有顯示準(zhǔn)確、直觀、易于調(diào)整等特點(diǎn)。單片機(jī)自誕生以來(lái)給全世界人類的生活和工作起到了劇烈的變化,而MCS-51單片機(jī)是我國(guó)使用最早、最易掌握和應(yīng)用的一款單片機(jī)。通過(guò)該系統(tǒng)的設(shè)計(jì),對(duì)單片機(jī)的原理和功能有個(gè)較系統(tǒng)和全面的掌握,
9、初步學(xué)習(xí)到有關(guān)工程設(shè)計(jì)的方法和思路。這樣以后的就業(yè)面會(huì)更加寬廣,也可以滿足當(dāng)今社會(huì)對(duì)單片機(jī)開(kāi)發(fā)人才的大量需求。縱觀傳統(tǒng)的電路設(shè)計(jì),大部分是采用分立元件進(jìn)行設(shè)計(jì),既復(fù)雜成本又高。隨著集成化的發(fā)展,現(xiàn)在系統(tǒng)的設(shè)計(jì)都是在模塊化的基礎(chǔ)上設(shè)計(jì)系統(tǒng)的。本課題是基于智能化和模塊化的前提下設(shè)計(jì)智能數(shù)字時(shí)鐘的,通過(guò)對(duì)設(shè)計(jì)目標(biāo)的分析,分立出各個(gè)模塊,然后根據(jù)各個(gè)模塊的功能,選擇適當(dāng)?shù)男酒M(jìn)行設(shè)計(jì)的。本課題的研究,對(duì)智能化、模塊化設(shè)計(jì)具有較強(qiáng)的推廣應(yīng)用價(jià)值。本文的主要內(nèi)容是利用51單片機(jī)設(shè)計(jì)一個(gè)智能數(shù)字時(shí)鐘系統(tǒng),使其實(shí)現(xiàn)以下功能:1:具有時(shí)間顯示和報(bào)時(shí)、校時(shí)功能,24小時(shí)制;2:具有定時(shí)功能定時(shí)鬧鈴;3:具有查詢功
10、能,4具有跑表功能。為此設(shè)計(jì),我查閱的好多數(shù)據(jù)庫(kù),如:中國(guó)學(xué)術(shù)期刊數(shù)據(jù)庫(kù),中文科技期刊數(shù)據(jù)庫(kù),萬(wàn)方數(shù)字化期刊,獨(dú)秀知識(shí)庫(kù)文獻(xiàn),超星數(shù)字圖書館,Spingerlink來(lái)源文獻(xiàn),EBSCO數(shù)據(jù)庫(kù),中國(guó)標(biāo)準(zhǔn)服務(wù)網(wǎng)等。正文:智能時(shí)鐘系統(tǒng)設(shè)計(jì)1.方案設(shè)計(jì)與論證1.1計(jì)時(shí)定時(shí)方案方案一:采用實(shí)時(shí)時(shí)鐘芯片實(shí)時(shí)時(shí)鐘芯片具備年、月、日、時(shí)、分、秒計(jì)時(shí)功能和多點(diǎn)定時(shí)功能,計(jì)S時(shí)數(shù)據(jù)的更新每秒自動(dòng)進(jìn)行一次,不要程序干預(yù)。計(jì)算機(jī)可通過(guò)中斷或查詢方式讀取計(jì)時(shí)數(shù)據(jù)進(jìn)行顯示,因此計(jì)時(shí)功能的實(shí)現(xiàn)無(wú)需占用CPU的時(shí)間,程序簡(jiǎn)單。此外,實(shí)時(shí)時(shí)鐘芯片多數(shù)帶有鋰電池做后備電源,具備永不停止的計(jì)時(shí)功能;具有可編程方波輸出功能,可用做實(shí)
11、時(shí)測(cè)控系統(tǒng)的采樣信號(hào)等;有的實(shí)時(shí)時(shí)鐘芯片內(nèi)部還帶有非易失性RAM,可用來(lái)存放需長(zhǎng)期保存但有時(shí)也需變更的數(shù)據(jù)。由于功能完善,精度高,軟件程序設(shè)計(jì)相對(duì)簡(jiǎn)單,且計(jì)時(shí)不占用CPU時(shí)間,因此,在工業(yè)實(shí)時(shí)測(cè)控系統(tǒng)中多采用這一類專用芯片來(lái)實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘功能。1方案二:軟件控制利用單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器進(jìn)行中斷定時(shí),配合軟件延時(shí)實(shí)現(xiàn)時(shí)、分、秒的計(jì)時(shí)及秒表計(jì)時(shí)。該方案節(jié)省硬件成本,且能使設(shè)計(jì)者對(duì)單片機(jī)的指令系統(tǒng)能有更深入的了解,從而掌握單片機(jī)應(yīng)用技術(shù)MCS-51匯編語(yǔ)言設(shè)計(jì)方法,因此,本系統(tǒng)設(shè)計(jì)采用此種軟件控制方法來(lái)實(shí)現(xiàn)計(jì)時(shí)。而由于AT89C51單片機(jī)片內(nèi)的Flash可允許在線重新編程,也可使用通用非易失性存儲(chǔ)
12、器編程。它將通用CPU和在線可編程Flash集成在一個(gè)芯片上,形成了功能強(qiáng)大、使用靈活和具有較高性價(jià)比的微控制器。 本系統(tǒng)采用方案二,使用AT89C51單片機(jī),它的功能強(qiáng)大,而且也較容易購(gòu)買。1.2鍵盤方案方案一:采用獨(dú)立式按鍵電路 每個(gè)鍵單獨(dú)占有一根I/O接口線,每個(gè)I/O口的工作狀態(tài)互不影響,此類鍵盤采用端口直接掃描方式。但是當(dāng)按鍵較多時(shí)占用單片機(jī)的I/O數(shù)目較多。 方案二:采用陣列式鍵盤此類鍵盤是采用行列掃描方式,當(dāng)按鍵較多時(shí)可以降低占用單片機(jī)的I/O口的數(shù)目。因本系統(tǒng)用到的按鍵比較少,采用獨(dú)立式鍵盤不會(huì)浪費(fèi)I/O口線,所以本系統(tǒng)采用獨(dú)立式鍵盤。1.3顯示方案方案一:靜態(tài)顯示靜態(tài)顯示就是
13、顯示驅(qū)動(dòng)電路具有輸出鎖存功能,單片機(jī)將所要顯示的數(shù)據(jù)送出去后,數(shù)碼管始終顯示該數(shù)據(jù)(不變),CPU不再控制LED。到下一次顯示時(shí),再傳送一次新的顯示數(shù)據(jù)。靜態(tài)顯示的接口電路采用一個(gè)并行口接一個(gè)數(shù)碼管,數(shù)碼管的公共端按共陰極或共陽(yáng)極分別接地或接VCC。這種接法,每個(gè)數(shù)碼管都要單獨(dú)占用一個(gè)并行I/O口,以便單片機(jī)傳送字形碼到數(shù)碼管控制數(shù)碼管的顯示。顯然其缺點(diǎn)就是當(dāng)顯示位數(shù)多時(shí),占用I/O口過(guò)多。方案二:動(dòng)態(tài)顯示動(dòng)態(tài)掃描用分時(shí)的方法輪流控制每個(gè)顯示器的COM端,使每個(gè)顯示器輪流電亮。在輪流點(diǎn)亮過(guò)程中,每位顯示器的點(diǎn)亮?xí)r間極為短暫,但由于人的視覺(jué)暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),給人的印象就是一組穩(wěn)定的
14、顯示數(shù)據(jù)。動(dòng)態(tài)驅(qū)動(dòng)一般用于多位LED數(shù)碼管顯示,主要是節(jié)省驅(qū)動(dòng)管腳,減少器件。由于靜態(tài)顯示法需要數(shù)據(jù)鎖存器等硬件,接口復(fù)雜一些,又考慮到時(shí)鐘顯示只有6位,且系統(tǒng)沒(méi)有其他復(fù)雜的處理任務(wù),所以決定采用動(dòng)態(tài)掃描法實(shí)現(xiàn)LED的顯示1.4數(shù)據(jù)通信方案方案一:利用RS-232連接PC機(jī)實(shí)現(xiàn)數(shù)據(jù)通信我們采用89c51單片機(jī)作為下位機(jī)運(yùn)行windows98的PC機(jī)作為上位機(jī),兩者通過(guò)RS-232串行口進(jìn)行通信。傳輸介質(zhì)為二芯屏蔽電纜。由于RS-232信號(hào)電平和單片機(jī)串行口信號(hào)電平不一致,必須進(jìn)行兩者之間的電平轉(zhuǎn)換。我們可以通過(guò)采用集成電平轉(zhuǎn)換芯片MAX232進(jìn)行RS-232/TTL電平轉(zhuǎn)換2. 系統(tǒng)硬件設(shè)計(jì)2
15、.1 時(shí)鐘電路模塊設(shè)計(jì)如圖2-2所示為時(shí)鐘電路原理圖,在AT89C51芯片內(nèi)部有一個(gè)高增益反相放大器其輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。而在芯片內(nèi)部,XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成了一個(gè)穩(wěn)定的自激振蕩器。時(shí)鐘電路產(chǎn)生的振蕩脈沖經(jīng)過(guò)觸發(fā)器進(jìn)行二分頻之后,才成為單片機(jī)的時(shí)鐘脈沖信號(hào)。3圖2-2 時(shí)鐘電路原理圖AT89C51單片機(jī)內(nèi)部包括一個(gè)8位CPU,片內(nèi)振蕩器和時(shí)鐘電路,由4KB閃存組成的程序存儲(chǔ)器,128字節(jié)的數(shù)據(jù)存儲(chǔ)器,四個(gè)8位并行I/O口,一個(gè)全雙工串行口,兩個(gè)16位定時(shí)/計(jì)數(shù)器,5個(gè)中斷源,提供兩個(gè)中斷優(yōu)先級(jí),21個(gè)特殊功能寄存器,可尋址各
16、64KB的外部程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,有位尋址功能及較強(qiáng)的布爾數(shù)據(jù)處理能力,有兩種軟件可選的低功耗運(yùn)行方式(空閑和掉電方式)。2.1.1 AT89C51單片機(jī)的外形和引腳、圖2-3 AT89C51引腳圖管腳說(shuō)明:AT89C51的引腳除了VCC(供電電壓)和GND(接地)之外,按其功能可分為以下三類:1)時(shí)鐘電路引腳XTAL1和XTAL2;XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入XTAL2:來(lái)自反向振蕩器的輸出。AT89C51內(nèi)部有一個(gè)高增益的反相放大器,XTAL1和XTAL2分別為反向放大器的輸入和輸出端,在這兩段之間接入晶體或陶瓷振蕩器,即可構(gòu)成一個(gè)高穩(wěn)定度的片內(nèi)振蕩器作為單
17、片機(jī)的時(shí)鐘。也可以加一個(gè)外部振蕩信號(hào)到它的輸入端作為時(shí)鐘源,XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。2)I/O端口引腳:P0口:為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的低八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1口:是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫
18、入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為低八位地址接收。 P2口:為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編
19、程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3口:管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3引腳的第二功能,如表2-1所示:表2-1 P3引腳的第二功能引腳第二功能P3.0RXD串口數(shù)據(jù)輸入P3.1TXD串口數(shù)據(jù)輸出P3.2INT0外部中斷0輸入P3.3INT1外部中斷1輸入P3.4T0外部計(jì)數(shù)脈沖輸入P3.5T1外部計(jì)數(shù)脈沖輸入P3.6WR外部RAM寫選通P3.7RD外部RAM讀選通3)控制類引腳:RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位
20、器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令時(shí)ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器
21、取址期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。EA/VPP:程序存儲(chǔ)器選擇/編程電壓輸入端。當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。由于AT89C51內(nèi)部有4KB的閃存作為程序存儲(chǔ)器,因此在實(shí)際使用時(shí)該引腳直接連到電源正端;而編程閃存時(shí)則接12V電源正端。2.1.2 AT89C51的工作方式AT89C51在上電后,通過(guò)復(fù)位電路的作用進(jìn)入復(fù)位狀態(tài),復(fù)位后內(nèi)部各特殊功能寄存器恢復(fù)到表2-2所
22、列的值。表2-2 特殊功能寄存器復(fù)位值SRF 復(fù)位值 SRF 復(fù)位值 PC 0000H TMOD 00H ACC 00H TCON 00H B 00H TH0 00H PSW 00H TL0 00H SP 07H TH1 00H DPTR 0000H TL1 00H P0-P3 0FFH SCON 00H IP XXX00000 SBUF 不變 IE 0XX00000 PCON0XXXXXXX接著,單片機(jī)就開(kāi)始執(zhí)行程序存儲(chǔ)器中的程序,進(jìn)入“程序運(yùn)行”方式。此外,單片機(jī)還有兩種軟件可編程的節(jié)電模式,它是由電源控制寄存器PCON中的IDL和PD來(lái)控制的。1)空閑節(jié)電模式。當(dāng)IDL=1時(shí),進(jìn)入該模式
23、,單片機(jī)進(jìn)入睡眠狀態(tài),片上RAM和特殊功能寄存器中的內(nèi)容保持不變,單片機(jī)外設(shè)仍處于激活狀態(tài)。有兩種情況可以使單片機(jī)終止空閑節(jié)電模式: 任何被允許的中斷。當(dāng)中斷產(chǎn)生時(shí),IDL被硬件清零,空閑節(jié)電模式被終止,單片機(jī)進(jìn)入中斷服務(wù)程序,中斷服務(wù)處理完成后,單片機(jī)執(zhí)行使其進(jìn)入空閑節(jié)電模式的那條指令后面的指令。 硬件復(fù)位也可使單片機(jī)終止空閑節(jié)電模式。空閑節(jié)電模式被終止后,同樣也是執(zhí)行使其進(jìn)入空閑節(jié)電模式的那條指令后面的指令。2)掉電模式。當(dāng)PD=1時(shí),單片機(jī)進(jìn)入掉電模式,振蕩器停止工作,RAM和SFR的內(nèi)容保持不變。只有硬件復(fù)位可以使單片機(jī)終止掉電模式,這時(shí)SFR的內(nèi)容被重新定義,RAM不變。2.1.3
24、AT89C51單片機(jī)的存儲(chǔ)器AT89C51有片內(nèi)程序存儲(chǔ)器和片內(nèi)數(shù)據(jù)存儲(chǔ)器,片內(nèi)程序存儲(chǔ)器是4KB可反復(fù)擦寫的閃存,其地址范圍為0000H0FFFH。片內(nèi)數(shù)據(jù)存儲(chǔ)器包括四部分: 通用寄存器組。每組由R0R7八個(gè)通用寄存器組成,共四組,可以通過(guò)程序狀態(tài)字PSW的RS0和RS1位來(lái)選用其中的某一組。地址00H1FH。 位地址空間。用于存儲(chǔ)布爾邏輯數(shù)據(jù),可位尋址,地址是20H2FH。 數(shù)據(jù)存儲(chǔ)區(qū)。用于存儲(chǔ)字節(jié)數(shù)據(jù),也可以當(dāng)做運(yùn)算時(shí)的寄存器,地址是30H7FH. SFR特殊功能寄存器。功能見(jiàn)表2-3;表2-3 特殊功能寄存器名 稱功 能地 址名 稱功 能地 址ACC 累加器 0E0H IE中斷允許 0
25、A8H B乘法寄存器 0F0H TMOD定時(shí)計(jì)數(shù)器方式 89HPSW程序狀態(tài)字 0D0H TCON定時(shí)計(jì)數(shù)器控制 88HSP堆棧指針 81H TH0T0高字節(jié) 8CHDPH數(shù)據(jù)指針高字節(jié) 83H TL0T0低字節(jié) 8AHDPL數(shù)據(jù)指針低字節(jié) 82H TH1T1高字節(jié) 8DH P08位并行口0 80H TL1T1低字節(jié) 8BH P18位并行口1 90H SCON串口控制字 98H P28位并行口2 0A0H SBUF串口數(shù)據(jù)緩沖 99H P38位并行口3 0B0H PCON電源控制 87H IP中斷優(yōu)先 0B8H2.1.4 AT89C51單片機(jī)的串口AT89C51單片機(jī)有一個(gè)全雙工的串行數(shù)據(jù)接口
26、,可以將單字節(jié)的8位數(shù)據(jù),一位一位地串行發(fā)送或接收。在單片機(jī)中這項(xiàng)功能是由接收數(shù)據(jù)引腳RXD和發(fā)送數(shù)據(jù)引腳TXD來(lái)實(shí)現(xiàn)的。SBUF是收發(fā)共用的數(shù)據(jù)緩沖器(地址為99H),收發(fā)使用不同的讀寫指令來(lái)區(qū)分。該串口具有不同的工作方式和傳輸速率等,還能產(chǎn)生發(fā)送或接收中斷,這些都可以通過(guò)串口控制寄存器SCON設(shè)定或根據(jù)其值來(lái)判斷,方法見(jiàn)表2-4;表2-4 串口控制寄存器SCON位 名 稱 功 能用 法 0 RI接收中斷標(biāo)志產(chǎn)生中斷時(shí)為1 1 TI發(fā)送中斷標(biāo)志產(chǎn)生中斷時(shí)為1 2 RB8方式2,3時(shí)收到的第9位數(shù)據(jù) 3 TB8方式2,3時(shí)發(fā)送的第9位數(shù)據(jù) 4 REN接收允許軟件置1 5 SM2方式2,3時(shí)的多
27、機(jī)通信協(xié)議允許 6 SM1方式選擇 見(jiàn)表2-5 7 SM0表2-5 串口工作方式選擇方 式M1M0功 能000同步移位寄存器方式1018位波特率可變2109位波特率可變,波特率為f/64(或32)3119位波特率可變2.1.5 AT89C51單片機(jī)的中斷AT89C51有五個(gè)中斷源,兩個(gè)外部中斷(IE0和IE1),兩個(gè)定時(shí)/計(jì)數(shù)器中斷(TF0和TF1),一個(gè)串口中斷(RI和TI合為一個(gè)中斷源)。前四個(gè)中斷源的中斷標(biāo)志位在TCON的相應(yīng)位中,串口的中斷標(biāo)志位在SCON中。各中斷源均可通過(guò)中斷允許寄存器IF單獨(dú)允許或禁止,IF可按位尋址設(shè)定,各位的意義見(jiàn)表2-6:表2-6 中斷允許寄存器IF位名 稱
28、功 能用 法0 EX0外部INT0中斷允許 1:允許中斷 0:禁止中斷1 ET0定時(shí)器0中斷允許2 EX1外部INT1中斷允許3 ET1定時(shí)器1中斷允許4 ES串口中斷允許5ET2定時(shí)器2中斷允許6保留位7EA 總中斷允許 0:禁止所有的中斷各中斷源可以有不同的優(yōu)先級(jí)別,優(yōu)先級(jí)別由中斷優(yōu)先級(jí)寄存器IP確定,見(jiàn)表2-7:表2-7 中斷優(yōu)先級(jí)寄存器IP位名 稱功 能用 法0PX0外部INT0中斷優(yōu)先級(jí)1:中斷優(yōu)先1PT0定時(shí)器0中斷優(yōu)先級(jí)2PX1外部INT1中斷優(yōu)先級(jí)3PT1定時(shí)器1中斷優(yōu)先級(jí)4PS串口中斷優(yōu)先級(jí)5PT2定時(shí)器2中斷優(yōu)先級(jí)中斷產(chǎn)生后即轉(zhuǎn)入相應(yīng)的中斷服務(wù)子程序處理中斷。各中斷服務(wù)子程
29、序的入口地址如表2-8所列:表2-8 中斷服務(wù)子程序入口地址中斷源入口地址默認(rèn)的優(yōu)先順序外部INT0中斷0003H依次遞減定時(shí)器0中斷000BH外部INT1中斷0013H定時(shí)器1中斷001BH串口中斷0023H定時(shí)器2中斷002BH2.1.6 AT89C51單片機(jī)定時(shí)/計(jì)數(shù)器AT89C51有兩個(gè)16位定時(shí)/計(jì)數(shù)器T0和T1,它們的工作方式由特殊功能寄存器TMOD各位確定,見(jiàn)表2-9。運(yùn)行由TCON的部分相關(guān)位控制,見(jiàn)表2-11。表2-9 TMOD控制字位名 稱功 能用 法0M0 T0方式選擇見(jiàn)表2-101M12C/TT0定時(shí)/計(jì)數(shù)選擇0;定時(shí),1:計(jì)數(shù)3GATET0門控位GATE=1時(shí),計(jì)數(shù)受
30、外部引腳P3.3控制,P3.3=1時(shí)才能計(jì)數(shù)4M0T1方式選擇見(jiàn)表2-105M16C/TT1定時(shí)/計(jì)數(shù)選擇0;定時(shí),1:計(jì)數(shù)7GATET1門控位GATE=1時(shí),計(jì)數(shù)受外部引腳P3.3控制,P3.3=1時(shí)才能計(jì)數(shù)表2-10 定時(shí)/計(jì)數(shù)器T0和T1工作方式選擇方 式M1M2功 能000由TH高8位和TL低5位組成的13位定時(shí)/計(jì)數(shù)器10116位定時(shí)/計(jì)數(shù)器210自動(dòng)重載8位定時(shí)/計(jì)數(shù)器,TL為計(jì)數(shù)器,TH為計(jì)數(shù)常數(shù)3118位定時(shí)/計(jì)數(shù)器(僅用于T0) 表2-11 TCON控制字位名 稱功 能用 法0IT0中斷0方式選擇0:電平觸發(fā),1:邊沿觸發(fā)1IE0中斷標(biāo)志中斷置1 2IT1中斷1方式選擇0:電
31、平觸發(fā),1:邊沿觸發(fā)3IE1中斷標(biāo)志中斷置14TR0T0運(yùn)行1:?jiǎn)?dòng),0:停止5TF0T0溢出標(biāo)志溢出置1請(qǐng)求中斷服務(wù),中斷響應(yīng)后硬件自動(dòng)清零6TR1T1運(yùn)行1:?jiǎn)?dòng),0:停止7TF1T1溢出標(biāo)志溢出置1請(qǐng)求中斷服務(wù),中斷響應(yīng)后硬件自動(dòng)清零2.2 復(fù)位電路設(shè)計(jì)如圖2-4所示為復(fù)位電路原理圖,復(fù)位時(shí)單片機(jī)的初始化操作,其主要功能是把PC初始化為0000H,使單片機(jī)從0000H單元開(kāi)始執(zhí)行程序,并使其它功能單元處于一個(gè)確定的初始狀態(tài)。本復(fù)位電路采用的是按鍵復(fù)位,它是通過(guò)復(fù)位端經(jīng)電阻與VCC電源接通而實(shí)現(xiàn)的,它兼具上電復(fù)位功能。因本系統(tǒng)的晶振的頻率為12MHZ,所以,位信號(hào)持續(xù)時(shí)間應(yīng)當(dāng)超過(guò)2us才能
32、完成復(fù)位操作。5圖2-4 復(fù)位電路原理圖2.3 鍵盤電路設(shè)計(jì)如圖2-5所示為鍵盤電路原理圖,本系統(tǒng)采用的是獨(dú)立式鍵盤結(jié)構(gòu),每個(gè)按鍵單獨(dú)占用一根I/O口線,每個(gè)按鍵的工作不會(huì)影響其它I/O口線的狀態(tài)。它軟件是采用查詢式結(jié)構(gòu),首先逐位查詢每根I/O口線的輸入狀態(tài),如某一根I/O口線輸入為低電平,則可確認(rèn)該I/O口線所對(duì)應(yīng)的按鍵已按下,然后,再轉(zhuǎn)向該鍵的功能處理程序。圖2-5 鍵盤電路原理圖按鍵使用方法:(1)長(zhǎng)按T0鍵進(jìn)入調(diào)分狀態(tài):分單元閃爍,按T0鍵加1,按T1鍵減1。再長(zhǎng)按T0鍵進(jìn)入小時(shí)調(diào)整狀態(tài),時(shí)單元閃爍,加減調(diào)整同調(diào)分相同。再長(zhǎng)按T0鍵退出時(shí)間調(diào)整狀態(tài),時(shí)鐘從0s開(kāi)始計(jì)時(shí)。(2)在正常時(shí)鐘
33、狀態(tài)下,按下T1鍵進(jìn)行入跑表狀態(tài),按T2鍵暫停,再按T2鍵跑表清0。再按T2鍵跑表又啟動(dòng),按T1鍵退出跑表回到時(shí)鐘狀態(tài)。(3)按T3鍵進(jìn)入設(shè)定鬧時(shí)狀態(tài),顯示式樣為00:00:,其中高2位代表時(shí),低2位代表分,可進(jìn)行分設(shè)定,按T2鍵,分加1;按T0鍵,分減1。再按T3鍵進(jìn)入時(shí)調(diào)整狀態(tài),顯示式樣為00:00:,按T2鍵,時(shí)加1;按T0鍵,時(shí)減1。按T1鍵,鬧鈴有效,顯示式樣變?yōu)?0:00:0;再按T1鍵,鬧鈴無(wú)效,顯示式樣又變成為00:00:。再按T3鍵,調(diào)整鬧鐘時(shí)間結(jié)束,恢復(fù)正常時(shí)間的顯示。在鬧鈴時(shí)可按一下T3鍵停鬧,不按則鬧鈴1分鐘。2.4 顯示模塊設(shè)計(jì)系統(tǒng)采用動(dòng)態(tài)顯示方式,用P0口來(lái)控制LE
34、D數(shù)碼管的段控線,而用P2口來(lái)控制其位控線。動(dòng)態(tài)顯示通常都是采用動(dòng)態(tài)掃描的方式進(jìn)行顯示,即循環(huán)點(diǎn)亮每一個(gè)數(shù)碼管,這樣雖然在任何時(shí)刻都只有一位數(shù)碼管被點(diǎn)亮,但由于人眼存在視覺(jué)殘留效應(yīng),只要每位數(shù)碼管間隔時(shí)間足夠短,就可以給人以同時(shí)顯示的感覺(jué)。圖2-6中9012作為位驅(qū)動(dòng)器,而74LS244在電路中起驅(qū)動(dòng)段碼的功能,8個(gè)510歐姆電阻則起限流作用。圖2-6 顯示原理圖2.5數(shù)據(jù)通信模塊由于MAX232為半雙工狀態(tài),所以只采用一對(duì)差分信號(hào)線。A端和B端分別為接收和發(fā)送的差分信號(hào)端,當(dāng)A引腳的電平高于B時(shí)發(fā)送的數(shù)據(jù)為1,當(dāng)A引腳的電平低于B時(shí)發(fā)送的數(shù)據(jù)為0,因此與單片機(jī)的聯(lián)接非常簡(jiǎn)單。同時(shí)A和B 端接
35、匹配電阻為100。由于PC機(jī)只配有RS232接口,若實(shí)現(xiàn)RS232接口與8051 單片機(jī)的通信,必須使用232 /485接口卡,接口卡采用九芯聯(lián)接線,分別與PC機(jī)并通過(guò)MAX232與8051單片機(jī)相聯(lián),接口卡的主要目的是將RS232電平轉(zhuǎn)換為TTL電平,接口卡可控制多臺(tái)單片機(jī), PC機(jī)和單片機(jī)串行通信數(shù)據(jù)采集系統(tǒng)接口電路如圖所示。單片機(jī)芯用AT89C51串口通信電路3. 系統(tǒng)軟件設(shè)計(jì)3.1系統(tǒng)主程序設(shè)計(jì)本設(shè)計(jì)中的計(jì)時(shí)采用定時(shí)器T0中斷完成,秒表使用定時(shí)器T1中斷完成。主程序循環(huán)調(diào)用顯示子程序和查鍵子程序,當(dāng)端口有開(kāi)關(guān)按下時(shí),轉(zhuǎn)入相應(yīng)功能程序系統(tǒng)主程序如下:DISPFIRST EQU 30H ;
36、顯示首址存放單元BELL EQU P1.7 ;蜂鳴器CONBS EQU 2FH ;存放報(bào)時(shí)次數(shù)*中斷入口程序* ORG 0000H ;程序執(zhí)行開(kāi)始地址 LJMP START ;跳到標(biāo)號(hào)START執(zhí)行 ORG 0003H ;外中斷0中斷程序入口 RETI ;外中斷0中斷返回 ORG 000BH ;定時(shí)器T0中斷程序入口 LJMP INTT0 ;跳至INTT0執(zhí)行 ORG 0013H ;外中斷1中斷程序入口RETI ;外中斷1中斷返回 ORG 001BH ;定時(shí)器T1中斷程序入口 LJMP INTT1 ;跳至INTT1執(zhí)行 ORG 0023H ;串行中斷程序入口地址 RETI ;串行中斷程序返回*
37、主程序開(kāi)始*START: LCALL ST ;上電顯示 MOV R0,#00H ;清00HH內(nèi)存單元 MOV R7,#80HCLEARDISP: MOV R0,#00H INC R0 DJNZ R7,CLEARDISP MOV 20H,#00H ;清20H(標(biāo)志用) MOV 7AH,#0AH ;放入“熄滅符”數(shù)據(jù) MOV TMOD,#11H ;設(shè)T0、T1為16位定時(shí)器 MOV TL0,#0B0H ;50ms定時(shí)初值(T0計(jì)時(shí)用) MOV TH0,#3CH ;50ms定時(shí)初值 MOV TL1, 0B0H ;50ms定時(shí)初值(T1閃爍定時(shí)用) MOV TH1,#3CH ;50ms定時(shí)初值 SET
38、B EA ;總中斷開(kāi)放 SETB ET0 ;允許T0中斷 SETB TR0 ;開(kāi)啟T0定時(shí)器 MOV R4,#14H ;1s定時(shí)用計(jì)數(shù)值(50ms20) MOV DISPFIRST,#70H ;顯示單元為70H75H以下為主程序循環(huán)START1: LCALL DISPLAY ;調(diào)用顯示子程序 JNB P1.0,SETMM1 ;P1.0口為0時(shí),轉(zhuǎn)時(shí)間調(diào)整程序 JNB P1.1,FUNSS ;秒表功能,P1.1按鍵調(diào)時(shí)用,作減1操作 JNB P1.2,FUNPT ;秒表STOP、PUSE、CLR JNB P1.3,TSFUN ;定時(shí)鬧鈴設(shè)定 JB 08H,QQQQ ;標(biāo)志為1時(shí),整點(diǎn)報(bào)時(shí) AJM
39、P START1 ;P1.0口為1時(shí),跳回START1FUNPT: LJMP FUNPTT;以下為鍵等待釋放時(shí)顯示不會(huì)熄滅用WAIT21: LCALL DISPLAY AJMP WAIT22WAIT31: LCALL DISPLAY AJMP WAIT33WAIT41: LCALL DISPLAY AJMP WAIT44WAIT51: LCALL DISPLAY AJMP WAIT55WAIT61: LCALL DISPLAY AJMP WAIT66*加1子程序*ADD1: MOV A,R0 ;取當(dāng)前計(jì)時(shí)單元數(shù)據(jù)到A DEC R0 ;指向前一地址 SWAP A ;A中數(shù)據(jù)高4位與低4位交換 O
40、RL A,R0 ;前一地址中數(shù)據(jù)放入A中低4位 ADD A,#01H ;A加1操作 DA A ;十進(jìn)制調(diào)整 MOV R3,A ;移入R3寄存器 ANL A,#0FH ;高4位變?yōu)? MOV R0,A ;放回前一地址單元 MOV A,R3 ;取回R3中暫存數(shù)據(jù) INC R0 ;指向當(dāng)前地址單元 SWAP A ;A中數(shù)據(jù)高4位與低4位交換 ANL A,#0FH ;高4位變?yōu)? MOV R0,A ;數(shù)據(jù)放入當(dāng)前地址單元中 RET;子程序返回*分減1子程序*SUB1: MOV A,R0 ;取當(dāng)前計(jì)時(shí)單元數(shù)據(jù)到A DEC R0 ;指向前一地址 SWAP A ;A中數(shù)據(jù)高4位與低4位交換 ORL A,R0
41、 ;前一地址中數(shù)據(jù)放入A中低4位 JZ SUB11 DEC A ;A減1操作SUB111: MOV R3,A ;移入R3寄存器 ANL A,#0FH ;高4位變?yōu)? CLR C ;清進(jìn)位標(biāo)志 SUBB A,#0AHSUB111: JC SUB1110 MOV R0,#09H ;大于或等于0AH時(shí),為9SUB110: MOV A,R3 ;取回R3中暫存數(shù)據(jù) INC R0 ;指向當(dāng)前地址單元 SWAP A ;A中數(shù)據(jù)高4位與低4位交換 ANL A,#0FH ;高4位變?yōu)? MOV R0,A ;數(shù)據(jù)放入當(dāng)前地址單元中 RET ;子程序返回SUB11: MOV A,#59H AJMP SUB111SUB1110: MOV A,R3 ;移入R3寄存器 ANL A,#0FH ;高
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司月度小活動(dòng)方案
- 公司爬泰山活動(dòng)方案
- 公司水上樂(lè)園活動(dòng)方案
- 公司節(jié)日海報(bào)活動(dòng)方案
- 公司直播健身活動(dòng)方案
- 公司節(jié)前大清掃活動(dòng)方案
- 公司老員工慶生活動(dòng)方案
- 公司父親節(jié)晚會(huì)策劃方案
- 公司火鍋活動(dòng)策劃方案
- 公司端午節(jié)慰問(wèn)活動(dòng)方案
- 星載終端抗輻照設(shè)計(jì)-洞察及研究
- 2025年湖南省中考生物試卷真題(含標(biāo)準(zhǔn)答案)
- 2025年河北省物流產(chǎn)業(yè)集團(tuán)招聘筆試參考題庫(kù)含答案解析
- 2025年衛(wèi)生系統(tǒng)招聘考試(護(hù)理學(xué)專業(yè)知識(shí))新版真題卷(附詳細(xì)解析)
- 吉林省“BEST合作體”2023?2024學(xué)年高一下學(xué)期期末考試 數(shù)學(xué)試題(含解析)
- 2025山西航空產(chǎn)業(yè)集團(tuán)有限公司校園招聘(第一批)43人筆試參考題庫(kù)附帶答案詳解
- 2025年文物保護(hù)工程師職業(yè)資格考試試題及答案
- (高清版)DB13∕T 5834-2023 化工建設(shè)項(xiàng)目安裝工程質(zhì)量技術(shù)資料管理規(guī)范
- 2025年公共關(guān)系學(xué)考試試題及答案全解析
- 2025年煤礦從業(yè)人員安全培訓(xùn)考試題庫(kù)
- 機(jī)械制圖-形成性任務(wù)2-國(guó)開(kāi)(ZJ)-參考資料
評(píng)論
0/150
提交評(píng)論