單片機(jī)定時(shí)鬧鐘論文_第1頁(yè)
單片機(jī)定時(shí)鬧鐘論文_第2頁(yè)
單片機(jī)定時(shí)鬧鐘論文_第3頁(yè)
單片機(jī)定時(shí)鬧鐘論文_第4頁(yè)
單片機(jī)定時(shí)鬧鐘論文_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、前言本設(shè)計(jì)是基于單片機(jī)的定時(shí)鬧鐘設(shè)計(jì)。單片機(jī)是在一塊半導(dǎo)體芯片上集成了CPU、存儲(chǔ)器以及輸入和輸出接口電路的微型計(jì)算機(jī);其集成度高、功能強(qiáng)、通用性好,特別是它具有體積小、重量輕、能耗低、價(jià)格便宜、抗擾、能力強(qiáng)和使用方便,軟硬件結(jié)合、靈活穩(wěn)定、軟件硬化、硬件軟化,適合應(yīng)用于多種環(huán)境、可在惡劣環(huán)境中工作等特點(diǎn)。它不僅僅是一項(xiàng)技術(shù)性上的突破,同時(shí)也是對(duì)能源方面的有效節(jié)約與有效利用,因此深受?chē)?guó)家有關(guān)技術(shù)部門(mén)和能源部門(mén)的重視和支持。其組合而成的配件產(chǎn)品在日常生活的使用過(guò)程中非常方便、簡(jiǎn)單且實(shí)用,深受著廣大消費(fèi)者的喜愛(ài),從而使單片機(jī)技術(shù)在社會(huì)中得到了廣泛的發(fā)展和應(yīng)用。目前,已成為測(cè)量控制應(yīng)用系統(tǒng)中的優(yōu)選機(jī)

2、種和新電子產(chǎn)品的關(guān)鍵部件。特別是20世紀(jì)70年代問(wèn)世以來(lái),以其極高的性能價(jià)格比,受到人們的重視和關(guān)注,應(yīng)用很廣、發(fā)展很快,推廣率高,市場(chǎng)利潤(rùn)率高。而51單片機(jī)是各單片機(jī)中最為典型和最有代表性的一種。  本次設(shè)計(jì)的定時(shí)鬧鐘在硬件方面就采用了AT89C51芯片,用2個(gè)LED數(shù)碼管來(lái)進(jìn)行顯示。第一個(gè)LED用P0口進(jìn)行驅(qū)動(dòng),第二個(gè)LED用P2口進(jìn)行驅(qū)動(dòng),能夠比較準(zhǔn)確顯示分鐘數(shù)。通過(guò)S1、S2、S3、和S4四個(gè)功能按鍵可以實(shí)現(xiàn)對(duì)定時(shí)鬧鐘的啟動(dòng)、復(fù)位和定時(shí),定時(shí)時(shí)間到喇叭可以發(fā)出鬧鈴聲。在軟件方面采用匯編語(yǔ)言編程。整個(gè)定時(shí)鬧鐘系統(tǒng)能完成時(shí)間的顯示,調(diào)時(shí)和定時(shí)鬧鐘、復(fù)位等功能,并經(jīng)過(guò)系統(tǒng)

3、仿真后得到了正確的結(jié)果目 錄前言第一章 設(shè)計(jì)目的及要求41.1、設(shè)計(jì)目的41.2、設(shè)計(jì)要求41.2.1、課程設(shè)計(jì)要求41.2.2、基本設(shè)計(jì)功能要求主要分為以下幾個(gè)部分:4第二章 方案設(shè)計(jì)52.1、幾種常見(jiàn)的定時(shí)鬧鐘52.1.1、普通機(jī)械鬧鐘52.1.2、晶體管鬧鐘52.1.3、石英電子鬧鐘52.2、研究背景52.3、本文研究的主要內(nèi)容52.4、方案論證62.4.1、方案6第三章 主要元器件介紹73.1、 AT89C51單片機(jī)介紹73.1.1、 AT89C51芯片簡(jiǎn)介73.1.2、 引腳說(shuō)明73.2、時(shí)鐘電路93.3、7SEG-BCD9第四章 硬件電路設(shè)計(jì)104.1、晶振時(shí)鐘電路設(shè)計(jì)104.2、

4、復(fù)位電路設(shè)計(jì)104.3、定時(shí)輸入電路設(shè)計(jì)104.4、顯示電路設(shè)計(jì)114.5、啟動(dòng)和復(fù)位計(jì)時(shí)電路124.6、鬧鐘響鈴電路設(shè)計(jì)12第五章 軟件設(shè)計(jì)及主要子程序135.1、軟件設(shè)計(jì)思路135.2、主程序模塊135.3、定時(shí)輸入子程序設(shè)計(jì)145.4、顯示子程序設(shè)計(jì)145.5、啟動(dòng)和復(fù)位子程序設(shè)計(jì)145.6、計(jì)時(shí)響鈴子程序設(shè)計(jì)14第六章 系統(tǒng)仿真與調(diào)試156.1、Keil編譯156.2、Protues仿真平臺(tái)156.2.1、Protues仿真簡(jiǎn)介及部分模塊仿真156.2.2、硬件電路總圖與仿真16第七章 操作方法及效果17第八章 課程設(shè)計(jì)總結(jié)20參考文獻(xiàn)21附錄122匯編程序22附錄225PCB生成圖2

