數(shù)字時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)_第1頁
數(shù)字時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)_第2頁
數(shù)字時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)_第3頁
數(shù)字時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)_第4頁
數(shù)字時(shí)鐘計(jì)時(shí)器的設(shè)計(jì)_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、摘 要近年來隨著計(jì)算機(jī)在社會(huì)領(lǐng)域的滲透和大規(guī)模集成電路的發(fā)展,單片機(jī)的應(yīng)用正在不斷地走向深入,由于它具有功能強(qiáng),體積小,功耗低,價(jià)格便宜,工作可靠,使用方便等特點(diǎn),因此特別適合于與控制有關(guān)的系統(tǒng),越來越廣泛地應(yīng)用于自動(dòng)控制,智能化儀器,儀表,數(shù)據(jù)采集,軍工產(chǎn)品以及家用電器等各個(gè)領(lǐng)域,單片機(jī)往往是作為一個(gè)核心部件來使用,在根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點(diǎn)的軟件結(jié)合,以作完善。本次做的數(shù)字鐘是以單片機(jī)(AT89C52)為核心,結(jié)合相關(guān)的元器件(共陰極LED數(shù)碼顯示器、BCD-鎖存/7段譯碼/驅(qū)動(dòng)器等),再配以相應(yīng)的軟件,達(dá)到制作簡易數(shù)字鐘的目的,其硬件部分難點(diǎn)在于元器件的選擇、布局及焊接

2、。數(shù)字電子時(shí)鐘計(jì)時(shí)器的優(yōu)點(diǎn)很多:可靠性高,控制精確度高,優(yōu)良的焊接性能,權(quán)威的焊接專家數(shù)據(jù)庫,遠(yuǎn)程診斷功能,遠(yuǎn)程控制功能,人性化設(shè)計(jì),節(jié)能降耗體積小,本機(jī)采用改進(jìn)的IGBT逆變技術(shù),減小了主變壓器及電抗器體積,從而減小了電源整機(jī)的體積和重量,大大降低了銅鐵損,提高了電源的效率及功率因數(shù),使節(jié)能效果非常顯著。關(guān)鍵詞:單片機(jī)應(yīng)用 電子鐘 AT89C52 共陰極LED數(shù)碼顯示器 Abstract In recent years along with the computer in the social domain seepage and the large scale integrated cir

3、cuit development, the monolithic integrated circuit application was moving towards unceasingly thoroughly, because it had function, the volume was small, the power loss was low, the price was cheap, the work was reliable, characteristics and so on easy to operate, therefore suited specially in with

4、the control related system, more and more widely applied in the automatic control, the intellectualized instrument, the measuring appliance, the data acquisition, the military product as well as the domestic electric appliances and so on each domain, the monolithic integrated circuit often is took a

5、 core part used, in the basis concrete hardware architecture, as well as in view of the concrete application object characteristic software union, made the consummation.This time does the digital clock is take the monolithic integrated circuit (AT89C52) as a core, unifies the related primary device

6、(common cathode LED numerical code monitor, the BCD- lock saves /7 section of decoding/driver and so on), again matches by the corresponding software, achieved the manufacture simple numeral clock the goal, its hardware partial difficulties lie in the primary device the choice, the layout and the we

7、lding.Digital electronic clock calculagraph merit many: Reliability height , the height controlling precision , good welding function, authoritys welding expert data base , long-range diagnose function , long-range under the control of function , personalization design that, saving energy and reduci

8、ng consumption volume has been small , this machine has adopt the IGBT contra variant technology improving , has diminished the host transformer and reactance implement volume, volume and weight having diminished the power source complete machine thereby, having reduced copper iron greatly mean , ha

9、s raised power source efficiency and power factor , has made energy conservation effect very notable. Keywords: The monolithic machine applies Electronic clock AT89C51 Together negative electrode LED digital display目 錄 TOC o 1-2 h z u HYPERLINK l _Toc229456120 摘 要 PAGEREF _Toc229456120 h i HYPERLINK

10、 l _Toc229456121 Abstract PAGEREF _Toc229456121 h ii HYPERLINK l _Toc229456123 緒 論 PAGEREF _Toc229456123 h 1 HYPERLINK l _Toc229456124 第一章 功能要求 PAGEREF _Toc229456124 h 2 HYPERLINK l _Toc229456125 第二章 方法論證 PAGEREF _Toc229456125 h 2 HYPERLINK l _Toc229456126 第三章 系統(tǒng)硬件電路的設(shè)計(jì) PAGEREF _Toc229456126 h 3 HYP

11、ERLINK l _Toc229456127 第四章 系統(tǒng)程序的設(shè)計(jì) PAGEREF _Toc229456127 h 4 HYPERLINK l _Toc229456128 第一節(jié) 主程序 PAGEREF _Toc229456128 h 4 HYPERLINK l _Toc229456129 第二節(jié) 顯示子程序 PAGEREF _Toc229456129 h 4 HYPERLINK l _Toc229456130 第三節(jié) 定時(shí)器T0中斷服務(wù)程序 PAGEREF _Toc229456130 h 5 HYPERLINK l _Toc229456131 第四節(jié) 定時(shí)器T1中斷服務(wù)程序 PAGEREF

12、 _Toc229456131 h 5 HYPERLINK l _Toc229456132 第五節(jié) 調(diào)時(shí)功能程序 PAGEREF _Toc229456132 h 6 HYPERLINK l _Toc229456133 第六節(jié) 秒表功能程序 PAGEREF _Toc229456133 h 6 HYPERLINK l _Toc229456134 第七節(jié) 鬧鐘時(shí)間社頂功能程序 PAGEREF _Toc229456134 h 6 HYPERLINK l _Toc229456135 第五章 調(diào)試及性能分析 PAGEREF _Toc229456135 h 7 HYPERLINK l _Toc22945613

