畢業(yè)設(shè)計(jì)(論文)單片機(jī)在電子鐘的實(shí)際應(yīng)用_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)單片機(jī)在電子鐘的實(shí)際應(yīng)用_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)單片機(jī)在電子鐘的實(shí)際應(yīng)用_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)單片機(jī)在電子鐘的實(shí)際應(yīng)用_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)單片機(jī)在電子鐘的實(shí)際應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、單片機(jī)在電子鐘的實(shí)際應(yīng)用- 26 -目 錄摘要iabstractii1 緒論- 1 -1.1 單片機(jī)介紹- 1 -1.2 單片機(jī)在嵌入式系統(tǒng)中的應(yīng)用- 2 -1.2.1 什么是嵌入式系統(tǒng)- 2 -1.2.2 現(xiàn)代計(jì)算機(jī)技術(shù)的兩大分支- 3 -1.2.3 嵌入式系統(tǒng)的應(yīng)用模式- 4 -1.3 單片機(jī)在嵌入式系統(tǒng)中的發(fā)展前景- 4 -1.4 學(xué)習(xí)單片機(jī)的基本問(wèn)題- 5 -2 單片機(jī)開(kāi)發(fā)以及軟硬件的選擇- 7 -2.1 單片機(jī)如何開(kāi)發(fā)注意事項(xiàng)- 7 -2.2 單片機(jī)軟硬件的選擇- 8 -2.2.1 芯片的選擇- 8 -2.2.2 硬件擴(kuò)展的選擇- 9 -2.2.3 開(kāi)發(fā)環(huán)境- 9 -3.1 設(shè)計(jì)要求

2、- 10 -3.2 方案簡(jiǎn)介- 10 -3.2.1 功能結(jié)構(gòu)圖- 10 -3.2.2 硬件連接- 10 -3.3.3 數(shù)字電子鐘軟件結(jié)構(gòu)- 12 -3.3.4 調(diào)試結(jié)果與問(wèn)題解決- 18 -3.3.5 效果演示- 19 -3.3.6 數(shù)字電子鐘與傳統(tǒng)電子鐘的比較- 19 -結(jié)束語(yǔ)- 21 -參考文獻(xiàn)- 22 -致謝- 23 -附錄- 24 -1 緒論目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過(guò)程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能ic卡,民用豪華轎車(chē)的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全

3、自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開(kāi)單片機(jī)。更不用說(shuō)自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。因此,單片機(jī)的學(xué)習(xí)、開(kāi)發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。1.1 單片機(jī)介紹 單片機(jī)是指一個(gè)集成在一塊芯片上的完整計(jì)算機(jī)系統(tǒng)。盡管他的大部分功能集成在一塊小芯片上,但是它具有一個(gè)完整計(jì)算機(jī)所需要的大部分部件:cpu、內(nèi)存、內(nèi)部和外部總線系統(tǒng),目前大部分還會(huì)具有外存。同時(shí)集成諸如通訊接口、定時(shí)器,實(shí)時(shí)時(shí)鐘等外圍設(shè)備。而現(xiàn)在最強(qiáng)大的單片機(jī)系統(tǒng)甚至可以將聲音、圖像、網(wǎng)絡(luò)、復(fù)雜的輸入輸出系統(tǒng)集成在一塊芯片上。單片機(jī)也被稱(chēng)為微控制器(microcontroller)

4、,是因?yàn)樗钤绫挥迷诠I(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有cpu的專(zhuān)用處理器發(fā)展而來(lái)。最早的設(shè)計(jì)理念是通過(guò)將大量外圍設(shè)備和cpu集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成復(fù)雜的而對(duì)體積要求嚴(yán)格的控制設(shè)備當(dāng)中。intel的z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專(zhuān)用處理器的發(fā)展便分道揚(yáng)鑣。單片機(jī)內(nèi)部也應(yīng)用和電腦功能類(lèi)似的模塊,比如cpu,內(nèi)存,并行總線,還有和硬盤(pán)作用相同的存儲(chǔ)器件,不同的是它的這些部件性能都相對(duì)于家用電腦弱很多,不過(guò)價(jià)錢(qián)也是低的,一般不超過(guò)10元。用它來(lái)做一些控制電器一類(lèi)不是很復(fù)雜的工作足矣了。我們現(xiàn)在用的全自動(dòng)滾筒洗衣機(jī)、排煙罩、vcd等等的家電里面都可以看到

5、它的身影!它主要是作為控制部分的核心部件。 單片機(jī)是一種在線式實(shí)時(shí)控制計(jì)算機(jī),在線式就是現(xiàn)場(chǎng)控制,需要的是有較強(qiáng)的抗干擾能力,較低的成本,這也是和離線式計(jì)算機(jī)的(比如家用pc)的主要區(qū)別。 單片機(jī)是依靠程序的,并且可以修改。通過(guò)不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。一個(gè)不是很復(fù)雜的功能要是用美國(guó)50年代開(kāi)發(fā)的74系列,或者60年代的cd4000系列這些純硬件來(lái)搞定的話,電路一定是一塊大pcb板!但是如果要是用美國(guó)70年代成功投放市場(chǎng)的系列單片機(jī),結(jié)果就會(huì)有天壤之別!因?yàn)閱纹瑱C(jī)是可以通過(guò)你編寫(xiě)的程序來(lái)實(shí)現(xiàn)高智能,

6、高效率,以及高可靠性的! 由于單片機(jī)對(duì)成本是敏感的,所以目前占統(tǒng)治地位的軟件還是最低級(jí)匯編語(yǔ)言,它是除了二進(jìn)制機(jī)器碼以上最低級(jí)的語(yǔ)言了,既然這么低級(jí)為什么還要用呢?很多高級(jí)的語(yǔ)言已經(jīng)達(dá)到了可視化編程的水平為什么不用呢?原因很簡(jiǎn)單,就是單片機(jī)沒(méi)有家用計(jì)算機(jī)那樣的cpu,也沒(méi)有像硬盤(pán)那樣的海量存儲(chǔ)設(shè)備。一個(gè)可視化高級(jí)語(yǔ)言編寫(xiě)的小程序里面即使只有一個(gè)按鈕,也會(huì)達(dá)到幾十kb的尺寸!對(duì)于家用pc的硬盤(pán)來(lái)講沒(méi)什么,可是對(duì)于單片機(jī)來(lái)講是不能接受的。 單片機(jī)在硬件資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計(jì)算機(jī)上的操作系統(tǒng)和應(yīng)用軟件拿到家用pc上來(lái)運(yùn)行,家用pc的也

