單片機(jī)課程設(shè)計(jì)數(shù)字電子鐘_第1頁(yè)
單片機(jī)課程設(shè)計(jì)數(shù)字電子鐘_第2頁(yè)
單片機(jī)課程設(shè)計(jì)數(shù)字電子鐘_第3頁(yè)
單片機(jī)課程設(shè)計(jì)數(shù)字電子鐘_第4頁(yè)
單片機(jī)課程設(shè)計(jì)數(shù)字電子鐘_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、微機(jī)課程設(shè)計(jì)題名:數(shù)字電子鐘組員:_ _ _ 班級(jí):_指導(dǎo)教師:周毅制作日期:2008年7月1、 課程設(shè)計(jì)目的與任務(wù)1、 目的:(1) 培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)理論知識(shí)分析和解決實(shí)際問(wèn)題的能力。(2) 鍛煉學(xué)生的獨(dú)立工作能力,也是對(duì)前期理論與實(shí)踐教學(xué)效果的檢驗(yàn)。(3) 通過(guò)課程設(shè)計(jì)使學(xué)生深入理解單片機(jī)的基本原理,硬件結(jié)構(gòu)和工作原理。掌握程序的編制方法和程序調(diào)試的方法,掌握常用接口的設(shè)計(jì)和使用。掌握一般接口的擴(kuò)展方法及接口的調(diào)試過(guò)程。為學(xué)生將來(lái)在電子信息工程、測(cè)試計(jì)量技術(shù)及儀器、通信工程、電子科學(xué)與技術(shù)及其他領(lǐng)域應(yīng)用單片機(jī)技術(shù)打下良好基礎(chǔ)及應(yīng)用實(shí)踐能力。2、 任務(wù):(1) 設(shè)計(jì)以單片機(jī)為控制核心的測(cè)

2、量系統(tǒng)或控制系統(tǒng),完成對(duì)指定目標(biāo)或?qū)?duì)象的測(cè)量及控制。(2) 設(shè)計(jì)單片機(jī)與測(cè)量及控制對(duì)戲那個(gè)的接口并進(jìn)行硬件調(diào)試。(3) 針對(duì)要求測(cè)量或控制的對(duì)象完成程序的編制。(4) 硬件軟件聯(lián)調(diào),完成指導(dǎo)老師布置得各個(gè)具體題目所要求完成的功能。2、 課程設(shè)計(jì)的基本要求本課程設(shè)計(jì)重視培養(yǎng)并提高學(xué)生創(chuàng)新設(shè)計(jì)能力、理論與實(shí)際相結(jié)合的綜合素質(zhì)、單片機(jī)系統(tǒng)硬件設(shè)計(jì)能力,軟件編程技巧,軟硬件聯(lián)合調(diào)試技巧及技能等實(shí)踐能力。3、 數(shù)字電子鐘設(shè)計(jì)說(shuō)明書(shū)1、數(shù)字電子鐘介紹 數(shù)字電子鐘與傳統(tǒng)的機(jī)械鐘相比,它具有走時(shí)準(zhǔn)確、顯示直觀、無(wú)機(jī)械傳動(dòng)裝置等優(yōu)點(diǎn),因而廣泛應(yīng)用于個(gè)人家庭以及車(chē)站、劇場(chǎng)、辦公室等公共場(chǎng)所,給人們的生活、學(xué)習(xí)、

