874381042基于單片機的數(shù)字電子鐘畢業(yè)設(shè)計論文_第1頁
874381042基于單片機的數(shù)字電子鐘畢業(yè)設(shè)計論文_第2頁
874381042基于單片機的數(shù)字電子鐘畢業(yè)設(shè)計論文_第3頁
874381042基于單片機的數(shù)字電子鐘畢業(yè)設(shè)計論文_第4頁
874381042基于單片機的數(shù)字電子鐘畢業(yè)設(shè)計論文_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、畢業(yè)設(shè)計論文系部 電子信息學(xué)院 專業(yè) 計算機控制技術(shù) 題目 基于單片機的數(shù)字電子鐘 畢業(yè)設(shè)計(論文)中文摘要摘要:20世紀(jì)末,電子技術(shù)獲得了飛速的發(fā)展,在其推動下,現(xiàn)代電子產(chǎn)品幾乎滲透了社的各個領(lǐng)域,有力地推動了社會生產(chǎn)力的發(fā)展和社會信息化程度的提高,同時也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏也越來越快?,F(xiàn)代生活的人們越來越重視起了時間觀念,可以說是時間和金錢劃上了等號。對于那些對時間把握非常嚴(yán)格和準(zhǔn)確的人或事來說,時間的不準(zhǔn)確會帶來非常大的麻煩,所以以數(shù)碼管為顯示器的時鐘比指針式的時鐘表現(xiàn)出了很大的優(yōu)勢。數(shù)碼管顯示的時間簡單明了而且讀數(shù)快、時間準(zhǔn)確顯示到秒。而機械式的依賴于晶體震

2、蕩器,可能會導(dǎo)致誤差。數(shù)字鐘是采用數(shù)字電路實現(xiàn)對“時”、“分”、“秒”數(shù)字顯示的計時裝置。數(shù)字鐘的精度、穩(wěn)定度遠(yuǎn)遠(yuǎn)超過老式機械鐘。在這次設(shè)計中,我們采用led數(shù)碼管顯示時、分、秒,以24小時計時方式,根據(jù)數(shù)碼管動態(tài)顯示原理來進(jìn)行顯示,用12mhz的晶振產(chǎn)生振蕩脈沖,定時器計數(shù)。在此次設(shè)計中,電路具有顯示時間的其本功能,還可以實現(xiàn)對時間的調(diào)整。數(shù)字鐘是其小巧,價格低廉,走時精度高,使用方便,功能多,便于集成化而受廣大消費的喜愛,因此得到了廣泛的使用關(guān)鍵字:單片機,數(shù)字電子鐘,顯示時間,系統(tǒng)仿真abstract :the late 20th century, electronic technolo

3、gy has been rapid development in its promotion of modern electronics into almost a club fields, a strong impetus to the development of social productive forces and socialimprovement in the level of information, but also the modern electronic products further improve the product performance, product

4、replacement is also faster and faster pace. growing emphasis on modern life from the time the concept of time and money can be said to draw the equal sign. for those who grasp of time and things are very strict and precise, the time will bring great incorrect trouble, so digital tube display pointer

5、 clock than the clock showed a big advantage. digital display of time and read simple number of fast, accurate display of time to seconds. the mechanical oscillator depends on the crystal may lead to error. digital clock is a digital circuit implementation of the "when", "sub", &

6、quot;seconds" the figures show the timing device. digital clock accuracy stability is far more than the old mechanical clock. in this design, we use led digital display hours, minutes, seconds, to 24 hour time mode, according to digital control theory to dynamic display to display, use the 12mh

7、z crystal oscillation pulse, will timer count. in this design, the circuit has a display time of the this function, you can also realize the time adjustment. figure clock is its compact, low cost, travel time and high precision, easy to use, features and more, easy integration and loved by the gener