7、是承受不了的??梢哉f(shuō),二十世紀(jì)跨越了三個(gè)“電”的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過(guò),這種電腦,通常是指?jìng)€(gè)人計(jì)算機(jī),簡(jiǎn)稱(chēng)pc機(jī)。它由主機(jī)、鍵盤(pán)、顯示器等組成。還有一類(lèi)計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)。顧名思義,這種計(jì)算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡(jiǎn)單運(yùn)算和控制。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里。它在整個(gè)裝置中,起著有如人類(lèi)頭腦的作用,它出了毛病,整個(gè)裝置就癱瘓了?,F(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級(jí)換代的功效,常在產(chǎn)品

8、名稱(chēng)前冠以形容詞“智能型”,如智能型洗衣機(jī)等?,F(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開(kāi)發(fā)者搞出來(lái)的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡(jiǎn)單且極易被仿制。究其原因,可能就是因?yàn)楫a(chǎn)品中未使用單片機(jī)或其它可編程邏輯器件上。1.2 單片機(jī)在嵌入式系統(tǒng)中的應(yīng)用1.2.1 什么是嵌入式系統(tǒng)ieee(國(guó)際電氣和電子工程師協(xié)會(huì))對(duì)嵌入式系統(tǒng)的定義:“用于控制、監(jiān)視或者輔助操作機(jī)器和設(shè)備的裝置”(原文為:devices used to control,monitor or assist the operation of equipment,machinery or plants)。這主要是從應(yīng)用對(duì)象上加以定義,從

9、中可以看出嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機(jī)械等附屬裝置。國(guó)內(nèi)普遍認(rèn)同的嵌入式系統(tǒng)定義為:以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)??梢赃@樣認(rèn)為,嵌入式系統(tǒng)是一種專(zhuān)用的計(jì)算機(jī)系統(tǒng),作為裝置或設(shè)備的一部分。通常,嵌入式系統(tǒng)是一個(gè)控制程序存儲(chǔ)在rom中的嵌入式處理器控制板。事實(shí)上,所有帶有數(shù)字接口的設(shè)備,如手表、微波爐、錄像機(jī)、汽車(chē)等,都使用嵌入式系統(tǒng)。1.2.2 現(xiàn)代計(jì)算機(jī)技術(shù)的兩大分支隨著大規(guī)模集成電路技術(shù)的不斷發(fā)展,微型計(jì)算機(jī)以異軍突起,從而導(dǎo)致微型計(jì)算機(jī)向兩個(gè)方向深入發(fā)展:一個(gè)是向高速、高性能的通用微型

10、計(jì)算機(jī)方向發(fā)展;另一個(gè)是向穩(wěn)定可靠、小而廉的嵌入式計(jì)算機(jī)或?qū)S糜?jì)算機(jī)發(fā)展。如果說(shuō)微型機(jī)的出現(xiàn)使計(jì)算機(jī)進(jìn)入到現(xiàn)代計(jì)算機(jī)發(fā)展階段,那么嵌入式計(jì)算機(jī)系統(tǒng)的誕生則標(biāo)志著計(jì)算機(jī)進(jìn)入了通用計(jì)算機(jī)系統(tǒng)與嵌入式計(jì)算機(jī)系統(tǒng)兩大分支并行發(fā)展時(shí)代。從而導(dǎo)致20世紀(jì)末21世紀(jì)初計(jì)算機(jī)的高速發(fā)展時(shí)期。 通用微型計(jì)算機(jī)通用微型計(jì)算機(jī)是指具有海量高速數(shù)值計(jì)算、信息處理、多媒體、和網(wǎng)絡(luò)應(yīng)用等功能的計(jì)算機(jī),如pc機(jī)。通用計(jì)算機(jī)的運(yùn)算功能主要由中央處理器cpu來(lái)完成,因此計(jì)算機(jī)性能的優(yōu)劣取決于cpu的性能。在微型計(jì)算機(jī)中,cpu通常是一個(gè)大規(guī)模的集成電路芯片,也稱(chēng)微處理器(p)。因此,探討通用計(jì)算機(jī)的情況從微處理器的發(fā)展情況入手

11、。 嵌入式計(jì)算機(jī)計(jì)算機(jī)由于大大提高了現(xiàn)場(chǎng)環(huán)境的可靠性,體積小型化,從而走出機(jī)房,邁入微型計(jì)算機(jī)時(shí)代;同時(shí)計(jì)算機(jī)強(qiáng)化了i/o驅(qū)動(dòng)功能,對(duì)外部的控制管理功能以及抗干擾性能得以增強(qiáng),將計(jì)算機(jī)嵌入到對(duì)象體系中,實(shí)現(xiàn)嵌入式應(yīng)用要求的計(jì)算機(jī)。不難理解,嵌入式計(jì)算機(jī)屬于專(zhuān)用計(jì)算機(jī)。此時(shí)的計(jì)算機(jī)失去了原有形態(tài),功能也動(dòng)態(tài)地發(fā)生變化。嵌入式計(jì)算機(jī)是面向測(cè)控對(duì)象,具有對(duì)象交互、嵌入式應(yīng)用、i/o管理功能的計(jì)算機(jī)。目前,比較典型的嵌入式處理器類(lèi)型有微控制器mcu(micro-controller unit,國(guó)內(nèi)習(xí)慣稱(chēng)作單片機(jī))、嵌入式微處理器(embedded micro-processor unit)和數(shù)字信號(hào)處

12、理器dsp(digital signal processor)等。1.2.3 嵌入式系統(tǒng)的應(yīng)用模式按應(yīng)用形態(tài)分,嵌入式系統(tǒng)可分為設(shè)備級(jí)(工控機(jī))、板級(jí)(單板、模板)、芯片級(jí)(mcu、dsp)、soc級(jí)。設(shè)備級(jí)、板級(jí)可看作通用計(jì)算機(jī)的嵌入式系統(tǒng)應(yīng)用模式,芯片級(jí)和soc級(jí)則是專(zhuān)用計(jì)算機(jī)的嵌入式系統(tǒng)應(yīng)用模式。 1.設(shè)備級(jí)模式設(shè)備級(jí)模式(工控機(jī))是嵌入式系統(tǒng)的最早形態(tài),是通過(guò)將通用計(jì)算機(jī)加固而實(shí)現(xiàn)的,具有通用計(jì)算機(jī)的形態(tài)和操作系統(tǒng)。嵌入系統(tǒng)是面向?qū)iT(mén)應(yīng)用的,對(duì)成本非常敏感,特別是批量系統(tǒng)更是如此,這正是這種嵌入式系統(tǒng)應(yīng)用模式的軟肋所在。去掉不要的功能,能很快出產(chǎn)品,但伴隨的問(wèn)題可能是成本高,核心競(jìng)爭(zhēng)力

