0到59秒單片機(jī)秒表課程設(shè)計(jì)報(bào)告_第1頁
0到59秒單片機(jī)秒表課程設(shè)計(jì)報(bào)告_第2頁
0到59秒單片機(jī)秒表課程設(shè)計(jì)報(bào)告_第3頁
0到59秒單片機(jī)秒表課程設(shè)計(jì)報(bào)告_第4頁
0到59秒單片機(jī)秒表課程設(shè)計(jì)報(bào)告_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余15頁可下載查看

付費(fèi)下載

下載本文檔

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

文檔簡介

1、單片機(jī)課程設(shè)計(jì)報(bào)告 設(shè)計(jì)課題:秒表設(shè)計(jì) 專業(yè)班級:10級電子信息科學(xué)與技術(shù)4班 學(xué)生姓名:馬飛楊懸懸夏婷婷董靜靜 對應(yīng)學(xué)號:080210198080210227 080210248080210257 指教教師:郭玉 設(shè)計(jì)時(shí)間:2012年6月7日目錄 一、課程設(shè)計(jì)目的和意義和主要功能 1、目的意義 2、主要功能 二、方案設(shè)計(jì)與論證 1、時(shí)鐘電路 2、按鈕電路 3、顯示電路 4、單片機(jī) 5、參數(shù)計(jì)算 三、硬件電路設(shè)計(jì) 1、 STC89C52RC片機(jī)的簡單介紹 2、接口電路 3、硬件連線圖 四、軟件設(shè)計(jì):數(shù)字秒表流程圖、數(shù)字秒表源程序 五、性能分析 六、結(jié)論和心得 附件(源程序) 電子秒表設(shè)計(jì) 摘要

2、:本次設(shè)計(jì)主要是用STC89C52就計(jì)一個(gè)2位的數(shù)碼作為“秒表”。主要是利用單片機(jī)的定時(shí)器/計(jì)數(shù)器定時(shí)和計(jì)數(shù)原理來設(shè)計(jì)簡單的計(jì)時(shí)器系統(tǒng),擁有正確的啟動(dòng)停止、時(shí)間調(diào)整、清零功能,啟動(dòng)停止清零通過鍵盤按鍵控制,并同時(shí)可以用數(shù)碼管顯示數(shù)字0-59,每秒自動(dòng)加1,能正確地進(jìn)行計(jì)時(shí)。 其中軟件系統(tǒng)采用匯編語言編寫程序,包括顯示程序,計(jì)數(shù)程序,中斷,延時(shí)程序等,并在keil中調(diào)試運(yùn)行,硬件系統(tǒng)利用單片機(jī)開發(fā)板能來實(shí)現(xiàn),簡單且易于觀察,在現(xiàn)實(shí)生活中應(yīng)用廣泛,具有現(xiàn)實(shí)意義。 關(guān)鍵字:單片機(jī)定時(shí)器啟動(dòng)停止清零時(shí)間調(diào)整數(shù)碼管鍵盤 一、課程設(shè)計(jì)目的和意義和主要功能 1、目的意義 1、通過本次課程設(shè)計(jì)加深對單片機(jī)課程

3、的全面認(rèn)識復(fù)習(xí)和掌握,對單片機(jī)課程的應(yīng)用進(jìn)一步的了解。 2、 掌握定時(shí)器、外部中斷的設(shè)置和編程原理。 3、 通過此次課程設(shè)計(jì)能夠?qū)纹瑱C(jī)軟硬件結(jié)合起來,對程序進(jìn)行編輯,校驗(yàn)。 2、主要功能 顯示時(shí)間為0-59秒,每1秒自動(dòng)加1,另外設(shè)計(jì)一個(gè)“啟動(dòng)”鍵、一個(gè)“停止”鍵和一個(gè)“清零”鍵。能用按鈕實(shí)現(xiàn)秒表啟動(dòng)、停止、清零功能 二、方案設(shè)計(jì)與論證 1、方案設(shè)計(jì) 本設(shè)計(jì)要求進(jìn)行計(jì)時(shí)并在數(shù)碼管上顯示時(shí)間,分為時(shí)鐘電路、按鈕電路、顯示電路和單片機(jī)四大部分,這些模塊中單片機(jī)占主控地位。其模塊電路如圖2-1所示。 (1)、時(shí)鐘電路 常用的有內(nèi)部時(shí)鐘方式和外部時(shí)鐘方式,但因?yàn)楸驹O(shè)計(jì)中只需要一片單片機(jī),所以采用內(nèi)部

