基于單片機(jī)的電子時(shí)鐘設(shè)計(jì)畢業(yè)論文.doc
《基于單片機(jī)的電子時(shí)鐘設(shè)計(jì)畢業(yè)論文.doc》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《基于單片機(jī)的電子時(shí)鐘設(shè)計(jì)畢業(yè)論文.doc(39頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、基于單片機(jī)的電子時(shí)鐘設(shè)計(jì) 摘 要 20 世紀(jì)末,電子技術(shù)獲得了飛速的發(fā)展,在其推動(dòng)下,現(xiàn)代電子產(chǎn)品幾 乎滲透了社會(huì)的各個(gè)領(lǐng)域,現(xiàn)代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié) 奏也越來(lái)越快。對(duì)于那些對(duì)時(shí)間把握非常嚴(yán)格和準(zhǔn)確的人或事來(lái)說(shuō),時(shí)間不準(zhǔn) 會(huì)帶來(lái)麻煩,所以以數(shù)碼管為顯示器的時(shí)鐘比指針式的時(shí)鐘表現(xiàn)出了很大的優(yōu) 勢(shì)。數(shù)碼管顯示的時(shí)間簡(jiǎn)單明了且讀數(shù)快、時(shí)間精確顯示到秒。數(shù)字鐘是采用 數(shù)字電路實(shí)現(xiàn)對(duì)“時(shí)”、“分”、“秒”數(shù)字顯示的計(jì)時(shí)裝置。 本文設(shè)計(jì)的是電子時(shí)鐘,利用單片機(jī)原理MCS-51,制作高精度的電子時(shí) 鐘。這次畢業(yè)設(shè)計(jì)通過(guò)對(duì)它的學(xué)習(xí)、應(yīng)用,以 AT89S51 芯片為核心,輔以必要 的電路,設(shè)
2、計(jì)了一個(gè)簡(jiǎn)易的電子時(shí)鐘,它由 4.5V 直流電源供電,通過(guò)數(shù)碼管能 夠準(zhǔn)確顯示時(shí)間,調(diào)整時(shí)間,從查找資料到達(dá)學(xué)習(xí)、設(shè)計(jì)、開(kāi)發(fā)軟、硬件的能 力。在這次設(shè)計(jì)中,我們采用 LED 數(shù)碼管顯示時(shí)、分、秒,以 24 小時(shí)計(jì)時(shí)方 式,根據(jù)數(shù)碼管動(dòng)態(tài)顯示原理來(lái)進(jìn)行顯示,用 12MHz 的晶振產(chǎn)生振蕩脈沖,定 時(shí)器計(jì)數(shù)。在此次設(shè)計(jì)中,電路具有顯示時(shí)間的其本功能,還可以實(shí)現(xiàn)對(duì)時(shí)間 的調(diào)整。數(shù)字鐘是其小巧,價(jià)格低廉,走時(shí)精度高,使用方便,功能多,便于 集成化而受廣大消費(fèi)的喜愛(ài),因此得到了廣泛的使用。 關(guān)鍵詞:數(shù)字電子鐘,MCS-51 單片機(jī),LED ABSTRACT The late 20th century,
3、electronic technology has been rapid development in its promotion, penetration of modern electronic products will almost Fields, a strong impetus to the development of social productive forces and social improvement in the level of information, while also further improve the performance of modern el
4、ectronic products, replacement products have become increasingly fast pace. For those who are very strict and accurate grasp of time or things, time will not exactly bring a very big trouble, so as to control the display of digital clock than the clock pointer showed a big advantage. Digital Clock i
5、s a digital circuit implementation of the “when” , “sub” , “seconds”. The design is the electronic clock. Using MCS51 digital high-precision electronic clock.This graduation design passes to its study and application, Take the AT89S51 chips as core, assist with the electric circuit of the necessity,
6、 design a simple electronics clock, it from the 4.5 V direct current power supply power supply, pass the figures tube can accurate manifestation time, adjust time. Arrive a study and design, develop thus soft, the ability of the hardware. In this design, we use LED digital display hours, minutes, se
7、conds, to 24-hour time mode, according to digital control theory to dynamic display to display, use the 12MHz crystal oscillation pulse, the timer count. In this design, the circuit has a display time of the this function, you can also realize the time adjustment. Digital clock is its compact, low c
8、ost, travel time and high precision, easy to use, features and more, easy integration and loved by the general consumer, so widely used. KEY WORDS: digital electronic clock, SCM-51, LED 目 錄 摘 要I ABSTRACTII 第 1 章 緒 論.1 1.1 數(shù)字電子鐘的背景1 1.2 數(shù)字電子鐘的意義2 1.3 數(shù)字電子鐘的應(yīng)用2 第 2 章 整體設(shè)計(jì)方案.3 2.1 單片機(jī)的選擇.3 2.2 單片機(jī)的基本結(jié)構(gòu)
9、.5 第 3 章 數(shù)字時(shí)鐘的硬件設(shè)計(jì).10 3.1 最小系統(tǒng)設(shè)計(jì).10 3.2 LED 顯示電路.13 第 4 章 數(shù)字時(shí)鐘的軟件設(shè)計(jì).16 4.1 系統(tǒng)軟件設(shè)計(jì)流程圖16 4.2 源程序.20 4.3 數(shù)字鐘的原理圖.21 第 5 章 系統(tǒng)仿真.24 5.1 PROTUES 軟件介紹24 5.2 電子鐘系統(tǒng) PROTUES 仿真24 5.3 調(diào)試功能25 結(jié)束語(yǔ).27 參考文獻(xiàn).28 致 謝.28 附 錄.30 0 第 1 章 緒 論 1.1 數(shù)字電子鐘的背景 1957 年,Ventura 發(fā)明了世界上第一個(gè)電子表,從而奠定了電子時(shí)鐘的基 礎(chǔ),電子時(shí)鐘開(kāi)始迅速發(fā)展起來(lái)?,F(xiàn)代的電子時(shí)鐘是基于單
10、片機(jī)的一種計(jì)時(shí)工 具,用延時(shí)程序產(chǎn)生一定的時(shí)間中斷,用于 1 秒的定義,通過(guò)計(jì)數(shù)方式進(jìn)行滿(mǎn) 六十秒分鐘進(jìn)一,滿(mǎn)六十分小時(shí)進(jìn)一,滿(mǎn)二十四小時(shí)小時(shí)清零。從而達(dá)到計(jì)時(shí) 的功能,是人民日常生活中不可缺少的工具?,F(xiàn)在高精度的計(jì)時(shí)工具大多數(shù)都 使用了石英晶體振蕩器,由于電子鐘、石英鐘、石英表都采用了石英技術(shù),因 此走時(shí)精度高,穩(wěn)定性好,使用方便,不需要經(jīng)常調(diào)試,數(shù)字式電子鐘用集成 電路計(jì)時(shí)時(shí),譯碼代替機(jī)械式傳動(dòng),用 LED 顯示器代替指針顯示進(jìn)而顯示時(shí)間, 減小了計(jì)時(shí)誤差,這種表具有時(shí)、分、秒顯示時(shí)間的功能,還可以進(jìn)行時(shí)和分 的校對(duì),片選的靈活性好。 20 世紀(jì)末,電子技術(shù)獲得了飛速的發(fā)展,在其推動(dòng)下,現(xiàn)
11、代電子產(chǎn)品幾乎 滲透了社會(huì)的各個(gè)領(lǐng)域,有力地推動(dòng)了社會(huì)生產(chǎn)力的發(fā)展和社會(huì)信息化程度的 提高,同時(shí)也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏也越來(lái)越 快。 目前,單片機(jī)正朝著高性能和多品種方向發(fā)展趨勢(shì)將是進(jìn)一步向著 CMOS 化、低功耗、小體積、大容量、高性能、低價(jià)格和外圍電路內(nèi)裝化等幾個(gè)方面 發(fā)展。下面是單片機(jī)的主要發(fā)展趨勢(shì)。單片機(jī)應(yīng)用的重要意義還在于,它從根 本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字 電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能用單片機(jī)通過(guò)軟件方法來(lái)實(shí)現(xiàn)了。這種軟件 代替硬件的控制技術(shù)也稱(chēng)為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。 單片機(jī)模塊中最常見(jiàn)的是數(shù)
12、字鐘,數(shù)字鐘是一種用數(shù)字電路技術(shù)實(shí)現(xiàn)時(shí)、 分、秒計(jì)時(shí)的裝置,與機(jī)械式時(shí)鐘相比具有更高的準(zhǔn)確性和直觀(guān)性,且無(wú)機(jī)械 裝置,具有更長(zhǎng)的使用壽命,因此得到了廣泛的使用。 青島理工大學(xué)畢業(yè)論文 1 1.2 數(shù)字電子鐘的意義 數(shù)字電子時(shí)鐘具有走時(shí)準(zhǔn)確,一鐘多用等特點(diǎn),在生活中已經(jīng)得到廣泛的 應(yīng)用。數(shù)字時(shí)鐘是采用數(shù)字電路實(shí)現(xiàn)對(duì)時(shí)、分、秒.數(shù)字顯示的計(jì)時(shí)裝置,廣泛用 于個(gè)人、家庭、車(chē)站、碼頭、辦公室等公共場(chǎng)所,成為人們?nèi)粘I钪胁豢缮俚?必需品,由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精 度遠(yuǎn)遠(yuǎn)超過(guò)老式鐘表, 鐘表的數(shù)字化給人們生產(chǎn)生活帶來(lái)了極大的方便,而且 大大地?cái)U(kuò)展了鐘表原先的報(bào)時(shí)功
13、能。諸如定時(shí)自動(dòng)報(bào)警、按時(shí)自動(dòng)打鈴、時(shí)間 程序自動(dòng)控制、定時(shí)廣播、自動(dòng)起閉路燈、定時(shí)開(kāi)關(guān)烘箱、通斷動(dòng)力設(shè)備、甚 至各種定時(shí)電氣的自動(dòng)啟用等,所有這些都是以鐘表數(shù)字化為基礎(chǔ)的。因此, 研究數(shù)字鐘及擴(kuò)大其應(yīng)用,有著非?,F(xiàn)實(shí)的意義。 1.3 數(shù)字電子鐘的應(yīng)用 數(shù)字時(shí)鐘已成為人們?nèi)粘I钪斜夭豢缮俚谋匦杵?,廣泛用于個(gè)人、家庭 以及車(chē)站、碼頭、劇場(chǎng)、辦公室等公共場(chǎng)所,給人們的生活、學(xué)習(xí)、工作、娛 樂(lè)帶來(lái)極大的方便。由于數(shù)字集成電路技術(shù)的發(fā)展和采用了先進(jìn)的石英技術(shù), 使數(shù)字時(shí)鐘具有走時(shí)準(zhǔn)確、性能穩(wěn)定、攜帶方便等優(yōu)點(diǎn),它還用于計(jì)時(shí)、自動(dòng) 報(bào)時(shí)及自動(dòng)控制等各個(gè)領(lǐng)域。 青島理工大學(xué)畢業(yè)論文 2 第 2 章 整體
14、設(shè)計(jì)方案 2.1 單片機(jī)的選擇 單片機(jī)微型計(jì)算機(jī)簡(jiǎn)稱(chēng)單片機(jī),特別適用于控制領(lǐng)域,故又稱(chēng)為微控制器。 通常,單片機(jī)由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計(jì)算機(jī)的基本功能部 件:中央處理器、存儲(chǔ)器和 I/O 接口電路等。因此,單片機(jī)只需要和適當(dāng)?shù)能?件及外部設(shè)備相結(jié)合,便可成為一個(gè)單片機(jī)控制系統(tǒng)。 單片機(jī)正朝著多功能、高性能、低電壓、低功耗、低價(jià)格、大存儲(chǔ)容量、 強(qiáng) I/O 功能及較好的結(jié)構(gòu)兼容性方向發(fā)展。其發(fā)展趨勢(shì)不外乎以下幾個(gè)方面: 1、多功能 單片機(jī)中盡可能地把所需要的存儲(chǔ)器和 I/O 口都集成在一塊芯片上,使得 單片機(jī)可以實(shí)現(xiàn)更多的功能。比如 A/D、PWM、PCA(可編程計(jì)數(shù)器陣列) 、 W
15、DT(監(jiān)視定時(shí)器看家狗) 、高速 I/O 口及計(jì)數(shù)器的捕獲/比較邏輯等。有 的單片機(jī)針對(duì)某一個(gè)應(yīng)用領(lǐng)域,集成了相關(guān)的控制設(shè)備,以減少應(yīng)用系統(tǒng)的芯 片數(shù)量。 2、高效率和高性能 為了提高執(zhí)行速度和執(zhí)行效率,單片機(jī)開(kāi)始使用 RISC、流水線(xiàn)和 DSP 的 設(shè)計(jì)技術(shù),使單片機(jī)的性能有了明顯的提高,表現(xiàn)為:?jiǎn)纹瑱C(jī)的時(shí)鐘頻率得到 提高,同樣頻率的單片機(jī)運(yùn)行效率也有了很大的提升,由于集成度的提高,單 片機(jī)的尋址能力、片內(nèi) ROM 和 RAM 的容量都突破了以往的數(shù)量和限制。 3、低電壓和低功耗 單片機(jī)的嵌入式應(yīng)用決定了低電壓和低功耗的特性十分重要。由于 CMOS 等工藝的大量采用,很多單片機(jī)可以在更低的電
16、壓下工作(1.2V 或 0.9V) ,功 耗已經(jīng)降低到 A 級(jí)。這些特性使得單片機(jī)系統(tǒng)可以在更小電源的支持下工作 更長(zhǎng)的時(shí)間。 4、低價(jià)格 單片機(jī)應(yīng)用面廣,使用數(shù)量大,帶來(lái)的直接好處是降低成本。目前世界各 青島理工大學(xué)畢業(yè)論文 3 大公司為了提高競(jìng)爭(zhēng)力,在提高單片機(jī)性能的同時(shí),十分注意降低其產(chǎn)品的價(jià) 格。 下面大致介紹一下單片機(jī)的主要應(yīng)用領(lǐng)域和特點(diǎn)。 (1)家用電器領(lǐng)域 用單片機(jī)控制系統(tǒng)取代傳統(tǒng)的模擬和數(shù)字控制電路,使家用電器功能更完 善,更加智能化和易于使用。 (2)辦公自動(dòng)化領(lǐng)域 單片機(jī)作為嵌入式系統(tǒng)廣泛應(yīng)用于現(xiàn)代辦公設(shè)備,如計(jì)算機(jī)的鍵盤(pán)、磁盤(pán) 驅(qū)動(dòng)、打印機(jī)、復(fù)印機(jī)、電話(huà)機(jī)和傳真機(jī)等。 (
17、3)商業(yè)應(yīng)用領(lǐng)域 商業(yè)應(yīng)用系統(tǒng)部分與家用和辦公應(yīng)用系統(tǒng)相似,但更加注重設(shè)備的穩(wěn)定性、 可靠性和安全性。商用系統(tǒng)中廣泛使用的電子計(jì)量?jī)x器、收款機(jī)、條形碼閱讀 器、安全監(jiān)測(cè)系統(tǒng)、空氣調(diào)節(jié)系統(tǒng)和冷凍保鮮系統(tǒng)等,都采用了單片機(jī)構(gòu)成的 專(zhuān)用系統(tǒng)。與通用計(jì)算機(jī)相比,這些系統(tǒng)由于比較封閉,可以更有效地防止病 毒和電磁干擾等,可靠性更高。 (4)工業(yè)自動(dòng)化 在工業(yè)控制和機(jī)電一體化控制系統(tǒng)中,除了采用工控計(jì)算機(jī)外,很多都是 以單片機(jī)為核心的單片機(jī)和多機(jī)系統(tǒng)。 (5)智能儀表與集成智能傳感器 目前在各種電氣測(cè)量?jī)x表中普遍采用了單片機(jī)應(yīng)用系統(tǒng)來(lái)代替?zhèn)鹘y(tǒng)的測(cè)量 系統(tǒng),使得測(cè)量系統(tǒng)具有存儲(chǔ)、數(shù)據(jù)處理、查詢(xún)及聯(lián)網(wǎng)等智能功
18、能。將單片機(jī) 和傳感器相結(jié)合,可以構(gòu)成新一代的智能傳感器。它將傳感器變換后的物理量 作進(jìn)一步的變化和處理,使其成為數(shù)字信號(hào),可以遠(yuǎn)距離傳輸并與計(jì)算機(jī)接口。 (6)現(xiàn)代交通與航空航天領(lǐng)域 通常應(yīng)用于電子綜合顯示系統(tǒng)、動(dòng)力監(jiān)控系統(tǒng)、自動(dòng)駕駛系統(tǒng)、通信系統(tǒng) 以及運(yùn)行監(jiān)視系統(tǒng)等。這些領(lǐng)域?qū)w積、功耗、穩(wěn)定性和實(shí)時(shí)性的要求往往比 商用系統(tǒng)還要高,因此采用單片機(jī)系統(tǒng)更加重要。 目前,我國(guó)生產(chǎn)很多型號(hào)的單片機(jī),在此,我們采用型號(hào)為 AT89S51 的單 青島理工大學(xué)畢業(yè)論文 4 片機(jī)。因?yàn)?AT89S51 是一個(gè)低電壓,高性能 CMOS 8 位單片機(jī),片內(nèi)含 4k bytes 的可反復(fù)擦寫(xiě)的 Flash 只
19、讀程序存儲(chǔ)器和 128 bytes 的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器 (RAM) ,器件采用 ATMEL 公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo) 準(zhǔn) MCS-51 指令系統(tǒng),片內(nèi)置通用 8 位中央處理器和 Flash 存儲(chǔ)單元,內(nèi)置功能 強(qiáng)大的微型計(jì)算機(jī)的 AT89S51 提供了高性?xún)r(jià)比的解決方案。 AT89S51 是一個(gè)低功耗高性能單片機(jī),40 個(gè)引腳,32 個(gè)外部雙向輸入/輸 出(I/O)端口,同時(shí)內(nèi)含 2 個(gè)外中斷口,2 個(gè) 16 位可編程定時(shí)計(jì)數(shù)器,2 個(gè)全 雙工串行通信口,AT89S51 可以按照常規(guī)方法進(jìn)行編程,也可以在線(xiàn)編程。其 將通用的微處理器和 Flash 存儲(chǔ)器結(jié)合在一起,特別是可
20、反復(fù)擦寫(xiě)的 Flash 存儲(chǔ) 器可有效地降低開(kāi)發(fā)成本。 2.2 單片機(jī)的基本結(jié)構(gòu) MCS-51 單片機(jī)內(nèi)部結(jié)構(gòu),圖 2.1 單片機(jī) 8051 內(nèi)部結(jié)構(gòu)。 8051 是 MCS-51 系列單片機(jī)的典型產(chǎn)品。8051 單片機(jī)包含中央處理器、 程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、定時(shí)/計(jì)數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾 大單元及數(shù)據(jù)總線(xiàn)、地址總線(xiàn)和控制總線(xiàn)等三大總線(xiàn)。 具體說(shuō)明如下: 中央處理器: 中央處理器(CPU)是整個(gè)單片機(jī)的核心部件,是 8 位數(shù)據(jù)寬度的處理器,能 處理 8 位二進(jìn)制數(shù)據(jù)或代碼,CPU 負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)協(xié)調(diào)的 工作,完成運(yùn)算和控制輸入輸出功能等操作。 數(shù)據(jù)存儲(chǔ)器(R
21、AM): 8051 內(nèi)部有 128 個(gè) 8 位用戶(hù)數(shù)據(jù)存儲(chǔ)單元和 128 個(gè)專(zhuān)用寄存器單元,它們 是統(tǒng)一編址的,專(zhuān)用寄存器只能用于存放控制指令數(shù)據(jù),用戶(hù)只能訪(fǎng)問(wèn),而不 能用于存放用戶(hù)數(shù)據(jù),所以,用戶(hù)能使用的 RAM 只有 128 個(gè),可存放讀寫(xiě)的 數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶(hù)定義的字型表。 青島理工大學(xué)畢業(yè)論文 5 圖 2.1 單片機(jī) 8051 的內(nèi)部結(jié)構(gòu) 程序存儲(chǔ)器(ROM): 8051 共有 4096 個(gè) 8 位掩膜 ROM,用于存放用戶(hù)程序,原始數(shù)據(jù)或表格。 定時(shí)/計(jì)數(shù)器(ROM): 8051 有兩個(gè) 16 位的可編程定時(shí)/計(jì)數(shù)器,以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)產(chǎn)生中斷用于控制 程序轉(zhuǎn)向。 并行輸入輸出
22、(I/O)口: 8051 共有 4 組 8 位 I/O 口(P0、P1、P2 或 P3) ,用于對(duì)外部數(shù)據(jù)的傳輸。 全雙工串行口: 8051 內(nèi)置一個(gè)全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行 口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。 中斷系統(tǒng): 8051 具備較完善的中斷功能,有兩個(gè)外中斷、兩個(gè)定時(shí)/計(jì)數(shù)器中斷和一個(gè)串行 中斷,可滿(mǎn)足不同的控制要求,并具有 2 級(jí)的優(yōu)先級(jí)別選擇。 時(shí)鐘電路: 8051 內(nèi)置最高頻率達(dá) 12MHz 的時(shí)鐘電路,用于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí) 序,但 8052 單片機(jī)需外置振蕩電容。 單片機(jī)的結(jié)構(gòu)有兩種類(lèi)型,一種是程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器
23、分開(kāi)的形式, 即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計(jì)算機(jī)廣泛使用的程序存儲(chǔ)器與數(shù) 據(jù)存儲(chǔ)器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。INTEL 的 MCS-51 系列單片機(jī)采用的是哈佛結(jié)構(gòu)的形式,而后續(xù)產(chǎn)品 16 位的 MCS-96 系列單片機(jī) 則采用普林斯頓結(jié)構(gòu)。下圖是 MCS-51 系列單片機(jī)的內(nèi)部結(jié)構(gòu)示意圖。 青島理工大學(xué)畢業(yè)論文 6 圖 2.2 MCS-51 系列單片機(jī)的內(nèi)部結(jié)構(gòu) MCS-51 的引腳說(shuō)明:MCS-51 系列單片機(jī)中的 8031、8051 及 8751 均采用 40Pin 封裝的雙列直接 DIP 結(jié)構(gòu),圖 2.3 是它們的引腳配置,40 個(gè)引腳中,
24、正 電源和地線(xiàn)兩根,外置石英振蕩器的時(shí)鐘線(xiàn)兩根,4 組 8 位共 32 個(gè) I/O 口,中 斷口線(xiàn)與 P3 口線(xiàn)復(fù)用。 現(xiàn)在我們對(duì)這些引腳的功能加以說(shuō)明: Pin20:接地腳。 Pin40:正電源腳,正常工作或?qū)ζ瑑?nèi) EPROM 燒寫(xiě)程序時(shí),接+5V 電源。 Pin19:時(shí)鐘 XTAL1 腳,片內(nèi)震蕩電路的輸入端。 Pin18:時(shí)鐘 XTAL2 腳,片內(nèi)震蕩電路的輸出端。 8051 的時(shí)鐘有兩種方式,一種是片內(nèi)時(shí)鐘震蕩方式,但需在 18 和 19 腳外 接石英晶體(2-12MHz)和震蕩電容,震蕩電容的值一般取 10p-30p。另外一種 是外部時(shí)鐘方式,即將 XTAL1 接地,外部時(shí)鐘信號(hào)從
25、XTAL2 腳輸入。 青島理工大學(xué)畢業(yè)論文 7 圖 2.3 單片機(jī)的引腳圖 輸入輸出(I/O)引腳:Pin39-Pin32 為 P0.0-P0.7 輸入輸出腳,Pin1-Pin1 為 P1.0-P1.7 輸入輸出腳,Pin21-Pin28 為 P2.0-P2.7 輸入輸出腳,Pin10-Pin17 為 P3.0-P3.7 輸入輸出腳,這些輸入輸出腳的功能說(shuō)明如下: Pin9:REST/VPD復(fù)位信號(hào)復(fù)用腳,當(dāng) 8051 通電,時(shí)鐘電路開(kāi)始工作,在 REST 引腳上出現(xiàn) 24 個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即為初始復(fù)位。初始化后, 程序計(jì)數(shù)器 PC 指向 0000H,P0-P3 輸出口全部為高電平
26、,堆棧指針寫(xiě)入 07H, 其他專(zhuān)用寄存器被清“0” 。REST 由高電平下降為低電平后,系統(tǒng)即從 0000H 地址開(kāi)始執(zhí)行程序。然而初始復(fù)位不改變 RAM(包括工作寄存器 R0-R7)的狀 態(tài),8051 的初始態(tài)。 8051 的復(fù)位方式可以是自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位。此外,RESET/Vpd 還是一復(fù)用腳,Vcc掉電其間,此腳可接上備用電源,以保證單片機(jī)內(nèi)部 RAM 的數(shù)據(jù)不丟失。 Pin30:ALE/當(dāng)訪(fǎng)問(wèn)外部程序器時(shí),ALE(地址鎖存)的輸出用于鎖存地 址的低位字節(jié)。而訪(fǎng)問(wèn)內(nèi)部程序存儲(chǔ)器時(shí),ALE 端將有一個(gè) 1/6 時(shí)鐘頻率的正 脈沖信號(hào),這個(gè)信號(hào)可以用于識(shí)別單片機(jī)是否工作,也可以當(dāng)作
27、一個(gè)時(shí)鐘向外 輸出。更有一個(gè)特點(diǎn),當(dāng)訪(fǎng)問(wèn)外部程序存儲(chǔ)器,ALE 會(huì)跳過(guò)一個(gè)脈沖。 如果單片機(jī)是 EPROM,在編程其間,將用于輸入編程脈沖。 Pin29:當(dāng)訪(fǎng)問(wèn)外部程序存儲(chǔ)器時(shí),此腳輸出負(fù)脈沖選通信號(hào),PC 的 16 位 地址數(shù)據(jù)將出現(xiàn)在 P0 和 P2 口上,外部程序存儲(chǔ)器則把指令數(shù)據(jù)放到 P0 口上, 青島理工大學(xué)畢業(yè)論文 8 由 CPU 讀入并執(zhí)行。 Pin31:EA/Vpp程序存儲(chǔ)器的內(nèi)外部選通線(xiàn),8051 和 8751 單片機(jī),內(nèi)置 有 4kB 的程序存儲(chǔ)器,當(dāng) EA 為高電平并且程序地址小于 4kB 時(shí),讀取內(nèi)部程 序存儲(chǔ)器指令數(shù)據(jù),而超過(guò) 4kB 地址則讀取外部指令數(shù)據(jù)。如 EA
28、 為低電平, 則不管地址大小,一律讀取外部程序存儲(chǔ)器指令。顯然,對(duì)內(nèi)部無(wú)程序存儲(chǔ)器 的 8031,EA 端必須接地。 在編程時(shí),EA/VPP 腳還需加上 21V 的編程電壓。 青島理工大學(xué)畢業(yè)論文 9 第 3 章 數(shù)字時(shí)鐘的硬件設(shè)計(jì) 3.1 最小系統(tǒng)設(shè)計(jì) 單片機(jī)的最小系統(tǒng)是由電源、復(fù)位、晶振、/EA=1 組成,下面介紹一下每 一個(gè)組成部分。 電源引腳: Vcc 40 電源端 GND 20 接地端 工作電壓為 5V,另有 AT89S51 工作電壓則是 2.7-6V,引腳功能一樣。 圖 3.1 單片機(jī)最小系統(tǒng)的結(jié)構(gòu)圖 2.外接晶體引腳 青島理工大學(xué)畢業(yè)論文 10 圖 3.2 晶振連接的內(nèi)部、外部方
29、式圖 XTAL1 19 XTAL2 18 XTAL1 是片內(nèi)振蕩器的反相放大器輸入端,XTAL2 則是輸出端,使用外 部振蕩器時(shí),外部振蕩信號(hào)應(yīng)直接加到 XTAL1,而 XTAL2 懸空。內(nèi)部方式時(shí), 時(shí)鐘發(fā)生器對(duì)振蕩脈沖二分頻,如晶振為 12MHz,時(shí)鐘頻率就為 6MHz。晶振 的頻率可以在 1MHz-24MHz 內(nèi)選擇。電容取 30PF 左右。系統(tǒng)的時(shí)鐘電路設(shè)計(jì) 是采用的內(nèi)部方式,即利用芯片內(nèi)部的振蕩電路。AT89 單片機(jī)內(nèi)部有一個(gè)用于 構(gòu)成振蕩器的高增益反相放大器。 引腳 XTAL1 和 XTAL2 分別是此放大器的輸入端和輸出端。這個(gè)放大器與 作為反饋元件的片外晶體諧振器一起構(gòu)成一個(gè)自
30、激振蕩器。外接晶體諧振器以 及電容 C1 和 C2 構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中。對(duì)外接電容的 值雖然沒(méi)有嚴(yán)格的要求,但電容的大小會(huì)影響震蕩器頻率的高低、震蕩器的穩(wěn) 定性、起振的快速性和溫度的穩(wěn)定性。因此,此系統(tǒng)電路的晶體振蕩器的值為 12MHz,電容應(yīng)盡可能的選擇陶瓷電容,電容值約為 22F。在焊接刷電路板時(shí), 晶體振蕩器和電容應(yīng)盡可能安裝得與單片機(jī)芯片靠近,以減少寄生電容,更好 地保證震蕩器穩(wěn)定和可靠地工作。 3. 復(fù)位 RST 在振蕩器運(yùn)行時(shí),有兩個(gè)機(jī)器周期(24 個(gè)振蕩周期)以上的高電平出現(xiàn)在 此引腳時(shí),將使單片機(jī)復(fù)位,只要這個(gè)引腳保持高電平,51 芯片便循環(huán)復(fù)位。 復(fù)位后
31、 P0P3 口均置 1 引腳表現(xiàn)為高電平,程序計(jì)數(shù)器和特殊功能寄存器 SFR 全部清零。當(dāng)復(fù)位腳由高電平變?yōu)榈碗娖綍r(shí),芯片為 ROM 的 00H 處開(kāi)始 運(yùn)行程序。復(fù)位是由外部的復(fù)位電路來(lái)實(shí)現(xiàn)的。片內(nèi)復(fù)位電路是復(fù)位引腳 RST 青島理工大學(xué)畢業(yè)論文 11 通過(guò)一個(gè)斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來(lái)抑制噪聲,它的輸 出在每個(gè)機(jī)器周期的 S5P2,由復(fù)位電路采樣一次。復(fù)位電路通常采用上電自動(dòng) 復(fù)位和按鈕復(fù)位兩種方式,此電路系統(tǒng)采用的是上電與按鈕復(fù)位電路。當(dāng)時(shí)鐘 頻率選用 6MHz 時(shí),C 取 22F,Rs 約為 200,Rk 約為 1K。復(fù)位操作不會(huì)對(duì) 內(nèi)部 RAM 有所影響。常用的復(fù)位
32、電路如下圖: 圖 3.3 常用復(fù)位電路圖 4.輸入輸出引腳 (1) P0 端口P0.0-P0.7 P0 是一個(gè) 8 位漏極開(kāi)路型雙向 I/O 端口,端口置 1(對(duì)端口寫(xiě) 1)時(shí)作高阻抗輸入端。作為輸出口時(shí)能驅(qū)動(dòng) 8 個(gè) TTL。對(duì)內(nèi)部 Flash 程序存儲(chǔ)器編程時(shí),接收指令字節(jié);校驗(yàn)程序時(shí)輸出指令字節(jié),要求外接 上拉電阻。在訪(fǎng)問(wèn)外部程序和外部數(shù)據(jù)存儲(chǔ)器時(shí),P0 口是分時(shí)轉(zhuǎn)換的地址(低 8 位)/數(shù)據(jù)總線(xiàn),訪(fǎng)問(wèn)期間內(nèi)部的上拉電阻起作用。 (2) P1 端口P1.0P1.7 P1 是一個(gè)帶有內(nèi)部上拉電阻的 8 位雙向 I/0 端口。 輸出時(shí)可驅(qū)動(dòng) 4 個(gè) TTL。端口置 1 時(shí),內(nèi)部上拉電阻將端口
33、拉到高電平,作輸 入用。對(duì)內(nèi)部 Flash 程序存儲(chǔ)器編程時(shí),接收低 8 位地址信息。 (3)P2 端口P2.0P2.7P2 是一個(gè)帶一個(gè)有內(nèi)部上拉電阻的 8 位雙向 I/O 端 口。輸出時(shí)可驅(qū)動(dòng) 4 個(gè) TTL。端口置一時(shí),內(nèi)部上拉電阻將端口拉到高電平, 作輸入用。對(duì)內(nèi)部 Flash 程序存儲(chǔ)器編程時(shí),接收高 8 位地址和控制信息。在 訪(fǎng)問(wèn)外部程序和 16 位外部數(shù)據(jù)存儲(chǔ)器時(shí),P2 口送出高 8 位地址。而在訪(fǎng)問(wèn) 8 位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí)其引腳上的內(nèi)容在此期間不會(huì)改變。 (4)P3 端口P3.0P3.7 P2 是一個(gè)帶有內(nèi)部上拉電阻的 8 位雙向 I/0 端口。 輸出時(shí)可驅(qū)動(dòng) 4 個(gè) T
34、TL。端口置 1 時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸 入用。對(duì)內(nèi)部 Flash 程序存儲(chǔ)器編程時(shí),接控制信息。除此外 P3 端口還用于一 青島理工大學(xué)畢業(yè)論文 12 些專(zhuān)門(mén)功能,如下表: 表 3-1 P3 端口引腳第二功能表 P3 引腳第二功能 P3.0串行數(shù)據(jù)接收(RXD) P3.1串行數(shù)據(jù)發(fā)送(TXD) P3.2外部中斷 0 申請(qǐng)( INT0) P3.3外部中斷 1 申請(qǐng)(INT1) P3.4定時(shí)器/計(jì)數(shù)器 0 計(jì)數(shù)輸入(T0) P3.5定時(shí)器/計(jì)數(shù)器 1 計(jì)數(shù)輸入(T1) P3.6外部 RAM 寫(xiě)選通 WR P3.7外部 RAM 讀選通 RD 3.2 LED 顯示電路 顯示器普遍地用
35、于直觀(guān)地顯示數(shù)字系統(tǒng)的運(yùn)行狀態(tài)和工作數(shù)據(jù),按照材料 及產(chǎn)品工藝,單片機(jī)應(yīng)用系統(tǒng)中常用的顯示器有: 發(fā)光二極管 LED 顯示器、 液晶 LCD 顯示器、CRT 顯示器等。LED 顯示器是現(xiàn)在最常用的顯示器之一, 如下圖所示。 圖 3.4 LED 顯示器的符號(hào)圖 發(fā)光二極管(LED)由特殊的半導(dǎo)體材料砷化鎵、磷砷化鎵等制成,可以 單獨(dú)使用,也可以組裝成分段式或點(diǎn)陣式 LED 顯示器件(半導(dǎo)體顯示器) 。分 段式顯示器(LED 數(shù)碼管)由 7 條線(xiàn)段圍成 8 字型,每一段包含一個(gè)發(fā)光二極 管。外加正向電壓時(shí)二極管導(dǎo)通,發(fā)出清晰的光。只要按規(guī)律控制各發(fā)光段亮、 滅,就可以顯示各種字形或符號(hào)。LED 數(shù)
36、碼管有共陽(yáng)、共陰之分。下圖是共陽(yáng) 式、共陰式 LED 數(shù)碼管的原理圖和符號(hào)。 青島理工大學(xué)畢業(yè)論文 13 圖 3.5 共陽(yáng)式、共陰式 LED 數(shù)碼管的原理圖和數(shù)碼管的符號(hào)圖 顯示電路顯示模塊需要實(shí)時(shí)顯示當(dāng)前的時(shí)間,即時(shí)、分、秒,因此需要 6 個(gè)數(shù)碼管,另需兩個(gè)數(shù)碼管來(lái)顯示橫。采用動(dòng)態(tài)顯示方式顯示時(shí)間,硬件連接 如下圖所示,時(shí)的十位和個(gè)位分別顯示在第一個(gè)和第二個(gè)數(shù)碼管,分的十位和 個(gè)位分別顯示在第四個(gè)和第五個(gè)數(shù)碼管,秒的十位和個(gè)位分別顯示在第七個(gè)和 第八個(gè)數(shù)碼管,其余數(shù)碼管顯示橫線(xiàn)。LED 顯示器的顯示控制方式按驅(qū)動(dòng)方式 可分成靜態(tài)顯示方式和動(dòng)態(tài)顯示方式兩種。對(duì)于多位 LED 顯示器,通常都是采
37、 用動(dòng)態(tài)掃描的方法進(jìn)行顯示,其硬件連接方式如下圖所示。 圖 3.6 數(shù)碼管的硬件連接示意圖 數(shù)碼管使用條件: 青島理工大學(xué)畢業(yè)論文 14 a、段及小數(shù)點(diǎn)上加限流電阻 b、使用電壓:段:根據(jù)發(fā)光顏色決定; 小數(shù)點(diǎn):根據(jù)發(fā)光顏色決定 c、使用電流:靜態(tài):總電流 80mA(每段 10mA) ;動(dòng)態(tài):平均電流 4.5mA 峰值電流 100mA 數(shù)碼管使用注意事項(xiàng)說(shuō)明: (1)數(shù)碼管表面不要用手觸摸,不要用手去弄引角; (2)焊接溫度:260 度;焊接時(shí)間:5s; (3)表面有保護(hù)膜的產(chǎn)品,可以在使用前撕下來(lái)。 青島理工大學(xué)畢業(yè)論文 15 第 4 章 數(shù)字時(shí)鐘的軟件設(shè)計(jì) 系統(tǒng)的軟件設(shè)計(jì)也是工具系統(tǒng)功能的
38、設(shè)計(jì)。單片機(jī)軟件的設(shè)計(jì)主要包括執(zhí) 行軟件的設(shè)計(jì)和監(jiān)控軟件的設(shè)計(jì)。單片機(jī)的軟件設(shè)計(jì)通常要考慮以下幾個(gè)方面 的問(wèn)題: (1)根據(jù)軟件功能要求,將系統(tǒng)軟件劃分為若干個(gè)相對(duì)獨(dú)立的部分,設(shè)計(jì) 出合理的總體結(jié)構(gòu),使軟件開(kāi)發(fā)清晰、簡(jiǎn)潔和流程合理; (2)培養(yǎng)良好的編程風(fēng)格,如考慮結(jié)構(gòu)化程序設(shè)計(jì)、實(shí)行模塊化、子程序 化。既便于調(diào)試、鏈接,又便于移植和修改; (3)建立正確的數(shù)學(xué)模型,通過(guò)仿真提高系統(tǒng)的性能,并選取合適的參數(shù); (4)繪制程序流程圖; (5)合理分配系統(tǒng)資源; (6)為程序加入注釋?zhuān)岣呖勺x性,實(shí)施軟件工程; (7)注意軟件的抗干擾設(shè)計(jì),提高系統(tǒng)的可靠性。 4.1 系統(tǒng)軟件設(shè)計(jì)流程圖 這次的數(shù)字
39、電子鐘設(shè)計(jì)用到很多子程序,它們的流程圖如下所示。 主程序是先開(kāi)始,然后啟動(dòng)定時(shí)器,定時(shí)器啟動(dòng)后在進(jìn)行按鍵檢測(cè),檢測(cè) 完后,就可以顯示時(shí)間。 開(kāi)始 啟動(dòng)定時(shí)器 按鍵檢測(cè) 時(shí)間顯示 青島理工大學(xué)畢業(yè)論文 16 圖 4.1 主程序圖 按鍵處理是先檢測(cè)秒按鍵是否按下,秒按鍵如果按下,秒就加 1;如果沒(méi) 有按下,就檢測(cè)分按鍵是否按下,分按鍵如果按下,分就加 1;如果沒(méi)有按下, 就檢測(cè)時(shí)按鍵是否按下,時(shí)按鍵如果按下,時(shí)就加 1;如果沒(méi)有按下,就把時(shí) 間顯示出來(lái)。 圖 4.2 按鍵處理流程圖 定時(shí)器中斷時(shí)是先檢測(cè) 1 秒是否到,1 秒如果到,秒單元就加 1;如果沒(méi)到, N Y N Y N Y 時(shí)加 1 顯示
40、時(shí)間 結(jié)束 開(kāi)始 秒按鍵按下? 秒加 1 分按鍵按下? 分加 1 時(shí)按鍵按下? 青島理工大學(xué)畢業(yè)論文 17 就檢測(cè) 1 分鐘是否到,1 分鐘如果到,分單元就加 1;如果沒(méi)到,就檢測(cè) 1 小時(shí) 是否到,1 小時(shí)如果到,時(shí)單元就加 1,如果沒(méi)到,就顯示時(shí)間。 圖 4.3 定時(shí)器中斷流程圖 N 24 小時(shí)到? 分單元清零,時(shí)單元加 1 N N N Y Y 時(shí)單元清零 時(shí)間顯示 中斷返回 開(kāi)始 1 秒時(shí)間到? 60 秒到? 60 分鐘到? 秒單元加 1 秒單元清零,分單元加 1 Y Y 青島理工大學(xué)畢業(yè)論文 18 時(shí)間顯示是先秒個(gè)位計(jì)算顯示,然后是秒十位計(jì)算顯示,再是分個(gè)位計(jì)算 顯示,再然后是分十位顯
41、示,再就是時(shí)個(gè)位計(jì)算顯示,最后是時(shí)十位顯示。 圖 4.4 時(shí)間顯示流程圖 時(shí)十位計(jì) 算顯示 結(jié)束 開(kāi)始 秒個(gè)位計(jì) 算顯示 秒十位計(jì) 算顯示 分個(gè)位計(jì) 算顯示 分十位計(jì) 算顯示 時(shí)個(gè)位計(jì) 算顯示 青島理工大學(xué)畢業(yè)論文 19 4.2 源程序 表 4-1 P1 口對(duì)應(yīng)段碼及數(shù)值: P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0顯示 數(shù) 字 dpgfedcba 16 進(jìn)制 代碼 0001111113FH 10000011006H 2010110115BH 3010011114FH 40110011066H 5011011016DH 6011111017DH 70000011107H
42、8011111117FH 9011011116FH 中斷入口程序: ORG 0000H ;程序執(zhí)行開(kāi)始地址 LJMP START ;跳到標(biāo)號(hào) START 執(zhí)行 ORG 0003H ;外中斷 0 中斷程序入口 RETI ;外中斷 0 中斷返回 ORG 000BH ;定時(shí)器 T0 中斷程序入口 LJMP INTT0 ;跳至 INTTO 執(zhí)行 ORG 0013H ;外中斷 1 中斷程序入口 RETI ;外中斷 1 中斷返回 ORG 001BH ;定時(shí)器 T1 中斷程序入口 LJMP INTT1 ;跳至 INTT1 執(zhí)行 ORG 0023H ;串行中斷程序入口地址 RETI ;串行中斷程序返回 主 程
43、 序 : START: MOV R0,#70H ;清 70H-7AH 共 11 個(gè)內(nèi)存單元 MOV R7,#0BH CLR P3.7 CLEARDISP: MOV R0,#00H 青島理工大學(xué)畢業(yè)論文 20 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í)
44、用) MOV TH1,#3CH ;50MS 定時(shí)初值 SETB EA ;總中斷開(kāi)放 SETB ET0 ;允許 T0 中斷 SETB TR0 ;開(kāi)啟 T0 定時(shí)器 MOV R4,#14H ;1 秒定時(shí)用初值(50MS20) START1: LCALL DISPLAY ;調(diào)用顯示子程序 JNB P3.7,SETMM1 ;P3.7 口為 0 時(shí)轉(zhuǎn)時(shí)間調(diào)整程序 SJMP START1 ;P3.7 口為 1 時(shí)跳回 START1 SETMM1: LJMP SETMM ;轉(zhuǎn)到時(shí)間調(diào)整程序 SETMM 4.3 數(shù)字鐘的原理圖 在此有必要介紹一下數(shù)字電子鐘的工作原理。 工作原理 : 數(shù)字電子鐘是一個(gè)將“時(shí)”,
45、“分”,“秒”顯示于人的視覺(jué)器官的計(jì)時(shí) 裝置。它的計(jì)時(shí)周期為 24 小時(shí),顯示滿(mǎn)刻度為 23 時(shí) 59 分 59 秒,另外還有校 時(shí)功能。因此一個(gè)基本的數(shù)字鐘電路主要由顯示器“時(shí)”,“分”,“秒”和 單片機(jī),還有校時(shí)電路組成。8 個(gè)數(shù)碼管的段選接到單片機(jī)的 P0 口,位選接到 單片機(jī)的 P2 口。數(shù)碼管按照數(shù)碼管動(dòng)態(tài)顯示的工作原理工作,將標(biāo)準(zhǔn)秒信號(hào)送 入“秒單元”,“秒單元”采用 60 進(jìn)制計(jì)數(shù)器,每累計(jì) 60 秒發(fā)出一個(gè)“分脈 沖”信號(hào),該信號(hào)將作為“分單元”的時(shí)鐘脈沖。 “分單元”也采用 60 進(jìn)制計(jì) 青島理工大學(xué)畢業(yè)論文 21 數(shù)器,每累計(jì) 60 分鐘,發(fā)出一個(gè)“時(shí)脈沖”信號(hào),該信號(hào)將被
46、送到“時(shí)單元” 。 “時(shí)單元”采用 24 進(jìn)制計(jì)時(shí)器,可實(shí)現(xiàn)對(duì)一天 24 小時(shí)的累計(jì)。顯示電路將 “時(shí)” 、 “分” 、 “秒”通過(guò)七段顯示器顯示出來(lái)。 用 PROTUES 軟件,根據(jù)要求畫(huà)出數(shù)字電子鐘的原理圖如下所示。 圖 4.5 數(shù)字鐘的原理圖 在這里,我們有必要介紹一下單片機(jī)的中斷系統(tǒng)。 中斷技術(shù)在單片系統(tǒng)中有著十分重要的作用,它不僅可以提高單片機(jī) CPU 的效率,也可以對(duì)突發(fā)事件處理。所謂中斷就是當(dāng) CPU 正在執(zhí)行程序 A 時(shí), 發(fā)生了另一個(gè)急需處理的事件 B,這時(shí) CPU 暫停當(dāng)前執(zhí)行的程序 A,立即轉(zhuǎn)去 執(zhí)行處理事件 B 的程序,處理完事件 B 后,再返回到程序 A 繼續(xù)執(zhí)行,這
47、個(gè)過(guò) 程被叫做中斷。 關(guān)于中斷的概念有下列幾個(gè)名詞:程序 A 稱(chēng)為主程序,處理事件 B 的程序 稱(chēng)為中斷服務(wù)程序,主程序中轉(zhuǎn)向中斷服務(wù)程序的地方稱(chēng)為斷點(diǎn),引起中斷的 原因即事件 B 稱(chēng)為中斷源,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序稱(chēng)為中斷響應(yīng)。關(guān)于中斷的 概念可以打個(gè)如下的比喻。領(lǐng)導(dǎo)(CPU)在自己的房間辦公(執(zhí)行主程序) ,下 屬(外設(shè))有問(wèn)題打電話(huà)來(lái)請(qǐng)示(中斷源) ,領(lǐng)導(dǎo)停下正在進(jìn)行的工作,通過(guò)電 話(huà)給下屬做指示(執(zhí)行中斷服務(wù)程序) ,指示完后,領(lǐng)導(dǎo)掛斷電話(huà),繼續(xù)做自己 青島理工大學(xué)畢業(yè)論文 22 的工作(返回主程序繼續(xù)執(zhí)行) 。 中斷是一個(gè)過(guò)程,當(dāng)中央處理器 CPU 在處理某件事情時(shí),外部又發(fā)生了另 一
48、緊急事件,請(qǐng)求 CPU 暫停當(dāng)前的工作而去迅速處理該緊急事件。處理結(jié)束后, 再回到原來(lái)被中斷的地方,繼續(xù)原來(lái)的工作。引起中斷的原因或發(fā)出中斷請(qǐng)求 的來(lái)源,稱(chēng)為中斷源。 單片機(jī)一般允許有多個(gè)中斷源,當(dāng)幾個(gè)中斷源同時(shí)向 CPU 請(qǐng)求中斷時(shí),就 存在 CPU 優(yōu)先響應(yīng)哪一個(gè)中斷請(qǐng)求源的問(wèn)題(優(yōu)先級(jí)問(wèn)題) ,一般根據(jù)中斷源 的輕重緩急排隊(duì),優(yōu)先處理最緊急事件的中斷請(qǐng)求,于是便規(guī)定每一個(gè)中斷源 都有一個(gè)中斷優(yōu)先級(jí)別,并且 CPU 總是響應(yīng)級(jí)別最高的中斷請(qǐng)求。 當(dāng) CPU 正在處理一個(gè)中斷源請(qǐng)求的時(shí)候,又發(fā)生了另一個(gè)優(yōu)先級(jí)比它高的 中斷源請(qǐng)求,如果 CPU 能夠暫時(shí)中止對(duì)原來(lái)中斷處理程序的執(zhí)行,轉(zhuǎn)而去處理
49、 優(yōu)先級(jí)更高的中斷源請(qǐng)求,待處理完以后,再繼續(xù)執(zhí)行原來(lái)的低級(jí)中斷處理程 序,這樣的過(guò)程稱(chēng)為中斷嵌套。 青島理工大學(xué)畢業(yè)論文 23 第 5 章 系統(tǒng)仿真 5.1 PROTUES 軟件介紹 Proteus 軟件是 Labcenter Electronics 公司的一款電路設(shè)計(jì)與仿真軟件,它包 括 ISIS、ARES 等軟件模塊,ARES 模塊主要用來(lái)完成 PCB 的設(shè)計(jì),而 ISIS 模 塊用來(lái)完成電路原理圖的布圖與仿真。Proteus 的軟件仿真基于 VSM 技術(shù),它 與其他軟件最大的不同也是最大的優(yōu)勢(shì)就在于它能仿真大量的單片機(jī)芯片,比 如 MCS-51 系列、PLC 系列等等,以及單片機(jī)外圍電
50、路,比如鍵盤(pán)、 LED、LCD 等等。通過(guò) Proteus 軟件的使用我們能夠輕易地獲得一個(gè)功能齊全、 實(shí)用方便的單片機(jī)實(shí)驗(yàn)室。 5.2 電子鐘系統(tǒng) PROTUES 仿真 用 PROTUES 軟件,根據(jù)數(shù)字電子鐘的原理圖,畫(huà)出仿真圖,得到的圖如 下所示。 圖 5.1 數(shù)字鐘的 PROTES 仿真 青島理工大學(xué)畢業(yè)論文 24 5.3 調(diào)試功能 單片機(jī)應(yīng)用系統(tǒng)的調(diào)試包括硬件和軟件兩部分,但是他們并不能完全分開(kāi)。 一般的方法是排除明顯的硬件故障,再進(jìn)行綜合調(diào)試,排除可能的軟/硬件故障。 拿到電路板后,首先要檢查加工質(zhì)量,并確保沒(méi)有任何方面的錯(cuò)誤,如短 路和斷路,尤其要避免電源短路;元器件在安裝前要逐
51、一檢查,用萬(wàn)用表測(cè)其 數(shù)值,看是否與所用相同;完成焊接后,應(yīng)先空載上電(芯片座上不插芯片), 并檢查各引腳的電位是否正確。若一切正常,方可在斷電的情況下將芯片插入, 再次檢查各引腳的電位及其邏輯關(guān)系。將萬(wàn)用表的探針?lè)诺絾纹瑱C(jī)接電源的引 腳上檢測(cè)一下,看是否符合要求。 走時(shí):默認(rèn)為走時(shí)狀態(tài),按 24 小時(shí)制分別顯示“時(shí)時(shí)分分秒秒”,有 2 個(gè)“”動(dòng)態(tài)顯示,時(shí)間會(huì)按實(shí)際時(shí)間以秒為最少單位變化。 走時(shí)調(diào)整:按 ksec 對(duì)秒進(jìn)行調(diào)整,按一下加一秒;按 kmin 對(duì)分進(jìn)行調(diào)整, 按一下加一分;按 khour 對(duì)時(shí)進(jìn)行調(diào)整,按一下加一小時(shí),從而達(dá)到快速設(shè)定 時(shí)間的目的。 時(shí)間是一個(gè)基本物理量,具有連續(xù)、
52、自動(dòng)流逝、不重復(fù)等特性。我國(guó)時(shí)間 基準(zhǔn)來(lái)自國(guó)家授時(shí)中心,人們?nèi)粘J褂玫臅r(shí)鐘就是以一定的精度與該基準(zhǔn)保持 同步的。結(jié)合時(shí)間概念和誤差理論,可以定義電子鐘的走時(shí)誤差 S=S1-S2,S1 表示程序?qū)嶋H運(yùn)行計(jì)算所得的秒;S2 表示客觀(guān)時(shí)間的標(biāo)準(zhǔn)秒。S0 時(shí)表示電子 鐘秒單元數(shù)值刷新滯后,即走時(shí)誤差為“慢”;反之,S0 表示秒單元數(shù)值的 刷新超前,即走時(shí)誤差為“快”。 本次設(shè)計(jì)的單片機(jī)電子鐘系統(tǒng)中,其誤差主要來(lái)源包括晶體頻率誤差,定 時(shí)器溢出誤差,延遲誤差。晶體頻率產(chǎn)生震蕩,容易產(chǎn)生走時(shí)誤差;定時(shí)器溢 出的時(shí)間誤差,本應(yīng)這一秒溢出,但卻在下一秒溢出,造成走時(shí)誤差;延遲時(shí) 間過(guò)長(zhǎng)或過(guò)短,都會(huì)造成與基準(zhǔn)時(shí)
53、間產(chǎn)生偏差,造成走時(shí)誤差。 軟件程序的調(diào)試一般可以將重點(diǎn)放在分模塊調(diào)試上,統(tǒng)調(diào)是最后一環(huán)。軟 件調(diào)試可以采取離線(xiàn)調(diào)試和在線(xiàn)調(diào)試兩種方式。前者不需要硬件仿真器,可借 助于軟件仿真器即可;后者一般需要仿真系統(tǒng)的支持。本次課題,Keil 軟件來(lái) 青島理工大學(xué)畢業(yè)論文 25 調(diào)試程序,通過(guò)各個(gè)模塊程序的單步或跟蹤調(diào)試,使程序逐漸趨于正確,最后 統(tǒng)調(diào)程序。 仿真部分采用 proteus 6 professional 軟件,此軟件功能強(qiáng)大且操作較為簡(jiǎn)單, 可以很容易的實(shí)現(xiàn)各種系統(tǒng)的仿真。 首先打開(kāi) proteus 6 professional 軟件,在元件庫(kù)中找到要選用的所有元件, 然后進(jìn)行原理圖的繪制;
54、繪制好后再選擇 wave6000 已經(jīng)編譯好的*.hex 文件, 選擇運(yùn)行,觀(guān)察顯示結(jié)果,根據(jù)顯示的結(jié)果和課題的要求再修改程序,再運(yùn)行 查,直到滿(mǎn)足要求。 青島理工大學(xué)畢業(yè)論文 26 結(jié)束語(yǔ) 通過(guò)這次的設(shè)計(jì)使我認(rèn)識(shí)到自己對(duì)單片機(jī)方面的知識(shí)了解太少,對(duì)于書(shū)本 上的很多知識(shí)還不能靈活運(yùn)用,尤其是對(duì)程序設(shè)計(jì)語(yǔ)句的理解和運(yùn)用,不能夠 充分理解每個(gè)語(yǔ)句的具體含義,導(dǎo)致編程的程序過(guò)于復(fù)雜,使得需要的存儲(chǔ)空 間增大。損耗了過(guò)多的內(nèi)存資源。 本次的設(shè)計(jì)使我從中學(xué)到了一些很重要的東西,那就是如何從理論到實(shí)踐 的轉(zhuǎn)化,怎樣將我所學(xué)到的知識(shí)運(yùn)用到我以后的工作中去。在大學(xué)的課堂的學(xué) 習(xí)只是在給我們灌輸專(zhuān)業(yè)知識(shí),而我們
55、應(yīng)把所學(xué)的用到我們現(xiàn)實(shí)的生活中去, 此次的電子時(shí)鐘設(shè)計(jì)給我奠定了一個(gè)實(shí)踐基礎(chǔ),我會(huì)在以后的學(xué)習(xí)、生活中磨 練自己,使自己適應(yīng)于以后的競(jìng)爭(zhēng),同時(shí)在查找資料的過(guò)程中我也學(xué)到了許多 新的知識(shí),在和同學(xué)協(xié)作過(guò)程中增進(jìn)同學(xué)間的友誼,使我對(duì)團(tuán)隊(duì)精神的積極性 和重要性有了更加充分的理解。 我們的學(xué)習(xí)不但要立足于書(shū)本,以解決理論和實(shí)際教學(xué)中的實(shí)際問(wèn)題為目 的,還要以實(shí)踐相結(jié)合,理論問(wèn)題即實(shí)踐課題,解決問(wèn)題即課程研究,學(xué)生自 己就是一個(gè)專(zhuān)家,通過(guò)自己的手來(lái)解決問(wèn)題比用腦子解決問(wèn)題更加深刻。學(xué)習(xí) 就應(yīng)該采取理論與實(shí)踐結(jié)合的方式,理論的問(wèn)題,也就是實(shí)踐性的課題。這種 做法既有助于完成理論知識(shí)的鞏固,又有助于帶動(dòng)實(shí)踐
56、,解決實(shí)際問(wèn)題,加強(qiáng) 我們的動(dòng)手能力和解決問(wèn)題的能力。 通過(guò)這次的實(shí)習(xí),我深刻地認(rèn)識(shí)到自己在課堂上學(xué)的知識(shí)是有限的,而且 知道是一會(huì)事,會(huì)運(yùn)用又是另一回事。以后要多實(shí)踐,要學(xué)以致用。 青島理工大學(xué)畢業(yè)論文 27 參考文獻(xiàn) 1李軍.51 系列單片機(jī)高級(jí)實(shí)例開(kāi)發(fā)指南.北京;北京航空航天大學(xué)出版社,2009. 2孫涵芳.MCS-51/96 系列單片機(jī)原理及應(yīng)用.北京;北京航空航天大學(xué)出版社. 2010. 3徐愛(ài)華.單片機(jī)應(yīng)用技術(shù)教程.北京;機(jī)械工業(yè)出版社.2010. 4付曉光.單片機(jī)原理與實(shí)用技術(shù).北京;清華大學(xué)出版社.2011. 5秦曾煌.電工學(xué)電工技術(shù)與電子技術(shù).北京;高等教育出版社.2010.
57、 6孫涵芳.MCS51/96 系列單片機(jī)原理及應(yīng)用.北京;北京航空航天大學(xué)出版社. 2009. 7許熙文.電路基礎(chǔ).北京;高等教育出版社.2011. 8郭慧.基于 MC51 單片機(jī)的最小系統(tǒng)設(shè)計(jì)與研究.西安電子科技大學(xué)長(zhǎng)安學(xué)院 電子科學(xué)與技術(shù).2006. 青島理工大學(xué)畢業(yè)論文 28 致 謝 首先衷心地感謝我的指導(dǎo)老師梁倩老師。本文從選題到完成,從理論 上的探討到實(shí)際問(wèn)題的解決,無(wú)處不飽含著梁老師的心血。梁老師的悉心指導(dǎo) 和建議給了我極大的幫助和支持,使我受益匪淺。 經(jīng)過(guò)三個(gè)月的忙碌和工作,本次畢業(yè)設(shè)計(jì)即將完成。在這次設(shè)計(jì)中多虧了 我的導(dǎo)師梁老師。梁老師平日里工作繁多,但在我做畢業(yè)設(shè)計(jì)的每個(gè)階段
58、,她 都給予了我很大的幫助,從查閱資料到設(shè)計(jì)草案的確定和修改,中期檢查,后 期詳細(xì)設(shè)計(jì),程序編寫(xiě)等整個(gè)過(guò)程中都給予了我悉心的指導(dǎo)。有指導(dǎo)老師的幫 助我才能少走彎路,盡快完成畢業(yè)論文。其次要感謝我的同學(xué)們及舍友對(duì)我無(wú) 私的幫助,特別是在資料搜集方面,舍友幫助我查閱資料,分析其間的異同之 處,讓我在極短的時(shí)間內(nèi)整理出所需的材料,正因?yàn)槿绱宋也拍茼樌耐瓿稍O(shè) 計(jì);我要感謝我的母校青島理工大學(xué),是母校給我們提供了優(yōu)良的學(xué)習(xí)環(huán) 境;另外,我還要感謝那些曾給我授過(guò)課的每一位老師,是你們教會(huì)我專(zhuān)業(yè)知 識(shí)。在此,我再一次真誠(chéng)的向幫助我的老師和同學(xué)說(shuō)一聲謝謝!謝謝大家! 青島理工大學(xué)畢業(yè)論文 29 附 錄 部分
59、程序清單部分程序清單 1 秒計(jì)時(shí)程序:T0 中斷服務(wù)程序 INTT0: PUSH ACC ;累加器入棧保護(hù) PUSH PSW ;狀態(tài)字入棧保護(hù) CLR ET0 ;關(guān) T0 中斷允許 CLR TR0 ;關(guān)閉定時(shí)器 T0 MOV A,#0B7H ;中斷響應(yīng)時(shí)間同步修正 ADD A,TL0 ;低 8 位初值修正 MOV TL0,A ;重裝初值(低 8 位修正值) MOV A,#3CH ;高 8 位初值修正 ADDC A,TH0 MOV TH0,A ;重裝初值(高 8 位修正值) SETB TR0 ;開(kāi)啟定時(shí)器 T0 DJNZ R4, OUTT0 ;20 次中斷未到中斷退出 ADDSS: MOV R4
60、,#14H ;20 次中斷到(1 秒)重賦初值 MOV R0,#71H ;指向秒計(jì)時(shí)單元(71H-72H) ACALL ADD1 ;調(diào)用加 1 程序(加 1 秒操作) MOV A,R3 ;秒數(shù)據(jù)放入 A(R3 為 2 位十進(jìn)制數(shù)組合) CLR C ;清進(jìn)位標(biāo)志 CJNE A,#60H,ADDMM ADDMM: JC OUTT0 ;小于 60 秒時(shí)中斷退出 ACALL CLR0 ;大于或等于 60 秒時(shí)對(duì)秒計(jì)時(shí)單元清 0 MOV R0,#77H ;指向分計(jì)時(shí)單元(76H-77H) ACALL ADD1 ;分計(jì)時(shí)單元加 1 分鐘 MOV A,R3 ;分?jǐn)?shù)據(jù)放入 A CLR C ;清進(jìn)位標(biāo)志 CJN
61、E A,#60H,ADDHH 青島理工大學(xué)畢業(yè)論文 30 ADDHH: JC OUTT0 ;小于 60 分時(shí)中斷退出 ACALL CLR0 ;大于或等于 60 分時(shí)分計(jì)時(shí)單元清 0 MOV R0,#79H ;指向小時(shí)計(jì)時(shí)單(78H-79H) ACALL ADD1 ;小時(shí)計(jì)時(shí)單元加 1 小時(shí) MOV A,R3 ;時(shí)數(shù)據(jù)放入 A CLR C ;清進(jìn)位標(biāo)志 CJNE A,#24H,HOUR HOUR: JC OUTT0 ;小于 24 小時(shí)中斷退出 ACALL CLR0 ;大于或等于 24 小時(shí)小時(shí)計(jì)時(shí)單元清 0 OUTT0: MOV 72H,76H ;中斷退出時(shí)將分、時(shí)計(jì)時(shí)單元數(shù)據(jù)移 MOV 73H
62、,77H ;入對(duì)應(yīng)顯示單元 MOV 74H,78H MOV 75H,79H POP PSW ;恢復(fù)狀態(tài)字(出棧) POP ACC ;恢復(fù)累加器 SETB ET0 ;開(kāi)放 T0 中斷 RETI ;中斷返回 閃動(dòng)調(diào)時(shí)程序:T1 中斷服務(wù)程序,用作時(shí)間調(diào)整時(shí)調(diào)整單元閃爍指示 INTT1: PUSH ACC ;中斷現(xiàn)場(chǎng)保護(hù) PUSH PSW MOV TL1, #0B0H ;裝定時(shí)器 T1 定時(shí)初值 MOV TH1, #3CH DJNZ R2,INTT1OUT ;0.3 秒未到退出中斷(50MS 中斷 6 次) MOV R2,#06H ;重裝 0.3 秒定時(shí)用初值 CPL 02H ;0.3 秒定時(shí)到對(duì)閃
63、爍標(biāo)志取反 JB 02H,FLASH1 ;02H 位為 1 時(shí)顯示單元“熄滅“ MOV 72H,76H ;02H 位為 0 時(shí)正常顯示 MOV 73H,77H MOV 74H,78H MOV 75H,79H 青島理工大學(xué)畢業(yè)論文 31 INTT1OUT: POP PSW ;恢復(fù)現(xiàn)場(chǎng) POP ACC RETI ;中斷退出 FLASH1: JB 01H,FLASH2 ;01H 位為 1 時(shí),轉(zhuǎn)小時(shí)熄滅控制 MOV 72H,7AH ;01H 位為 0 時(shí),“熄滅符“數(shù)據(jù)放入分 MOV 73H,7AH ;顯示單元(72H-73H) ,將不顯示分?jǐn)?shù)據(jù) MOV 74H,78H MOV 75H,79H AJ
64、MP INTT1OUT ;轉(zhuǎn)中斷退出 FLASH2: MOV 72H,76H ;01H 位為 1 時(shí), “熄滅符”數(shù)據(jù)放入小時(shí) MOV 73H,77H ;顯示單元(74H-75H) ,小時(shí)數(shù)據(jù)將不顯示 MOV 74H,7AH MOV 75H,7AH AJMP INTT1OUT ;轉(zhuǎn)中斷退出 加 1 子程序: ADD1: MOV A,R0 ;取當(dāng)前計(jì)時(shí)單元數(shù)據(jù)到 A DEC R0 ;指向前一地址 SWAP A ;A 中數(shù)據(jù)高四位與低四位交換 ORL A,R0 ;前一地址中數(shù)據(jù)放入 A 中低四位 ADD A,#01H ;A 加 1 操作 DA A ;十進(jìn)制調(diào)整 MOV R3,A ;移入 R3 寄存器 ANL A,#0FH ;高四位變 0 MOV R0,A ;放回前一地址單元 MOV A,R3 ;取回 R3 中暫存數(shù)據(jù) INC R0 ;指向當(dāng)前地址單元 SWAP A ;A 中數(shù)據(jù)高四位與低四位交換 ANL A,#0FH
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 九年級(jí)數(shù)學(xué)上冊(cè) 第三章 概率的進(jìn)一步認(rèn)識(shí)復(fù)習(xí)課件 (新版)北師大版
- 九年級(jí)數(shù)學(xué)上冊(cè) 第23章 圖形的相似 23.5 位似圖形授課課件 (新版)華東師大版
- 九年級(jí)歷史下冊(cè) 第四單元 第8課 美國(guó)經(jīng)濟(jì)的發(fā)展課件 新人教版
- 危急值報(bào)告及處理制度課件
- 高考小說(shuō)閱讀-第三講:小說(shuō)的敘述方式課件
- 國(guó)內(nèi)管理學(xué)院評(píng)鑒現(xiàn)況及未來(lái)發(fā)展課件
- “圖形的認(rèn)識(shí)與測(cè)量”知識(shí)梳理及教學(xué)策略課件
- 新版近視科普講座ppt課件
- 課件--迎接本科教學(xué)工作水平評(píng)估
- 現(xiàn)在完成進(jìn)行時(shí)PPT幻燈片課件
- 高考語(yǔ)文大一輪總復(fù)習(xí)-散文閱讀-概括內(nèi)容要點(diǎn)和主旨題題組訓(xùn)練ppt課件-新人教版
- 工程材料計(jì)劃編制課件
- 工廠(chǎng)車(chē)間管理基礎(chǔ)知識(shí)課件
- 2015北師大版六年級(jí)數(shù)學(xué)總復(fù)習(xí)正比例與反比例課件
- 文明集會(huì)禮儀規(guī)范班會(huì)課件