13、差。 2.板級(jí)模式板級(jí)模式是指以各種性能卓越的工業(yè)級(jí)32位通用微處理器為核心構(gòu)成的功能模塊或功能板,如一些通用cpu處理器生產(chǎn)廠家將在通用處理器方面的技術(shù)和產(chǎn)品“移植”到嵌入式應(yīng)用領(lǐng)域,制成的小型工程板或工控卡,在各種自動(dòng)化設(shè)備、數(shù)字機(jī)械產(chǎn)品中具有非常廣闊的應(yīng)用空間。與工業(yè)控制計(jì)算機(jī)相比,板級(jí)模式具有體積較小、重量輕、成本低、可靠性高的優(yōu)點(diǎn),但在電路板上必須包括rom 、ram、總線接口、各種外設(shè)等器件,從而降低了系統(tǒng)的可靠性,技術(shù)保密性也較差。若將微處理器及其存儲(chǔ)器、總線、外設(shè)等安裝在一塊電路板上,則稱(chēng)為單片機(jī)計(jì)算機(jī)。 3.芯片級(jí)模式芯片級(jí)模式是基于嵌入式處理器(如mcu、emcu和dsp)

14、的嵌入式系統(tǒng),它們根據(jù)各種應(yīng)用系統(tǒng)的不同要求,選用相應(yīng)的嵌入式處理芯片、存儲(chǔ)器(rom和ram)及i/o接口芯片等組成相應(yīng)的嵌入式系統(tǒng),相應(yīng)的系統(tǒng)軟件和應(yīng)用軟件也以固件形式固化在rom中。他們是典型的嵌入式系統(tǒng)形態(tài),是本論文討論和研究的對(duì)象。 4.soc級(jí)模式 系統(tǒng)級(jí)芯片soc(system on chip)是把嵌入式處理器、i/o接口、存儲(chǔ)器等不同的功能模塊,根據(jù)應(yīng)用的要求集成在一塊芯片上。1.3 單片機(jī)在嵌入式系統(tǒng)中的發(fā)展前景單片機(jī)屬于嵌入式系統(tǒng)最常見(jiàn)的一種設(shè)備,可以說(shuō)是嵌入式系統(tǒng)的實(shí)例化。嵌入式系統(tǒng)的出現(xiàn)最初是基于單片機(jī)的。70年代單片機(jī)的出現(xiàn),使得汽車(chē)、家電、工業(yè)機(jī)器、通信裝置以及成千

15、上萬(wàn)種產(chǎn)品可以通過(guò)嵌入電子裝置來(lái)獲得更佳的使用性能:更易用、更快速、更便宜。我們知道,嵌入式系統(tǒng)起源于微型機(jī)時(shí)代,但很快就進(jìn)入到獨(dú)立發(fā)展的單片機(jī)時(shí)代。在單片機(jī)時(shí)代,嵌入式系統(tǒng)以器件形態(tài)迅速進(jìn)入到傳統(tǒng)電子技術(shù)領(lǐng)域中,以電子技術(shù)應(yīng)用工程師為主體實(shí)現(xiàn)傳統(tǒng)電子系統(tǒng)的智能化。單片機(jī)開(kāi)創(chuàng)了嵌入式系統(tǒng)獨(dú)立發(fā)展道路 。嵌入式系統(tǒng)雖然起源于微型計(jì)算機(jī)時(shí)代,然而,微型計(jì)算機(jī)的體積、價(jià)位、可靠性都無(wú)法滿足廣大對(duì)象系統(tǒng)的嵌入式應(yīng)用要求,因此,嵌入式系統(tǒng)必須走獨(dú)立發(fā)展道路。這條道路就是芯片化道路。將計(jì)算機(jī)做在一個(gè)芯片上,從而開(kāi)創(chuàng)了嵌入式系統(tǒng)獨(dú)立發(fā)展的單片機(jī)時(shí)代。1.4 學(xué)習(xí)單片機(jī)的基本問(wèn)題 總線:我們知道,一個(gè)電路總是

16、由元器件通過(guò)電線連接而成的,在模擬電路中,連線并不成為一個(gè)問(wèn)題,因?yàn)楦髌骷g一般是串行關(guān)系,各器件之間的連線并不很多,但計(jì)算機(jī)電路卻不一樣,它是以微處理器為核心,各器件都要與微處理器相連,各器件之間的工作必須相互協(xié)調(diào),所以需要的連線就很多了,如果仍如同模擬電路一樣,在各微處理器和各器件間單獨(dú)連線,則線的數(shù)量將多得驚人,所以在微處理機(jī)中引入了總線的概念,各個(gè)器件共同享用連線,所有器件的8根數(shù)據(jù)線全部接到8根公用的線上,即相當(dāng)于各個(gè)器件并聯(lián)起來(lái),但僅這樣還不行,如果有兩個(gè)器件同時(shí)送出數(shù)據(jù),一個(gè)為0,一個(gè)為1,那么,接收方接收到的究竟是什么呢?這種情況是不允許的,所以要通過(guò)控制線進(jìn)行控制,使器件分時(shí)

17、工作,任何時(shí)候只能有一個(gè)器件發(fā)送數(shù)據(jù)(可以有多個(gè)器件同時(shí)接收)。器件的數(shù)據(jù)線也就被稱(chēng)為數(shù)據(jù)總線,器件所有的控制線被稱(chēng)為控制總線。在單片機(jī)內(nèi)部或者外部存儲(chǔ)器及其它器件中有存儲(chǔ)單元,這些存儲(chǔ)單元要被分配地址,才能使用,分配地址當(dāng)然也是以電信號(hào)的形式給出的,由于存儲(chǔ)單元比較多,所以,用于地址分配的線也較多,這些線被稱(chēng)為地址總線。 數(shù)據(jù)、地址、指令:之所以將這三者放在一起,是因?yàn)檫@三者的本質(zhì)都是一樣的。數(shù)字,或者說(shuō)都是一串0和1組成的序列。換言之,地址、指令也都是數(shù)字。指令:由單片機(jī)芯片的設(shè)計(jì)者規(guī)定的一種數(shù)字,它與我們常用的指令助記符有著嚴(yán)格的一一對(duì)應(yīng)關(guān)系,不可以由單片機(jī)的開(kāi)發(fā)者更改;地址:是尋找單片