3、工作、娛樂(lè)帶來(lái)極大的方便。隨著人們生活環(huán)境的不斷改善和美化,在許多場(chǎng)合可以看到數(shù)字電子鐘。它還用于計(jì)時(shí)、自動(dòng)報(bào)時(shí)及自動(dòng)控制等各個(gè)領(lǐng)域。 led數(shù)字電子鐘除了在城市的主要營(yíng)業(yè)場(chǎng)所、車(chē)站、碼頭等公共場(chǎng)所使用,還可以改裝在摩托車(chē)和汽車(chē)上,led顯示,帶藍(lán)色背光,白天在太陽(yáng)光下也能非常清楚的看到顯示時(shí)間,關(guān)鑰匙可以關(guān)閉藍(lán)色背光,時(shí)間還能顯示也不會(huì)清零,因led的顯示耗電量很省的,所以一直工作也不必?fù)?dān)心耗電問(wèn)題。在騎摩托車(chē)時(shí),為了看時(shí)間,先要停下車(chē)子,取出手機(jī),才能看時(shí)間,是否有點(diǎn)麻煩,現(xiàn)在車(chē)上改裝了一個(gè)藍(lán)色背光的液晶電子鐘后,不管白天黑夜色,隨時(shí)可以看時(shí)間,非常方便。數(shù)字電子鐘是采用數(shù)字電路實(shí)現(xiàn)對(duì)“時(shí)

4、”、“分”、“秒”數(shù)字顯示的計(jì)時(shí)裝置。數(shù)字鐘的精度、穩(wěn)定度遠(yuǎn)遠(yuǎn)超過(guò)老式機(jī)械鐘。在這次設(shè)計(jì)中,我們采用7位led數(shù)碼管顯示時(shí)、分、秒,以24小時(shí)計(jì)時(shí)方式,根據(jù)數(shù)碼管動(dòng)態(tài)顯示原理來(lái)進(jìn)行顯示,用晶振產(chǎn)生振蕩脈沖,定時(shí)器計(jì)數(shù)。在此次設(shè)計(jì)中,電路具有顯示時(shí)間的其本功能,還可以實(shí)現(xiàn)對(duì)時(shí)間的調(diào)整?,F(xiàn)代的數(shù)字電子鐘是基于單片機(jī)的一種計(jì)時(shí)工具,采用延時(shí)程序產(chǎn)生一定的時(shí)間中斷,用于一秒的定義,通過(guò)計(jì)數(shù)方式進(jìn)行六十秒分鐘進(jìn)一,滿(mǎn)六十分小時(shí)進(jìn)一,滿(mǎn)二十四小時(shí)小時(shí)清零。從而達(dá)到計(jì)時(shí)的功能,是人民日常生活不可缺少的工具?,F(xiàn)在高精度的計(jì)時(shí)工具大多數(shù)都使用了石英晶體振蕩器,由于電子鐘、石英鐘、石英表都采用了石英技術(shù),因此走時(shí)

5、精度高,穩(wěn)定性好,使用方便,不需要經(jīng)常調(diào)試,數(shù)字式電子鐘用集成電路計(jì)時(shí)時(shí),譯碼代替機(jī)械式傳動(dòng),用led顯示器代替指針顯示進(jìn)而顯示時(shí)間,減小了計(jì)時(shí)誤差,這種表具有時(shí),分,秒的功能。2、 單片機(jī)介紹單片機(jī)是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器cpu隨機(jī)存儲(chǔ)器ram、只讀存儲(chǔ)器rom、多種i/o口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能(可能還包括顯示驅(qū)動(dòng)電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、a/d轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。單片機(jī)又稱(chēng)單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)