4、時(shí)鐘方式比較簡單。 時(shí)鐘電路如圖所示,時(shí)鐘電路的晶振頻率越高,系統(tǒng)的時(shí)鐘頻率越高,單片機(jī)的運(yùn)行速度也就越快。 晶振頻率根據(jù)設(shè)計(jì)需要設(shè)為12MHz又根據(jù)諧振性質(zhì),電路中的電容C1C斑擇為30pF左右。該電容的的大少會(huì)影響振蕩器頻率的高低、振蕩器的穩(wěn)定性和起振的快速性。 (2)、按鈕電路 主要由S1S2S3個(gè)按鍵組成,因?yàn)殚_發(fā)板自己默認(rèn)的鍵盤是矩陣式,而我們的設(shè)計(jì)中只需要用到三個(gè)按鍵,考慮到按鍵個(gè)數(shù)比較少,我們將開發(fā)板上的J11B冒由原來的右邊調(diào)整到左邊,讓鍵盤變成獨(dú)立式。按鈕電路中的“啟動(dòng)”按鍵由鍵盤上的S1E制,按鈕電路中的“停止”按鍵由鍵盤上的S2空制, 按鈕電路中的“清零”按鍵由鍵盤上的S

5、3g制。 (3)、具體按鍵說明 按啟動(dòng)”按鍵,開始計(jì)數(shù),數(shù)碼管顯示從00開始每秒自動(dòng)加1;按停止”按鍵,系統(tǒng)暫停計(jì)數(shù),數(shù)碼管顯示當(dāng)時(shí)的計(jì)數(shù),并且再次按“啟動(dòng)”鍵后就會(huì)繼續(xù)計(jì)時(shí);按精零”按鍵,系統(tǒng)暫停計(jì)數(shù),數(shù)碼管顯示00,并且再次按“啟動(dòng)”就會(huì)重新計(jì)時(shí)。 3、顯示電路 所用的數(shù)碼管有共陰和共陽之分,本此設(shè)計(jì)使用的數(shù)碼管是共陰極,數(shù)碼管位控制有P2口控制。由于 電路內(nèi)部已經(jīng)有74HC13解碼器, 譯碼器的A、B、C賦值07,因此輸出端分別是Y0-Y7置“0,如p2=0,則Y0=0,及選通第一個(gè)數(shù)碼管,所以當(dāng)我們要顯示某一個(gè)數(shù)碼管時(shí),只要將P2口賦相應(yīng)的值即可。 因?yàn)槊氡碇恍栌脙蓚€(gè)數(shù)碼管,我們選用的

6、是第一個(gè)和第二個(gè)數(shù)碼管,及分別給P2口送0和1而數(shù)碼管 顯示的數(shù)字段碼由P0口控制,每次需要顯示的數(shù)字段碼通過查表找到后直接送給P0口即可,如當(dāng)P0=3F,就會(huì)顯示數(shù)字“0”。 4、單片機(jī) 單片機(jī)的程序可用匯編語言也可用C語言,為了提高使用匯編語言的能力,本設(shè)計(jì)特用了匯編語言了編寫程序主程序流程圖如下所示,具體程序見附件。主程序流程圖見軟件設(shè)計(jì)。 5、參數(shù)計(jì)算 本設(shè)計(jì)利用定時(shí)器T0的計(jì)數(shù)原理來實(shí)現(xiàn)秒表。定時(shí)器T0工作于方式1,寄存器TMOD氐四位M1M瞳取01,設(shè)定為軟件啟動(dòng)定時(shí)器,故GAT取零,因?yàn)橛枚〞r(shí)功能,C/T取0,定時(shí)器方式寄存器TMOD勺高四位為無關(guān)位,一般都取0,所以TMOD勺控