13、6 第一節(jié) 硬件調(diào)試 PAGEREF _Toc229456136 h 7 HYPERLINK l _Toc229456137 第二節(jié) 軟件調(diào)試 PAGEREF _Toc229456137 h 8 HYPERLINK l _Toc229456138 第三節(jié) 性能分析 PAGEREF _Toc229456138 h 8 HYPERLINK l _Toc229456139 第六章 電子鐘的硬件系統(tǒng)設(shè)計(jì) PAGEREF _Toc229456139 h 8 HYPERLINK l _Toc229456140 第一節(jié) 電子鐘的硬件電路的設(shè)計(jì) PAGEREF _Toc229456140 h 9 HYPERL

14、INK l _Toc229456141 第二節(jié) 電子鐘電路 PAGEREF _Toc229456141 h 9 HYPERLINK l _Toc229456142 第三節(jié) 復(fù)位電路 PAGEREF _Toc229456142 h 10 HYPERLINK l _Toc229456143 第四節(jié) 鬧鐘電路 PAGEREF _Toc229456143 h 12 HYPERLINK l _Toc229456144 第五節(jié) 顯示部分 PAGEREF _Toc229456144 h 12 HYPERLINK l _Toc229456145 第六節(jié) LED顯示結(jié)構(gòu)與原理 PAGEREF _Toc22945

15、6145 h 12 HYPERLINK l _Toc229456146 第七節(jié) LED顯示器接口及顯示方式 PAGEREF _Toc229456146 h 14 HYPERLINK l _Toc229456147 第八節(jié) 電源電路部分 PAGEREF _Toc229456147 h 16 HYPERLINK l _Toc229456148 第九節(jié) 集成直流穩(wěn)壓電源的設(shè)計(jì) PAGEREF _Toc229456148 h 17 HYPERLINK l _Toc229456149 附錄 PAGEREF _Toc229456149 h 19 HYPERLINK l _Toc229456150 結(jié) 論

16、PAGEREF _Toc229456150 h 45 HYPERLINK l _Toc229456151 參考文獻(xiàn) PAGEREF _Toc229456151 h 46 HYPERLINK l _Toc229456152 致 謝 PAGEREF _Toc229456152 h 47緒 論 20世紀(jì)末,電子技術(shù)獲得了飛速的發(fā)展,在其推動(dòng)下,現(xiàn)代電子產(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é)奏也越來越快。 時(shí)間對人們來說總是那么寶貴,工作的忙碌性和繁雜性容易使人忘記當(dāng)前的時(shí)間。忘記了要做的事情,當(dāng)事情不是很

17、重要的時(shí)候,這種遺忘無傷大雅。但是,一旦重要事情,一時(shí)的耽誤可能釀成大禍。目前,單片機(jī)正朝著高性能和多品種方向發(fā)展趨勢將是進(jìn)一步向著CMOS化、低功耗、小體積、大容量、高性能、低價(jià)格和外圍電路內(nèi)裝化等幾個(gè)方面發(fā)展。下面是單片機(jī)的主要發(fā)展趨勢。單片機(jī)應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能用單片機(jī)通過軟件方法來實(shí)現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。單片機(jī)模塊中最常見的是數(shù)字鐘,數(shù)字鐘是一種用數(shù)字電路技術(shù)實(shí)現(xiàn)時(shí)、分、秒計(jì)時(shí)的裝置,與機(jī)械式時(shí)鐘相比具有更高的準(zhǔn)確性和直觀性,且

18、無機(jī)械裝置,具有更更長的使用壽命,因此得到了廣泛的使用。數(shù)字鐘是采用數(shù)字電路實(shí)現(xiàn)對.時(shí),分,秒.數(shù)字顯示的計(jì)時(shí)裝置,廣泛用于個(gè)人家庭,車站, 碼頭辦公室等公共場所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵?由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度,遠(yuǎn)遠(yuǎn)超過老式鐘表, 鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地?cái)U(kuò)展了鐘表原先的報(bào)時(shí)功能。諸如定時(shí)自動(dòng)報(bào)警、按時(shí)自動(dòng)打鈴、時(shí)間程序自動(dòng)控制、定時(shí)廣播、自動(dòng)起閉路燈、定時(shí)開關(guān)烘箱、通斷動(dòng)力設(shè)備、甚至各種定時(shí)電氣的自動(dòng)啟用等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究數(shù)字鐘及擴(kuò)大其應(yīng)用,有著非?,F(xiàn)實(shí)的意義。功能要求 時(shí)鐘計(jì)

19、時(shí)器要求用單片機(jī)及6位LED數(shù)碼管顯示時(shí)、分、秒,以24小時(shí)計(jì)時(shí)方式運(yùn)行,能整點(diǎn)提醒(短蜂鳴,次數(shù)代表整點(diǎn)時(shí)間),使用按鍵開關(guān)可實(shí)現(xiàn)時(shí)、分調(diào)整,秒表/時(shí)鐘功能轉(zhuǎn)換,省電(關(guān)閉顯示)及定時(shí)設(shè)定提醒(蜂鳴器)等功能第二章 方法論證 為了實(shí)現(xiàn)LED顯示器的數(shù)字顯示,可以采用靜態(tài)顯示法和動(dòng)態(tài)顯示法。由于靜態(tài)顯示法需要數(shù)據(jù)鎖存器等硬件,接口復(fù)雜一些,又考慮到時(shí)鐘顯示只有6位,且系統(tǒng)沒有其他復(fù)雜的處理任務(wù),所以決定采用動(dòng)態(tài)掃描法實(shí)現(xiàn)LED顯示。按鍵開關(guān) 蜂鳴器AT89C52 P0單片機(jī)控制器 P2 列驅(qū)動(dòng)6位LED顯示器 圖2.1 硬件系統(tǒng)的整體設(shè)計(jì)圖 單片機(jī)采用易購的AT89C52系列,這種單片機(jī)具有足