6、算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了i/o設(shè)備。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開(kāi)發(fā)提供了便利條件。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最佳選擇。 單片機(jī)內(nèi)部也用和電腦功能類(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等等的家電里面都可以看到它的身影它主要是作為控制部分的核心部件。 它是一種在線式實(shí)時(shí)控制計(jì)算機(jī),在線式就是現(xiàn)場(chǎng)控制,需要的

7、是有較強(qiáng)的抗干擾能力,較低的成本,這也是和離線式計(jì)算機(jī)的(比如家用pc)的主要區(qū)別。 目前,單片機(jī)正朝著高性能和多品種方向發(fā)展趨勢(shì)將是進(jìn)一步向著cmos化、低功耗、小體積、大容量、高性能、低價(jià)格和外圍電路內(nèi)裝化等幾個(gè)方面發(fā)展。單片機(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ù)字鐘,數(shù)字鐘是一種用數(shù)字電路技術(shù)實(shí)現(xiàn)時(shí)、分、秒計(jì)時(shí)的裝置,與機(jī)械式時(shí)鐘相比具有更高的準(zhǔn)確性和直觀性,且無(wú)機(jī)械裝置,具有

8、更更長(zhǎng)的使用壽命,因此得到了廣泛的使用。3、 單片機(jī)設(shè)計(jì)方案 利用單片機(jī)的智能性,可方便地實(shí)現(xiàn)具有智能的電子鐘設(shè)計(jì)。單片機(jī)均具有時(shí)鐘震蕩系統(tǒng),利用系統(tǒng)時(shí)鐘借助微處理器的定時(shí)器可實(shí)現(xiàn)電子鐘功能。然而系統(tǒng)時(shí)鐘誤差較大,電子鐘的積累誤差也可能較大,所以可以通過(guò)誤差修正軟件加以修正。目前,我國(guó)生產(chǎn)很多型號(hào)的單片機(jī),在此,我們采用型號(hào)為stc89c52的單片機(jī)。因?yàn)閟tc89c52是一個(gè)低電壓,高性能cmos 8位單片機(jī),片內(nèi)含4k bytes的可反復(fù)擦寫(xiě)的flash只讀程序存儲(chǔ)器和128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(ram),器件采用atmel公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)mcs-5

9、2指令系統(tǒng),片內(nèi)置通用8位中央處理器和flash存儲(chǔ)單元,內(nèi)置功能強(qiáng)大的微型計(jì)算機(jī)的at89c52提供了高性?xún)r(jià)比的解決方案。 8052單片機(jī)包含中央處理器、程序存儲(chǔ)器(rom)、數(shù)據(jù)存儲(chǔ)器(ram)、定時(shí)/計(jì)數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線。圖3-1 單片機(jī)8052的內(nèi)部結(jié)構(gòu)mcs-52的引腳說(shuō)明: mcs-52系列單片機(jī)中的8031、8051及8751均采用40pin封裝的雙列直接dip結(jié)構(gòu),右圖是它們的引腳配置,40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)i/o口,中斷口線與p3口線復(fù)用?,F(xiàn)在我們對(duì)這些引腳