7、制字應(yīng)取為01H晶振頻率為12MHZT機(jī)=1US因?yàn)榉绞?最長的定時(shí)時(shí)間為65.535MS達(dá)不到1秒的要求,因此采用硬件定時(shí)和軟件計(jì)數(shù)相結(jié)合的方式來達(dá)到1秒定時(shí)。取T0的定時(shí)時(shí)間T定時(shí)=50MS定時(shí)器采用中斷方式工作,中斷20次50Msi20等于1設(shè)定寄存器R0為軟件計(jì)數(shù)器,初值為20o秒表的初值存于寄存器R4中,個(gè)位數(shù)存于20H單元,十位數(shù)存于21H單元中。 2、方案論證 數(shù)字信號處理器(DSP作為一種可編程專用芯片,是數(shù)字信號處理理論實(shí)用化過程的重要技術(shù)工具,在語音處理、圖像處理等技術(shù)領(lǐng)域得到了廣泛的應(yīng)用。但對于算法設(shè)計(jì)人員來講,利用匯編語言或C語言進(jìn)行DSP功能開發(fā),具有周期長、效率低的

8、缺點(diǎn),不利于算法驗(yàn)證和產(chǎn)品的快速開發(fā)。需要模數(shù)轉(zhuǎn)換;受采樣頻率的限制,處理頻率范圍有限。 數(shù)字電路具有不穩(wěn)定,容易出問題,很容易受干擾的特點(diǎn) 單片機(jī)具有價(jià)格低廉的可擦寫1000次以上的16仔)位指令FLASHfc術(shù),不再有報(bào)廢品產(chǎn)生的優(yōu)點(diǎn)。高速度、低功耗(小A)具有SLEE展眠)功能及CMOS術(shù),每一指令執(zhí)行速度可達(dá)50ns(20MH班耗電則在1mA-2.5mA問(典型功耗,WD欽閉時(shí)為100nA)。AVR1用Harvard結(jié)構(gòu)概念(具有預(yù)取指令功能),即對程序存儲和數(shù)據(jù)帶有不同的存儲器和總線。當(dāng)執(zhí)行某一指令時(shí),下一指令被預(yù)先從程序存儲器中取出,這使得 指令可以在每一個(gè)時(shí)鐘周期內(nèi)被執(zhí)行。 超功

9、能精簡指令!具有32個(gè)通用工作寄存器 (相當(dāng)于8051中的32個(gè)累加器,克服了單一累加器數(shù)據(jù)處理造成的瓶頸現(xiàn)象)及128-512tSRA皿靈活使用指令運(yùn)算并可用功能很強(qiáng)的C語言編程,易學(xué)、易寫、易移植。 采用STC89C52RC內(nèi)ROMir用FlashROM,以3V的超低電壓工作;同時(shí)也與MCS-51列單片機(jī)內(nèi)部儲存器為8KBROM?儲空間,同樣具有89C51的功能,且具有在線變成可擦除技術(shù),當(dāng)對電路進(jìn)行調(diào)試時(shí)由于錯(cuò)誤修改或?qū)Τ绦虻男鹿δ苄枰獰氤绦蚴?,不需要多芯片多次拔插,所以不?huì)對芯片造成損害, 最終采用單片機(jī)STC89C52R主控系統(tǒng)。 三、硬件設(shè)計(jì) 1、STC89C52RCt機(jī)的簡單介