5、5附錄326定時(shí)鬧鐘原理圖26第一章 設(shè)計(jì)目的及要求1.1、設(shè)計(jì)目的本次課程設(shè)計(jì)目的在于真正的把所學(xué)單片機(jī)理論知識(shí)應(yīng)用于實(shí)際,更加熟悉51單片機(jī)的硬件與軟件。能靈活運(yùn)用Keil進(jìn)行軟件編程調(diào)試以及用proteus軟件仿真。本次設(shè)計(jì)組成定時(shí)鬧鐘系統(tǒng),畫(huà)出系統(tǒng)硬件電路圖,設(shè)計(jì)編寫(xiě)開(kāi)關(guān)控制定時(shí)、LED顯示、聲響鈴、定時(shí)啟動(dòng)及復(fù)位等子程序。在調(diào)試程序時(shí),要求整個(gè)系統(tǒng)工作正常、顯示正確、結(jié)果滿(mǎn)意,掌握該芯片的工作原理并完成讀、寫(xiě)程序的設(shè)計(jì)、編寫(xiě)和調(diào)試。1.2、設(shè)計(jì)要求1.2.1、課程設(shè)計(jì)要求 能熟練運(yùn)用51單片機(jī)實(shí)現(xiàn)硬件與軟件結(jié)合完成電子產(chǎn)品的設(shè)計(jì),把理論真正運(yùn)用于實(shí)踐,會(huì)用Keil等軟件編程調(diào)試運(yùn)行,

6、熟悉應(yīng)用Proteus軟件仿真。強(qiáng)化編程練習(xí),注意查詢(xún)方式與中斷方式的區(qū)別等等。1.2.2、基本設(shè)計(jì)功能要求主要分為以下幾個(gè)部分:1)由于要顯示數(shù)字時(shí)間,所以需要2個(gè)數(shù)碼管。 2)時(shí)間的定時(shí)用時(shí)鐘電路,修改時(shí)間和定時(shí)用手動(dòng)按鍵控制,鬧鈴聲通過(guò)喇叭發(fā)出3)記時(shí)完成后,通過(guò)復(fù)位鍵將整個(gè)鬧鐘變?yōu)槌跏紶顟B(tài) 4)AT89C51單片機(jī)加上外圍器件(數(shù)字顯示器7SEG-MPX6-CC-BLUE,RESPACK-8排阻和SPEAKER喇叭)和應(yīng)用程序(ISIS 6 Professional軟件和WAVE6000編譯軟件),構(gòu)成相應(yīng)的應(yīng)用系統(tǒng)。第二章 方案設(shè)計(jì)2.1、幾種

7、常見(jiàn)的定時(shí)鬧鐘2.1.1、普通機(jī)械鬧鐘這種機(jī)械鬧鐘結(jié)構(gòu)簡(jiǎn)單、使用方便、價(jià)格便宜,其中的原動(dòng)系以發(fā)條為貯能元件,機(jī)械式音樂(lè)鬧鐘上還帶有以鬧發(fā)條驅(qū)動(dòng)的帶撥針的滾輪,撥針按曲譜排列,撥動(dòng)音簧,演奏出音樂(lè),但在使用中暴露了很多缺點(diǎn):機(jī)械鬧鐘的發(fā)條是靠金屬制成的,經(jīng)過(guò)較長(zhǎng)時(shí)間的磨損會(huì)影響到計(jì)時(shí)的精度。 2.1.2、晶體管鬧鐘一種電機(jī)械鐘。又稱(chēng)擺輪游絲式電子鐘。它采用機(jī)械式鐘的擺輪游絲振動(dòng)系統(tǒng),但以電池為能源。電池的能量通過(guò)一個(gè)晶體管開(kāi)關(guān)電路直接傳遞給擺輪游絲系統(tǒng),從而維持?jǐn)[輪的不衰減振動(dòng)。通過(guò)快慢針調(diào)節(jié)游絲的工作長(zhǎng)度,可調(diào)節(jié)振動(dòng)周期。擺輪通過(guò)計(jì)數(shù)機(jī)構(gòu)驅(qū)動(dòng)齒輪傳動(dòng)系統(tǒng)和指針系統(tǒng),以指示時(shí)間。晶體管鐘可帶鬧

8、時(shí)機(jī)構(gòu)和日歷機(jī)構(gòu),并可與收音機(jī)結(jié)合構(gòu)成鐘控收音機(jī)。但是這種鬧鐘在實(shí)際應(yīng)用中的計(jì)時(shí)很不準(zhǔn)確,并且耗電量也比較大,現(xiàn)在基本上已經(jīng)很少有人使用2.1.3、石英電子鬧鐘 該類(lèi)定時(shí)鬧鐘采用單片機(jī)作為基礎(chǔ),通過(guò)將程序?qū)懭雴纹瑱C(jī)中,來(lái)對(duì)鬧鐘進(jìn)行多功能的控制,所需要的硬件電路很少,采用這種鬧鐘具有極大的優(yōu)勢(shì),它的結(jié)構(gòu)簡(jiǎn)單,維修方便,并且造價(jià)低,功耗低,可以長(zhǎng)時(shí)間工作,并且計(jì)時(shí)準(zhǔn)確,誤差很小,在現(xiàn)在的生產(chǎn)和生活中的到了廣泛的應(yīng)用。2.2、研究背景 電子鬧鐘是采用數(shù)字電路實(shí)現(xiàn)對(duì)時(shí)間數(shù)字顯示的機(jī)械裝置,廣泛應(yīng)用于個(gè)人家庭,車(chē)站,碼頭,辦公室等公共場(chǎng)合,稱(chēng)為人們?nèi)粘I钪胁豢苫蛉钡牡谋匦杵罚捎跀?shù)字集成電路的發(fā)展和石

