單片機(jī)秒表實(shí)驗(yàn)報(bào)告_第1頁(yè)
單片機(jī)秒表實(shí)驗(yàn)報(bào)告_第2頁(yè)
單片機(jī)秒表實(shí)驗(yàn)報(bào)告_第3頁(yè)
單片機(jī)秒表實(shí)驗(yàn)報(bào)告_第4頁(yè)
單片機(jī)秒表實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩9頁(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、精選優(yōu)質(zhì)文檔-傾情為你奉上安徽科技學(xué)院機(jī)電與車(chē)輛工程學(xué)院電子電路課程綜合實(shí)訓(xùn)驗(yàn)收材料題 目: 電子秒表 姓名(學(xué)號(hào)) 胡斌 李緒 王增龍 段鑫鵬 專(zhuān) 業(yè): 電氣工程及其自動(dòng)化 班 級(jí): 112班 指 導(dǎo) 教 師 : 葉愛(ài)芹 2013 年 12 月 29日目錄第一章 單片機(jī)課程設(shè)計(jì)任務(wù)書(shū)1一、 目的意義 .1二、 設(shè)計(jì)時(shí)間、地點(diǎn)和班級(jí)1三、 設(shè)計(jì)內(nèi)容.1四、 參考電路圖形.2五、 單片機(jī)的相關(guān)知識(shí).3第二章 硬件設(shè)計(jì)5一、 單片機(jī)簡(jiǎn)介.5二、 電源電路.5三、 晶振振蕩電路.5四、 復(fù)位電路.5五、 顯示電路.6六、 鍵盤(pán)電路.6七、 硬件主電路圖設(shè)計(jì).7八、 元件清單.7第三章 軟件設(shè)計(jì)8一、

2、 軟件設(shè)計(jì)概述.8二、 主程序流程圖.8三、 程序中各函數(shù)設(shè)計(jì).8四、 C語(yǔ)言主程序設(shè)計(jì).10第四章 課程設(shè)計(jì)體會(huì).13.五、單片機(jī)相關(guān)知識(shí)本課題在選取單片機(jī)時(shí),充分借鑒了許多成形產(chǎn)品使用單片機(jī)的經(jīng)驗(yàn),并根據(jù)自己的實(shí)際情況,  選擇了AT89C51。AT89C51單片機(jī)采用40引腳的雙列直插封裝方式。圖1.2為引腳排列圖, 40條引腳說(shuō)明如下:主電源引腳Vss和Vcc Vss接地 Vcc正常操作時(shí)為+5伏電源外接晶振引腳XTAL1和XTAL2 XTAL1內(nèi)部振蕩電路反相放大器的輸入端,是外接晶體的一個(gè)引腳。當(dāng)采用外部振蕩器時(shí),此引腳接地。 XTAL2內(nèi)部振蕩電路反相放大器的輸出端。是

3、外接晶體的另一端。當(dāng)采用外部振蕩器時(shí),此引腳接外部振蕩源。圖1.2 AT89C51單片機(jī)引腳圖控制或與其它電源復(fù)用引腳RST/VPD,ALE/,和/Vpp RST/VPD 當(dāng)振蕩器運(yùn)行時(shí),在此引腳上出現(xiàn)兩個(gè)機(jī)器周期的高電平(由低到高跳變),將使單片機(jī)復(fù)位在Vcc掉電期間,此引腳可接上備用電源,由VPD向內(nèi)部提供備用電源,以保持內(nèi)部RAM中的數(shù)據(jù)。 ALE/正常操作時(shí)為ALE功能(允許地址鎖存)提供把地址的低字節(jié)鎖存到外部鎖存器,ALE 引腳以不變的頻率(振蕩器頻率的1/6)周期性地發(fā)出正脈沖信號(hào)。因此,它可用作對(duì)外輸出的時(shí)鐘,或用于定時(shí)目的。但要注意,每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE

4、脈沖,ALE 端可以驅(qū)動(dòng)(吸收或輸出電流)八個(gè)LSTTL電路。對(duì)于EPROM型單片機(jī),在EPROM編程期間,此引腳接收編程脈沖(功能) 外部程序存儲(chǔ)器讀選通信號(hào)輸出端,在從外部程序存儲(chǔ)取指令(或數(shù)據(jù))期間,在每個(gè)機(jī)器周期內(nèi)兩次有效。同樣可以驅(qū)動(dòng)八LSTTL輸入。 /Vpp、/Vpp為內(nèi)部程序存儲(chǔ)器和外部程序存儲(chǔ)器選擇端。當(dāng)/Vpp為高電平時(shí),訪問(wèn)內(nèi)部程序存儲(chǔ)器,當(dāng)/Vpp為低電平時(shí),則訪問(wèn)外部程序存儲(chǔ)器。對(duì)于EPROM型單片機(jī),在EPROM編程期間,此引腳上加21伏EPROM編程電源(Vpp)。輸入/輸出引腳P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 -

5、P3.7。 P0口(P0.0 - P0.7)是一個(gè)8位漏極開(kāi)路型雙向I/O口,在訪問(wèn)外部存儲(chǔ)器時(shí),它是分時(shí)傳送的低字節(jié)地址和數(shù)據(jù)總線,P0口能以吸收電流的方式驅(qū)動(dòng)八個(gè)LSTTL負(fù)載。 P1口(P1.0 - P1.7)是一個(gè)帶有內(nèi)部提升電阻的8位準(zhǔn)雙向I/O口。能驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LSTTL負(fù)載。 P2口(P2.0 - P2.7)是一個(gè)帶有內(nèi)部提升電阻的8位準(zhǔn)雙向I/O口,在訪問(wèn)外部存儲(chǔ)器時(shí),它輸出高8位地址。P2口可以驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LSTTL負(fù)載。 P3口(P3.0 - P3.7)是一個(gè)帶有內(nèi)部提升電阻的8位準(zhǔn)雙向I/O口。能驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LSTTL負(fù)載。AT8

6、9C52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM,32 位I/O口線,看門(mén)狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,AT89C52可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。CPU是單片機(jī)的核心部件。它由運(yùn)算器和控制器等部件組成。(1) 運(yùn)算器運(yùn)算器的功能是進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算。可以對(duì)半字節(jié)(4位)、單字節(jié)等數(shù)據(jù)進(jìn)行操作。例

7、如能完成加、減、乘、除、加1、減1、BCD碼十進(jìn)制調(diào)整、比較等算術(shù)運(yùn)算和與、或、異或、求補(bǔ)、循環(huán)等邏輯操作,操作結(jié)果的狀態(tài)信息送至狀態(tài)寄存器。89C51運(yùn)算器還包含有一個(gè)布爾處理器,用來(lái)處理位操作。它是以進(jìn)位標(biāo)志位C為累加器的,可執(zhí)行置位、復(fù)位、取反、等于1轉(zhuǎn)移、等于0轉(zhuǎn)移、等于1轉(zhuǎn)移且清0以及進(jìn)位標(biāo)志位與其他可尋址的位之間進(jìn)行數(shù)據(jù)傳送等位操作,也能使進(jìn)位標(biāo)志位與其他可移位尋址的位之間進(jìn)行邏輯與、或操作。(2) 程序計(jì)數(shù)器PC程序計(jì)數(shù)器PC用來(lái)存放即將要執(zhí)行的指令地址,共16位,可對(duì)64K程序存儲(chǔ)器直接尋址。執(zhí)行指令時(shí),PC內(nèi)容的低8位經(jīng)P0口輸出,高8位經(jīng)P2口輸出。(3) 令寄存器指令寄存

8、器中存放指令代碼。CPU執(zhí)行指令時(shí),由程序存儲(chǔ)器中讀取的指令代碼送入指令寄存器,經(jīng)譯碼后由定時(shí)與控制電路發(fā)出相應(yīng)的控制信號(hào),完成指令功能。第二章 硬件設(shè)計(jì)本系統(tǒng)中,硬件電路主要有電源電路,晶振電路,復(fù)位電路,顯示電路,以及一些按鍵電路等。一、單片機(jī)簡(jiǎn)介本系統(tǒng)設(shè)計(jì)采用C51系列單片機(jī)。ST89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能CMOS8位微處理器。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容(由于在微機(jī)原理中學(xué)過(guò)C-51的具體知識(shí),這里不再詳細(xì)說(shuō)明)。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ST89C

9、51是一種高效的微控制器。二、電源電路電源電路是系統(tǒng)最基本的部分,任何電路都離不開(kāi)電源部分,由于三端集成穩(wěn)壓器件所組成的穩(wěn)壓電源線路簡(jiǎn)單,性能穩(wěn)定,工作可靠,調(diào)整方便,已逐漸取代分立元件,在生產(chǎn)中被廣泛采用,由于是小系統(tǒng),我們采用7809電源提供+5V穩(wěn)壓電壓。三、晶體振蕩電路MCS-51單片機(jī)內(nèi)部的振蕩電路是一個(gè)高增益反相放大器,引線 XTAL1和XTAL2分別為反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入和來(lái)自反向振蕩器的輸出,該反向放大器可以配置為片內(nèi)振蕩器。這里,我們選用51單片機(jī)12MHZ的內(nèi)部振蕩方式,電路如下:電容器C1,C2起穩(wěn)定振蕩頻率,快速起振的作用,C1和C2可在20-1

10、00PF之間取,這里取30P,接線時(shí)要使晶體振蕩器X1盡可能接近單片機(jī)。晶體振蕩電路四、復(fù)位電路采用上電+按鍵復(fù)位電路,上電后,由于電容充電,使RST持續(xù)一段高電平時(shí)間。當(dāng)單片機(jī)已在運(yùn)行之中時(shí),按下復(fù)位鍵也能使用使RST持續(xù)一段時(shí)間的高電平,從而實(shí)現(xiàn)上電加開(kāi)關(guān)復(fù)位的操作。這不僅能使單片機(jī)復(fù)位,而且還能使單片機(jī)的外圍芯片也同時(shí)復(fù)位。當(dāng)程序出現(xiàn)錯(cuò)誤時(shí),可以隨時(shí)使電路復(fù)位。電路圖如下:復(fù)位電路五、顯示電路顯示電路既可以選用液晶顯示器,也可以選用數(shù)碼管顯示。我們采用的是數(shù)碼管顯示電路。用2個(gè)共陰極LED顯示,LED是七段式顯示器,內(nèi)部有7個(gè)條形發(fā)光二極管和1個(gè)小圓點(diǎn)發(fā)光二極管組成,根據(jù)各二極管的亮滅組

11、合成字符。在用數(shù)碼管顯示時(shí),我們有靜態(tài)和動(dòng)態(tài)兩種選擇,靜態(tài)顯示程序簡(jiǎn)單,顯示溫度,但是占用端口比較多;動(dòng)態(tài)顯示所使用的端口比較少,可以節(jié)省單片機(jī)的I/O口。在設(shè)計(jì)中,我們采用LED動(dòng)態(tài)顯示,用P0口驅(qū)動(dòng)顯示。由于P0口的輸出極是開(kāi)漏電路,用它驅(qū)動(dòng)時(shí)需要外接上拉電阻才能輸出高電平。六、鍵盤(pán)電路在按鍵電路中,我們可以在I/O口上直接按鍵,或者通過(guò)I/O口設(shè)計(jì)一個(gè)鍵盤(pán),然后通過(guò)鍵盤(pán)掃描程序判斷是否有按鍵按下等。鍵盤(pán)掃描電路節(jié)省I/O口,但編程有些復(fù)雜,在這里,由于我們所用的按鍵較少,且系統(tǒng)是一個(gè)小系統(tǒng),有足夠的I/O口可以使用,為了使程序簡(jiǎn)化,我們采用按鍵電路,用部分P1口做開(kāi)關(guān),P1.0復(fù)位,P1

12、.1開(kāi)始和暫停,用外中斷INT1開(kāi)始,另外用軟件法消除抖動(dòng)。電路圖如下所示:七、硬件主電路圖設(shè)計(jì)用Protues畫(huà)出其硬件主電路圖如下: 秒表原理圖八、 元器件清單表3.1 元器件清單名稱(chēng)與規(guī)格數(shù)量名稱(chēng)與規(guī)格數(shù)量按鍵2個(gè)AT89C511塊兩位共陰極數(shù)碼管2個(gè)RESPACK-81個(gè)電路板1塊電阻4個(gè)電容3個(gè)晶振1個(gè)第三章 軟件設(shè)計(jì)一、軟件設(shè)計(jì)概述在軟件設(shè)計(jì)中,一般采用模塊化的程序設(shè)計(jì)方法,它具有明顯的優(yōu)點(diǎn)。把一個(gè)多功能的復(fù)雜的程序劃分為若干個(gè)簡(jiǎn)單的、功能單一的程序模塊,有利于程序的設(shè)計(jì)和調(diào)試,有利于程序的優(yōu)化和分工,提高了程序的閱讀性和可靠性,使程序的結(jié)構(gòu)層次一目了然。應(yīng)用系統(tǒng)的程序由包含多個(gè)模

13、塊的主程序和各種子程序組成。各程序模塊都要完成一個(gè)明確的任務(wù),實(shí)現(xiàn)某個(gè)具體的功能,在具體需要時(shí)調(diào)用相應(yīng)的模塊即可。功能描述:用2位LED數(shù)碼顯示"秒表",顯示時(shí)間0099秒,每秒自動(dòng)加1;一個(gè)"開(kāi)始""暫停"鍵,一個(gè)"清零"鍵。二、主程序流程圖這里采用順序結(jié)構(gòu),通過(guò)對(duì)按鍵的掃描,判斷要實(shí)現(xiàn)什么功能。如下所示:三、程序中各函數(shù)設(shè)計(jì)(1) 初始化函數(shù)設(shè)計(jì)void init()TMOD=0x10;/定時(shí)器1工作方式1TH1=0xd8;TL1=0xf0;/延時(shí)初始化設(shè)置/TR1=1;EA=1;/開(kāi)總開(kāi)關(guān)ET1=1;/開(kāi)定時(shí)

14、器(2)顯示函數(shù)設(shè)計(jì)void writeled(uchar num,uchar addr)/關(guān)顯示P2=0xff;/送數(shù)據(jù)P0=dulatabnum;/開(kāi)顯示P2=welatabaddr;delay(4);void display(uchar sec)uchar sech,secl;sech=sec/10;secl=sec%10;writeled(sech,0);writeled(secl,1);(3)按鍵函數(shù)設(shè)計(jì)void keyscan()if(start=0)delay(2);if(start=0)TR1=TR1;while(start=0)display(sec);if(stop=0&a

15、mp;&TR1=0)delay(2);if(stop=0)sec=0;while(stop=0)display(sec);(4)延時(shí)函數(shù)設(shè)計(jì)void delay(uchar time)/延時(shí)uchar i,j;for(i=0;i<time;i+)for(j=0;j<110;j+);四、C語(yǔ)言主程序設(shè)計(jì) #include<reg51.h>#define uchar unsigned charsbit start=P11;sbit stop=P10;uchar code dulatab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,

16、0x7f,0x6f,0x40;/數(shù)字編碼0-9uchar code welatab=0xfe,0xfd;/位控制字uchar msec,sec;void delay(uchar time)/延時(shí)uchar i,j;for(i=0;i<time;i+)for(j=0;j<110;j+);void writeled(uchar num,uchar addr)P2=0xff;P0=dulatabnum;P2=welatabaddr;delay(4);void display(uchar sec)uchar sech,secl;sech=sec/10;secl=sec%10;writele

17、d(sech,0);writeled(secl,1);void init()TMOD=0x10;TH1=0xd8;TL1=0xf0;/TR1=1;EA=1;ET1=1;void keyscan()if(start=0)delay(2);/延時(shí)防抖if(start=0)TR1=TR1;while(start=0)display(sec);if(stop=0&&TR1=0)delay(2);/延時(shí)防抖if(stop=0)sec=0;while(stop=0)display(sec); void main()init();while(1)display(sec);keyscan();

18、void timer1() interrupt 3TH1=0xd8;TL1=0xf0;msec+;if(msec=100)msec=0;sec+;if(sec=100)sec=0; 第四章 課程心得體會(huì)經(jīng)過(guò)兩個(gè)星期的課程設(shè)計(jì),使我加深了單片機(jī)課程的了解,我們花費(fèi)了很多的時(shí)間和精力,比如說(shuō)重新溫故C語(yǔ)言的書(shū)籍和以前所學(xué)單片機(jī)不太懂的知識(shí),我覺(jué)得這幾天讓我過(guò)的十分的充實(shí),我相信其余的隊(duì)友也有相同的看法,下面是我的一些心得體會(huì):1. 將學(xué)習(xí)的理論知識(shí)通過(guò)實(shí)驗(yàn)融會(huì)貫通,讓我對(duì)它的理解更加的深刻,對(duì)程序的編譯過(guò)程也有一定了解。2. 本次課程設(shè)計(jì)是以團(tuán)隊(duì)為主,沒(méi)有團(tuán)隊(duì)的力量,在較短的時(shí)間內(nèi)完成時(shí)難以實(shí)現(xiàn)的,因此培養(yǎng)了我們積極合作、認(rèn)真的態(tài)度,每個(gè)人都有不同分工和任務(wù),做好一個(gè)電子秒表也成為了一件很開(kāi)心的事情,增進(jìn)了同學(xué)們之間的溝通與交流

溫馨提示

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