10、紹 STC89C52叱種低功耗、高性能的片內(nèi)含有4KB快閃可編程/擦除只讀存儲器(FPEROM-Flash FLUc PI.1匚 PI.2匚 PL才匚 Pl.4E JJ1.Se Pl.白c Rl.7匚 RSLRSL- -V VPLPLC C FRDfRXD匚 PH1/TXD匚 P3-2/jAT0clb;L;JJ-vHc1唱一4。cI咽一SHEPLS.E匝匚P:J.廠布匚 XTAL2cXTAlI匚 Vss仁 ISSIBS 3?0,Q =iP0,I 曰pa2 nPO.3 nPO.4 =511民5 二1-0.6 n 四,7EA/VEA/VFPFP MJPKW sEiini n1,2.7 =P2.G

11、n nPA4 口P2,R ziP2.2 ziP2J 口P2.0 ProgrammableandEraseableReadOnlyMem。的8位CMO微控制器,使用高密度、非易失存儲技術(shù)制造,并且與80C5引腳和指令系統(tǒng)完全兼容。 主要性能: 8031CPU 與MCS-5微控制器產(chǎn)品系列兼容 4KB字節(jié)快速擦寫Flash序存儲器,擦寫次數(shù)100強(qiáng) 存儲數(shù)據(jù)保存時(shí)間為10年 編程頻率3MHZ-24MH編程電流1mA編程電壓Vpp為5V或12V工作電壓5V 1個(gè)片內(nèi)振蕩器及時(shí)鐘電路,靜態(tài)操作模式工作頻率0MHZ-24MHz 程序存儲器具有3級加密保護(hù) 128字節(jié)內(nèi)部RAM,128字節(jié)特殊功能寄存器區(qū)

12、 32條可編程I/O線 2個(gè)16位可編程定時(shí)器/計(jì)數(shù)器 中斷結(jié)構(gòu)具有6個(gè)中斷源和2個(gè)優(yōu)先級嵌套中斷結(jié)構(gòu) 1個(gè)可編程全雙工異步用行口 空閑狀態(tài)維持低功耗和掉電狀態(tài)保存存儲內(nèi)容 可尋址64K外部RAMf口64K外部ROMS句的擴(kuò)展總線控制電路 2、接口電路 利用12MHZI振的一個(gè)機(jī)器周期為1微秒,通過循環(huán)產(chǎn)生1秒時(shí)間延遲,掃描單片機(jī)中所存放的時(shí)間的值,并通過輸出顯示在數(shù)碼管上。 如圖: 秒表系統(tǒng)連線圖 P0.AP0.7對應(yīng)了兩個(gè)接數(shù)碼管的A,B,C,D,E,FfG小數(shù)點(diǎn)位,P2.6接顯示個(gè)位數(shù)的數(shù)碼管的3、8引角,P2.7則接十位數(shù)的。P36P3.7分別接按鍵。 VCCVCC赭!PO.OPO.O

13、- - P0.P0.1 1 P0P02 2 P0.3P0.3 p3p36 6po.po.5 5知7 7P0.6P0.6 mumu磔 腔6 6 KT1L2P2.KT1L2P2.7 7 2、硬件連線圖 連線中 兵fu 口口1口 U 口 DD 一ipil,6Tfun 四、軟件設(shè)計(jì) 1、數(shù)字秒表流程圖 枷始優(yōu) 授碗1 1晶,害按下?二 功艙1 1- 仞始化 時(shí)時(shí)開始 足示西停 U 抽譙1 1星否按下了 x按墟之是否按忑了 4M4M 伊楨計(jì)訊 -CAcc-eo=o? 2、數(shù)字秒表程序(附件) 1、N :一加耀4 4是否加下?; Y YJ J 功能E E 吊開瓊H H匕 初史M M匕 - -H H 計(jì)日才

14、開始 1 1, 按鍵”是二) 按結(jié)1 1是否技下乙 【丫 顯示包嚀 按摩工是百拉下? |繼續(xù)ilil時(shí)| 五、性能分析 所制電路板雖然能實(shí)現(xiàn)設(shè)計(jì)中要求的功能,但是在實(shí)際使用中還是存在著許多缺陷。這塊電路板不能隨意查看記錄的數(shù)據(jù),復(fù)位后所計(jì)數(shù)據(jù)便會(huì)丟失,不能翻看歷史,所計(jì)數(shù)據(jù)組數(shù)不能滿足現(xiàn)實(shí)需要。 六、結(jié)論與心得 其實(shí)剛接看到題目時(shí),有點(diǎn)迷茫,后來指導(dǎo)老師向我們具體講解該怎么去做。對于keil軟件和燒寫軟件, 之前我們根本不了解,通過學(xué)習(xí)光盤中的資料怎么下載和使用這兩個(gè)軟件,在這其中我們也遇到了困難,開始總是不能理解說明書上的步驟,慢慢討論學(xué)習(xí)將軟件下載成功,我們四個(gè)人就在一起摸索該怎樣使用,反

