單片機(jī)__多通道百分秒表設(shè)計 (2)_第1頁
單片機(jī)__多通道百分秒表設(shè)計 (2)_第2頁
單片機(jī)__多通道百分秒表設(shè)計 (2)_第3頁
單片機(jī)__多通道百分秒表設(shè)計 (2)_第4頁
單片機(jī)__多通道百分秒表設(shè)計 (2)_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)原理及應(yīng)用課程設(shè)計報告課題名稱多通道百分秒表設(shè)計學(xué)院自動控制與機(jī)械工程專業(yè)電氣工程及自動化班級電氣三班姓名盧 應(yīng) 軍學(xué)號201204170320時間2014.6.232014.7.4目 錄一、內(nèi)容提要21.設(shè)計任務(wù)22.主要功能23.設(shè)計提示2二、步驟及方案2三、硬件設(shè)計31、單片機(jī)的選擇與外圍電路32.單片機(jī)與顯示模塊電路43.開關(guān)電路54.顯示LED電路65.外圍小燈電路76.整體電路protuus仿真圖8四、軟件設(shè)計81.系統(tǒng)主函數(shù)程序82.初始化函數(shù)程序93、顯示函數(shù)程序94.開關(guān)函數(shù)程序10五、調(diào)試12六、課程設(shè)計心得體會:131、細(xì)心和耐心是基礎(chǔ):132、互助是我們成功的條件

2、:133、做任何事都要有計劃:13七、參考文獻(xiàn)14八、附錄15一、內(nèi)容提要1.設(shè)計任務(wù)基于AT89C51設(shè)計一個5位LED數(shù)碼作為“多通道百分秒表”。2.主要功能(1)、顯示時間為00.00到99.99,每百分之一秒自動加一。(2)、設(shè)計一個有五個按鍵的鍵盤。K1:開始,K2:停止,K3:復(fù)位,K4通道加1,K5:通道減1。(3)、設(shè)計LED提醒,即D1小燈按照當(dāng)前通道隔一秒亮一次,可以通過開關(guān)關(guān)閉該功能。(4)、其他功能:D2、D3小燈按照01、02通道分別計時時間到10秒時熄滅。(定時:到某一時間有LED提醒功能)3.設(shè)計提示(1)、用1個6位7段LED數(shù)碼管作為顯示設(shè)備,最高位顯示通道號

3、,低四位顯示時間。(2)、可采用定時器,定時時間為10MS。(3)、可參考proteus仿真圖二、步驟及方案根據(jù)系統(tǒng)的設(shè)計要求,選擇AT89C51單片機(jī)作為系統(tǒng)的核心來完成定時、計數(shù)的功能,用74HC245來完成數(shù)據(jù)的鎖存和對LED的刷新控制,用外圍開關(guān)電路實現(xiàn)對單片機(jī)的外圍輸入,用小燈來實現(xiàn)對于計時等功能的提示。該系統(tǒng)的設(shè)計總體思路如下:開關(guān)K1把開始信號傳輸給AT89C51單片機(jī),單片機(jī)開始計數(shù),然后在P2口輸出信號,通過74HC245后傳輸給LED數(shù)碼管控制數(shù)碼管位數(shù)是否啟用,然后P0口傳輸相對應(yīng)的信號控制啟用的數(shù)碼管位輸出的具體信號。同理,其余開關(guān)的信號分別控制了AT89C51的停止、

4、復(fù)位和通到的加減。外接的小燈接到P1.5、P1.6、P1.7口,分別作用于計時提示。綜上,可知7SEG-MPSX6-CC的最高2位用來顯示通道,低四位用來顯示時間(00.00到99.99秒),按照功能要求,確定由四個部分組成:主控制器,開關(guān)控制、小燈顯示、LED顯示??傮w設(shè)計電路結(jié)構(gòu)圖如圖所示:鍵盤輸入單片機(jī)AT89C51LED顯示小燈顯示通道號 秒數(shù)圖1 總體設(shè)計電路結(jié)構(gòu)圖三、硬件設(shè)計1、單片機(jī)的選擇與外圍電路AT89C51作為秒表計時系統(tǒng)的核心器件。該器件是INTEL公司生產(chǎn)的MCS51系列單片機(jī)的基礎(chǔ)產(chǎn)品,采用了可靠的CMOS工藝制造技術(shù),具有高性能的8位單片機(jī),屬于標(biāo)準(zhǔn)的MCS51的C