10、的功能加以說(shuō)明: 圖3-2 單片機(jī)的引腳圖pin9:reset復(fù)位信號(hào),當(dāng)8052通電,時(shí)鐘電路開(kāi)始工作,在reset引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。初始化后,程序計(jì)數(shù)器pc指向0000h,p0-p3輸出口全部為高電平,堆棧指針寫(xiě)入07h,其它專(zhuān)用寄存器被清“0”。reset由高電平下降為低電平后,系統(tǒng)即從0000h地址開(kāi)始執(zhí)行程序。然而,初始復(fù)位不改變r(jià)am(包括工作寄存器r0-r7)的狀態(tài),8052的初始態(tài)。pin30:al當(dāng)訪問(wèn)外部程序器時(shí),ale(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪問(wèn)內(nèi)部程序存儲(chǔ)器時(shí),ale端將有一個(gè)1/6時(shí)鐘頻率的正脈沖信號(hào),這個(gè)信號(hào)可

11、以用于識(shí)別單片機(jī)是否工作,也可以當(dāng)作一個(gè)時(shí)鐘向外輸出。更有一個(gè)特點(diǎn),當(dāng)訪問(wèn)外部程序存儲(chǔ)器,ale會(huì)跳過(guò)一個(gè)脈沖。 pin29:pesn當(dāng)訪問(wèn)外部程序存儲(chǔ)器時(shí),此腳輸出負(fù)脈沖選通信號(hào),pc的16位地址數(shù)據(jù)將出現(xiàn)在p0和p2口上,外部程序存儲(chǔ)器則把指令數(shù)據(jù)放到p0口上,由cpu讀入并執(zhí)行。 pin31:ea/vpp程序存儲(chǔ)器的內(nèi)外部選通線,8051和8751單片機(jī),內(nèi)置有4kb的程序存儲(chǔ)器,當(dāng)ea為高電平并且程序地址小于4kb時(shí),讀取內(nèi)部程序存儲(chǔ)器指令數(shù)據(jù),而超過(guò)4kb地址則讀取外部指令數(shù)據(jù)。如ea為低電平,則不管地址大小,一律讀取外部程序存儲(chǔ)器指令。顯然,對(duì)內(nèi)部無(wú)程序存儲(chǔ)器的8031,ea端必須

12、接地。四、基于單片機(jī)的數(shù)字電子鐘硬件設(shè)計(jì)1、最小系統(tǒng)設(shè)計(jì)圖4-1 單片機(jī)最小系統(tǒng)的結(jié)構(gòu)圖 單片機(jī)的最小系統(tǒng)是由電源、復(fù)位、晶振、/ea=1組成,下面介紹一下每一個(gè)組成部分。(1)電源引腳 vcc40電源端gnd20接地端工作電壓為5v,另有at89lv51工作電壓則是2.7-6v, 引腳功能一樣。 (2)外接晶體引腳xtal119xtal218at89單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器。引腳xtal1和xtal2分別是此放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外晶體諧振器一起構(gòu)成一個(gè)自激振蕩器。外接晶體諧振器以及電容c1和c2構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中。

13、對(duì)外接電容的值雖然沒(méi)有嚴(yán)格的要求,但電容的大小會(huì)影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。因此,此系統(tǒng)電路的晶體振蕩器的值為12mhz,電容應(yīng)盡可能的選擇陶瓷電容,電容值約為22f。在焊接刷電路板時(shí),晶體振蕩器和電容應(yīng)盡可能安裝得與單片機(jī)芯片靠近,以減少寄生電容,更好地保證震蕩器穩(wěn)定和可靠地工作。(3)復(fù)位rst9在振蕩器運(yùn)行時(shí),有兩個(gè)機(jī)器周期(24個(gè)振蕩周期)以上的高電平出現(xiàn)在此引腿時(shí),將使單片機(jī)復(fù)位,只要這個(gè)腳保持高電平,51芯片便循環(huán)復(fù)位。復(fù)位后p0p3口均置1引腳表現(xiàn)為高電平,程序計(jì)數(shù)器和特殊功能寄存器sfr全部清零。當(dāng)復(fù)位腳由高電平變?yōu)榈碗娖綍r(shí),芯片為rom的

14、00h處開(kāi)始運(yùn)行程序。復(fù)位是由外部的復(fù)位電路來(lái)實(shí)現(xiàn)的。片內(nèi)復(fù)位電路是復(fù)位引腳rst通過(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有所影響。(4)輸入輸出引腳p0端口p0.0-p0.7 p0為雙向i/o端口,要求外接上拉電阻。在訪問(wèn)外部程序和外部數(shù)據(jù)存儲(chǔ)器時(shí),p0口是分時(shí)轉(zhuǎn)換的地址(低8位)/數(shù)據(jù)總線,訪問(wèn)期間內(nèi)部的上拉電阻起作用。p1端口p1.0p1

15、.7 p1是一個(gè)帶有內(nèi)部上拉電阻的雙向i/0端口。p2端口p2.0p2.7 p2是一個(gè)帶有內(nèi)部上拉電阻的雙向i/0端口。在訪問(wèn)外部程序和16位外部數(shù)據(jù)存儲(chǔ)器時(shí),p2口送出高8位地址。而在訪問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí)其引腳上的內(nèi)容在此期間不會(huì)改變。p3端口p3.0p3.7 p3是一個(gè)帶有內(nèi)部上拉電阻的雙向i/0端口。p3端口還用于一些專(zhuān)門(mén)功能,見(jiàn)下表。p3引腳兼用功能p3.0串行通訊輸入(rxd)p3.1串行通訊輸出(txd)p3.2外部中斷0( int0)p3.3外部中斷1(int1)p3.4定時(shí)器0輸入(t0)p3.5定時(shí)器1輸入(t1)p3.6外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通wrp3.7外部數(shù)據(jù)存儲(chǔ)