20、夠的空余硬件資源,可以實(shí)現(xiàn)其他的擴(kuò)充功能。如果考慮使用電池供電,則可采用LV系列單片機(jī)。時(shí)鐘計(jì)時(shí)器電路系統(tǒng)的總體設(shè)計(jì)框圖2.1所示。第三章 系統(tǒng)硬件電路的設(shè)計(jì) 時(shí)鐘計(jì)時(shí)器的硬件電路如圖2.2所示。該電路采用AT89C52單片機(jī)最小化應(yīng)用設(shè)計(jì);采用共陽7段LED顯示器;P0口輸出段碼數(shù)據(jù);P2.0P2.5口作列掃描輸出;P1.0、P1.1、P1.2和P1.3口接4個(gè)按鈕開關(guān),用于調(diào)時(shí)及功能設(shè)置;P1.7端口接5V的小蜂鳴器,用于按鈕發(fā)音及定時(shí)提醒等;為了提供共陽LED數(shù)碼管的列掃描驅(qū)動(dòng)電壓,用三極管9012作電源驅(qū)動(dòng)輸出;采用12MHz晶振,可提高秒計(jì)時(shí)的精確性。 圖2.2 秒表/時(shí)鐘計(jì)時(shí)器電路

21、原理圖第四章 系統(tǒng)程序的設(shè)計(jì)主程序 本設(shè)計(jì)中計(jì)時(shí)采用定時(shí)器T0中斷完成秒表使用定時(shí)器T1中斷完成。主程序循環(huán)調(diào)用顯示子程序和查鍵子程序,當(dāng)端口有開關(guān)按下時(shí),轉(zhuǎn)入相應(yīng)功能程序。其主程序執(zhí)行流程如圖2.3所示。開始 初始化調(diào)用顯示子程序鍵按下?整點(diǎn)到?按時(shí)間鳴叫次數(shù)進(jìn)入功能程序NYNY 圖2.3 主程序流程圖第二節(jié) 顯示子程序 時(shí)間顯示子程序每次顯示6個(gè)連續(xù)內(nèi)存單元的十進(jìn)制BCD碼數(shù)據(jù),首地址在調(diào)用顯示程序時(shí)先指定。 內(nèi)存中50H55H為鬧鐘定時(shí)單元,60H65H為秒表計(jì)時(shí)單元,70H75H為時(shí)鐘顯示單元。由于采用7段共陽LED數(shù)碼管動(dòng)態(tài)掃描實(shí)現(xiàn)數(shù)據(jù)顯示,所以顯示用十進(jìn)制BCD碼數(shù)據(jù)的對應(yīng)段碼存放

22、在ROM表中。 顯示時(shí),先取出內(nèi)寸地址單元的數(shù)據(jù)值。為了顯示小數(shù)點(diǎn)及“”、“A”等特殊字符,在顯示班級(jí)和計(jì)時(shí)時(shí)應(yīng)采用不同的顯示子程序。第三節(jié) 定時(shí)器T0中斷服務(wù)程序 定時(shí)器T0用于時(shí)間計(jì)時(shí)。定時(shí)益出中斷周期設(shè)為50ms,中斷進(jìn)入后先進(jìn)行定時(shí)中斷初值校正,當(dāng)中斷累計(jì)20次(即50ms*20=1s)時(shí),對秒計(jì)數(shù)單元進(jìn)行加1操作。時(shí)鐘計(jì)數(shù)單元地址分別在70H71H(秒)、76H77H(分)、78H79H(時(shí))中。最大計(jì)時(shí)值為23時(shí)59分59秒。7AH單元內(nèi)存放“熄滅符”數(shù)據(jù)(#0AH),用于時(shí)間調(diào)整時(shí)的閃爍功能。在計(jì)數(shù)單元中,采用十進(jìn)制,滿10進(jìn)位。 T0中斷計(jì)時(shí)程序流程圖如圖2.4所示。保護(hù)現(xiàn)場定

23、時(shí)初值校正1s到加1s處理恢復(fù)現(xiàn)場,中斷返回T0中斷 圖2.4 T0中斷計(jì)時(shí)程序流程圖第四節(jié) 定時(shí)器T1中斷服務(wù)程序T1中斷程序用于指示時(shí)間調(diào)整單元數(shù)字的閃亮或秒表計(jì)數(shù),在時(shí)間調(diào)整狀態(tài)下,每過0.3s左右,將對應(yīng)調(diào)整單元的顯示數(shù)據(jù)換成“熄滅符”數(shù)據(jù)(#0AH)。這樣,在調(diào)整時(shí)間時(shí),對應(yīng)調(diào)整單元的顯示數(shù)據(jù)會(huì)間隔閃亮。在作秒表計(jì)時(shí)時(shí),每10ms中斷1次,計(jì)數(shù)單元加1,每100次為1s。秒表計(jì)數(shù)單元地址在60H61H(10毫秒)、62H63H(秒)、64H65H(分)中,最大計(jì)數(shù)值為99分59.99秒。T1中斷服務(wù)程序流程圖如圖2.5所示。T1中斷保護(hù)現(xiàn)場秒表閃爍閃爍處理恢復(fù)現(xiàn)場,中斷返回加10s處

24、理時(shí)鐘調(diào)時(shí)閃爍秒表 圖2.5 T1中斷服務(wù)程序流程圖第五節(jié) 調(diào)時(shí)功能程序調(diào)時(shí)功能程序的設(shè)計(jì)方法是:按下P1.0口按鍵,若按下時(shí)間小于1s,則進(jìn)入省電狀態(tài)(數(shù)碼管不亮,時(shí)鐘不停);否則進(jìn)入調(diào)分狀態(tài),等待操作,此時(shí)計(jì)時(shí)器停止走動(dòng)。當(dāng)再按下P1.0口按鍵時(shí),若按下時(shí)間小于0.5s,則時(shí)間加1分鐘;若按下時(shí)間大雨0.5s,則進(jìn)入小時(shí)調(diào)整狀態(tài)。按下P1.1按鍵時(shí),可進(jìn)行減1調(diào)整。在小時(shí)調(diào)整狀態(tài)下,當(dāng)按鍵按下的時(shí)間大雨0.5s時(shí),退出時(shí)間調(diào)整狀態(tài),時(shí)鐘從0s開始計(jì)時(shí)。第六節(jié) 秒表功能程序在正常時(shí)鐘狀態(tài)下,若按下P1.1口按鍵,則進(jìn)行時(shí)鐘/秒表顯示功能的轉(zhuǎn)換,秒表中斷計(jì)十程序啟動(dòng),顯示首址改為60H,LED

25、將顯示秒表計(jì)時(shí)單元60H65H中的數(shù)據(jù)。按下P1.2口的按鍵開關(guān),可實(shí)現(xiàn)秒表清0、秒表啟動(dòng)、秒表暫停功能;當(dāng)按下P1.1口按鍵時(shí),關(guān)閉T1秒表中斷計(jì)時(shí),顯示首址又改為70H,恢復(fù)正常時(shí)間的顯示功能。第七節(jié) 鬧鐘時(shí)間社頂功能程序 在正常時(shí)鐘狀態(tài)下,若按下P1.3口的按鍵開關(guān),則進(jìn)入設(shè)定鬧時(shí)調(diào)分狀態(tài),顯示首址改為50H。LED將顯示50H55H中的鬧鐘設(shè)定時(shí)間,顯示式樣為00:00:,其中高2位代表時(shí),低2位代表分,在定時(shí)鬧鈴時(shí)精確到分。按P1.2鍵,分加1;按P1.0鍵,分減1。若再按P1.3按鍵,則進(jìn)入時(shí)調(diào)整狀態(tài),顯示式樣為00:00:,按P1.2鍵,時(shí)加1;按P1.0鍵,時(shí)減1。呆板P1.1

26、鍵,鬧鈴有效,顯示式樣變?yōu)?0:00:0;再按P1.1鍵,鬧鈴無效,顯示式樣又變?yōu)?0:00:。再按P1.3鍵,調(diào)整鬧鐘時(shí)間結(jié)束,恢復(fù)正常時(shí)間的顯示。在鬧鈴時(shí),可按一下P1.3口的按鍵開關(guān)使蜂鳴停止,不按則蜂鳴器將鳴叫停止,不按則蜂鳴器將鳴叫1min后自行中止。在設(shè)定鬧鐘后,若要取消鬧時(shí)功能,則可按一下P1.3鍵,當(dāng)同到“滴”的一聲時(shí)表明已取消了鬧鈴功能。第五章 調(diào)試及性能分析第一節(jié) 硬件調(diào)試硬件調(diào)試時(shí)可先檢查印制板及焊接的質(zhì)量情況,在檢查無誤后可通電檢查LED顯示器的點(diǎn)亮狀況。若亮度不理想,可以調(diào)整P0口的電阻大小,一般情況下取200電阻即可獲得滿意的亮度效果。實(shí)驗(yàn)室制作時(shí),可結(jié)合示波器測試