8、al consumer, therefore widely used. keywords: the monolithic machine , figure electronic clock , display time , system simulate畢業(yè)設(shè)計(論文)外文摘要 目錄第一章 引言5第二章 整體設(shè)計方案52.1 單片機的選擇52.2 單片機的基本結(jié)構(gòu)6第三章 數(shù)字鐘的硬件設(shè)計93.1 電子鐘整體電路圖93.2 led顯示電路123.3 鍵盤控制電路14第四章 數(shù)字鐘的軟件設(shè)計144.1 系統(tǒng)軟件設(shè)計流程圖154.2 數(shù)字鐘的原理圖194.3 主程序204.4 時鐘設(shè)置子程序214

9、.5 定時器中斷子程序214.6 led顯示程序224.7 按鍵控制子程序234.8數(shù)字鐘的仿真24結(jié)束語25致謝26參考文獻(xiàn)、資料索引26第一章 引言20世紀(jì)末,電子技術(shù)獲得了飛速的發(fā)展,在其推動下,現(xiàn)代電子產(chǎn)品幾乎滲透了社會的各個領(lǐng)域,有力地推動了社會生產(chǎn)力的發(fā)展和社會信息化程度的提高,同時也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏也越來越快。 時間對人們來說總是那么寶貴,工作的忙碌性和繁雜性容易使人忘記當(dāng)前的時間。忘記了要做的事情,當(dāng)事情不是很重要的時候,這種遺忘無傷大雅。但是,一旦重要事情,一時的耽誤可能釀成大禍。目前,單片機正朝著高性能和多品種方向發(fā)展趨勢將是進(jìn)一步向著cmo

10、s化、低功耗、小體積、大容量、高性能、低價格和外圍電路內(nèi)裝化等幾個方面發(fā)展。下面是單片機的主要發(fā)展趨勢。單片機應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計思想和設(shè)計方法。從前必須由模擬電路或數(shù)字電路實現(xiàn)的大部分功能,現(xiàn)在已能用單片機通過軟件方法來實現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。單片機模塊中最常見的是數(shù)字鐘,數(shù)字鐘是一種用數(shù)字電路技術(shù)實現(xiàn)時、分、秒計時的裝置,與機械式時鐘相比具有更高的準(zhǔn)確性和直觀性,且無機械裝置,具有更更長的使用壽命,因此得到了廣泛的使用。第二章 整體設(shè)計方案2.1 單片機的選擇 單片機微型計算機是微型計算機的一個重要分

11、支,也是頗具生命力的機種。單片機微型計算機簡稱單片機,特別適用于控制領(lǐng)域,故又稱為微控制器。 通常,單片機由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計算機的基本功能部件:中央處理器、存儲器和i/o接口電路等。因此,單片機只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個單片機控制系統(tǒng)。 單片機經(jīng)過3代的發(fā)展,正朝著多功能、高性能、低電壓、低功耗、低價格、大存儲容量、強i/o功能及較好的結(jié)構(gòu)兼容性方向發(fā)展。其發(fā)展趨勢不外乎以下幾個方面:1、多功能 單片機中盡可能地把所需要的存儲器和i/o口都集成在一塊芯片上,使得單片機可以實現(xiàn)更多的功能。比如a/d、pwm、pca(可編程計數(shù)器陣列)、wdt(監(jiān)視定時器-

12、看家狗)、高速i/o口及計數(shù)器的捕獲/比較邏輯等。 有的單片機針對某一個應(yīng)用領(lǐng)域,集成了相關(guān)的控制設(shè)備,以減少應(yīng)用系統(tǒng)的芯片數(shù)量。例如,有的芯片以51內(nèi)核為核心,集成了usb控制器、smart card接口、mp3解碼器、can或者i*i*c總線控制器等,led、lcd或vfd顯示驅(qū)動器也開始集成在8位單片機中。2、高效率和高性能 為了提高執(zhí)行速度和執(zhí)行效率,單片機開始使用risc、流水線和dsp的設(shè)計技術(shù),使單片機的性能有了明顯的提高,表現(xiàn)為:單片機的時鐘頻率得到提高;同樣頻率的單片機運行效率也有了很大的提升;由于集成度的提高,單片機的尋址能力、片內(nèi)rom(flash)和ram的容量都突破了