18、機(jī)內(nèi)部、外部的存儲(chǔ)單元、輸入輸出口的依據(jù),內(nèi)部單元的地址值已由芯片設(shè)計(jì)者規(guī)定好,不可更改,外部的單元可以由單片機(jī)開(kāi)發(fā)者自行決定,但有一些地址單元是一定要有的(詳見(jiàn)程序的執(zhí)行過(guò)程);數(shù)據(jù):這是由微處理機(jī)處理的對(duì)象,在各種不同的應(yīng)用電路中各不相同,一般而言,被處理的數(shù)據(jù)可能有這么幾種情況: 1地址(如mov dptr,#1000h),即地址1000h送入dptr。 2方式字或控制字(如mov tmod,#3),3即是控制字。 3常數(shù)(如mov th0,#10h)10h即定時(shí)常數(shù)。 4實(shí)際輸出值(如p1口接彩燈,要燈全亮,則執(zhí)行指令:mov p1,#0ffh,要燈全暗,則執(zhí)行指令:mov p1,#0

19、0h)這里0ffh和00h都是實(shí)際輸出值。又如用于led的字形碼,也是實(shí)際輸出的值。 p0口、p2口和p3的第二功能用法:初學(xué)時(shí)往往對(duì)p0口、p2口和p3口的第二功能用法迷惑不解,認(rèn)為第二功能和原功能之間要有一個(gè)切換的過(guò)程,或者說(shuō)要有一條指令,事實(shí)上,各端口的第二功能完全是自動(dòng)的,不需要用指令來(lái)轉(zhuǎn)換。如p3.6、p3.7分別是wr、rd信號(hào),當(dāng)微片理機(jī)外接ram或有外部i/o口時(shí),它們被用作第二功能,不能作為通用i/o口使用,只要微處理機(jī)執(zhí)行到movx指令,就會(huì)有相應(yīng)的信號(hào)從p3.6或p3.7送出,不需要事先用指令說(shuō)明。事實(shí)上不能作為通用i/o口使用也并不是不能而是(使用者)不會(huì)將其作為通用i

20、/o口使用。你完全可以在指令中安排一條setb p3.7的指令,并且當(dāng)單片機(jī)執(zhí)行到這條指令時(shí),也會(huì)使p3.7變?yōu)楦唠娖?,但使用者不?huì)這么去做,因?yàn)檫@通常這會(huì)導(dǎo)致系統(tǒng)的崩潰。 堆棧: 堆棧是一個(gè)區(qū)域,是用來(lái)存放數(shù)據(jù)的,這個(gè)區(qū)域本身沒(méi)有任何特殊之處,就是內(nèi)部ram的一部份,特殊的是它存放和取用數(shù)據(jù)的方式,即所謂的先進(jìn)后出,后進(jìn)先出,并且堆棧有特殊的數(shù)據(jù)傳輸指令,即push和pop,有一個(gè)特殊的專(zhuān)為其服務(wù)的單元,即堆棧指針sp,每當(dāng)執(zhí)一次push指令時(shí),sp就(在原來(lái)值的基礎(chǔ)上)自動(dòng)加1,每當(dāng)執(zhí)行一次pop指令,sp就(在原來(lái)值的基礎(chǔ)上)自動(dòng)減1。由于sp中的值可以用指令加以改變,所以只要在程序開(kāi)始

21、階段更改了sp的值,就可以把堆棧設(shè)置在規(guī)定的內(nèi)存單元中。2 單片機(jī)開(kāi)發(fā)以及軟硬件的選擇2.1 單片機(jī)如何開(kāi)發(fā)注意事項(xiàng)從上面的章節(jié)中我們已經(jīng)了解了什么是單片機(jī)以及單片機(jī)在應(yīng)用領(lǐng)域中的地位,在那些實(shí)例中可以發(fā)現(xiàn)每一個(gè)系統(tǒng)都是在完成一個(gè)特定的功能,這些特定功能的實(shí)現(xiàn)依靠單片機(jī)來(lái)指派。單片機(jī)知道怎樣來(lái)進(jìn)行指派(由我們編寫(xiě)的程序來(lái)控制),這個(gè)過(guò)程反過(guò)來(lái)推導(dǎo)就是單片機(jī)開(kāi)發(fā)的一個(gè)過(guò)程根據(jù)硬件設(shè)計(jì)編寫(xiě)程序并把程序加載到單片機(jī)里。所謂硬件(hardware),就是看得到,摸得到的實(shí)體。有了這樣的硬件,才有了實(shí)現(xiàn)計(jì)算和控制功能的可能性,硬件設(shè)計(jì)就是根據(jù)我們要設(shè)計(jì)的系統(tǒng)來(lái)找到實(shí)現(xiàn)這個(gè)系統(tǒng)所需要的硬件,并根據(jù)一定的電

22、氣規(guī)則把它們組合起來(lái)(前期用來(lái)做試驗(yàn)的硬件也稱(chēng)之為開(kāi)發(fā)系統(tǒng))。 單片機(jī)要真正地能進(jìn)行計(jì)算和控制,還必須有軟件(software)的配合。軟件主要指的是各種程序。只有將各種正確的程序“灌入”(存入)單片機(jī),它才能有效地工作。所謂程序,就是人們?yōu)榱烁嬖V微處理器要做什么事而編寫(xiě)的,微處理器能夠理解的一串指令,有時(shí)也叫代碼、程序。單片機(jī)能自動(dòng)地進(jìn)行運(yùn)算和控制,是由于人把實(shí)現(xiàn)計(jì)算和控制的步驟一步一步地用命令的形式,即一條一條的指令(instruction)預(yù)先存入到存儲(chǔ)器中,單片機(jī)在中央處理器(也稱(chēng)“內(nèi)核”)的控制下,將指令一條一條地取出來(lái),并加以翻譯和執(zhí)行。由于單片機(jī)只認(rèn)識(shí)“0”和“1”,為了讓單片機(jī)