27、晶振及P0、P2端口的波形情況進(jìn)行綜合硬件測試分析。第二節(jié) 軟件調(diào)試軟件調(diào)試在Wave或Keil C51編譯器下進(jìn)行,源程序編譯及仿真調(diào)試應(yīng)分段或子程序?yàn)閱挝恢饌€(gè)進(jìn)行,最后可結(jié)合硬件實(shí)時(shí)調(diào)試。第三節(jié) 性能分析 按照設(shè)計(jì)程序分析,LED顯示器動(dòng)態(tài)掃描的頻率約為167Hz,實(shí)現(xiàn)使用觀察時(shí)完全沒有閃爍。由于計(jì)時(shí)中斷程序中加了延時(shí)誤差處理,所以實(shí)際計(jì)時(shí)精度非常高,可滿足多種場合的應(yīng)用需要。另外,上電時(shí)具有一個(gè)滾動(dòng)顯示子程序,可以方便地顯示制作日期等信息。第六章 電子鐘的硬件系統(tǒng)設(shè)計(jì)硬件設(shè)計(jì)是整個(gè)系統(tǒng)的基礎(chǔ),要考慮的方方面面很多,除了實(shí)現(xiàn)電子鐘的基本功能以外,主要還要考慮如下幾個(gè)因素:系統(tǒng)穩(wěn)定度。器件的

28、通用性或易選購性。 軟件編程的易實(shí)現(xiàn)性。系統(tǒng)其它功能及性能指標(biāo),因此硬件設(shè)計(jì)至關(guān)重要?,F(xiàn)從各功能模塊的實(shí)現(xiàn)逐個(gè)進(jìn)行分析探討。第一節(jié) 電子鐘的硬件電路的設(shè)計(jì)我們電子時(shí)鐘電路用AT89C51單片機(jī)來實(shí)現(xiàn)。采用共陽7段LED顯示器;P0 口輸出數(shù)碼數(shù)據(jù);P2.0-P2.5口作列掃描輸出;P1.0、P1.1、P1.2和P1.3口接4個(gè)按扭開關(guān),用于調(diào)時(shí)及功能設(shè)置;P1.6端口接5V的小蜂鳴器,用于按鍵發(fā)音及定時(shí)提醒、整點(diǎn)到時(shí)提醒等;為了提供共陽LED數(shù)碼管的列掃描驅(qū)動(dòng)電壓,用三極管9012作電源驅(qū)動(dòng)輸出。系統(tǒng)總體設(shè)計(jì)原理圖。第二節(jié) 電子鐘電路作用:它是用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)。原理:在AT8

29、9C51內(nèi)部有一個(gè)高增益反向放大器,其輸入端為芯片引腳XTAL1,其輸出端為引腳XTAL2。而在芯片的內(nèi)部,XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。如圖2.2、2.3所示。時(shí)鐘電路產(chǎn)生的振蕩脈沖之間經(jīng)過觸發(fā)器的二分頻之后,才成為單片機(jī)的時(shí)鐘脈沖信號(hào)。一般的電容取30pF左右,晶體振蕩器取1.2至12MHZ。晶體振蕩器頻率越高,則系統(tǒng)的時(shí)鐘頻率也高,單片機(jī)運(yùn)行速度也快。我們這次取6MHZ。機(jī)器周期:MCS-51采用定時(shí)控制方式,因此它有固定的機(jī)器周期,規(guī)定一個(gè)機(jī)器周期的寬度為6個(gè)狀態(tài),一個(gè)狀態(tài)又包括兩個(gè)節(jié)拍,因此,一個(gè)機(jī)器周期總共為12個(gè)振蕩脈沖周期,因