13、以往的數(shù)量和限制。 由于系統(tǒng)資源和系統(tǒng)復(fù)雜程度的增加,開始使用高級語言(如c語言)來開發(fā)單片機的程序。使用高級語言可以降低開發(fā) 難度,縮短開發(fā)周期,增強軟件的可讀性和可移植性,便于改進(jìn)和擴充功能。3、低電壓和低功耗 單片機的嵌入式應(yīng)用決定了低電壓和低功耗的特性十分重要。由于cmos等工藝的大量采用,很多單片機可以在更低的電壓下工作(1.2v或0.9v),功耗已經(jīng)降低到ua級。這些特性使得單片機系統(tǒng)可以在更小電源的支持下工作更長的時間。目前,我國生產(chǎn)很多型號的單片機,在此,我們采用型號為stc89c52的單片機。因為: stc89c52是一個低電壓,高性能cmos 8位單片機,片內(nèi)含4

14、k bytes的可反復(fù)擦寫的flash只讀程序存儲器和128 bytes的隨機存取數(shù)據(jù)存儲器(ram),器件采用atmel公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)mcs-52指令系統(tǒng),片內(nèi)置通用8位中央處理器和flash存儲單元,內(nèi)置功能強大的微型計算機的at89c52提供了高性價比的解決方案。    stc89c52是一個低功耗高性能單片機,40個引腳,32個外部雙向輸入/輸出(i/o)端口,同時內(nèi)含2個外中斷口,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,stc89c51可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和flash存儲器結(jié)

15、合在一起,特別是可反復(fù)擦寫的flash存儲器可有效地降低開發(fā)成本。2.2 單片機的基本結(jié)構(gòu) 數(shù)字鐘的基本構(gòu)成框圖mcs-51單片機內(nèi)部結(jié)構(gòu)   8051單片機包含中央處理器、程序存儲器(rom)、數(shù)據(jù)存儲器(ram)、定時/計數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在我們分別加以說明:中斷系統(tǒng):8051具備較完善的中斷功能,有兩個外中斷、兩個定時/計數(shù)器中斷和一個串行中斷,可滿足不同的控制要求,并具有2級的優(yōu)先級別選擇。時鐘電路:8051內(nèi)置最高頻率達(dá)12mhz的時鐘電路,用于產(chǎn)生整個單片機運行的脈沖時序,但8052單片機需外

16、置振蕩電容。單片機的結(jié)構(gòu)有兩種類型,一種是程序存儲器和數(shù)據(jù)存儲器分開的形式,即哈佛(harvard)結(jié)構(gòu),另一種是采用通用計算機廣泛使用的程序存儲器與數(shù)據(jù)存儲器合二為一的結(jié)構(gòu),即普林斯頓(princeton)結(jié)構(gòu)。intel的mcs-52系列單片機采用的是哈佛結(jié)構(gòu)的形式,而后續(xù)產(chǎn)品16位的mcs-96系列單片機則采用普林斯頓結(jié)構(gòu)。mcs-51的引腳說明:mcs-51列單片機中的8031、8051及8751均采用40pin封裝的雙列直接dip結(jié)構(gòu),右圖是它們的引腳配置,40個引腳中,正電源和地線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個i/o口,中斷口線與p3口線復(fù)用?,F(xiàn)在我們對這些引腳

17、的功能加以說明:單片機的引腳圖當(dāng)8051電,時鐘電路開始工作,在reset引腳上出現(xiàn)24個時鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。初始化后,程序計數(shù)器pc指向0000h,p0-p3輸出口全部為高電平,堆棧指針寫入07h,其它專用寄存器被清“0”。reset由高電平下降為低電平后,系統(tǒng)即從0000h地址開始執(zhí)行程序。然而,初始復(fù)位不改變ram(包括工作寄存器r0-r7)的狀態(tài),8052的初始態(tài)。8051的復(fù)位方式可以是自動復(fù)位,也可以是手動復(fù)位,見下圖4。此外,reset/vpd還是一復(fù)用腳,vcc掉電其間,此腳可接上備用電源,以保證單片機內(nèi)部ram的數(shù)據(jù)不丟失。內(nèi)部和外部時鐘方式圖 當(dāng)訪問外部程

