基于STC89C52定時(shí)器設(shè)計(jì)_第1頁(yè)
基于STC89C52定時(shí)器設(shè)計(jì)_第2頁(yè)
基于STC89C52定時(shí)器設(shè)計(jì)_第3頁(yè)
基于STC89C52定時(shí)器設(shè)計(jì)_第4頁(yè)
基于STC89C52定時(shí)器設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩11頁(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、沈陽(yáng)理工大學(xué)信息科學(xué)與工程學(xué)院-創(chuàng)新實(shí)踐報(bào)告摘要近年來(lái)隨著計(jì)算機(jī)在社會(huì)領(lǐng)域的滲透,單片機(jī)的應(yīng)用正在不斷地走向深入,同時(shí)帶 動(dòng)傳統(tǒng)控制檢測(cè)日新月異更新。在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往 往是作為一個(gè)核心部件來(lái)使用,僅單片機(jī)方面的知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu), 以及針對(duì)具體應(yīng)用對(duì)象特點(diǎn)的軟件結(jié)合,以作完善。本次課程設(shè)計(jì)主要是使用 STC89C52單片機(jī)來(lái)實(shí)現(xiàn)定時(shí)器計(jì)時(shí),開(kāi)發(fā)板主要由發(fā)光 二極管、數(shù)碼管顯示器、矩陣鍵盤(pán)、繼電器、串口max232以及溫度傳感等模塊組成,在掌握原理的基礎(chǔ)上完成焊接任務(wù),能夠做到正確認(rèn)識(shí)元器件,并做到基本焊接技巧, 保證了不出現(xiàn)斷路、短路、極性元件焊

2、反等情況。利用Keil C軟件進(jìn)行編程與調(diào)試,通過(guò)單片機(jī)的定時(shí)中斷來(lái)實(shí)現(xiàn)計(jì)時(shí)并在開(kāi)發(fā)板的二位數(shù)碼管上顯示時(shí)間。關(guān)鍵詞:STC89C52單片機(jī);數(shù)碼管顯示器;Keil C ;計(jì)時(shí)器2目錄1設(shè)計(jì)題目12設(shè)計(jì)目的 13設(shè)計(jì)要求 14軟硬件介紹14.1軟件簡(jiǎn)介14.2 STC89C52硬件介紹 24.3 LED數(shù)碼管顯示器概述 25電路原理圖 36電路板的制作安裝 57程序設(shè)計(jì) 67.1程序流圖 67.2程序代碼 78軟硬件調(diào)試 129設(shè)計(jì)報(bào)告總結(jié) 12參考文獻(xiàn) 13沈陽(yáng)理工大學(xué)信息科學(xué)與工程學(xué)院-創(chuàng)新實(shí)踐報(bào)告1設(shè)計(jì)題目基于STC89C52時(shí)鐘設(shè)計(jì)。2設(shè)計(jì)目的1、鞏固和加深單片機(jī)原理課程知識(shí)的理解和運(yùn)

3、用。2 、培養(yǎng)學(xué)生綜合分析問(wèn)題、發(fā)現(xiàn)問(wèn)題和解決問(wèn)題的能力。3設(shè)計(jì)要求使用STC89C52定時(shí)器完成定時(shí),設(shè)計(jì)出時(shí)鐘,并將時(shí)間在數(shù)碼管上顯示,秒閃爍 使用小數(shù)點(diǎn)實(shí)現(xiàn),保留分。1. 能正確認(rèn)識(shí)元器件;2. 能讀懂電路原理圖;3. 能正確掌握PCB圖和原理圖的關(guān)系;4. 掌握基本焊接技巧,保證不能出現(xiàn)斷路、短路、極性元件焊反等情況,以便保證 下一步調(diào)試程序的正常進(jìn)行;5學(xué)會(huì)利用Keil軟件進(jìn)行程序的編程與設(shè)計(jì),以實(shí)現(xiàn)相應(yīng)的功能。4軟硬件介紹4.1軟件簡(jiǎn)介隨著單機(jī)片的開(kāi)發(fā)軟件也在不斷發(fā)展,Keil軟件時(shí)目前最流行開(kāi)發(fā) MCS-51系列單 機(jī)片軟件,這從近年來(lái)各仿真機(jī)廠商紛紛宣布全面支持 Keil即可看

4、出,Keil提供了包括 C編譯器,宏匯編,連接器,庫(kù)管理和一個(gè)功能強(qiáng)大的方針調(diào)試器等在內(nèi)的完整開(kāi)發(fā)方 案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境(uUision)將這些部分組合在一起,運(yùn)行Keil軟件需要Pentium 或以上的CPU,16MB或更多RAM.20M 以上空閑的硬盤(pán)空間,WIN98,WIN2000.WINXP 等操作系統(tǒng)。Keil C51單片機(jī)軟件開(kāi)發(fā)系統(tǒng)中法的整體結(jié)構(gòu)中的 uVision與Ishell分別是用于在 C51 for Windows和for Dos的集成開(kāi)發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、 仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后