30、此機(jī)器周期就是振蕩脈沖的十二分頻。由于我們采用6MHZ的頻率,所以機(jī)器周期為2S。T1T0EA/VPX1X2RESETRDWR151431191891716 vccY6MHZC330pFC230pF 圖 時(shí)鐘振蕩電路 第三節(jié) 復(fù)位電路單片機(jī)的復(fù)位電路都是靠外部的電路實(shí)現(xiàn)的,在時(shí)鐘電路工作后,只要在RESET引腳上出現(xiàn)10ms以上的高電平,單片機(jī)就實(shí)現(xiàn)狀態(tài)復(fù)位。寄存器的復(fù)位狀態(tài)單片機(jī)在RESET引腳有效電平控制下,程序計(jì)數(shù)器和特殊功能寄存器的復(fù)位狀態(tài)如表1.1所示,單片機(jī)的復(fù)位狀態(tài)不影響片內(nèi)RAM狀態(tài),只要RESET引腳端保持高電平,單片機(jī)將不斷復(fù)位。在復(fù)位期間,ALE,/PSEN輸出高電平.表

31、1.1 程序計(jì)數(shù)器和特殊功能寄存器的復(fù)位狀態(tài)PC0000HTMOD00HACC00HTCON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTH100HP0P3*00000BTL100HIP0*00000BSCON00HIE0*00000BPCON0*0000B原理:單片機(jī)通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式.最簡單的復(fù)位電路如圖2.7所示,上電瞬間,RC電路充電,RESET引腳端出現(xiàn)正脈沖,只要RESET端保持10ms以上高電平,就能使單片機(jī)有效復(fù)位.在實(shí)際的應(yīng)用系統(tǒng)中,有些外圍芯片也需要復(fù)位.如果這些芯片的復(fù)位要求與單片機(jī)復(fù)位要求一樣,則可以與之

32、相連.在圖2.7的上電復(fù)位電路中,干擾易串入復(fù)位端,在大多數(shù)情況下不會(huì)造成單片機(jī)的錯(cuò)誤復(fù)位,但會(huì)引起內(nèi)部某些寄存器錯(cuò)誤復(fù)位,這時(shí),可以在RESET引腳上接一去耦電容.在應(yīng)用系統(tǒng)中,為了保證復(fù)位電路可靠地工作,常將RC電路在接史密特電路后再接入單片機(jī)復(fù)位端和外圍電路復(fù)位端.這樣,系統(tǒng)有多個(gè)復(fù)位端時(shí),能保證可靠地同步復(fù)位.我們選C為22F,R取1K歐姆,Rs取200左右.按鍵復(fù)位電路的原理:沒有按鍵時(shí),在接電瞬間,RESET端的電位和VCC相同,隨著充電電流的減少,RESET的電位逐漸下降。若要復(fù)位,我們只需按下鍵即可,此時(shí)電源VCC經(jīng)電阻R1,R2分壓,在RESET端產(chǎn)生一個(gè)復(fù)位。圖 上電復(fù)位電

33、路 第四節(jié) 鬧鐘電路 當(dāng)時(shí)間與設(shè)置鬧鐘時(shí)間相等時(shí),通過I/O口控制繼電器接通鬧鐘實(shí)現(xiàn)。第五節(jié) 顯示部分單片機(jī)應(yīng)用系統(tǒng)中使用的顯示器主要有發(fā)光二極管顯示器,簡稱LED(Light Emitting Diode);液晶顯示器LCD(Liquid Crystal Display);近幾年也有配置CRT顯示器的。而目前在單片機(jī)系統(tǒng)中,通常用LED數(shù)碼顯示器來顯示各種數(shù)字或符號(hào)。由于它具有顯示清晰、亮度高、使用電壓低、壽命長的特點(diǎn),因此使用非常廣泛。第六節(jié) LED顯示結(jié)構(gòu)與原理單片機(jī)中通常用七段LED構(gòu)成字型“8”。這種顯示器有共陰和共陽兩種!發(fā)光二極管的陽極連在一起的(公共端)稱為共陽極顯示器,陰極連

34、在一起的稱為共陰極顯示器(如下圖所示)。一位顯示器由7個(gè)發(fā)光二極管組成,這7個(gè)發(fā)光二極管構(gòu)成字型“8”的各個(gè)筆劃(段) 。當(dāng)在某段發(fā)光二極管上施加一定的正向電壓時(shí),該段筆畫即亮;不加電壓則暗。為了保護(hù)各段LED不被損壞,需外加限流電阻。 (b)為共陽極連接 (c)為共陰極連接由于共陰極連接需加驅(qū)動(dòng),故在這里我采用的是共陽陽極連接。以共陽極LED為例,如圖(b)所示,各LED公共陽極K0接高電平,若向各控制端a,b,,g,dp順次送入11100000信號(hào),則該顯示器顯示“”字型。圖2.7 譯碼器邏輯圖表1.2 譯碼器的真值表數(shù)值輸入輸出ABCDabcdefg0000011111101000101

35、10000200101101101300111111001401000110011501011011011601101011111701111110000810001111111910011111011A10101110111B10111001111C11001001110D11010111101E11101001111F11111000111第七節(jié) LED顯示器接口及顯示方式 LED顯示器有靜態(tài)顯示方式和動(dòng)態(tài)顯示方式兩種。靜態(tài)顯示就當(dāng)顯示器顯示某個(gè)字符時(shí),相應(yīng)的段恒定的導(dǎo)通或截止,直到顯示另一個(gè)字符為止。LED顯示器工作于靜態(tài)顯示方式時(shí),各位的共陰極接地;若為共陽極則接+5V電源。每位的段選