18、序器時,ale(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪問內(nèi)部程序存儲器時,ale端將有一個1/6時鐘頻率的正脈沖信號,這個信號可以用于識別單片機是否工作,也可以當(dāng)作一個時鐘向外輸出。更有一個特點,當(dāng)訪問外部程序存儲器,ale會跳過一個脈沖。 當(dāng)訪問外部程序存儲器時,此腳輸出負(fù)脈沖選通信號,pc的16位地址數(shù)據(jù)將出現(xiàn)在p0和p2口上,外部程序存儲器則把指令數(shù)據(jù)放到p0口上,由cpu讀入并執(zhí)行。序存儲器的內(nèi)外部選通線,8051和8751單片機,內(nèi)置有4kb的程序存儲器,當(dāng)ea為高電平并且程序地址小于4kb時,讀取內(nèi)部程序存儲器指令數(shù)據(jù),而超過4kb地址則讀取外部指令數(shù)據(jù)。如ea為低電平,則不

19、管地址大小,一律讀取外部程序存儲器指令。顯然,對內(nèi)部無程序存儲器的8031,ea端必須接地。第三章 數(shù)字鐘的硬件設(shè)計3.1 電子鐘整體電路圖電子鐘整體電路圖 1.電源引腳 vcc40電源端gnd20接地端工作電壓為5v,另有at89lv51工作電壓則是2.7-6v, 引腳功能一樣。 2.外接晶體引腳晶振連接的內(nèi)部、外部方式圖 xtal1是片內(nèi)振蕩器的反相放大器輸入端,xtal2則是輸出端,使用外部振蕩器時,外部振蕩信號應(yīng)直接加到xtal1,而xtal2懸空。內(nèi)部方式時,時鐘發(fā)生器對振蕩脈沖二分頻,如晶振為12mhz,時鐘頻率就為6mhz。晶振的頻率可以在1mhz-24mhz內(nèi)選擇。電容取30p

20、f左右。系統(tǒng)的時鐘電路設(shè)計是采用的內(nèi)部方式,即利用芯片內(nèi)部的振蕩電路。at89單片機內(nèi)部有一個用于構(gòu)成振蕩器的高增益反相放大器。引腳xtal1和xtal2分別是此放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外晶體諧振器一起構(gòu)成一個自激振蕩器。外接晶體諧振器以及電容c1和c2構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中。對外接電容的值雖然沒有嚴(yán)格的要求,但電容的大小會影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。因此,此系統(tǒng)電路的晶體振蕩器的值為12mhz,電容應(yīng)盡可能的選擇陶瓷電容,電容值約為22f。在焊接刷電路板時,晶體振蕩器和電容應(yīng)盡可能安裝得與單片機芯片靠近,以減

21、少寄生電容,更好地保證震蕩器穩(wěn)定和可靠地工作。3. 復(fù)位rst9在振蕩器運行時,有兩個機器周期(24個振蕩周期)以上的高電平出現(xiàn)在此引腿時,將使單片機復(fù)位,只要這個腳保持高電平,51芯片便循環(huán)復(fù)位。復(fù)位后p0p3口均置1引腳表現(xiàn)為高電平,程序計數(shù)器和特殊功能寄存器sfr全部清零。當(dāng)復(fù)位腳由高電平變?yōu)榈碗娖綍r,芯片為rom的00h處開始運行程序。復(fù)位是由外部的復(fù)位電路來實現(xiàn)的。片內(nèi)復(fù)位電路是復(fù)位引腳rst通過一個斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來抑制噪聲,它的輸出在每個機器周期的s5p2,由復(fù)位電路采樣一次。復(fù)位電路通常采用上電自動復(fù)位和按鈕復(fù)位兩種方式,此電路系統(tǒng)采用的是上電與按鈕復(fù)