16、器寫(xiě)選通rd表4-1p3端口引腳兼用功能表2、led顯示電路顯示器普遍地用于直觀地顯示數(shù)字系統(tǒng)的運(yùn)行狀態(tài)和工作數(shù)據(jù),較常用的發(fā)光二極管(led)由特殊的半導(dǎo)體材料砷化鎵、磷砷化鎵等制成,可以單獨(dú)使用,也可以組裝成分段式或點(diǎn)陣式led顯示器件(半導(dǎo)體顯示器)。分段式顯示器(led數(shù)碼管)由7條線段圍成8字型,每一段包含一個(gè)發(fā)光二極管。外加正向電壓時(shí)二極管導(dǎo)通,發(fā)出清晰的光。只要按規(guī)律控制各發(fā)光段亮、滅,就可以顯示各種字形或符號(hào)。led數(shù)碼管有共陽(yáng)、共陰之分。圖是共陽(yáng)式、共陰式led數(shù)碼管的原理圖和符號(hào).圖4-2 共陽(yáng)式、共陰式led數(shù)碼管的原理圖和數(shù)碼管的符號(hào)圖顯示電路顯示模塊需要實(shí)時(shí)顯示當(dāng)前的

17、時(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ù)碼管顯示橫線。led顯示器的顯示控制方式按驅(qū)動(dòng)方式可分成靜態(tài)顯示方式和動(dòng)態(tài)顯示方式兩種。對(duì)于多位led顯示器,通常都是采用動(dòng)態(tài)掃描的方法進(jìn)行顯示,其硬件連接方式如下圖所示。圖4-3 數(shù)碼管的硬件連接示意圖3、鍵盤(pán)控制電路該設(shè)計(jì)需要校對(duì)時(shí)間,所以用三個(gè)按鍵來(lái)實(shí)現(xiàn)。按khour來(lái)調(diào)節(jié)小時(shí)的時(shí)間,按 kmin來(lái)調(diào)節(jié)分針的時(shí)間,按 ksec來(lái)調(diào)節(jié)秒的時(shí)

18、間。下圖是按鍵硬件連接圖:圖4-4 按鍵控制電路的硬件連接圖五、基于單片機(jī)的數(shù)字電子鐘軟件設(shè)計(jì)1、系統(tǒng)軟件設(shè)計(jì)流程圖(1)這次的數(shù)字電子鐘設(shè)計(jì)用到很多子程序,它們的流程圖如下所示。 主程序是先開(kāi)始,然后啟動(dòng)定時(shí)器,定時(shí)器啟動(dòng)后在進(jìn)行按鍵檢測(cè),檢測(cè)完后,就可以顯示時(shí)間。開(kāi)始啟動(dòng)定時(shí)器按鍵檢測(cè)時(shí)間顯示圖5-1 主程序流程圖(2)按鍵處理是先檢測(cè)秒按鍵是否按下,秒按鍵如果按下,秒就加1;如果沒(méi)有按下,就檢測(cè)分按鍵是否按下,分按鍵如果按下,分就加1;如果沒(méi)有按下,就檢測(cè)時(shí)按鍵是否按下,時(shí)按鍵如果按下,時(shí)就加1;如果沒(méi)有按下,就把時(shí)間顯示出來(lái)。 nynyny時(shí)加1顯示時(shí)間結(jié)束開(kāi)始秒按鍵按下?秒加1分按鍵