9、英晶體振蕩器的廣泛應(yīng)用,是的數(shù)字鐘的精度遠(yuǎn)遠(yuǎn)超于老式鐘表,鐘表的數(shù)字化給人們生產(chǎn)和生活帶來(lái)了極大的方便,而且大大地拓展了鐘表的報(bào)時(shí)功能。諸如定時(shí)自動(dòng)報(bào)警、自動(dòng)按時(shí)打鈴、時(shí)間程序自動(dòng)控制、定時(shí)廣播、自動(dòng)啟閉路燈、定慧寺開(kāi)關(guān)烘箱、通斷動(dòng)力設(shè)備、甚至各種定時(shí)電氣的自動(dòng)啟用等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。數(shù)字鐘已經(jīng)成為人們?nèi)粘I钪斜夭豢缮俚谋匦杵罚o人們的生活、學(xué)習(xí)、工作、娛樂(lè)帶來(lái)了極大的方便。由于數(shù)字集成電路技術(shù)的發(fā)展和采用了先進(jìn)的技術(shù),是數(shù)字鐘具有走時(shí)準(zhǔn)確、性能穩(wěn)定、攜帶方便等優(yōu)勢(shì),它還用于計(jì)時(shí)自動(dòng)報(bào)時(shí)及自動(dòng)控制領(lǐng)域。因此,研究定時(shí)數(shù)字鬧鐘及擴(kuò)大其應(yīng)用有著非常現(xiàn)實(shí)的意義。 2.3、本文研

10、究的主要內(nèi)容設(shè)計(jì)內(nèi)容完全按照前面的設(shè)計(jì)要求完成,完全滿(mǎn)足前面的設(shè)計(jì)要求。2.4、方案論證2.4.1、方案方案:設(shè)計(jì)選用單片機(jī)AT89C51作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的I/O端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的電子鬧鐘功能。方案完全按照第1章的基本設(shè)計(jì)要求設(shè)計(jì)。 AT89C51顯示模塊啟動(dòng)電路鬧鐘響鈴復(fù)位電路置數(shù)分鐘數(shù)圖2.1 單片機(jī)控制方案第三章 主要元器件介紹3.1、 AT89C51單片機(jī)介紹3.1.1、 AT89C51芯片簡(jiǎn)介AT89C51是MCS51系列單片機(jī)中的一種低功耗、高性能的片內(nèi)含有4KB快閃可編程/擦除只讀存儲(chǔ)器的8位CMOS微控制器,使用高密度、非易失

11、存儲(chǔ)技術(shù)制造,并且與80C51引腳和指令系統(tǒng)完全兼容。 主要性能:與MCS-51 微控制器產(chǎn)品系列兼容。 片內(nèi)有4KB可在線重復(fù)編程的快閃擦寫(xiě)存儲(chǔ)器存儲(chǔ)數(shù)據(jù)保存時(shí)間為10年。寬工作電壓范圍:Vcc可為2.7V到6V全靜態(tài)工作;可從0Hz至16MHz 程序存儲(chǔ)器具有3級(jí)加密保護(hù) 128*8位內(nèi)部RAM 32條可編程I/O線、兩個(gè)16位定時(shí)器/計(jì)數(shù)器、中斷結(jié)構(gòu)具有5個(gè)中斷源和2個(gè)優(yōu)先級(jí)、可編程全雙工串行通道、空閑狀態(tài)維持低功耗和掉電狀態(tài)保存存儲(chǔ)內(nèi)容。89C51單片機(jī)是把那些作為控制應(yīng)用所必需的基本內(nèi)容都集成在一個(gè)尺寸有限的集成電路芯片上。如果按功能劃分,它由如下功能部件組成,即微處理器、數(shù)據(jù)存儲(chǔ)器