36、線分別與一個(gè)8位鎖存器的輸出口相連,顯示器中的各位相互獨(dú)立,而且各位的顯示字符一經(jīng)確定,相應(yīng)鎖存的輸出將維持不變。正因?yàn)槿绱?,靜態(tài)顯示器的亮度較高。這種顯示方式編程容易,管理也較簡單,但占用I/O口線資源較多。因此,在顯示位數(shù)較多的情況下,一般都采用動(dòng)態(tài)顯示方式。由于所有6位段皆由一個(gè)I/O口控制,因此,在每一瞬間,6位LED會(huì)顯示相 同的字符。要想每位顯示不同的字符,就必須采用掃描方法流點(diǎn)亮各位LED,即在每一瞬間只使某一位顯示字符。在此瞬間,段選控制I/O口輸出相應(yīng)字符段選碼(字型碼),而位選則控制I/O口在該顯示位送入選通電平(因?yàn)長ED為共陽,故應(yīng)送高電平),以保證該位顯示相應(yīng)字符。如

37、此輪流,使每位分時(shí)顯示該位應(yīng)顯示字符。例如,要求顯示“LL0-20”時(shí),I/O1和I/O2輪流送入段選碼、位選碼。在多位LED顯示時(shí),為了簡化電路,降低成本,將所有位的段選線并聯(lián)在一起,由一個(gè)8位I/O口控制。而共陰(共陽)極公共端分別由相應(yīng)的I/O口線控制,實(shí)現(xiàn)各位的分時(shí)選通。段選碼,位選碼每送入一次后延時(shí)1MS,因人的視覺暫留時(shí)間為0.1S(100MS),所以每位顯示的時(shí)間不能超過20MS,并保持延時(shí)一段時(shí)間,以造成視覺暫留效果,給人看上去每個(gè)數(shù)碼管總在亮。這種方式稱為軟件掃描方式。圖 LED顯示器電路第八節(jié) 電源電路部分 要想電子鐘正常工作得到+5V的輸出電壓,就需將交流220V的電壓經(jīng)

38、過變壓器、整流電路、濾波電路和穩(wěn)壓電路四個(gè)部分來實(shí)現(xiàn)。交流電源變壓器整流電路濾波電路穩(wěn)壓電路 圖直流穩(wěn)壓電源基本電路框圖 = 1 * GB3 電源變壓器電源變壓器的作是將電網(wǎng)220V的交流電壓V1變換成整流濾波電路所需要的交流電壓V2。變壓器副邊與原邊的功率比:P2/P1= 式中,為變壓器的效率。 = 2 * GB3 整流濾波電路整流二極管D1D4組成單相橋式整流電路,將交流電壓V2變成脈動(dòng)的直流電壓,再經(jīng)濾波電容C濾除紋波,輸出直流電壓Vi。Vi與交流電壓V2的有效值V2的關(guān)系為 Vi=(1.11.2)V2每只整流二極管承受的最大反向電壓 = 3 * GB3 穩(wěn)壓電路成采樣比較放大電路,當(dāng)穩(wěn)