23、認(rèn)識(shí)我們編寫(xiě)的程序,這就需要一個(gè)“中間人”來(lái)充當(dāng)翻譯,把程序翻譯成“0”和“1”的一系列組合,這個(gè)“中間人”就是我們通常所說(shuō)的開(kāi)發(fā)環(huán)境(也稱(chēng)“編譯器”),為了把翻譯的結(jié)果“灌入”單片機(jī),人們發(fā)明了下載器(或稱(chēng)“燒錄器”)。 同時(shí),為了更加方便的檢查我們編寫(xiě)的程序是否符合設(shè)計(jì)的系統(tǒng)的要求(或者說(shuō)更好的進(jìn)行程序調(diào)試),人們又發(fā)明了仿真機(jī),當(dāng)我們的程序仿真成功以后,再下載到我們?cè)O(shè)計(jì)的系統(tǒng)上,這樣一來(lái)不僅為我們的程序調(diào)試提供了方便,也減少了把一個(gè)有誤的程序下載到設(shè)計(jì)的系統(tǒng)上的可能。當(dāng)然如果你確認(rèn)你的程序沒(méi)有問(wèn)題的話,也可以不使用仿真器,可惜的是這種牛人在現(xiàn)實(shí)中很少見(jiàn)。 總體來(lái)說(shuō)單片機(jī)開(kāi)發(fā)的一般過(guò)程是首

24、先進(jìn)行硬件設(shè)計(jì),然后根據(jù)硬件和系統(tǒng)的要求在開(kāi)發(fā)環(huán)境中編寫(xiě)程序,經(jīng)多次使用仿真器把程序調(diào)試成功后,再通過(guò)燒錄器把程序?qū)懙絾纹瑱C(jī)里。2.2 單片機(jī)軟硬件的選擇2.2.1 芯片的選擇spce061a是各類(lèi)單片機(jī)里的一種,它是伴隨凌陽(yáng)大學(xué)計(jì)劃在大陸推出的,在短時(shí)間里 spce061a單片機(jī)得到了各大院校師生的認(rèn)可,并在業(yè)界獲得了良好的聲譽(yù),因?yàn)檫@個(gè)單片機(jī)代表了現(xiàn)代單片機(jī)的大部分特點(diǎn)?,F(xiàn)在可以說(shuō)是一個(gè)單片機(jī)百花齊放,百家爭(zhēng)鳴的時(shí)期,世界上各大芯片制造公司都推出了自己的單片機(jī),spce061a單片機(jī)之所以能在短時(shí)間內(nèi)在國(guó)內(nèi)得到認(rèn)同,主要是因?yàn)樗砹藛纹瑱C(jī)發(fā)展的潮流。使用 spce061a單片機(jī)進(jìn)行學(xué)習(xí),

25、不僅可以學(xué)到單片機(jī)的一些基礎(chǔ)知識(shí),并且學(xué)習(xí)成本低廉,還可進(jìn)一步了解單片機(jī)的發(fā)展方向和接觸到當(dāng)前一些先進(jìn)的技術(shù)。spce061a的封裝引腳排列圖、管腳描述表、以及spce061a最小系統(tǒng)原理圖可參見(jiàn)附圖1 、附圖2、附表1?!?1板”是spce061a emu board的簡(jiǎn)稱(chēng),是spce061a單片機(jī)的開(kāi)發(fā)系統(tǒng),通過(guò)掛接不同的硬件和下載不同的程序就可實(shí)現(xiàn)各類(lèi)特定功能的系統(tǒng),下面將各區(qū)的功能進(jìn)行一下簡(jiǎn)要的介紹: 電源區(qū):為整個(gè)系統(tǒng)提供電源,通常采用系統(tǒng)配套的電池盒進(jìn)行供電,只要放入3節(jié)5號(hào)電池就可以滿足供電需求了;下載區(qū):程序就是通過(guò)這邊的接口下載到spce061a單片機(jī)的,當(dāng)然,在進(jìn)行在線調(diào)試

26、時(shí)也能上傳一些硬件信息到開(kāi)發(fā)環(huán)境中;音頻區(qū):這里的麥克風(fēng)是用來(lái)進(jìn)行語(yǔ)音輸入的,還有一個(gè)喇叭的接口用來(lái)進(jìn)行語(yǔ)音播放;spce061a與周邊:這就是整塊板子的大腦,所有控制信息都是從這里發(fā)出的,那些周邊器件用來(lái)協(xié)助spce061a單片機(jī)正常工作;鍵控區(qū):采用這幾個(gè)按鍵可以做一些簡(jiǎn)單的試驗(yàn),比如說(shuō)當(dāng)板子里下載了復(fù)讀機(jī)的程序,按這幾個(gè)按鍵就可以分別用來(lái)進(jìn)行錄音、暫停和播放,如果下載了語(yǔ)音萬(wàn)年歷的程序,這幾個(gè)按鍵就可以用來(lái)設(shè)定初始時(shí)間和控制播放當(dāng)前時(shí)間等;復(fù)位區(qū):這里是由幾個(gè)簡(jiǎn)單的電子元器件組成,當(dāng)按下這里面的按鍵后,單片機(jī)就重新開(kāi)始工作,也可以說(shuō)成是單片機(jī)里的程序從第一條開(kāi)始重新運(yùn)行; 端口區(qū):用于對(duì)

27、外掛硬件的控制,或者獲取外部硬件的一些狀態(tài)以便spce061a來(lái)進(jìn)行處理。 2.2.2 硬件擴(kuò)展的選擇splc501 液晶顯示模組為 128x64 點(diǎn)陣,面板采用 stn(super twisted nematic)超扭曲向列技術(shù)制成并且由 128 segment 和 64 common 組成,lcm 非常容易通過(guò)接口被訪問(wèn)。模組上的液晶顯示器采用凌陽(yáng)科技的 splc501 芯片作為 lcd 驅(qū)動(dòng)和控制器,為 128x64 點(diǎn)陣圖形液晶顯示器。下面為splc501液晶顯示模組的基本參數(shù): 顯示模式 黃色模式stn液晶 顯示格式 128x64點(diǎn)陣地圖形液晶顯示 輸入數(shù)據(jù) 兼容68/80系列mpu