12、、程序存儲(chǔ)器、并行I/O口、串行口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)及特殊功能寄存器。它們都是通過(guò)片內(nèi)單一總線連接而成,其基本結(jié)構(gòu)依舊是CPU加上外圍芯片的傳統(tǒng)結(jié)構(gòu)模式。但對(duì)各種功能部件的控制是采用特殊功能寄存器的集中控制方式。微處理器、數(shù)據(jù)存儲(chǔ)器、程序存儲(chǔ)器、并行I/O口、串行口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)各部分功能及說(shuō)明類(lèi)似于8051單片機(jī)內(nèi)部結(jié)構(gòu)說(shuō)明。 特殊功能寄存器共有21個(gè),用于對(duì)片內(nèi)的各功能的部件進(jìn)行管理、控制、監(jiān)視。實(shí)際上是一些控制寄存器和狀態(tài)寄存器,是一個(gè)具有特殊功能的RAM區(qū)。 由上可見(jiàn), 89C51單片機(jī)的硬件結(jié)構(gòu)具有功能部件種類(lèi)全,功能強(qiáng)等特點(diǎn)。特別值得一提的是該單片機(jī)CPU中的位

13、處理器,它實(shí)際上是一個(gè)完整的1位微計(jì)算機(jī),這個(gè)1位微計(jì)算機(jī)有自己的CPU、位寄存器、I/O口和指令集。1位機(jī)在開(kāi)關(guān)決策、邏輯電路仿真、過(guò)程控制方面非常有效;而8位機(jī)在數(shù)據(jù)采集,運(yùn)算處理方面有明顯的長(zhǎng)處。MCS-51單片機(jī)中8位機(jī)和1位機(jī)的硬件資源復(fù)合在一起,二者相輔相承,它是單片機(jī)技術(shù)上的一個(gè)突破,這也是MCS-51單片機(jī)設(shè)計(jì)的精美之處。3.1.2、 引腳說(shuō)明 圖3.1是標(biāo)準(zhǔn)的40引腳雙列直插式集成電路芯片。圖3.1 AT89C51引腳圖P00P07 P0口8位雙向口線(在引腳的3932號(hào)端子)。P10P17 P1口8位雙向口線(在引腳的18號(hào)端子)。P20P27 P2口8位雙向口線(在引腳的

14、2128號(hào)端子)。P30P37 P3口8位雙向口線(在引腳的1017號(hào)端子)。1、P0口有三個(gè)功能: (1)外部擴(kuò)展存儲(chǔ)器時(shí),用作數(shù)據(jù)總線(如圖中的D0D7為數(shù)據(jù)總線接口)(2)外部擴(kuò)展存儲(chǔ)器時(shí),用作地址總線(如圖中的A0A7為地址總線接口)(3)不擴(kuò)展時(shí),可做一般的I/O口使用,但內(nèi)部無(wú)上拉電阻,作為輸入或輸出時(shí)應(yīng)在外部接上拉電阻。2、P1口功能:P1口只做I/O口使用,其內(nèi)部有上拉電阻。3、P2口有兩個(gè)功能:(1)擴(kuò)展外部存儲(chǔ)器時(shí),當(dāng)作地址總線使用;(2)做一般I/O口使用,其內(nèi)部有上拉電阻。4、P3口有兩個(gè)功能:除了作為I/O口使用外(其內(nèi)部有上拉電阻),還有一些特殊功能,由特殊寄存器來(lái)

15、設(shè)置。當(dāng)作為輸入時(shí),上拉電阻將其電位拉高,若輸入為低電平則可提供電流源;所以如果P0口作為輸入時(shí),處在高阻抗?fàn)顟B(tài),只有外接一個(gè)上拉電阻才能有效。5、ALE/PROG 地址鎖存控制信號(hào):在系統(tǒng)擴(kuò)展時(shí),ALE用于控制把P0口的輸出低8位地址送鎖存器鎖存起來(lái),以實(shí)現(xiàn)低位地址和數(shù)據(jù)的隔離。PROG為編程脈沖的輸入端,在89C51單片機(jī)內(nèi)部有一個(gè)4KB的程序存儲(chǔ)器(ROM),ROM的作用就是用來(lái)存放用戶(hù)需要執(zhí)行的程序的,那么我們是怎樣把編寫(xiě)好的程序存入進(jìn)這個(gè)ROM中的呢?實(shí)際上是通過(guò)編程脈沖輸入才能寫(xiě)進(jìn)去的,這個(gè)脈沖的輸入端口就是PROG。6、PSEN 外部程序存儲(chǔ)器讀選通信號(hào):在讀外部ROM時(shí)PSEN