19、按下?分加1時(shí)按鍵按下?圖5-2 按鍵處理流程圖(3)定時(shí)器中斷時(shí)是先檢測(cè)1秒是否到,1秒如果到,秒單元就加1;如果沒(méi)到,就檢測(cè)1分鐘是否到,1分鐘如果到,分單元就加1;如果沒(méi)到,就檢測(cè)1小時(shí)是否到,1小時(shí)如果到,時(shí)單元就加1,如果沒(méi)到,就顯示時(shí)間。n24小時(shí)到?分單元清零,時(shí)單元加1nnnyy時(shí)單元清零時(shí)間顯示中斷返回開(kāi)始一秒時(shí)間到?60秒時(shí)間到?60分鐘到?秒單元加1秒單元清零,分單元加1yy圖5-3 定時(shí)器中斷流程圖(4) 時(shí)間顯示是先秒個(gè)位計(jì)算顯示,然后是秒十位計(jì)算顯示,再是分個(gè)位計(jì)算顯示,再然后是分十位顯示,再就是時(shí)個(gè)位計(jì)算顯示,最后是時(shí)十位顯示。時(shí)十位計(jì)算顯示結(jié)束開(kāi)始秒個(gè)位計(jì)算顯示

20、秒十位計(jì)算顯示分個(gè)位計(jì)算顯示分十位計(jì)算顯示時(shí)個(gè)位計(jì)算顯示 圖5-4 時(shí)間顯示流程圖2、數(shù)字鐘的原理圖用protues軟件,根據(jù)要求畫(huà)出數(shù)字電子鐘的原理圖如下所示。 圖5-5 數(shù)字鐘的原理圖 工作原理 : 數(shù)字電子鐘是一個(gè)將“ 時(shí)”,“分”,“秒”顯示于人的視覺(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ù)器,每累

21、計(jì)60秒發(fā)出一個(gè)“分脈沖”信號(hào),該信號(hào)將作為“分單元”的時(shí)鐘脈沖?!胺謫卧币膊捎?0進(jìn)制計(jì)數(shù)器,每累計(jì)60分鐘,發(fā)出一個(gè)“時(shí)脈沖”信號(hào),該信號(hào)將被送到“時(shí)單元”?!皶r(shí)單元”采用24進(jìn)制計(jì)時(shí)器,可實(shí)現(xiàn)對(duì)一天24小時(shí)的累計(jì)。顯示電路將“時(shí)”、“分”、“秒”通過(guò)七段顯示器顯示出來(lái)。校時(shí)電路時(shí)用來(lái)對(duì)“時(shí)”、“分”、“秒”顯示數(shù)字進(jìn)行校對(duì)調(diào)整,按一下ksec,秒單元就加1 ,按一下kmin,分就加1,按一下khour,時(shí)就加1。3、主程序#include sbit ksec=p30; sbit kmin=p31; sbit khour=p32; unsigned char secshi=0,secge

22、=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()tmod=0x01; th0=(65536-50000)/256; tl0=(65536-50000)%256; ea=1;et0=1;tr0=1; whil

23、e(1) display(); keyscan(); void delay(unsigned int z) unsigned int x,y; for(x=z;x0;x-) for(y=110;y0;y-);4、時(shí)鐘設(shè)置子程序void time0() interrupt 1 num+; th0=(65536-50000)/256; tl0=(65536-50000)%256; 5、定時(shí)器中斷子程序void time0() interrupt 1 num+; th0=(65536-50000)/256; tl0=(65536-50000)%256; 中斷技術(shù)在單片系統(tǒng)中有著十分重要的作用,它不僅

24、可以提高單片機(jī)cpu的效率,也可以對(duì)突發(fā)事件處理。所謂中斷就是當(dāng)cpu正在執(zhí)行程序a時(shí),發(fā)生了另一個(gè)急需處理的事件b,這是cpu暫停當(dāng)前執(zhí)行的程序a,立即轉(zhuǎn)去執(zhí)行處理事件b的程序,處理完事件b后,再返回到程序a繼續(xù)執(zhí)行,這個(gè)過(guò)程被叫做中斷。關(guān)于中斷的概念有下列幾個(gè)名詞:(1)程序a稱(chēng)為主程序,(2)處理事件b的程序稱(chēng)為中斷服務(wù)程序,(3)主程序中轉(zhuǎn)向中斷服務(wù)程序的地方稱(chēng)為斷點(diǎn),(4)引起中斷的原因即事件b稱(chēng)為中斷源,(5)轉(zhuǎn)去執(zhí)行中斷服務(wù)程序稱(chēng)為中斷響應(yīng)。關(guān)于中斷的概念可以打個(gè)如下的比喻。領(lǐng)導(dǎo)(cpu)在自己的房間辦公(執(zhí)行主程序),下屬(外設(shè))有問(wèn)題打電話來(lái)請(qǐng)示(中斷源),領(lǐng)導(dǎo)停下正在進(jìn)行的