22、位電路。當(dāng)時鐘頻率選用6mhz時,c取22f,rs約為200,rk約為1k。復(fù)位操作不會對內(nèi)部ram有所影響。常用的復(fù)位電路如下圖所示:常用復(fù)位電路圖4.輸入輸出引腳(1) p0端口p0.0-p0.7 p0是一個8位漏極開路型雙向i/o端口,端口置1(對端口寫1)時作高阻抗輸入端。作為輸出口時能驅(qū)動8個ttl。對內(nèi)部flash程序存儲器編程時,接收指令字節(jié);校驗程序時輸出指令字節(jié),要求外接上拉電阻。在訪問外部程序和外部數(shù)據(jù)存儲器時,p0口是分時轉(zhuǎn)換的地址(低8位)/數(shù)據(jù)總線,訪問期間內(nèi)部的上拉電阻起作用。(2) p1端口p1.0p1.7 p1是一個帶有內(nèi)部上拉電阻的8位雙向i/0端口。輸出時可

23、驅(qū)動4個ttl。端口置1時,內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對內(nèi)部flash程序存儲器編程時,接收低8位地址信息。(3) p2端口p2.0p2.7 p2是一個帶有內(nèi)部上拉電阻的8位雙向i/0端口。輸出時可驅(qū)動4個ttl。端口置1時,內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對內(nèi)部flash程序存儲器編程時,接收高8位地址和控制信息。在訪問外部程序和16位外部數(shù)據(jù)存儲器時,p2口送出高8位地址。而在訪問8位地址的外部數(shù)據(jù)存儲器時其引腳上的內(nèi)容在此期間不會改變。(4) p3端口p3.0p3.7 p2是一個帶有內(nèi)部上拉電阻的8位雙向i/0端口。輸出時可驅(qū)動4個ttl。端口置1時,內(nèi)部上拉電阻將

24、端口拉到高電平,作輸入用。對內(nèi)部flash程序存儲器編程時,接控制信息。除此之外p3端口還用于一些專門功能,具體請看下表。p3引腳兼用功能p3.0串行通訊輸入(rxd)p3.1串行通訊輸出(txd)p3.2外部中斷0( int0)p3.3外部中斷1(int1)p3.4定時器0輸入(t0)p3.5定時器1輸入(t1)p3.6外部數(shù)據(jù)存儲器寫選通wrp3.7外部數(shù)據(jù)存儲器寫選通rdp3端口引腳兼用功能表3.2 led顯示電路顯示器普遍地用于直觀地顯示數(shù)字系統(tǒng)的運行狀態(tài)和工作數(shù)據(jù),按照材料及產(chǎn)品工藝,單片機應(yīng)用系統(tǒng)中常用的顯示器有: 發(fā)光二極管led顯示器、液晶lcd顯示器、crt顯示器等。led顯

25、示器是現(xiàn)在最常用的顯示器之一,如下圖所示。led顯示器的符號圖發(fā)光二極管(led)由特殊的半導(dǎo)體材料砷化鎵、磷砷化鎵等制成,可以單獨使用,也可以組裝成分段式或點陣式led顯示器件(半導(dǎo)體顯示器)。分段式顯示器(led數(shù)碼管)由7條線段圍成8字型,每一段包含一個發(fā)光二極管。外加正向電壓時二極管導(dǎo)通,發(fā)出清晰的光。只要按規(guī)律控制各發(fā)光段亮、滅,就可以顯示各種字形或符號。led數(shù)碼管有共陽、共陰之分。圖是共陽式、共陰式led數(shù)碼管的原理圖和符號.本產(chǎn)品采用共陰極。共陽式、共陰式led數(shù)碼管的原理圖和數(shù)碼管的符號圖顯示電路顯示模塊需要實時顯示當(dāng)前的時間,即時、分、秒,因此需要6個數(shù)碼管,另需兩個數(shù)碼管