16、低電平有效,以實(shí)現(xiàn)外部ROM單元的讀操作:(1)內(nèi)部ROM讀取時(shí),PSEN不動(dòng)作;(2)外部ROM讀取時(shí),在每個(gè)機(jī)器周期會(huì)動(dòng)作兩次;(3)外部RAM讀取時(shí),兩個(gè)PSEN脈沖被跳過(guò)不會(huì)輸出;(4)外接ROM時(shí),與ROM的EA腳相接。7、EA/VPP 訪問(wèn)程序存儲(chǔ)器控制信號(hào):(1)接高電平時(shí):CPU讀取內(nèi)部程序存儲(chǔ)器(ROM)(2)接低電平時(shí):CPU讀取外部程序存儲(chǔ)器(ROM)。8031單片機(jī)內(nèi)部是沒(méi)有ROM的,那么在應(yīng)用8031單片機(jī)時(shí),這個(gè)腳是一直接低電平的。8、RST 復(fù)位信號(hào):當(dāng)輸入的信號(hào)連續(xù)2個(gè)機(jī)器周期以上高電平時(shí)即為有效,用以完成單片機(jī)的復(fù)位初始化操作,當(dāng)復(fù)位后程序計(jì)數(shù)器PC=0000

17、H,即復(fù)位后將從程序存儲(chǔ)器的0000H單元讀取第一條指令碼。9、XTAL1和XTAL2 :外接晶振引腳。當(dāng)使用芯片內(nèi)部時(shí)鐘時(shí),此二引腳用于外接石英晶體和微調(diào)電容;當(dāng)使用外部時(shí)鐘時(shí),用于接外部時(shí)鐘脈沖信號(hào)。10、VCC:電源端接+5V電壓輸入。11、GND:接地端。3.2、時(shí)鐘電路 單片機(jī)的時(shí)鐘產(chǎn)生方法有兩種:內(nèi)部時(shí)鐘方式和外部時(shí)鐘方式。本系統(tǒng)中AT89C51單片機(jī)采用內(nèi)部時(shí)鐘方式。最常用的內(nèi)部時(shí)鐘方式是采用外接晶體和電容組成的并聯(lián)諧振回路。振蕩晶體為12MHz。電容值無(wú)嚴(yán)格要求,但電容取值對(duì)振蕩頻率輸出的穩(wěn)定性、大小和振蕩電路起振速度有少許影響,一般可在20pF100pF之間取值。 

18、上拉電阻:RESPACK8 控制按鍵:BUTTON 本系統(tǒng)要進(jìn)行時(shí)間的調(diào)整和定時(shí),因此用4個(gè)手動(dòng)按鍵對(duì)其進(jìn)行控制。3.3、7SEG-BCD 7SEG-BCD是1位4段共陰數(shù)碼管,顯示為紅色。它共有四個(gè)引腳,自帶譯碼器,只要將要輸入的二進(jìn)制編碼輸入這四個(gè)引腳,就會(huì)顯示數(shù)輸入的二進(jìn)制數(shù)對(duì)應(yīng)的數(shù)。這里使用了兩個(gè)7SEG-BCD ,一個(gè)接在P0口,顯示分鐘數(shù)的十位,一個(gè)接在P2口,顯示分鐘數(shù)的個(gè)位。第四章 硬件電路設(shè)計(jì)硬件電路的設(shè)計(jì)主要包括、晶振時(shí)鐘電路設(shè)計(jì)、復(fù)位電路設(shè)計(jì)、定時(shí)輸入電路設(shè)計(jì)、顯示電路設(shè)計(jì)、啟動(dòng)和復(fù)位計(jì)時(shí)電路以及鬧鐘響鈴電路的設(shè)計(jì)。4.1、晶振時(shí)鐘電路設(shè)計(jì)單片機(jī)XTA

19、L1和XTAL2分別接30pF的電容,中間再并一個(gè)12MHZ的晶振,形成單片機(jī)的晶振電路。圖4.1 晶振電路4.2、復(fù)位電路設(shè)計(jì)圖4.2 復(fù)位電路4.3、定時(shí)輸入電路設(shè)計(jì)定時(shí)輸入電路由兩個(gè)按鍵構(gòu)成,一個(gè)按鍵接在外部中斷0上,每次按下這個(gè)鍵,定時(shí)的分鐘數(shù)的十位數(shù)就加一,另一個(gè)按鍵接在外部中斷1上,每次按下這個(gè)鍵,定時(shí)分鐘數(shù)的個(gè)位數(shù)就加一。由這兩個(gè)鍵來(lái)控制定時(shí)的置數(shù)功能。圖4.3 定時(shí)輸入電路4.4、顯示電路設(shè)計(jì)7SEG-BCD是1位4段共陰數(shù)碼管,顯示為紅色。它共有四個(gè)引腳,自帶譯碼器,只要將要輸入的二進(jìn)制編碼輸入這四個(gè)引腳,就會(huì)顯示出輸入的二進(jìn)制數(shù)對(duì)應(yīng)的數(shù)。這里使用了兩個(gè)7SEG-BCD ,一