25、工作,通過(guò)電話給下屬做指示(執(zhí)行中斷服務(wù)程序),指示完后,領(lǐng)導(dǎo)掛斷電話,繼續(xù)做自己的工作(返回主程序繼續(xù)執(zhí)行)。中斷是一個(gè)過(guò)程,當(dāng)中央處理器cpu在處理某件事情時(shí),外部又發(fā)生了另一緊急事件,請(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)

26、求。當(dāng)cpu正在處理一個(gè)中斷源請(qǐng)求的時(shí)候,又發(fā)生了另一個(gè)優(yōu)先級(jí)比它高的中斷源請(qǐng)求,如果cpu能夠暫時(shí)中止對(duì)原來(lái)中斷處理程序的執(zhí)行,轉(zhuǎn)而去處理優(yōu)先級(jí)更高的中斷源請(qǐng)求,待處理完以后,再繼續(xù)執(zhí)行原來(lái)的低級(jí)中斷處理程序,這樣的過(guò)程稱(chēng)為中斷嵌套。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=m

27、in/10; hourge=hour%10; hourshi=hour/10; p2=0xfe; 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

28、(5);7、按鍵控制子程序void keyscan() if(ksec=0) delay(10); if(ksec=0) sec+; if(sec=60) sec=0; while(ksec=0) display(); if(kmin=0) delay(10); if(kmin=0) min+; if(min=60) min=0; while(kmin=0) display(); if(khour=0) delay(10); if(khour=0) hour+; if(hour=60) hour=0; while(khour=0) display(); 六、系統(tǒng)仿真1、protues軟件介紹p

29、roteus軟件是labcenter electronics公司的一款電路設(shè)計(jì)與仿真軟件,它包括isis、ares等軟件模塊,ares模塊主要用來(lái)完成pcb的設(shè)計(jì),而isis模塊用來(lái)完成電路原理圖的布圖與仿真。proteus的軟件仿真基于vsm技術(shù),它與其他軟件最大的不同也是最大的優(yōu)勢(shì)就在于它能仿真大量的單片機(jī)芯片,比如mcs-51系列、pic系列等等,以及單片機(jī)外圍電路,比如鍵盤(pán)、led、lcd等等。通過(guò)proteus軟件的使用我們能夠輕易地獲得一個(gè)功能齊全、實(shí)用方便的單片機(jī)實(shí)驗(yàn)室。2、電子鐘系統(tǒng)protues仿真用protues軟件,根據(jù)數(shù)字電子鐘的原理圖,畫(huà)出仿真圖,得到的圖如下所示。圖

30、6-1 數(shù)字鐘的protes仿真七、調(diào)試與功能說(shuō)明1、硬盤(pán)調(diào)試拿到電路板后,首先要檢查加工質(zhì)量,并確保沒(méi)有任何方面的錯(cuò)誤,如短路和斷路,尤其要避免電源短路;元器件在安裝前要逐一檢查,用萬(wàn)用表測(cè)其數(shù)值,看是否與所用相同;完成焊接后,應(yīng)先空載上電(芯片座上不插芯片),并檢查各引腳的電位是否正確。若一切正常,方可在斷電的情況下將芯片插入,再次檢查各引腳的電位及其邏輯關(guān)系。將萬(wàn)用表的探針?lè)诺絾纹瑱C(jī)接電源的引腳上檢測(cè)一下,看是否符合要求。2、系統(tǒng)性能測(cè)試與功能說(shuō)明走時(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í)間的目的。

溫馨提示

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

評(píng)論

0/150

提交評(píng)論