28、數(shù)據(jù)輸入 背光 黃綠色led 模塊尺寸 72.8(長(zhǎng))73.6(寬)9.5(高)mm 視屏尺寸 58.84(寬)35.79(長(zhǎng))mm 點(diǎn)大小 0.42(寬)0.51(長(zhǎng))mm 像素尺寸 0.46(寬)0.56(長(zhǎng))mm 2.2.3 開(kāi)發(fā)環(huán)境所謂的開(kāi)發(fā)環(huán)境,其實(shí)就是一個(gè)或幾個(gè)電腦上的可執(zhí)行程序,。不管是哪類(lèi)單片機(jī)的開(kāi)發(fā)環(huán)境都至少具備如下的功能:程序編寫(xiě):可以在開(kāi)發(fā)環(huán)境里錄入程序 編譯程序:負(fù)責(zé)把程序翻譯成機(jī)器碼 下載: 把機(jī)器碼下載到仿真板或開(kāi)發(fā)系統(tǒng)上在本論文中,一切對(duì)硬件的軟件操作都是在凌陽(yáng)公司提供的開(kāi)發(fā)環(huán)境unsp ide來(lái)完成的。該開(kāi)發(fā)環(huán)境叫做集成開(kāi)發(fā)環(huán)境(也稱(chēng)ide),它除了具備上面的三

29、個(gè)功能外還可以組織多個(gè)程序文件形成一個(gè)系統(tǒng)開(kāi)發(fā)的項(xiàng)目,這樣更有利于一些大型系統(tǒng)的開(kāi)發(fā)和各功能模塊的模塊化,同時(shí)它還結(jié)合spce061a單片機(jī)的硬件提供各類(lèi)在線調(diào)試窗口,使調(diào)試程序變得更加直觀和簡(jiǎn)單,除此之外,它還提供一些軟件模擬spce061a單片機(jī)仿真的功能,在沒(méi)有硬件的情況下也可以完成一些簡(jiǎn)單程序的調(diào)試,可以通過(guò)集成開(kāi)發(fā)環(huán)境使用c語(yǔ)言和匯編語(yǔ)言對(duì)spce061a進(jìn)行編程。3 單片機(jī)應(yīng)用方案數(shù)字電子鐘具有走時(shí)準(zhǔn)確,一鐘多用等特點(diǎn),在生活中已經(jīng)得到了廣泛的應(yīng)用。隨著科技的發(fā)展,人們對(duì)電子產(chǎn)品的應(yīng)用要求越來(lái)越高,數(shù)字電子鐘不但可以顯示當(dāng)前的時(shí)間,而且可以顯示日期、農(nóng)歷、以及星期等,給人們的生活帶

30、來(lái)了方便。另外數(shù)字鐘還具備秒表和鬧鐘功能,且鬧鐘鈴聲可自選,使一款電子鐘具備了多媒體的色彩。3.1 設(shè)計(jì)要求利用spce061a單片機(jī)作為控制器,擴(kuò)展splc501a液晶模組,完成以下功能: 可以在splc501a液晶模組上面顯示時(shí)間、日期、農(nóng)歷、星期、鬧鐘; 可以語(yǔ)音播報(bào)日期和時(shí)間; 整點(diǎn)報(bào)時(shí); 鬧鐘; 鬧鐘的鈴聲可以選擇; 具備秒表功能。 3.2 方案簡(jiǎn)介3.2.1 功能結(jié)構(gòu)圖圖3.1功能結(jié)構(gòu)圖3.2.2 硬件連接spce061a與splc501a的硬件框圖如圖3.2,硬件連接圖如圖3.3:圖3.2 硬件框圖圖3.3 硬件連接圖數(shù)字電子鐘的連接示意圖見(jiàn)圖3.3,ioa的高八位接到液晶模組的

31、八個(gè)數(shù)據(jù)端,同時(shí)也連接了液晶模組的電源,即直接用一根10pin的排線連接61 板“+”、ioa8-15、“-”與splc501a液晶顯示模組的“+”、db0-7、“-”,主要用來(lái)向液晶模組傳送命令和數(shù)據(jù);iob6 接ep,iob5 接r/w,iob4 接ao,用來(lái)控制液晶顯示和工作方式,分別控制顯示器的讀寫(xiě)信號(hào)、時(shí)鐘信號(hào)、數(shù)據(jù)選擇信號(hào)。應(yīng)為顯示器的驅(qū)動(dòng)電壓為3.3v,所以j5跳線應(yīng)把vio和3v短接起來(lái)。3.3.3 數(shù)字電子鐘軟件結(jié)構(gòu)軟件結(jié)構(gòu)如圖3.4,圖中可以看出各文件之間的調(diào)用關(guān)系:圖3.4 軟件結(jié)構(gòu)圖下面簡(jiǎn)要介紹一下各個(gè)程序文件的功能: 1.main.c 實(shí)現(xiàn)了系統(tǒng)的初始化,顯示開(kāi)機(jī)畫(huà)面

32、,鍵盤(pán)掃描和語(yǔ)音播報(bào); 2.system.c 包含了工程中大部分的功能函數(shù),包括各種界面的顯示、時(shí)間和日期的調(diào)整、秒表的調(diào)整、鬧鐘的時(shí)間設(shè)定、鬧鐘的鈴聲選擇等; 3.key.c 鍵盤(pán)掃描文件,里面定義了鍵盤(pán)掃描函數(shù)、延時(shí)函數(shù),用來(lái)實(shí)現(xiàn)對(duì)鍵盤(pán)的掃描等功能,鍵盤(pán)掃描采用查詢方式;4.isr.asm 中斷服務(wù)函數(shù)文件,實(shí)現(xiàn)語(yǔ)音解碼、秒表和時(shí)間以及日期的修改; 5.speak.c 語(yǔ)音播報(bào)函數(shù),實(shí)現(xiàn)語(yǔ)音播報(bào)日期、時(shí)間以及鬧鐘。 本方案是采用的c語(yǔ)言來(lái)編寫(xiě)的,其源程序的主要主程序main.c如下,其中調(diào)用的子程序以及顯示器驅(qū)動(dòng)程序等可參見(jiàn)附表程序:#include spce061a.h#include

33、splc501user.h#include model.h#define ring1 17 /播放第一個(gè)鈴聲的序號(hào)#define ring2 18 /播放第二個(gè)鈴聲的序號(hào)extern void display(); /對(duì)主函數(shù)調(diào)用的函數(shù)聲明extern void playrespond(unsigned int result);extern void speaktime();extern void keyscan();extern void nextdisplay(); extern void setday();extern void set_ring();extern void setsec