20、個(gè)接在P0口,顯示分鐘數(shù)的十位,一個(gè)接在P2口,顯示分鐘數(shù)的個(gè)位。如下圖所示:圖4.4.1 顯示電路 同時(shí)P0口作為輸入輸出口使用時(shí)需要用到上拉電阻,這里用RESPACK8 圖4.4.2 上拉電阻4.5、啟動(dòng)和復(fù)位計(jì)時(shí)電路定時(shí)輸入電路由兩個(gè)按鍵構(gòu)成,一個(gè)按鍵是啟動(dòng)計(jì)時(shí)電路按鈕,接在P1.0上,每次按下這個(gè)鍵,定時(shí)就開(kāi)始了,另一個(gè)按鍵是復(fù)位計(jì)時(shí)按鈕,接在P1.1上,每次按下這個(gè)鍵,整個(gè)定時(shí)鬧鐘系統(tǒng)就恢復(fù)到開(kāi)機(jī)時(shí)的初始狀態(tài)。由這兩個(gè)鍵來(lái)控制定時(shí)鬧鐘的啟動(dòng)和復(fù)位功能。圖4.5 啟動(dòng)和復(fù)位計(jì)時(shí)電路4.6、鬧鐘響鈴電路設(shè)計(jì)圖4.6 鬧鐘響鈴電路第五章 軟件設(shè)計(jì)及主要子程序5.1、軟件設(shè)計(jì)思路定

21、時(shí)鬧鐘工作的主要過(guò)程是LED數(shù)碼管顯示初始化的時(shí)間分鐘數(shù)的值為59,通過(guò)按鍵輸入定時(shí)的分鐘數(shù),同時(shí)LED實(shí)時(shí)顯示時(shí)間分鐘數(shù),按下啟動(dòng)計(jì)時(shí)鍵后,定時(shí)鬧鐘開(kāi)始計(jì)時(shí),每計(jì)時(shí)一分鐘,LED顯示的分鐘數(shù)減一,當(dāng)時(shí)間減到0后,蜂鳴器發(fā)出聲音表示鬧鐘已響,并且此時(shí)的LED顯示為0F,并停止繼續(xù)計(jì)數(shù),當(dāng)按下復(fù)位鍵后,定時(shí)鬧鐘恢復(fù)到初始化后的值。5.2、主程序模塊主程序主要完成初始化、設(shè)置中斷向量、檢查有無(wú)按鍵以及調(diào)用顯示等,當(dāng)初始化后就會(huì)自動(dòng)等待有無(wú)定時(shí)操作、啟動(dòng)操作和復(fù)位操作。主程序流程圖如下,(此模塊程序見(jiàn)附錄)。開(kāi)始初始化顯示時(shí)間復(fù)位操作有誤?啟動(dòng)按鍵鍵?鍵?各位恢復(fù)到初始狀態(tài)NYNY計(jì)時(shí)響鈴程序開(kāi)定時(shí)

22、/計(jì)數(shù)器0中斷開(kāi)外部中斷0和1圖5.1 主程序流程圖5.3、定時(shí)輸入子程序設(shè)計(jì)定時(shí)輸入程序采用中斷的方式,一個(gè)按鍵接在外部中斷0上,每次按下這個(gè)鍵,定時(shí)的分鐘數(shù)的十位數(shù)就加一,當(dāng)加到6時(shí)自動(dòng)跳變到0;另一個(gè)按鍵接在外部中斷1上,每次按下這個(gè)鍵,定時(shí)分鐘數(shù)的個(gè)位數(shù)就加一,當(dāng)加到10,也就是0AH時(shí)自動(dòng)跳變到0。由這兩個(gè)鍵來(lái)控制定時(shí)的置數(shù)功能,完成了從060min的定時(shí)置數(shù)。(此模塊程序見(jiàn)附錄)5.4、顯示子程序設(shè)計(jì)由于是采用兩個(gè)7SEG-BCD分別做分鐘數(shù)的十位和各位,并且這兩個(gè)7SEG-BCD分別接在P0口和P2口上,因此直接將要輸出的數(shù)據(jù)輸入到P0口和P2口上即可。 (此模塊程序見(jiàn)附錄)5.