26、來顯示橫。采用動態(tài)顯示方式顯示時間,硬件連接如下圖所示,時的十位和個位分別顯示在第一個和第二個數(shù)碼管,分的十位和個位分別顯示在第四個和第五個數(shù)碼管,秒的十位和個位分別顯示在第七個和第八個數(shù)碼管,其余數(shù)碼管顯示橫線。led顯示器的顯示控制方式按驅(qū)動方式可分成靜態(tài)顯示方式和動態(tài)顯示方式兩種。對于多位led顯示器,通常都是采用動態(tài)掃描的方法進(jìn)行顯示,其硬件連接方式如下圖所示。數(shù)碼管的硬件連接示意圖3.3 鍵盤控制電路該設(shè)計需要校對時間,所以用三個按鍵來實現(xiàn)。按khour來調(diào)節(jié)小時的時間,按 kmin來調(diào)節(jié)分針的時間,按 ksec來調(diào)節(jié)秒的時間。下圖是按鍵硬件連接圖。按鍵控制電路的硬件連接圖當(dāng)用手按下

27、一個鍵時,如圖所示,往往按鍵在閉合位置和斷開位置之間跳幾下才穩(wěn)定到閉合狀態(tài)的情況;在釋放一個鍵時,也回會出現(xiàn)類似的情況。這就是抖動。抖動的持續(xù)時間隨鍵盤材料和操作員而異,不過通??偸遣淮笥?0ms。很容易想到,抖動問題不解決就會引起對閉合鍵的識別。用軟件方法可以很容易地解決抖動問題,這就是通過延遲10ms來等待抖動消失,這之后,在讀入鍵盤碼。鍵按下前沿抖動后沿抖動閉合穩(wěn)定按鍵抖動信號波形第四章 數(shù)字鐘的軟件設(shè)計系統(tǒng)的軟件設(shè)計也是工具系統(tǒng)功能的設(shè)計。單片機軟件的設(shè)計主要包括執(zhí)行軟件(完成各種實質(zhì)性功能)的設(shè)計和監(jiān)控軟件的設(shè)計。單片機的軟件設(shè)計通常要考慮以下幾個方面的問題:(1)根據(jù)軟件功能要求,

28、將系統(tǒng)軟件劃分為若干個相對獨立的部分,設(shè)計出合理的總體結(jié)構(gòu),使軟件開發(fā)清晰、簡潔和流程合理;(2)培養(yǎng)良好的編程風(fēng)格,如考慮結(jié)構(gòu)化程序設(shè)計、實行模塊化、子程序化。既便于調(diào)試、鏈接,又便于移植和修改;(3)建立正確的數(shù)學(xué)模型,通過仿真提高系統(tǒng)的性能,并選取合適的參數(shù);(4)繪制程序流程圖;(5)合理分配系統(tǒng)資源;(6)為程序加入注釋,提高可讀性,實施軟件工程;(7)注意軟件的抗干擾設(shè)計,提高系統(tǒng)的可靠性。4.1 系統(tǒng)軟件設(shè)計流程圖主程序流程圖這次的數(shù)字電子鐘設(shè)計用到很多子程序,它們的流程圖如下所示:按鍵處理是先檢測秒按鍵是否按下,秒按鍵如果按下,秒就加1;如果沒有按下,就檢測分按鍵是否按下,分按

29、鍵如果按下,分就加1;如果沒有按下,就檢測時按鍵是否按下,時按鍵如果按下,時就加1;如果沒有按下,就把時間顯示出來。 nynyny時加1顯示時間結(jié)束開始秒按鍵按下?秒加1分按鍵按下?分加1時按鍵按下? 按鍵處理流程圖定時器中斷時是先檢測1秒是否到,1秒如果到,秒單元就加1;如果沒到,就檢測1分鐘是否到,1分鐘如果到,分單元就加1;如果沒到,就檢測1小時是否到,1小時如果到,時單元就加1,如果沒到,就顯示時間。n24小時到?分單元清零,時單元加1nnnyy時單元清零時間顯示中斷返回開始一秒時間到?60秒時間到?60分鐘到?秒單元加1秒單元清零,分單元加1yy定時器中斷流程圖時間顯示是先秒個位計算