5、MOS產(chǎn)品。不僅結(jié)合了HMOS的高速和高密度技術(shù)及HMOS的低功耗特征,而且繼承和擴(kuò)展了MCS48單片機(jī)的體系結(jié)構(gòu)和指令系統(tǒng)。單片機(jī)小系統(tǒng)的電路圖如圖所示。圖2 單片機(jī)的選擇與外圍電路AT89C51單片機(jī)的主要特征:(1)與MCS51兼容,4K字節(jié)可編程閃爍存儲器;(2)靈活的在線系統(tǒng)編程,掉電標(biāo)識和快速編程特性;(3)壽命為1000次寫/擦周期,數(shù)據(jù)保留時間可10年以上;(4)全靜態(tài)工作模式:0HZ33HZ;(5)三級程序存儲器鎖定;(6)1288位內(nèi)部RAM,32位可編I/O線; (7)兩個16位定時器/計數(shù)器,5個中斷源,4個8位并行的I/O接口,1個全雙工I/O接口。2.單片機(jī)與顯示模

6、塊電路由74HC245芯片和電阻,導(dǎo)線構(gòu)成,控制鎖存單片機(jī)輸出信號。74HC245元件的封裝:(1)第1腳DIR,為輸入輸出端口轉(zhuǎn)換用,DIR=“1”高電平時信號由“A”端輸入“B”端輸出,DIR=“0”低電平時信號由“B”端輸入“A”端輸出。 (2)第29腳“A”信號輸入輸出端,A1=B1、A8=B8,A1與B1是一組,如果DIR=“1”O(jiān)E=“0”則A1輸入B1輸出,其它類同。如果DIR=“0”O(jiān)E=“0”則B1輸入A1輸出,其它類同。(3)第1118腳“B”信號輸入輸出端,功能與“A”端一樣,不在描述。 (4)第19腳OE,使能端,若該腳為“1”A/B端的信號將不導(dǎo)通,只有為“0”時A/

7、B端才被啟用,該腳也就是起到開關(guān)的作用。 (5)第10腳GND,電源地。 (6)第20腳VCC,電源正極。表1 74HC245真值表:3.開關(guān)電路由電源、導(dǎo)線、電阻、開關(guān)(K1、K2、K3、K4、K5五個開關(guān))構(gòu)成,K1連接P1.0口控制開始;K2連接P1.1口控制暫停;K3連接P1.2口控制復(fù)位清零;K4連接P1.3口控制通道減1;K5連接P1.4口控制通道加1。如圖:圖3 鍵盤電路4.顯示LED電路由7SEG-MPSX6-CC共陰LED8段位顯示器構(gòu)成:結(jié)構(gòu)圖為:abcde fg12345. dp678910e f cc g ha b V c d 圖4 顯示器其真值表為:表2顯示字符共陰極

8、接法八段狀態(tài)斷碼(共陰)spgfedcba0001111113FH10000011006H2010110115BH3010011114FH40110011066H5011011016DH6011111017DH70000011107H8011111117FH9011011116FH.1000000080H綜上則可知:顯示0123456789.斷碼3FH06H5BH4FH66H6DH7DH07H7FH6FH80H5.外圍小燈電路采用了3個LED小D1、D2、D3,當(dāng)按鈕按下后,3個LED小燈接入電路,接口為:D1端接到P1.5口、D2端接到P1.6口、D3端接到P1.7口,其中D1小燈按照當(dāng)前通

9、道隔一秒亮一次,D2、D3小燈按照01、02通道分別計時時間到10秒時熄滅。如圖。圖5 外圍小燈電路圖6.整體電路protuus仿真圖圖6 整體電路四、軟件設(shè)計系統(tǒng)程序包括:主函數(shù)程序、顯示函數(shù)程序、中斷函數(shù)程序、開關(guān)函數(shù)程序、系統(tǒng)初始化函數(shù)程序,通道設(shè)置函數(shù)程序。主程序結(jié)構(gòu):1.系統(tǒng)主函數(shù)程序主程序程序中調(diào)用了兩個子函數(shù)程序,分別是中斷初始化函數(shù)程序及顯示函數(shù)程序。開始系統(tǒng)初始化函數(shù)顯示函數(shù)圖7 開始2.初始化函數(shù)程序設(shè)定定時器狀態(tài)開中斷對定時器賦初值結(jié)束圖8初始化函數(shù)程序包括對定時器/計數(shù)器的工作方式設(shè)定、初值設(shè)定。3、顯示函數(shù)程序 開始 判斷通道標(biāo)識a為1還是為2通道2數(shù)據(jù)通道1數(shù)據(jù)數(shù)碼