23、5、啟動(dòng)和復(fù)位子程序設(shè)計(jì)啟動(dòng)和復(fù)位子程序都采用查詢(xún)的方式,先檢測(cè)P1.1口是否為1,當(dāng)復(fù)位鍵按下時(shí),P1.1口的值為0,若為0,則跳轉(zhuǎn)到復(fù)位子程序,將各個(gè)寄存器的值恢復(fù)成開(kāi)機(jī)時(shí)的狀態(tài);若為1,則跳轉(zhuǎn)到M0子程序,檢測(cè)P1.0口是否為1,當(dāng)啟動(dòng)鍵按下后,P1.0口的值為0,若為0,則跳轉(zhuǎn)到啟動(dòng)子程序,打開(kāi)定時(shí)/計(jì)數(shù)器中斷,并開(kāi)啟計(jì)數(shù)器;若為1,則跳回主程序的開(kāi)始部分循環(huán)。(此模塊程序見(jiàn)附錄)5.6、計(jì)時(shí)響鈴子程序設(shè)計(jì)給計(jì)數(shù)器計(jì)入的處置為3CB0H,也就是說(shuō)每計(jì)時(shí)50ms,定時(shí)/計(jì)數(shù)器產(chǎn)生一次中斷,每執(zhí)行一次中斷,在中斷中對(duì)寄存器R5中的值減一,因此給R5中寫(xiě)入20,當(dāng)R5減到0時(shí),正好計(jì)時(shí)為一秒

24、鐘,R5每次減到0,就給它重新賦值20,并且將R4中的值減1,給R4中計(jì)入60,當(dāng)R4減為0時(shí)正好計(jì)時(shí)一分鐘,此時(shí)給R4重新賦值60,并將P2口的輸出值減1,當(dāng)該口也減到0后,給他重新賦值10,并且給P0口輸出值減1,當(dāng)這些寄存器中的值均為0時(shí),給P1.7位置1,此時(shí)蜂鳴器發(fā)出響聲,并且把定時(shí)/計(jì)數(shù)器中斷關(guān)閉。(此模塊程序見(jiàn)附錄) 第六章 系統(tǒng)仿真與調(diào)試6.1、Keil編譯Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì), Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功

25、能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開(kāi)發(fā)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境(uVision)將這些部分組合在一起。如果使用C語(yǔ)言編程,那么Keil幾乎就是不二之選,即使不使用C語(yǔ)言而僅用匯編語(yǔ)言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令你事半功倍。本次設(shè)計(jì)采用匯編語(yǔ)言編程,生成.hex文件以供裝載到Protues中的單片機(jī)進(jìn)行仿真。圖6.1 程序代碼編寫(xiě)6.2、Protues仿真平臺(tái)6.2.1、Protues仿真簡(jiǎn)介及部分模塊仿真Protues軟件是英國(guó)Labcenter electronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前

26、最好的仿真單片機(jī)及外圍器件的工具。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。迄今為止是世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等。在編譯方面,它也支持IAR、Keil和MATLAB等多種編譯。目標(biāo)代碼的加載方法為,在Protues編輯環(huán)境雙擊AT89C51,彈出下圖所示的對(duì)話框,在PROGRAM FILM一欄中單擊

27、打開(kāi)按鈕,選中Keil中生成的naozhong.hex文件,在CLOCK FREQUENCY欄中設(shè)置系統(tǒng)工作頻率為12MHZ,單擊OK完成目標(biāo)代碼的加載。圖6.2程序代碼加載6.2.2、硬件電路總圖與仿真點(diǎn)擊運(yùn)行按鈕啟動(dòng)系統(tǒng)仿真,初始狀態(tài)顯示的分鐘數(shù)為59。硬件總圖如下:圖6.2 總圖第七章 操作方法及效果點(diǎn)擊運(yùn)行后,開(kāi)機(jī)是自動(dòng)顯示的分鐘數(shù)是59圖7.1 定時(shí)鬧鐘開(kāi)機(jī)通過(guò)對(duì)定時(shí)輸入電路的兩個(gè)按鍵,一個(gè)按鍵接在外部中斷0上,每次按下這個(gè)鍵,定時(shí)的分鐘數(shù)的十位數(shù)就加一,另一個(gè)按鍵接在外部中斷1上,每次按下這個(gè)鍵,定時(shí)分鐘數(shù)的個(gè)位數(shù)就加一。由這兩個(gè)鍵來(lái)控制定時(shí)的置數(shù)功能。圖7.2 定時(shí)鬧鐘定時(shí)置數(shù)之

28、后如果按下啟動(dòng)計(jì)時(shí)鍵,則開(kāi)始計(jì)時(shí),如果按下復(fù)位鍵,則進(jìn)行復(fù)位操作,將各個(gè)寄存器的值變?yōu)槌跏蓟瘯r(shí)的值,并將P1.7位清0,即關(guān)閉蜂鳴器。圖7.3 定時(shí)鬧鐘啟動(dòng)計(jì)時(shí)圖7.4 定時(shí)鬧鐘復(fù)位第八章 課程設(shè)計(jì)總結(jié)通過(guò)本次單片機(jī)原理及應(yīng)用課程設(shè)計(jì)使我充分認(rèn)認(rèn)到了課程設(shè)計(jì)的理要性和必要性,本次設(shè)計(jì)使我對(duì)已學(xué)過(guò)的基礎(chǔ)知識(shí)有了更深入的理解。單片機(jī)課程設(shè)計(jì),從理論到實(shí)踐,對(duì)所學(xué)的課本知識(shí)有了更深一步的認(rèn)識(shí),掌握的更加全面、深入。實(shí)驗(yàn)過(guò)程中,遇到了不少困難的問(wèn)題:對(duì)單片機(jī)匯編語(yǔ)言的理解不夠深刻,對(duì)于簡(jiǎn)短的程序可以明白,但是,到一個(gè)大的程序中,理解掌握就有一定的難度了,這樣就需要更近一步地理解其中的知識(shí)點(diǎn)。 