39、壓器的輸出負(fù)載變化時(shí),輸出電壓V0應(yīng)保持不變,穩(wěn)壓如下:設(shè)輸出負(fù)載電阻RL變化,使V0,則VB2 VC2 IB1 VCE1 VO第九節(jié) 集成直流穩(wěn)壓電源的設(shè)計(jì)集成穩(wěn)壓電源設(shè)計(jì)的主要內(nèi)容是根據(jù)性能指標(biāo),選擇合適的電源變壓器、集成穩(wěn)壓器、整流二極管及濾波電容。 = 1 * GB3 集成穩(wěn)壓器常見集成穩(wěn)壓器有固定式三端穩(wěn)壓器與可調(diào)式三端穩(wěn)壓器??烧{(diào)式三端穩(wěn)壓器能輸出連續(xù)可調(diào)的直流電壓。其中CW317系列穩(wěn)壓器輸出連續(xù)可調(diào)的正電壓,這是我這次選用的,其圖見附錄(2).CW337系列穩(wěn)壓器輸出連續(xù)可調(diào)的負(fù)電壓。穩(wěn)壓器內(nèi)部含有過流、過熱保護(hù)電路。R1與RP1組成電壓輸出調(diào)節(jié)電路,輸出電壓V01.25(1+

40、RP1/R1) R1的值為120240,流經(jīng)R1的泄放電流為5mA10mA。RP1為精密可調(diào)電位器。電容C2與RP1并聯(lián)組成濾波電路,以減小輸出的紋波電壓。二極管D的作用是防止輸出端與地短路時(shí),損壞穩(wěn)壓器。集成穩(wěn)壓器的輸出電壓VO與穩(wěn)壓電源的輸出電壓相同。穩(wěn)壓器的最大允許電流IcmIomax = 4 * GB3 整流二極管及濾波電路整流二極管D2的反向擊穿電壓VRM應(yīng)滿足VRM 1.414V2,其額定工作電流應(yīng)滿足IFIomax。 附錄; AT89C52時(shí)鐘程序 ;*;以下程序能用于24小時(shí)計(jì)時(shí),能作為秒表使用,能定時(shí)鬧鈴1分鐘(也可關(guān)).;使用方法:開機(jī)后在00:00:00起開始計(jì)時(shí),(1)

41、長按P1.0進(jìn)入調(diào)分狀態(tài):分單元閃爍;按P1.0加1,按P1.1減1.再長按P1.0進(jìn)入時(shí)調(diào)整狀態(tài),時(shí)單元閃爍,加減調(diào)整同調(diào)分.;按長按退出調(diào)整狀態(tài). (2)按下P1.1進(jìn)入秒表狀態(tài):按P1.2暫停,再按P1.2秒表清零,再按;P1.2秒表又啟動(dòng),按P1.1退出秒表回到時(shí)鐘狀態(tài). (3)按P1.3進(jìn)入設(shè)定鬧時(shí)狀態(tài): 00:00: -,可進(jìn);行分設(shè)定,按P1.2分加1,再按P1.3為時(shí)調(diào)整,00:00:- ,按P1.2時(shí)加1,按P1.1鬧鈴有效,顯示為00:00:-0,再按;P1.1鬧鈴無效(顯示00:00:- ,),按P1.3調(diào)鬧鐘結(jié)束.在鬧鈴時(shí)可按P1.3停鬧,不按鬧鈴1分鐘.;定時(shí)器T0、

42、T1溢出周期為50MS,T0為秒計(jì)數(shù)用, T1為調(diào)整時(shí)閃爍及秒表定時(shí)用,;P1.0、P1.1、P1.2、P1.3為調(diào)整按鈕,P0口為字符輸出口,P2為掃描口,P1.7為蜂嗚器口,采用共陽顯示管。;50H-55H為鬧鐘定時(shí)單元,60H-65H為秒表計(jì)時(shí)單元,70H-75H為顯示時(shí)間單元,76H-79H為分時(shí)計(jì)時(shí)單元。;03H標(biāo)志=0時(shí)鐘閃爍,=1秒表, 05H=0,不鬧鈴,=1要鬧鈴. 07H每秒改變一次,用作間隔嗚叫;*; DISPFIRST EQU 30H ;顯示首址存放單元 BELL EQU P1.7 ;小喇叭 CONBS EQU 2FH ;存放報(bào)時(shí)次數(shù);*; 中斷入口程序 ;*; ORG

43、 0000H ;程序執(zhí)行開始地址 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 ;串行中斷程序返回;*; 以下程序開始 ;*;整點(diǎn)報(bào)時(shí)用QQQQ: MOV A,#10H MOV B,79H MUL AB ADD A,7

44、8H MOV CONBS,ABSLOOP: LCALL DS20MS LCALL DL1S LCALL DL1S LCALL DL1S DJNZ CONBS,BSLOOP CLR 08H ;清整點(diǎn)報(bào)時(shí)標(biāo)志 AJMP START1;*; 主程序開始 ;*;START: LCALL ST ;上電顯示年月日及班級(jí)學(xué)號(hào) MOV R0,#00H ;清00H-7FH內(nèi)存單元 MOV R7,#80H ;CLEARDISP: MOV R0,#00H INC R0 ; DJNZ R7,CLEARDISP ; MOV 20H,#00H ;清20H(標(biāo)志用) MOV 7AH,#0AH ;放入熄滅符數(shù)據(jù) MOV TM

45、OD,#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í)初值 SETB EA ;總中斷開放 SETB ET0 ;允許T0中斷 SETB TR0 ;開啟T0定時(shí)器 MOV R4,#14H ;1秒定時(shí)用計(jì)數(shù)值(50MS20) MOV DISPFIRST,#70H ;顯示單元為70-75H;以下主程序循環(huán)START1: LCALL DISPLAY ;調(diào)用顯示子程序 JNB P1.2,FUNPT ;秒

46、表STOP,PUSE,CLR JNB P1.3,TSFUN ;定時(shí)鬧鈴設(shè)定 JB 08H, QQQQ; FUNPT: LJMP FUNPTT TSFUN: LCALL DS20MS JB P1.3,START1 ; WAIT113: JNB P1.3,WAIT113 ;等待鍵釋放 JB 05H,CLOSESP ;鬧鈴已開的話,關(guān)鬧鈴 MOV DISPFIRST,#50H ;進(jìn)入鬧鈴設(shè)定程序,顯示50-55H鬧鐘定時(shí)單元 MOV 50H,#0CH ;- 鬧鈴設(shè)定時(shí)顯示格式00:00: - MOV 51H,#0AH ;黑; DSWAIT: SETB EA LCALL DISPLAY JNB P1.

47、2,DSFINC ;分加1 JNB P1.0,DSDEC ;分減1 JNB P1.3,DSSFU ;進(jìn)入時(shí)調(diào)整 AJMP DSWAIT; CLOSESP: CLR 05H ;關(guān)鬧鈴標(biāo)志 CLR BELL AJMP START1 DSSFU: LCALL DS20MS ;消抖 JB P1.3, DSWAIT LJMP DSSFUNN ;進(jìn)入時(shí)調(diào)整;SETMM1: LJMP SETMM ;轉(zhuǎn)到時(shí)間調(diào)整程序SETMM; DSFINC : LCALL DS20MS ;消抖 JB P1.2, DSWAITDSWAIT12: LCALL DISPLAY ;等鍵 釋放 JNB P1.2, DSWAIT12

48、CLR EA MOV R0,#53H ; LCALL ADD1 ;鬧鈴設(shè)定分加1 MOV A;R3 ;分?jǐn)?shù)據(jù)放入A CLR C ;清進(jìn)位標(biāo)志 CJNE A#60H,ADDHH22 ADHH22: JC DSWAIT ;小于60分時(shí)返回 ACALL CLR0 ;大于或等于60分時(shí)分計(jì)時(shí)單元清0 AJMP DWAIT DSDEC : LCALL DS20MS ;消抖 JB P1.0, DSWAIT DSWAITEE: LCALL DISPLAY ;等鍵 釋放 JNB P1.0, DSWAITEE CLR EA MOV R0,#53H ; LCALL sub1 ;鬧鈴設(shè)定分減1 LJMP DSWAI

49、T;以下秒表功能/時(shí)鐘轉(zhuǎn)換程序;按下P1.1 可進(jìn)行功能轉(zhuǎn)換FUNSS: LCALL DS20MS JB P1.1,START11 WAIT11: JNB P1.1,WAIT11 CPL 03H JNB 03H,TIMFUN MOV DISPFIRST,#60H ;顯示秒表數(shù)據(jù)單元 MOV 65H,#00H MOV TL1,#0F0H ;10MS定時(shí)初值() MOV TH1,#0D8H ;10MS定時(shí)初值 SETB TR1 SETB ET1 START11: LJMP START1 TIMFUN: MOV DISPFIRST,#70H ;顯示時(shí)鐘數(shù)據(jù)單元 CLR ET1 CLR TR1 STA

50、RT12: LJMP START1 ;以下秒表暫停清零功能程序FUNPTT: LCALL DS20MS JB P1.2,START12 WAIT22: JNB P1.2,WAIT21 CLR ET1 CLR TR1WAIT33: JNB P1.1,FUNSS JB P1.2,WAIT31 LCALL DS20MS JB P1.2,WAIT33WAIT66: JNB P1.2,WAIT61 MOV 60H,#00H MOV 61H,#00H MOV 62H,#00H MOV 63H,#00H MOV 64H,#00H MOV 65H,#00H WAIT44: JNB P1.1,FUNSS JB

51、P1.2,WAIT41 LCALL DS20MS JB P1.2,WAIT44 WAIT55: JNB P1.2,WAIT51 SETB ET1 SETB TR1 AJMP START1;以下鍵等待釋放時(shí)顯示不會(huì)熄滅用WAIT21: LCALL DISPLAY AJMP WAIT22WAIT31: LCALL DISPLAY AJMP WAIT33 WAIT41: LCALL DISPLAY AJMP WAIT44WAIT51: LCALL DISPLAY AJMP WAIT55WAIT61: LCALL DISPLAY AJMP WAIT66; 1秒計(jì)時(shí)程序 ;T0中斷服務(wù)程序INTT0:

52、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 ;開啟定時(shí)器T0 DJNZ R4, OUTT0 ;20次中斷未到中斷退出ADDSS: MOV R4,#14H ;20次中斷到(1秒)重賦初值 CPL 07H ;鬧鈴時(shí)間隔嗚叫用 MOV R0,#

53、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í)對秒計(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)志 CJNE A,#60H,ADDHH ;ADDHH: JC OUTT0 ;小于60分時(shí)中斷退出 AC