5、分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成 庫(kù)文件,也可以與庫(kù)文件一起經(jīng) L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由 OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào) 試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫(xiě)入程序存貯器如EPROM中。4.2 STC89C52硬件介紹單片機(jī)自1976年由In tel公司推出MCS-48開(kāi)始,迄今已有二十多年。由于單片機(jī) 集成度高、功能強(qiáng)、可靠性高、體積小、功耗低、使用方便、價(jià)格低廉等一系列優(yōu)點(diǎn), 目前已經(jīng)滲入到人們工作和生活的方方面面,“幾乎無(wú)

6、處不在,無(wú)所不為”。單片機(jī)的 應(yīng)用領(lǐng)域已經(jīng)從面相工業(yè)控制、通訊、交通、智能儀表等迅速發(fā)展到家用消費(fèi)產(chǎn)品、辦 公自動(dòng)化、汽車(chē)電子、PC機(jī)外圍以及網(wǎng)絡(luò)通訊等廣大領(lǐng)域。單片機(jī)系列有51和52兩個(gè)系列。MCS-51系列有8053、8051、8751共3種機(jī)型, 它們的指令系統(tǒng)和引腳完全相同,而差別在于片內(nèi)有無(wú)ROM或EPROM。8031內(nèi)部無(wú)ROM,8051 內(nèi)部有 4KB ROM,8751 內(nèi)部有 4KB EPROM。MCS-52 系列有 8032、8052、 8752共三種機(jī)型,52系列的指令系統(tǒng)及引腳和51系列相同,但52系列有3個(gè)16位定 時(shí)器/計(jì)數(shù)器、6個(gè)中斷源,片內(nèi)有256字節(jié)的RAM。8

7、052內(nèi)部有8K ROM,8752內(nèi)部 有 8KB EPROM。4.3 LED數(shù)碼管顯示器概述LED數(shù)碼顯示器是一種有LED發(fā)光二極管組合顯示字符的顯示器件。它使用了 8 個(gè)LED發(fā)光二極管,其中7個(gè)用于顯示字符,一個(gè)用于顯示小數(shù)點(diǎn),故通常稱之為 7 段發(fā)光二極管數(shù)碼器。其內(nèi)部結(jié)構(gòu)如下圖4.1所示,LED數(shù)碼顯示器有兩種連接方法如 下:14t d c<«) MMIBc«n* mnm圖4.1 LED數(shù)碼管共陽(yáng)極接法:把發(fā)光二極管的陽(yáng)極連在一起構(gòu)成公共陽(yáng)極,使用時(shí)公共陽(yáng)極接+5V,每個(gè)發(fā)光二極管的陰極通過(guò)電阻與輸入端相連。共陰極接法:把發(fā)光二極管的陰極連在一起構(gòu)成公共陰極

8、,使用時(shí)公共陰極接地, 每個(gè)發(fā)光二極管的陽(yáng)極通過(guò)電阻與輸入端相連。5電路原理圖根據(jù)設(shè)計(jì)要求,確定總體電路原理圖如圖4.1 :圖4.1總體電路原理圖IrLrLTwrE-Bs-r-L實(shí)現(xiàn)秒表器控制與顯示功能模塊如圖4.2:7-ktrTJO1QXIIALL*圖4.2控制與顯示模塊STC89C52單片機(jī)的P1 口與四片數(shù)碼管的七段發(fā)光二極管及小數(shù)點(diǎn)位 a b、c、d、 e、f、g、dp引腳相連,在P1 口的相應(yīng)位置低電平時(shí),七段發(fā)光二極管進(jìn)行相應(yīng)的顯示; 而P2 口是用于控制四片數(shù)碼管中每一片的顯示, 在P2 口的相應(yīng)位置低電平時(shí),與之相 連的數(shù)碼管片將用于顯示。繼電器工作模塊如圖4.3:7"

9、;P 10l:'KXI1T.DIJLTI f'r 11VCC 對(duì)器_ D3京叫;hRI11圖5.3繼電器工作模塊STC89C52單片機(jī)的P3 口(RD)通過(guò)PNP三極管與繼電器相連,P3 口置低電平時(shí), 繼電器工作,LED(D13)被點(diǎn)亮。6電路板的制作安裝根據(jù)電路總原理圖和對(duì)單片機(jī)、各種原理電路的認(rèn)識(shí),以及購(gòu)買(mǎi)的元器件清單,設(shè)備和工具清單,開(kāi)始對(duì)電路板進(jìn)行制作安裝。安裝好的電路板如圖6.1所示:圖6.1電路板演示7程序設(shè)計(jì)7.1程序流圖根據(jù)題目的要求,按照程序的編寫(xiě)原則,可以畫(huà)出如下程序框圖7.1 :開(kāi)始重置定時(shí)初值中斷 20次秒加 1NO秒-60秒=0,分加 1NO 分=6