34、ond(); extern void speaktime();extern void speakday();extern void keyinitial(); /定義文件中用到的變量以及常數(shù)數(shù)組unsigned int keyflag1=0; /鍵按下標(biāo)志1,控制進(jìn)入功能選擇菜單unsigned int keyflag2=0; /鍵按下標(biāo)志2,控制進(jìn)入時(shí)間日期設(shè)置界面unsigned int keyflag3=0; /鍵按下標(biāo)志3,控制進(jìn)入時(shí)間日期調(diào)整界面unsigned int keyflag4=0; /鍵按下標(biāo)志4,控制進(jìn)入鬧鐘時(shí)間設(shè)置界面unsigned int keyflag5=0;

35、/鍵按下標(biāo)志5,控制進(jìn)入秒表設(shè)置界面unsigned int keyflag6=0; /鍵按下標(biāo)志6,控制進(jìn)入鬧鐘設(shè)置界面unsigned int keyflag7=0; /鍵按下標(biāo)志7,控制進(jìn)入鬧鐘鈴聲選擇界面unsigned int ringflag=0; /播放鈴聲標(biāo)志位1播放第一首2播放第二首u(yù)nsigned int keyvalue=0; /存放按下的鍵值unsigned int runflag=0; /當(dāng)年閏月標(biāo)志位unsigned int num=0; /2hz計(jì)數(shù)單元unsigned int hour=0; /存放當(dāng)前的小時(shí)unsigned int min=0; /存放當(dāng)前的分

36、鐘unsigned int sec=0; /存放當(dāng)前的秒unsigned int year=2006; /存放當(dāng)前的年unsigned int gmonth=8; /存放當(dāng)前的公歷的月unsigned int gday=1; /存放當(dāng)前的公歷的日unsigned int xqvalue=0; /存放當(dāng)前的星期unsigned int nmonth=7; /存放農(nóng)歷的月unsigned int nday=8; /存放農(nóng)歷的日unsigned int mouse=1,17,32,48; /箭頭坐標(biāo)數(shù)組unsigned int nhour=12; /存放鬧鐘的小時(shí)unsigned int nmin=

37、0; /存放鬧鐘的分鐘unsigned int mbmin=0; /存放秒表的分unsigned int mbsec=0; /存放秒表的秒unsigned int mmsec=0; /存放秒表的毫秒unsigned int mbnum=0; /1khz中斷標(biāo)志位unsigned int onoff=0; /鬧鐘開(kāi)關(guān)標(biāo)unsigned int int2hz; /設(shè)置一個(gè)2hz中斷標(biāo)志unsigned int ringonoff; /鬧鐘響時(shí)關(guān)閉標(biāo)志unsigned int clockset=11,31,51; /設(shè)置鬧鐘鈴聲時(shí)的光標(biāo)unsigned int counter=0; /設(shè)置顯示sun

38、plus計(jì)數(shù)器unsigned int mapcounter1=0;unsigned int mapcounter2=0; int main(void)(keyinitial(); /鍵盤(pán)初始化lcd501_init(0); /液晶顯示初始化lcd501_circle(64,32,15,1);lcd501_clrscreen(0);lcd501_fontset(0);*p_int_ctrl_new = *p_int_ctrl_new | 0x0004; /置2hz中斷標(biāo)志_asm(int irq); /開(kāi)放2hz中斷 while(1) int i=0; /定義一個(gè)循環(huán)變量,用來(lái)對(duì)數(shù)組尋址 di

39、splay(); /用顯示日期時(shí)間界面 while(hour=nhour & min=nmin & onoff=0) /當(dāng)鬧鐘開(kāi)時(shí),判斷鬧鐘時(shí)間是否到了 keyscan(); /當(dāng)鬧鐘響時(shí)如果有任何鍵按下,則關(guān)閉鬧鐘 if(keyvalue!=0) onoff=1; else if(ringflag=0) playrespond(ring1); /播放樂(lè)曲1 else playrespond(ring2); /播放樂(lè)曲2 if(min=0 & sec=0) /正點(diǎn)報(bào)時(shí)功能 speaktime(); keyscan(); /鍵盤(pán)掃描 *p_watchdog_clear=0x0001; if(ke

40、yvalue=0x0001) /如果key1鍵按下 keyflag1=1; /置位鍵按下標(biāo)志 lcd501_clrscreen(0); /調(diào)用清屏函數(shù) while(keyflag1=1) nextdisplay(); /顯示調(diào)整界面 lcd501_bitmap(15,mousei,(unsigned int*)encoding_mouse); /顯示鼠標(biāo)位置 keyscan(); *p_watchdog_clear=0x0001; switch(keyvalue) case 0x0001: /如果是key1按下則進(jìn)入相應(yīng)的調(diào)整 switch(i) /判斷此時(shí)的鼠標(biāo)指向 case 0: setd

41、ay(); break; /指向的時(shí)間日期調(diào)整 case 1: set_ring(); /設(shè)置鬧鐘的鈴聲和時(shí)間 break; case 2: setsecond(); /設(shè)置秒表 break; case 3: /指向的返回,則執(zhí)行返回程序 lcd501_clrscreen(0);keyflag1=0; break; break; case 0x0002: /如果是key2則箭頭下翻 lcd501_bitmap(15,mousei,(unsigned int*)encoding_empty); if(i=3) i=0; else i=+i; /修改箭頭的坐標(biāo) lcd501_bitmap(15,m

42、ousei,(unsigned int*)encoding_mouse); break; case 0x0004: /如果是key3則箭頭上翻 lcd501_bitmap(15,mousei,(unsigned int*)encoding_empty); if(i=0) i=3; else i=-i; /修改箭頭的坐標(biāo) lcd501_bitmap(15,mousei,(unsigned int*)encoding_mouse); break; else if(keyvalue=0x0002) /如果key2按下報(bào)時(shí)間 speaktime(); /調(diào)用時(shí)間撥報(bào)函數(shù) else if(keyvalu

43、e=0x0004) /如果key3按下報(bào)日期 speakday() ; /調(diào)用日期撥報(bào)函數(shù) else if(keyvalue=0x0006) /如果key2 key3同時(shí)按下則切換鬧鐘的開(kāi)關(guān) switch(onoff) case 0: onoff=1; break; /切換鬧鐘的開(kāi)關(guān) case 1: onoff=0; break; else *p_watchdog_clear=0x0001; /清看門(mén)狗3.3.4 調(diào)試結(jié)果與問(wèn)題解決根據(jù)圖3.3連接硬件,并連接好下載線,打開(kāi)電池盒電源,啟動(dòng)unsp ide,新建項(xiàng)目文件,正確輸入程序,然后編譯連接,正確編譯會(huì)出現(xiàn)下圖所示結(jié)果,否則編譯失敗,證明

44、程序輸入有錯(cuò)誤:編譯連接無(wú)誤后就可以下載程序進(jìn)行在線操作或離線操作了。在編譯以及下載過(guò)程中可能會(huì)出現(xiàn)如下問(wèn)題,經(jīng)過(guò)實(shí)際操作總結(jié),可通過(guò)如下方法來(lái)解決:q: spce061a與splc501a接線正確,但下載程序后lcd屏幕沒(méi)有現(xiàn)象?a:復(fù)位spce061a和splc501a,然后再下載程序并運(yùn)行,則能正常顯示;或者j5跳線沒(méi)有連接正確,應(yīng)把vio和3v短接起來(lái)。q:硬件連接正確,但不能編譯或下載?a:該開(kāi)發(fā)板的下載線采用的是25針打印機(jī)端口,方便與pc機(jī)連接,因?yàn)槭遣⑿袀鬏敂?shù)據(jù),所以打印機(jī)端口應(yīng)設(shè)置為spp。在使用61板或ide應(yīng)注意如下問(wèn)題:1.硬件連接時(shí),正負(fù)極性一定要對(duì)應(yīng),不能接反,板子