29、;實(shí)驗(yàn)的設(shè)計(jì)當(dāng)中有很多的程序調(diào)用,這就需要認(rèn)真處理好內(nèi)部的程序之間的使用。通過(guò)這次的課程設(shè)計(jì)加深了對(duì)單片機(jī)理論的理解,將理論很好地應(yīng)用到實(shí)際當(dāng)中去。 實(shí)驗(yàn)過(guò)程的細(xì)節(jié)讓我更加地確定做什么事情都要細(xì)心、仔細(xì),不放過(guò)任何一個(gè)小小的點(diǎn),只有這樣,我們才以最高的效率完成任務(wù)。同時(shí),不要忽視了同伴的作用,當(dāng)自己在一個(gè)問(wèn)題上懸而未決,這時(shí)同伴的一句話提醒,就可以讓你豁然開(kāi)朗,柳暗花明。很多實(shí)驗(yàn)當(dāng)中遇到的問(wèn)題讓我明白:1. 在設(shè)計(jì)程序之前,務(wù)必要對(duì)所學(xué)單片機(jī)課程的內(nèi)容有一個(gè)系統(tǒng)的了解,知道單片機(jī)片內(nèi)片外的內(nèi)容及其功能。 2. 設(shè)計(jì)程序關(guān)鍵要有一個(gè)清晰的思路和一個(gè)完整的軟

30、件流程圖。模塊化的設(shè)計(jì)思想在程序設(shè)計(jì)中的作用是重大的,它可以為你提供一個(gè)比較清晰的思路,并且很容易找到頭緒,不至于在編寫(xiě)一個(gè)程序時(shí)感覺(jué)到無(wú)從下手。 3. 在設(shè)計(jì)程序時(shí),不能妄想一次就將整個(gè)程序設(shè)計(jì)好,"反復(fù)修改,不斷改進(jìn)"是程序設(shè)計(jì)的必經(jīng)之路。程序剛開(kāi)始編好時(shí),一般情況下會(huì)存在很多錯(cuò)誤,要不斷地修改,不斷的改進(jìn)才能達(dá)到預(yù)期的目的,編寫(xiě)程序的時(shí)間并不是很長(zhǎng),主要是花很多時(shí)間去修改程序。 4. 要養(yǎng)成注釋程序的好習(xí)慣,讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便。剛開(kāi)始我在編寫(xiě)程序時(shí),很不習(xí)慣于寫(xiě)注釋?zhuān)杏X(jué)很麻煩,而且沒(méi)用

31、,但是在修改的過(guò)程中我就遇到了較大的麻煩,以至于不得不重新的作了注釋?zhuān)栽黾映绦虻囊鬃x性,從而使修改過(guò)程變得容易一些。總之,通過(guò)這次課程設(shè)計(jì)不僅使我鞏固了本課程所學(xué)的基本知識(shí),還使我具有了撰寫(xiě)科研報(bào)告的初步訓(xùn)練能力,我相信這些能力在我以后的工作或者是再學(xué)習(xí)中一定會(huì)起到不小的作用,一切的辛苦和艱難都是值得的參考文獻(xiàn)1.郭文川主編. MCS-51單片機(jī)原理、接口及應(yīng)用 .北京:電子工業(yè)出版社,2012 2. 余發(fā)山主編.單片機(jī)原理及應(yīng)用技術(shù) .中國(guó)礦業(yè)大學(xué)出版社2003.123. 張毅剛. 單片機(jī)原理及接口技術(shù) .哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1990

32、60;4.何立民.單片機(jī)應(yīng)用技術(shù)大全 .北京:北京航空航天大學(xué)出版社, 1994 5.譚浩強(qiáng).單片機(jī)課程設(shè)計(jì). 北京:清華大學(xué)出版社,1989 6. 李廣弟.單片機(jī)基礎(chǔ) .北京:北京航空航天大學(xué)出版社,1992 附錄1匯編程序;*ORG 0000HLJMP MAINORG 0003H LJMP SETTIME1 ORG 000BHLJMP TIMEORG 0013HLJMP SETTIME2ORG 0100HMAIN: MOV SP,#30HMOV R0,#05HMOV R1,#09HMOV R4,#3CHMOV R5,#14HMOV TMOD,#01H ;采用定時(shí)/計(jì)數(shù)器0,方式1MOV TH0,#3CHMOV TL0,#0B0HSETB EA ;中斷總

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論