30、顯示,然后是秒十位計算顯示,再是分個位計算顯示,再然后是分十位顯示,再就是時個位計算顯示,最后是時十位顯示。時十位計算顯示結(jié)束開始秒個位計算顯示秒十位計算顯示分個位計算顯示分十位計算顯示時個位計算顯示 時間顯示流程圖4.2 數(shù)字鐘的原理圖用protues軟件,根據(jù)要求畫出數(shù)字電子鐘的原理圖如下所示。數(shù)字鐘的原理圖 工作原理 : 數(shù)字電子鐘是一個將“ 時”,“分”,“秒”顯示于人的視覺器官的計時裝置。它的計時周期為24小時,顯示滿刻度為23時59分59秒,另外還有校時功能。因此,一個基本的數(shù)字鐘電路主要由顯示器“時”,“分”,“秒”和單片機,還有校時電路組成。8個數(shù)碼管的段選接到單片機的p0口,

31、位選接到單片機的p2口。數(shù)碼管按照數(shù)碼管動態(tài)顯示的工作原理工作,將標(biāo)準(zhǔn)秒信號送入“秒單元”,“秒單元”采用60進(jìn)制計數(shù)器,每累計60秒發(fā)出一個“分脈沖”信號,該信號將作為“分單元”的時鐘脈沖?!胺謫卧币膊捎?0進(jìn)制計數(shù)器,每累計60分鐘,發(fā)出一個“時脈沖”信號,該信號將被送到“時單元”?!皶r單元”采用24進(jìn)制計時器,可實現(xiàn)對一天24小時的累計。顯示電路將“時”、“分”、“秒”通過七段顯示器顯示出來。校時電路時用來對“時”、“分”、“秒”顯示數(shù)字進(jìn)行校對調(diào)整,按一下ksec,秒單元就加1 ,按一下kmin,分就加1,按一下khour,時就加1。4.3 主程序#include<reg52.

32、h> sbit ksec=p30; sbit kmin=p31; sbit khour=p32; unsigned char secshi=0,secge=0,minshi=0,minge=0,hourshi=0,hourge=0; unsigned int num=0,sec=0,min=0,hour=0; unsigned char code table10=0x3f,0xxx,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; void delay(unsigned int); void keyscan(); void display(); main(

33、)tmod=0x01; th0=(65536-50000)/256; tl0=(65536-50000)%256; ea=1;et0=1;tr0=1; while(1) display(); keyscan(); void delay(unsigned int z) unsigned int x,y; for(x=z;x>0;x-) for(y=110;y>0;y-);4.4 時鐘設(shè)置子程序void time0() interrupt 1 num+; th0=(65536-50000)/256; tl0=(65536-50000)%256; 4.5 定時器中斷子程序void tim

34、e0() interrupt 1 num+; th0=(65536-50000)/256; tl0=(65536-50000)%256; 4.6 led顯示程序void display() if(num=20) num=0; sec+; if(sec=60) sec=0; min+; if(min=60) min=0; hour+; if(hour=24) hour=0; min=0; sec=0; secge=sec%10; secshi=sec/10; minge=min%10; minshi=min/10; hourge=hour%10; hourshi=hour/10; p2=0xfe

35、; p0=tablesecge; delay(5); p2=0xfd; p0=tablesecshi; delay(5); p2=0xfb; p0=0x40; delay(5); p2=0xf7; p0=tableminge; delay(5); p2=0xef; p0=tableminshi; delay(5); p2=0xdf; p0=0x40; delay(5); p2=0xbf; p0=tablehourge; delay(5); p2=0x7f; p0=tablehourshi; delay(5);4.7 按鍵控制子程序void keyscan() if(ksec=0) delay(10); if(ksec=0)

溫馨提示

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

評論

0/150

提交評論