45、上的正負(fù)極都有明確標(biāo)注;2.在出現(xiàn)異?,F(xiàn)象時(shí)應(yīng)首先考慮電池的問(wèn)題,更換優(yōu)質(zhì)電池有時(shí)問(wèn)題會(huì)迎刃而解;3. 下載程序時(shí)ide應(yīng)處于在線仿真狀態(tài),選擇“use ice”。3.3.5 效果演示下載程序代碼到61板上,下載成功后會(huì)有幾秒鐘的開(kāi)機(jī)畫(huà)面,隨后會(huì)進(jìn)入時(shí)間日期顯示界面,此時(shí)按key1鍵會(huì)進(jìn)入功能選擇菜單,按key2鍵播放當(dāng)前的時(shí)間,按key3鍵播放當(dāng)前的日期,key2和key3同時(shí)按下,切換鬧鐘的開(kāi)與關(guān),當(dāng)鬧鐘響時(shí),按下三個(gè)鍵中的任何一個(gè)都可以關(guān)閉鬧鐘。 1.進(jìn)入功能選擇菜單界面,此時(shí)key1為確定鍵,key2為下翻鍵,key3 為上翻鍵;2.進(jìn)入時(shí)間日期調(diào)整界面,此時(shí)key1為確定鍵,key2

46、為加一鍵,key3 為減一鍵,屏幕中閃爍的部分表示當(dāng)前正在調(diào)整的選項(xiàng),當(dāng)設(shè)置完成后,按key1會(huì)自動(dòng)退出設(shè)置界面;3.進(jìn)入鬧鐘設(shè)置界面,此時(shí)key1為確定鍵,key2為下翻鍵,key3為上翻鍵;4.進(jìn)入鬧鐘時(shí)間設(shè)置界面,此時(shí)key1為確定鍵,key2為加一鍵,key3為減一鍵,屏幕中閃爍的部分表示當(dāng)前正在調(diào)整的選項(xiàng),當(dāng)設(shè)置完成后,按key1會(huì)自動(dòng)退出設(shè)置界面;5.進(jìn)入鬧鐘鈴聲設(shè)置界面,此時(shí)key1為確定鍵,key2為選擇鍵,key3為播放當(dāng)前選擇的鈴聲鍵;6. 進(jìn)入秒表功能界面,此時(shí)key1為退出鍵,key2為開(kāi)始/暫停鍵,key3為清零鍵,只有當(dāng)秒表停止運(yùn)行時(shí)key3才有效3.3.6 數(shù)字電

47、子鐘與傳統(tǒng)電子鐘的比較數(shù)字電子鐘是一種利用數(shù)字電路來(lái)顯示秒、分、時(shí)的計(jì)時(shí)裝置,與傳統(tǒng)的機(jī)械鐘相比,它具有走時(shí)準(zhǔn)確、顯示直觀、無(wú)機(jī)械傳動(dòng)裝置等優(yōu)點(diǎn),因而得到廣泛應(yīng)用。隨著人們生活環(huán)境的不斷改善和美化,在許多場(chǎng)合可以看到數(shù)字電子鐘。在城市的主要營(yíng)業(yè)場(chǎng)所、車(chē)站、碼頭等公共場(chǎng)所使用lcd數(shù)字電子鐘已經(jīng)成為一種時(shí)尚。但目前市場(chǎng)上各式各樣的lcd數(shù)字電子鐘大多數(shù)用全硬件電路實(shí)現(xiàn),電路結(jié)構(gòu)復(fù)雜,功率損耗大等缺點(diǎn),因此有必要對(duì)數(shù)字電子鐘進(jìn)行改進(jìn)。數(shù)字電子鐘的設(shè)計(jì)方法有多種,例如,可用中小規(guī)模集成電路組成電子鐘,也可以利用專(zhuān)用的電子鐘芯片配以顯示電路及其所需要的外圍電路組成電子鐘,還可以利用單片機(jī)來(lái)實(shí)現(xiàn)電子鐘等等。這些方法都各有特點(diǎn),其中,利用單片機(jī)實(shí)現(xiàn)的電子鐘具有編程靈活,便于電子鐘功能的擴(kuò)充(可用該電子鐘發(fā)出各種控制信號(hào)),精確度高等特點(diǎn)。結(jié)束語(yǔ)由于單片機(jī)技術(shù)已經(jīng)廣泛用于電氣工程、電子工程、自動(dòng)化工程、通信工程等諸多工程領(lǐng)域,其范圍遍及工業(yè)、交通、電力、軍事、航空航天、航海、建筑乃至家庭等幾乎所有的方面??梢哉f(shuō)凡是有運(yùn)動(dòng)并對(duì)運(yùn)動(dòng)進(jìn)行控制的地方都有單片機(jī)的身影。因?yàn)閱纹瑱C(jī)技術(shù)的地位如此重要,所以它已經(jīng)成為電氣信息類(lèi)專(zhuān)業(yè)的一門(mén)重要的專(zhuān)業(yè)基礎(chǔ)課程。能夠致力于單片機(jī)技術(shù)的研究和開(kāi)發(fā)是一種歷史的機(jī)遇,也是一個(gè)幸運(yùn)。經(jīng)過(guò)幾周的奮戰(zhàn)我的畢業(yè)設(shè)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論