54、ALL CLR0 ;大于或等于60分時(shí)分計(jì)時(shí)單元清0 LCALL DS20MS ;正點(diǎn)報(bào)時(shí) SETB 08H 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,77H ;入對應(yīng)顯示單元 MOV 74H,78H ; MOV 75H,79H ;

55、 LCALL BAOJ POP PSW ;恢復(fù)狀態(tài)字(出棧) POP ACC ;恢復(fù)累加器 SETB ET0 ;開放T0中斷 RETI ;中斷返回;*; 閃動(dòng)調(diào)時(shí)程序秒表功能程序 ;*;T1中斷服務(wù)程序,用作時(shí)間調(diào)整時(shí)調(diào)整單元閃爍指示或秒表計(jì)時(shí)INTT1: PUSH ACC ;中斷現(xiàn)場保護(hù) PUSH PSW ; JB 03H, MMFUN ;=1時(shí)秒表 MOV TL1, #0B0H ;裝定時(shí)器T1定時(shí)初值 MOV TH1, #3CH ; DJNZ R2,INTT1OUT ;0.3秒未到退出中斷(50MS中斷6次) JB 02H,FLASH1 ;02H位為1時(shí)顯示單元熄滅 MOV 72H,76H

56、 ;02H位為0時(shí)正常顯示 MOV 73H,77H ; MOV 74H,78H ; MOV 75H,79H ;INTT1OUT: POP PSW ;恢復(fù)現(xiàn)場 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 ; AJMP INTT1OUT ;轉(zhuǎn)中斷退出FLASH2: MOV 72H,76H ;01H位為1時(shí),熄滅符數(shù)據(jù)放入小時(shí) MOV 73H,77

57、H ;顯示單元(74H-75H),小時(shí)數(shù)據(jù)將不顯示 MOV 74H,7AH ; MOV 75H,7AH ; AJMP INTT1OUT ;轉(zhuǎn)中斷退出;MMFUN : CLR TR1 MOV A,#0F7H ;中斷響應(yīng)時(shí)間同步修正,重裝初值(10ms) ADD A,TL1 ;低8位初值修正 MOV TL1,A ;重裝初值(低8位修正值) MOV A,#0D8H ;高8位初值修正 ADDC A,TH1 ; MOV TH1,A ;重裝初值(高8位修正值) SETB TR1 ;開啟定時(shí)器T0 MOV R0,#61H ;指向秒計(jì)時(shí)單元(71H-72H) ACALL ADD1 ;調(diào)用加1程序(加1秒操作)

58、 CLR C ; MOV A,R3 ; JZ FSS1 ;加1后為00,C=0 AJMP OUTT01 ;加1后不為00,C=1 FSS1: ACALL CLR0 ;大于或等于60秒時(shí)對秒計(jì)時(shí)單元清0 MOV R0,#63H ;指向分計(jì)時(shí)單元(76H-77H) ACALL ADD1 ;分計(jì)時(shí)單元加1分鐘 MOV A,R3 ;分?jǐn)?shù)據(jù)放入A CLR C ;清進(jìn)位標(biāo)志 CJNE A,#60H,ADDHH1 ; ADDHH1: JC OUTT01 ;小于60分時(shí)中斷退出 LCALL CLR0 ;大于或等于60分時(shí)分計(jì)時(shí)單元清0 MOV R0,#65H ;指向小時(shí)計(jì)時(shí)單元(78H-79H) ACALL

59、ADD1 ;小時(shí)計(jì)時(shí)單元加1小時(shí)OUTT01: POP PSW ;恢復(fù)狀態(tài)字(出棧) POP ACC ;恢復(fù)累加器 RETI ;中斷返回;*; 加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

60、A ;A中數(shù)據(jù)高四位與低四位交換 ANL A,#0FH ;高四位變0 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ù)高四位與低四位交換 ORL A,R0 ;前一地址中數(shù)據(jù)放入A中低四位 JZ SUB11 DEC A ;A減1操作 SUB111: MOV R3,A ;移入R3寄存器 ANL A,#0FH ;高四位變0 CLR C ;清進(jìn)位標(biāo)志 SUBB A,#0AH SUB1111: JC SUB1110 MOV R0,#09H ;大于等

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論