15、復(fù)看光盤給的資料后終于學(xué)會(huì)了如何使用兩個(gè)軟件。預(yù)期的設(shè)計(jì)目的是:能夠?qū)崿F(xiàn)時(shí)鐘的基本功能,正 常顯示秒,于是我們用匯編語言寫源程序。開始編譯時(shí)沒有發(fā)現(xiàn)錯(cuò)誤,可是燒寫到開發(fā)板上時(shí),卻不能實(shí)現(xiàn)基本的功能,經(jīng)過多次修改之后還是不能解決。在寫程序的過程中,我們互相討論方案,尋求解決途徑,可是還是無法實(shí)現(xiàn)相關(guān)的功能。我們有點(diǎn)急了,很迷惑了,我們經(jīng)討論后,決定找郭玉老師。老師給我們提出了意見和建議,在老師的幫忙下,我們成功地編寫了一個(gè)沒有實(shí)現(xiàn)啟動(dòng)停止、時(shí)間調(diào)整和清零功能的秒表程序?,F(xiàn)在就是要實(shí)現(xiàn)要求的那些擴(kuò)展功能,這個(gè)困擾了我們很久,因?yàn)槔蠋煹慕ㄗh是利用中斷寫,而我們自己一直想的使用按鍵控制,最終在查得相關(guān)

16、的資料后,我們還是用按鍵成功寫出源程序,并燒盡單片機(jī)中。 通過這次的電子秒表設(shè)計(jì),我們感覺到了合作的重要性。通過合作,我們找到了最佳的解決方案,有 問題一起解決,有疑問一起討論。感到合作的力量很強(qiáng)大!在設(shè)計(jì)的過程中,我們遇到了很多困難,失敗過許多次,可最后還是成功了。我們知道,只要愿意努力,只要不放棄,我們會(huì)成功的,所以在以后的學(xué)習(xí)與生活中我們都要保持著這種精神。 附件:實(shí)現(xiàn)數(shù)字秒表工作源程序 STRTEQUP3.0;啟動(dòng)鍵控制口 STPEQUP3.1;停止鍵控制口 CLRREQUP3.2 ORG00H LJMPMAIN ORG0BH LJMPINTT MAIN:MOVR0,#20 MOVR4

17、,#0 MOV21H,#0 MOV22H,#0 MOVTMOD,#01H MOVTH0,#3CH MOVTL0,#0B0H SETBEA SETBET0 k1:LCALLDISP JBSTRT,K2;清零鍵控制口 ;初始化程序入口地址 ;定時(shí)器T0的入口地址 ;加一子程序入口地址 ;軟件計(jì)數(shù)器置初值 ;秒表時(shí)間置初值 ;個(gè)位數(shù)存儲單元清零 ;十位數(shù)存儲單元清零 ;定時(shí)器T0工作于方式1 ;置50ms定時(shí)初值高位 ;置50ms定時(shí)初值低位 ;開CPU&中斷 ;開T0中斷 ;調(diào)顯示子程序 ;按下,調(diào)用顯示子程序 ;判斷啟動(dòng)鍵是否釋放 ;釋放啟動(dòng)鍵,跳轉(zhuǎn)到啟動(dòng)指令段 ;啟動(dòng)鍵未按下,調(diào)用顯示

18、子程序 ;判斷停止鍵是否按下 ;按下,調(diào)用顯示子程序 ;判斷停止鍵是否釋放,釋放則跳轉(zhuǎn)到停止指令段 ;停止鍵未按下,調(diào)用顯示子程序 ;判斷清零鍵是否按下,未按下判斷“啟動(dòng)”鍵是否按下 ;按下清零鍵,調(diào)用顯示子程序 ;判斷清零鍵是否釋放,釋放則跳轉(zhuǎn)到清零指令段 ;清零鍵釋放判斷是否重新按下“啟動(dòng)”鍵 ;啟動(dòng)T0 ;跳轉(zhuǎn)到啟動(dòng)鍵是否按下的指令段,不斷判斷 LCALLDISP JNBSTRT,$ AJMPSTART k2:LCALLDISP JBSTR3 LCALLDISP JNBSTSTOP K3:LCALLDISP JBCLRR,K1 LCALLDISP JNBCLRR,CLEAR AJMPK1 START:SETBTR0 AJMPK1 STOP:CLRTR0 AJMPK2 ;關(guān)閉T0 ;跳轉(zhuǎn)到停止鍵是否按下的指令段,不斷判斷 ;關(guān)閉T0,以便顯示子程序顯示此時(shí)的秒表數(shù) ;秒表時(shí)間清零 ;跳轉(zhuǎn)到判斷“啟動(dòng)”指令段 ;重裝定時(shí)初值 ;中斷二十次 ;重新裝軟件計(jì)數(shù)器初值 ;1秒時(shí)間到,秒表數(shù)加一 ;與60比較,小于60就跳轉(zhuǎn) ;若秒表數(shù)加到60秒,則清零 ;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論