10、0YES分=0,時(shí)加 1結(jié)束圖7.1程序流圖7.2程序代碼程序代碼如下:#in elude <reg52.h>#in elude <absacc.h>#define unit unsigned int#defi ne uchar un sig ned charuchar data timer_count,cm,cf,cs,f;/*定時(shí)器計(jì)數(shù)變量 */uchar code duma=0x28,0xF9,0x4C,0x58,0x99,0x1A,0x0A,0xF8,0x08,0x18; 共陰的數(shù)碼管段選將值送給P0 口uchar code wema=0xEF,0xDF,0xB

11、F,0x7F; P1 口的片選位un sig ned char led_buf=0,0,0,0;delay(uchar time)/time=1 時(shí)延時(shí) 10msuchar i,j,k, q;for(q=time;q>0;q-);/10*time msfor(i=10;i>0;i-) /10msfor(j=2;j>0;j-);/1msfor(k=60;k>0;k-);/154*3.255=500usvoid display(void)un sig ned char i=0;led_buf0=cm%10;led_buf1=cm/10;led_buf2=cf%10;led_

12、buf3=cf/10;for(i=0;i<4;i+)switch(i)case 0: P2=0x7F;break;case 1: P2=0xBF;break;case 2: P2=0xDF;break;case 3: P2=0xEF;P0|=0x08;break;default:P2=0xEF;break;PO=dumaled_bufi;if(i=2)if(f=0)P0&=0xf7;elseP0|=0x08;delay(1);void ma in (void)timer_count=O; 初始化端口cm=0;cf=O;cs=0;/* T0方式1計(jì)時(shí)*/定時(shí)器T0的高四位賦值EA=

13、1;ET0=1;TMOD=0x01;TH0=-46080/256;TL0=-46080%256;TR0=1;/*開(kāi)中斷,啟動(dòng)定時(shí)器*/f=0;for(;)display。;/*定時(shí)計(jì)數(shù)器0的中斷服務(wù)子程序*/ void timer0(void) in terrupt 1 using 1 TH0=-46080/256;TL0=-46080%256;timer_co un t=timer_co un t+1;if(timer_cou nt=10)if(f=0)f=1;elsef=0;if (timer_coun t=20)cm=cm+1;if(f=0)f=1;elsef=0;timer_co un

14、 t=0;if(cm=60) cf=cf+1;cm=0;if(cf=60)cs=cs+1;cf=0; if(cs=24)cs=0; 8軟硬件調(diào)試軟件調(diào)試的任務(wù)是利用開(kāi)發(fā)工具進(jìn)行在線仿真調(diào)試,發(fā)現(xiàn)和糾正程序錯(cuò)誤,同時(shí)也 能發(fā)現(xiàn)硬件故障。在Keil C軟件中編寫(xiě)程序,然后進(jìn)行程序調(diào)試、仿真,檢查數(shù)碼管是 否按要求進(jìn)行變化,經(jīng)過(guò)仿真,程序符合題目要求。硬件調(diào)試是先用萬(wàn)用表檢查印制電路的焊接情況,檢查是否有虛焊,是否有短路。在檢查無(wú)誤后通電檢查 LED數(shù)碼管顯示。9設(shè)計(jì)報(bào)告總結(jié)經(jīng)過(guò)了幾周的實(shí)踐與探索,更進(jìn)一步的對(duì)所學(xué)的知識(shí)有了深刻的理解,而且也學(xué)到 了新的知識(shí)并將理論知識(shí)與實(shí)踐經(jīng)驗(yàn)相結(jié)合,深化用理論去指導(dǎo)實(shí)踐。這次實(shí)踐鍛煉了 我的動(dòng)手實(shí)踐能力,加強(qiáng)了我分析和解決問(wèn)題的能力,培養(yǎng)了我的團(tuán)隊(duì)合作意識(shí)。在我 們組里,每個(gè)人都很認(rèn)真的完成焊接工作,最終我們團(tuán)結(jié)一致,共同努力,完成了滿意 的結(jié)果。這是大學(xué)里的最后一次的實(shí)驗(yàn),我們倍加珍惜,對(duì)我們進(jìn)入社會(huì)做了初步的鍛 煉,受益匪淺。在今后社會(huì)的發(fā)展和學(xué)習(xí)實(shí)踐過(guò)程中,一定要不懈努力,不能遇到問(wèn)題 就想到要退縮,一定要不厭其煩的發(fā)現(xiàn)問(wèn)題所在,然后一一進(jìn)行解決,只有這樣,才能 成功的做成想做的事,才能在今

溫馨提示

  • 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)論