10、顯示結(jié)束圖9顯示函數(shù)程序通過識別兩個通道的刷新標(biāo)志位flag_1和flag_2來實現(xiàn)雙通道顯示轉(zhuǎn)換。4.開關(guān)函數(shù)程序開始結(jié)束圖10開關(guān)函數(shù)程序主要通過P1.0、P1.1、P1.2三個引腳來操作秒表的開始、停止、清零。5.中斷函數(shù)程序:結(jié)束 圖11中斷函數(shù)程序通過P1.3和P1.4控制用戶選擇的通道數(shù),然后根據(jù)開關(guān)函數(shù)來分別對兩個通道的刷新標(biāo)志位flag_1和flag_2賦值,進(jìn)而實現(xiàn)通道的互相切換。五、調(diào)試把程序從KEIL中生成HEX文件,導(dǎo)入單片機(jī)中,測試是否實現(xiàn)題目要求的各個功能。1.由于開始計算中斷初始時間不準(zhǔn)確,故重新設(shè)置初始化時間;2.經(jīng)過調(diào)試,延時時間設(shè)為1000效果最佳;3.由于

11、3通道數(shù)要求過于復(fù)雜,故采用雙通道設(shè)計;4.由于難以實現(xiàn)一個按鍵具備:開始、停止及清零功能,所以只能采用三個按鍵分別控制。經(jīng)過耐心的調(diào)試,最終實現(xiàn)設(shè)計要求。PROTEUS仿真圖如圖:圖12 通道一圖13 通道二六、課程設(shè)計心得體會:回顧起此次課程設(shè)計,感覺受益匪淺,從拿到題目到完成整個編程,從理論到實踐,學(xué)到很多很多的課堂理論中沒學(xué)到過的東西,不僅對鍵盤的識別技術(shù)這一章節(jié)的知識點有了深刻的認(rèn)識,而且對這學(xué)期開設(shè)的單片機(jī)這門課程有了更全面的了解,尤其是在學(xué)習(xí)使用proteus軟件片編程和仿真時收獲良多。通過這次單片機(jī)課程設(shè)計,還使我懂得了實踐的重要性。同時在程序調(diào)試的過程中提高自己的發(fā)現(xiàn)問題、解

12、決問題、實際動手和獨立思考的能力。1、細(xì)心和耐心是基礎(chǔ):制作前一定要做好規(guī)劃設(shè)計,反復(fù)論證和計算,防止考慮不到的地方使得做好的東西需要翻工。如果制作或使用中發(fā)現(xiàn)問題,既極大地打擊積極性和自信心,還會極大地消耗時間,拖延項目的進(jìn)度。制作硬件也一定要耐心細(xì)致,極小的失誤都會造成短路等問題而直接造成大錯。在設(shè)計中,如果沒有考慮到哪怕任何一個細(xì)節(jié),都有可能讓沒考慮到的情況造成BUG,使各個子程序的時序和運行之間可能會互相干涉和沖突。2、互助是我們成功的條件:上課的時候的學(xué)習(xí)從來沒有見過真正的單片機(jī),只是從理論的角度去理解枯燥乏味。但在實習(xí)中見過甚至使用了單片機(jī)及其系統(tǒng),能夠理論聯(lián)系實際的學(xué)習(xí),開闊了眼

13、界,提高了單片機(jī)知識的理解和水平。在這次課程設(shè)計中又讓我體會到了合作與團(tuán)結(jié)的力量,當(dāng)遇到不會或是設(shè)計不出來的地方,我們就會在QQ群里討論或者是同學(xué)之間相互幫助。團(tuán)結(jié)就是力量,無論在現(xiàn)在的學(xué)習(xí)中還是在以后的工作中,團(tuán)結(jié)都是至關(guān)重要的,有了團(tuán)結(jié)會有更多的理念、更多的思維、更多的情感。單片機(jī)是很重要的一門課程,老師和一些工作的朋友都曾說過,如果學(xué)好一門單片機(jī),就憑這個技術(shù)這門手藝找一個好工作也不成問題。盡管我們在課堂學(xué)到的內(nèi)容很有限,但在以后的學(xué)習(xí)中單片機(jī)還需要好好的深入研究和學(xué)習(xí),學(xué)好了單片機(jī)也就多了一項生存的本錢。最后感謝老師對我們的精心指導(dǎo)和幫助,感謝同學(xué)們對我的幫助。3、做任何事都要有計劃:

14、在這樣一個復(fù)雜項目的實施過程中,我們遇到了很多困難和挫折。很幸運我們方向一直明確,堅持按照計劃,一步步克服困難,現(xiàn)在想來,我們確實是因為一個明確的計劃,一點點克服困難,一點點積累經(jīng)驗,才走到現(xiàn)在的。這其中計劃的重要性不言而喻。這門課的學(xué)習(xí)確實給了我們很多,而且不單單是知識和技能,還有精神層面上的東西。而在項目制作過程中的困難和喜悅,希望和失望,成功和失敗,也都是我們心中永遠(yuǎn)的寶貴財富。七、參考文獻(xiàn):1 姚國林,單片機(jī)應(yīng)用與應(yīng)用技術(shù).北京:清華大學(xué)出版社,2009.2 黃建新.,單片機(jī)原理、接口技術(shù)及應(yīng)用. 北京:化學(xué)工業(yè)出版社,20093 李群芳,肖看.單片機(jī)原理、接口及應(yīng)用嵌入式系統(tǒng)技術(shù)基礎(chǔ)

15、.北京:清華大學(xué)出版社,20054 張毅剛,MCS-51單片機(jī)應(yīng)用設(shè)計.哈爾冰:哈爾冰工業(yè)大學(xué)出版社,1997.5 邊春遠(yuǎn),王志強(qiáng).MCS-51單片機(jī)應(yīng)用開發(fā)實用子程序. 北京:人民郵電出版社,2005.6 .八、附錄1、源程序代碼#include reg51.h#define THC0 0xd8#define TLC0 0xf0void StarandStop();unsigned char code Duan=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F;/0-9段數(shù)碼管,共陰極unsigned char DataBuffer4=0,0

16、,0,0,DataBuffer_14=0,0,0,0,DataBuffer_24=0,0,0,0;/四個數(shù)碼管顯示數(shù)值,數(shù)組變量定義unsigned int a=1;unsigned int hdrSec_1=0,miao_1=0,hdrSec_2=0,miao_2=0;bit flag_1=0,flag_2=0;/三個通道數(shù)碼管刷新標(biāo)志位sbit P10=P10; sbit P11=P11;sbit P12=P12;sbit P13=P13;sbit P14=P14;sbit P15=P15;sbit P16=P16;sbit P17=P17;sbit P07=P07;/*程序初始化*/vo

17、id timer1_init()TMOD=0x11;/初始化兩個定時器TR0=1; /啟動定時器0ET0=1; /允許定時器中斷EA=1; /總中斷打開TH0=THC0;TL0=TLC0;*顯示程序*/void display()unsigned char b; int x;while(1)if(miao_1=10)P16=0;if(miao_2=10)P17=0;if(a=1)if(miao_1%2=1)P15=0;else if(miao_1%2=0) P15=1;DataBuffer0=DataBuffer_10;DataBuffer1=DataBuffer_11;DataBuffer2

18、=DataBuffer_12;DataBuffer3=DataBuffer_13;if(a=2)if(miao_2%2=1)P15=0;else if(miao_2%2=0)P15=1;DataBuffer0=DataBuffer_20;DataBuffer1=DataBuffer_21;DataBuffer2=DataBuffer_22;DataBuffer3=DataBuffer_23;for(b=0;b1;x-); /*中斷程序*/void timer0() interrupt 1TMOD=0x11;/初始化兩個定時器TH0=THC0;TL0=TLC0;/*通道設(shè)置*/if(P13=0)

19、a=1;if(P14=0)a=2;StarandStop(); if(flag_1=1&flag_2=1)hdrSec_1+;hdrSec_2+;if(hdrSec_2=99)hdrSec_2=0;miao_2+;if(miao_2=99) miao_2=0; DataBuffer_20=miao_2%100/10; /前兩位顯示秒表DataBuffer_21=miao_2%10;DataBuffer_22=hdrSec_2%100/10; /后兩位顯示百分秒表DataBuffer_23=hdrSec_2%10;if(hdrSec_1=99)hdrSec_1=0;miao_1+;if(miao

20、_1=99)miao_1=0; DataBuffer_10=miao_1%100/10; /前兩位顯示秒表DataBuffer_11=miao_1%10;DataBuffer_12=hdrSec_1%100/10; /后兩位顯示百分秒表DataBuffer_13=hdrSec_1%10; if(flag_1=1&flag_2=0)hdrSec_1+;if(hdrSec_1=99)hdrSec_1=0;miao_1+;if(miao_1=99) miao_1=0; DataBuffer_10=miao_1%100/10; /前兩位顯示秒表DataBuffer_11=miao_1%10;DataB

21、uffer_12=hdrSec_1%100/10; /后兩位顯示百分秒表DataBuffer_13=hdrSec_1%10;DataBuffer_20=miao_2%100/10; /前兩位顯示秒表DataBuffer_21=miao_2%10;DataBuffer_22=hdrSec_2%100/10; /后兩位顯示百分秒表DataBuffer_23=hdrSec_2%10;if(flag_1=0&flag_2=1)hdrSec_2+;if(hdrSec_2=99)hdrSec_2=0;miao_2+;if(miao_2=99) miao_2=0; DataBuffer_20=miao_2%100/10; /前兩位顯示秒表DataBuffer_21=miao_2%10;DataBuffer_22=hdrSec_2%100/10; /后兩位顯示百分秒表DataBuffer_23=hdrSec_2%10;DataBuffer_10=miao_1%100/10; /前兩位顯示秒表DataBuffer_11=miao_1%10;DataBuffer_12=hdrSec_1%100/10; /后兩位顯示百分秒表DataBuffer_13=hdrSec_1%10;if(flag_

溫馨提示

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

評論

0/150

提交評論