版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1、緒論 現(xiàn)如今,隨著科學(xué)技術(shù)的興旺,人類越來越依靠科技的力量。對(duì)于體育比賽計(jì)時(shí)計(jì)分系統(tǒng)是對(duì)體育比賽過程中所產(chǎn)生的時(shí)間,比分等數(shù)據(jù)進(jìn)行快速采集記錄,加工處理,傳遞利用的信息系統(tǒng),他大大的減少了人的工作量,同時(shí)更加迅速精確的比照賽進(jìn)行統(tǒng)計(jì),也增加了比賽的公正公平性。根據(jù)不同運(yùn)動(dòng)工程的不同比賽規(guī)那么要求。 然而籃球比賽是根據(jù)運(yùn)動(dòng)隊(duì)在規(guī)定的比賽時(shí)間里得分多少來決定勝負(fù)的,因此,籃球比賽的計(jì)時(shí)計(jì)分系統(tǒng)是一種得分類型的系統(tǒng)?;@球比賽的計(jì)時(shí)計(jì)分系統(tǒng)由計(jì)時(shí)器,計(jì)分器等多種電子設(shè)備組成,同時(shí),根據(jù)目前高水平籃球比賽要求,完善的籃球比賽計(jì)時(shí)計(jì)分系統(tǒng)設(shè)備應(yīng)能夠與現(xiàn)場(chǎng)成績(jī)處理,現(xiàn)場(chǎng)大屏幕,電視轉(zhuǎn)播等多種設(shè)備相聯(lián),以
2、便實(shí)現(xiàn)高比賽現(xiàn)場(chǎng)感,表演娛樂觀眾等功能目標(biāo)。 因此,計(jì)時(shí)計(jì)分系統(tǒng)在籃球比猜中發(fā)揮著非常重要的作用。1.2 設(shè)計(jì)計(jì)任務(wù)和要求任務(wù): 設(shè)計(jì)一個(gè)用于賽場(chǎng)的籃球計(jì)時(shí)計(jì)分器。要求: 1、能記錄整個(gè)賽程的比賽時(shí)間,并能隨時(shí)實(shí)現(xiàn)暫停。 2、能隨時(shí)刷新甲、乙兩隊(duì)在整個(gè)過程中的比分。 3、中場(chǎng)交換比賽場(chǎng)地時(shí),能自動(dòng)交換甲、乙兩隊(duì)比分的位置。 4、比賽中場(chǎng)和結(jié)束時(shí),能發(fā)出報(bào)警聲。 5、通過指示燈指示上下半場(chǎng)。 6、當(dāng)比賽時(shí)間需要回倒時(shí),能通過按鍵實(shí)現(xiàn)回表。 7、加分有誤時(shí)可通過按鍵實(shí)現(xiàn)減分調(diào)整。1.3 實(shí)驗(yàn)簡(jiǎn)介和方案設(shè)計(jì)本設(shè)計(jì)是基于AT89S52單片機(jī)的籃球計(jì)時(shí)計(jì)分器,利用7段共陰LED作為顯示器件。在此設(shè)計(jì)中共
3、接入了1個(gè)四位一體7段共陰LED顯示器,2個(gè)兩位一體7段共陰LED顯示器,前者用來記錄賽程時(shí)間,其中2位用于顯示分鐘,2位用于顯示秒鐘,后者用于記錄甲乙隊(duì)的分?jǐn)?shù),每隊(duì)2個(gè)LED顯示器顯示范圍可到達(dá)099分。賽程計(jì)時(shí)采用倒計(jì)時(shí)方式,比賽開始時(shí)啟動(dòng)計(jì)時(shí),直至計(jì)時(shí)到零為止。其次,為了配合計(jì)時(shí)器和計(jì)分器校正調(diào)整時(shí)間和比分,我們特定在本設(shè)計(jì)中設(shè)立了7個(gè)按鍵,用于設(shè)置,調(diào)整時(shí)間,啟動(dòng),調(diào)整分?jǐn)?shù)和暫停等功能。采用單片機(jī)控制是這個(gè)系統(tǒng)按鍵操作使用簡(jiǎn)潔,LED顯示,安裝方便?;@球計(jì)時(shí)計(jì)分器主要包括單片機(jī)控制系統(tǒng)、計(jì)時(shí)顯示模塊、計(jì)分顯示模塊、定時(shí)報(bào)警,按鍵控制鍵盤模塊。通過這幾個(gè)模塊的協(xié)調(diào)工作就可以完成相應(yīng)的計(jì)時(shí)
4、計(jì)分控制和顯示功能。這四個(gè)模塊的相互連接如下列圖圖1所示按鍵控制模塊單片機(jī)控制系統(tǒng)定時(shí)報(bào)警記分顯示模塊計(jì)數(shù)顯示模塊圖12、系統(tǒng)總體設(shè)計(jì)2.1 實(shí)驗(yàn)器材及模塊3.2.1、元件清單元件類型數(shù)量Proteus符號(hào)AT89C521AT89C517段數(shù)碼管四位一體共陰17SEG-MPX4-CC7段數(shù)碼管兩位一體共陰27SEG-MPX2-CC電阻1K 10K2RES電容30PF 10µF3CAPACITOR晶振12M1CRYSTAL三極管1NPN排組8插頭1RESPACK-8喇叭5V1BUZZER按鈕8BUTTON發(fā)光二極管2LED-RED3.2.2、單片機(jī)AT89S52簡(jiǎn)介 AT89S52是一
5、個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含8k Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89S52可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。 AT89S52如圖2具有如下特點(diǎn):40個(gè)引腳,8k Bytes Flash片內(nèi)程序存儲(chǔ)器,256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器RAM,32個(gè)外部雙向輸入/輸出I/O口,
6、5個(gè)中斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門狗WDT電路,片內(nèi)時(shí)鐘振蕩器.圖 2 AT89S52單片機(jī)引腳圖3.2.3時(shí)鐘電路模塊 時(shí)鐘電路在單片機(jī)系統(tǒng)中起著非常重要的作用,是保證系統(tǒng)正常工作的根底。在一個(gè)單片機(jī)應(yīng)用系統(tǒng)中,時(shí)鐘是保障系統(tǒng)正常工作的基準(zhǔn)振蕩定時(shí)信號(hào),主要由晶振和外圍電路組成,晶振頻率的大小決定了單片機(jī)系統(tǒng)工作的快慢。為到達(dá)振蕩周期是12MHZ的要求,這里要采用12MHZ的晶振,另外有兩個(gè)22P的電容,兩晶振引腳分別連到XTAL1和XTAL2振蕩脈沖輸入引腳。具體連接圖如圖3所示: 圖 3 晶振電路復(fù)位電路模塊復(fù)位是單片微機(jī)的初始化操作,
7、其主要功能是把PC初始化為0000H,使單片微機(jī)從0000H單元開始執(zhí)行程序。除進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,可以按復(fù)位鍵以重新啟動(dòng),也可以通過監(jiān)視定時(shí)器來強(qiáng)迫復(fù)位。RST引腳是復(fù)位信號(hào)的輸入端。復(fù)位電路在這里采用的是上電+按鈕復(fù)位電路形式,具體連接電路如圖4圖 4 復(fù)位電路本設(shè)計(jì)是基于AT89S52單片機(jī)的籃球計(jì)時(shí)計(jì)分器,利用7段共陰LED作為顯示器件。在此設(shè)計(jì)中共接入了1個(gè)四位一體7段共陰LED顯示器,2個(gè)兩位一體7段共陰LED顯示器,前者用來記錄賽程時(shí)間,其中2位用于顯示分鐘,2位用于顯示秒鐘,后者用于記錄甲乙隊(duì)的分?jǐn)?shù),每隊(duì)2個(gè)L
8、ED顯示器顯示范圍可到達(dá)099分。賽程計(jì)時(shí)采用倒計(jì)時(shí)方式,比賽開始時(shí)啟動(dòng)計(jì)時(shí),直至計(jì)時(shí)到零為止。顯示模塊本設(shè)計(jì)采用共陰極數(shù)碼顯示器,通常,共陰極接低電平一般接地,其它管腳接段驅(qū)動(dòng)電路輸出端。當(dāng)某段驅(qū)動(dòng)電路的輸出端為高電平時(shí),該端所連接的字符導(dǎo)通并點(diǎn)亮,根據(jù)發(fā)光字段的不同組合可顯示出各種數(shù)字或字符。同樣,要求段驅(qū)動(dòng)電路能提供額定的段導(dǎo)通電流,還需根據(jù)外接電源及額定段導(dǎo)通電流來確定相應(yīng)的限流電阻。本次設(shè)計(jì)在顯示模塊用到的是一個(gè)4位一體和2個(gè)兩位一體共陰極數(shù)碼管,共有8個(gè)代碼輸入口和8個(gè)位選輸入口,采用排阻提供上拉電流數(shù)碼管,以保證有足夠大的電流點(diǎn)亮數(shù)碼管,采用動(dòng)態(tài)驅(qū)動(dòng),使各位數(shù)碼管逐個(gè)輪流受控顯示
9、,這就是動(dòng)態(tài)驅(qū)動(dòng),由于掃描速度極快,顯示效果與靜態(tài)驅(qū)動(dòng)相同,其具體圖形如下列圖5圖6所示圖5圖6報(bào)警模塊蜂鳴器通過一NPN三極管進(jìn)行驅(qū)動(dòng),如圖觸發(fā)信號(hào)有基極引入。圖7圖7總硬件電路設(shè)計(jì)4、軟件設(shè)計(jì)在設(shè)計(jì)程序之前,我們首先要對(duì)單片機(jī)應(yīng)用系統(tǒng)預(yù)完成的任務(wù)進(jìn)行深入的分析,明確系統(tǒng)的設(shè)計(jì)任務(wù)、功能要求和技術(shù)指標(biāo)。其次,要對(duì)系統(tǒng)的硬件資源和工作環(huán)境進(jìn)行分析。這是單片機(jī)應(yīng)用系統(tǒng)程序設(shè)計(jì)的根底和條件。軟件總體設(shè)計(jì)方案本次單片機(jī)課程設(shè)計(jì)軟件設(shè)計(jì)局部采用模塊化程序設(shè)計(jì),程序局部由主程序、T0中斷程序、掃描顯示子程序、計(jì)時(shí)加減1秒的子程序、暫停子程序、快表和回表子程序、延時(shí)子程序等組成.其程序流程圖如圖9圖10。
10、圖9 主程序流程圖圖10掃描刷新顯示子程序流程圖4.2 軟件設(shè)計(jì)具體過程 軟件設(shè)計(jì)局部采用模塊化程序設(shè)計(jì),用C語(yǔ)言編寫。Keil是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。Keil C51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能表達(dá)高級(jí)語(yǔ)言的優(yōu)勢(shì)。程序局部由主程序、T0中斷程序、掃描顯示
11、子程序、計(jì)時(shí)加減1秒的子程序、暫停子程序、快表和回表子程序、延時(shí)子程序等組成。4. void delay(uint t) / 延時(shí)子程序 通過參數(shù)t,可以調(diào)整暫停時(shí)間 while(t-) uint i; for(i=0;i<200;i+); 4.2.2 數(shù)碼管動(dòng)態(tài)刷新顯示程序void display(uint i,uint j,uint x,uint y) / 數(shù)碼管動(dòng)態(tài)刷新顯示程序 if(shang=1&&xia!=2) /中間變量shang=1時(shí),為上半場(chǎng),對(duì)P1賦值 P1=0xbf; /點(diǎn)亮對(duì)應(yīng)上半場(chǎng)指示燈 P2=0xfe; /數(shù)碼管動(dòng)態(tài)刷新顯示程序 i為分鐘 P0
12、=tablei%100/10; /刷新顯示時(shí)間顯示分鐘十位 delay(1); /延時(shí)數(shù)碼管的點(diǎn)亮 P2=0xff; P0=0; P2=0xfd; /同理,動(dòng)態(tài)刷新時(shí)分鐘個(gè)位并延時(shí)點(diǎn)亮 P0=tablei%10; delay(1); P0=0; P2=0xff; P2=0xfb; /同理,動(dòng)態(tài)刷新時(shí)秒鐘十位并延時(shí)點(diǎn)亮 P0=tablej%100/10; delay(1); P0=0; P2=0xff; P2=0xf7; /同理,動(dòng)態(tài)刷新時(shí)秒鐘個(gè)位并延時(shí)點(diǎn)亮 P0=tablej%10; delay(1); P0=0; P2=0xff; P2=0xef; /同理,動(dòng)態(tài)刷新甲隊(duì)分?jǐn)?shù)十位并延時(shí)點(diǎn)亮 P
13、0=tablex%100/10; delay(1); P2=0xff; P0=0; P2=0xdf; /同理,動(dòng)態(tài)刷新甲隊(duì)分?jǐn)?shù)個(gè)位并延時(shí)點(diǎn)亮 P0=tablex%10; delay(1); P2=0xff; P0=0; P2=0xbf; /同理,動(dòng)態(tài)刷新乙隊(duì)分?jǐn)?shù)十位并延時(shí)點(diǎn)亮 P0=tabley%100/10; delay(1); P0=0; P2=0xff; P2=0x7f; /同理,動(dòng)態(tài)刷新乙隊(duì)分?jǐn)?shù)十位并延時(shí)點(diǎn)亮 P0=tabley%10; delay(1); P0=0; P2=0xff;本設(shè)計(jì)中各個(gè)數(shù)碼管采用動(dòng)態(tài)驅(qū)動(dòng),使各位數(shù)碼管逐個(gè)輪流受控顯示,由于掃描速度極快本實(shí)驗(yàn)中大約每20毫秒刷
14、新一次,所以顯示效果與靜態(tài)驅(qū)動(dòng)相同。4.2.3 T0中斷程序void t0(void) interrupt 1 /調(diào)用定時(shí)器T0 TH0=0xb1; TL0=0x10; /定時(shí)器定時(shí)單位為20毫秒 if(n=0) /分鐘與秒時(shí)間調(diào)整 n=60;m-; i+; if(i=50) /利用中間變量i 令i值為50 50*20毫秒=1秒 n-; /以實(shí)現(xiàn)一秒計(jì)時(shí) i=0; display(m,n-1,x,y); /調(diào)用動(dòng)態(tài)刷新顯示程序 void jiafen() /加分按鍵子程序,在主程序中不斷調(diào)用該子程序 if(RXD=0) /當(dāng)檢測(cè)到甲隊(duì)加分按鍵按下時(shí),對(duì)應(yīng)加分 delay(1); if(RXD=
15、0) /調(diào)用延時(shí)子程序 實(shí)現(xiàn)按鍵抖 while(RXD=0); x+; if(TXD=0) /同理,檢測(cè)乙隊(duì)加分按鍵時(shí)候按下,并加分 delay(1); if(TXD=0) while(TXD=0); y+; 4.2.4 加分子程序void jiafen() /加分按鍵子程序,在主程序中不斷調(diào)用該子程序 if(RXD=0) /當(dāng)檢測(cè)到甲隊(duì)加分按鍵按下時(shí),對(duì)應(yīng)加分 delay(1); if(RXD=0) /調(diào)用延時(shí)子程序 實(shí)現(xiàn)按鍵抖 while(RXD=0); x+; if(TXD=0) /同理,檢測(cè)乙隊(duì)加分按鍵時(shí)候按下,并加分 delay(1); if(TXD=0) while(TXD=0);
16、 y+; 4void jianfen()/減分按鍵檢測(cè)子程序 if(WR=0) delay(1); if(WR=0) while(WR=0); x-; if(RD=0) delay(1); if(RD=0) while(RD=0); y-; 4.2.6 調(diào)整時(shí)間子程序調(diào)整時(shí)間子程序,使時(shí)間快速倒退或快進(jìn),實(shí)現(xiàn)回表功能,同時(shí)回表之后能自動(dòng)暫停void tiaoshi() /顯示時(shí)間調(diào)整程序if(INT0=0) delay(10); if(INT0=0) /回表子程序,檢測(cè)到INT0按下時(shí),使時(shí)間回倒 zanting=1; /松開時(shí),表暫停 n+; if(n=60) m+; n=1; if(INT
17、1=0) /快表子程序,檢測(cè)到INT1按下時(shí),使倒計(jì)加快, delay(10); if(INT1=0) zanting=1; n-; void shijian() /該程序使回表和快表按鍵松開時(shí)候能自動(dòng)暫停 if(zanting=1&&INT0=1&&INT1=1 ) EA=0; zanting=0; while(1) /按鍵松開時(shí)候仍能調(diào)用暫停程序 display(m,n,x,y); if(P1_0=0) /檢測(cè)暫停鍵按下,開中斷,跳出暫停 delay(1); if(P1_0=0) while(P1_0=0); EA=1; break; 4.2.7 半場(chǎng)交換比
18、分子程序void change() /半場(chǎng)交換場(chǎng)地時(shí)自動(dòng)交換雙方比賽分?jǐn)?shù)子程序 uint temp; /定義中間變量temp,檢測(cè)到有按鍵按下時(shí)候,交換甲隊(duì),乙隊(duì)比賽分?jǐn)?shù) if(zidong=1&&shang=1) temp=x; x=y; y=temp; display(m,n,x,y); zidong=0; xia=0; 4.2.8 比賽暫停子程序void tingzhi() /比賽暫停子程序 if(P1_0=0) /檢測(cè)到暫停按鍵按下時(shí)候,關(guān)閉中斷 delay(1); if(P1_0=0) /按鍵消抖 while(P1_0=0); EA=0; while(1) displ
19、ay(m,n,x,y); if(P1_0=0) /當(dāng)暫停鍵再次按下時(shí)候開中斷 delay(1); if(P1_0=0) while(P1_0=0); EA=1; break; 4.2.9 中場(chǎng)指示燈程序void over() /比賽結(jié)束及及點(diǎn)亮下半場(chǎng)指示燈程序 if(m=0)&&(n=0) /當(dāng)m,n均為0的時(shí)候,通過變量shang的值判斷比賽是否結(jié)束 if(shang>1) /如果shang>1,說明半場(chǎng)到了,比賽沒有結(jié)束 /shang-,關(guān)中斷,再次按下暫停鍵時(shí)候繼續(xù)倒計(jì)時(shí) m=2; n=0; EA=0; T1=1; delay(400); T1=0; whil
20、e(1) display(m,n,x,y); if(P1_0=0) delay(1); if(P1_0=0) while(P1_0=0); EA=1; break; shang-; if(shang=1&&xia=2) m=0;n=0; EA=0; /關(guān)閉中斷,比賽秒表不再走動(dòng),同時(shí)不短刷新數(shù)碼管 T1=1; /全場(chǎng)比賽結(jié)束蜂鳴器開始報(bào)警 delay(400); T1=0;P1=0x3f; / P1=0x3f上下半場(chǎng)指示燈同時(shí)點(diǎn)亮,比賽結(jié)束while(1) display(m,n,x,y); /不斷刷新數(shù)碼管 4.2.10 主程序void main() / 主程序 TMOD=0
21、x01; /設(shè)置定時(shí)器工作方式 EA=1; ET0=1; TH0=0xb1; /定時(shí)器送計(jì)數(shù)初值,EA=1,開中斷,P3口電平拉高TL0=0x10; / P1=0x7f, 上半場(chǎng)指示燈點(diǎn)亮TR0=1;P3=0xff; P1=0x7f; T1=0;while(1) /通過 while(1),反復(fù)調(diào)用循環(huán)體內(nèi)的子程序 jiafen(); /執(zhí)行相應(yīng)的功能 jianfen(); tiaoshi(); if(zidong=1) /zidong=1為key3()執(zhí)行條件僅當(dāng)半場(chǎng)結(jié)束時(shí)候執(zhí)行 change(); if(xia=0) xia=2; /修改變量bujin的值,設(shè)定over()中第二個(gè)if語(yǔ)句的
22、執(zhí)行條件 shijian(); tingzhi(); over(); 5 . PROTEUS仿真5.1 PROTEUS簡(jiǎn)介 Proteus 是英國(guó)Labcenter公司開發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路,該軟件的特點(diǎn)是:實(shí)現(xiàn)了單片機(jī)仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:ARM7(
23、LPC21xx)、 8051/52系列、AVR系列、PIC10/12/16/18系列、HC11系列以及多種外圍芯片。提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、存放器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 uVision2、MPLAB等軟件。具有強(qiáng)大的原理圖繪制功能??傊?,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大。 5.2仿真過程按鍵從上到下依次為:A隊(duì)加分 B隊(duì)加分 時(shí)間回倒 時(shí)間前進(jìn) A隊(duì)減分 B隊(duì)減分接通電源,計(jì)時(shí)顯示即開始倒計(jì)時(shí)工作,上半場(chǎng)
24、指示燈亮,計(jì)時(shí)初始設(shè)計(jì)為2分鐘,按下A+1鍵實(shí)現(xiàn)對(duì)A的加分,每按下一次加1分,如圖11.圖11同樣可實(shí)現(xiàn)A和B的加減分,按下暫停/啟動(dòng)鍵可實(shí)現(xiàn)暫停和啟動(dòng)。 圖12 圖13上半場(chǎng)結(jié)束后,停止計(jì)時(shí),蜂鳴器報(bào)警,按下暫停啟動(dòng)按鍵啟動(dòng)下半場(chǎng)計(jì)時(shí),同時(shí)可實(shí)現(xiàn)甲隊(duì)和乙隊(duì)交換分?jǐn)?shù),下半場(chǎng)指示燈亮。下半場(chǎng)結(jié)束時(shí),停止計(jì)時(shí),蜂鳴器報(bào)警,上半場(chǎng)和下半場(chǎng)指示燈全部點(diǎn)亮。比賽結(jié)束。6、總結(jié)與體會(huì)在這幾天的單片機(jī)的學(xué)習(xí)中,對(duì)理論的根底上更深刻的掌握了單片機(jī)的深層內(nèi)容及實(shí)際生活中的應(yīng)用,實(shí)訓(xùn)鍛煉了自己動(dòng)手能力和思維能力,還有在軟件方面的編程能力,讓我受益匪淺,同時(shí)也暴露出一些平時(shí)學(xué)習(xí)上的問題,讓我深刻反思。這些問題的發(fā)現(xiàn)
25、將為我以后的學(xué)習(xí)和工作找明道路,查漏補(bǔ)缺為進(jìn)一步學(xué)習(xí)作好準(zhǔn)備。 通過實(shí)訓(xùn),讓我更熟悉掌握了Keil uVision34 proteus ISIS這些應(yīng)用程序的運(yùn)用,讓我懂得了如何編寫一些簡(jiǎn)單的程序,學(xué)會(huì)了如何制作單片機(jī)應(yīng)用程序,還有程序下載。另外就是其中出現(xiàn)的問題, 這些問題的發(fā)現(xiàn),有助于提高我在以后的工作和學(xué)習(xí)中對(duì)此類問題的認(rèn)識(shí),確保不在同一問題上再次犯錯(cuò)。嚴(yán)謹(jǐn)求實(shí)、踏實(shí)務(wù)實(shí),是我這次實(shí)訓(xùn)的深刻總結(jié)。做課程設(shè)計(jì)的這幾天翻閱了很多書,也上了很多網(wǎng)站去尋找自己需要的資料。這種尋找有很強(qiáng)的目的性,只是為了自己選定的課題內(nèi)容而查閱,所以除了自己課題以外的其他方面幾乎還是一無所知。
26、這讓我深刻的認(rèn)識(shí)到了自己專業(yè)知識(shí)的貧乏。為我對(duì)自己大四生活的規(guī)劃敲響了警鐘。我對(duì)單片機(jī)的學(xué)習(xí)不會(huì)因?yàn)檎n程設(shè)計(jì)的結(jié)束而結(jié)束,在接觸的眾多資料里,做設(shè)計(jì)只是走馬觀花般的點(diǎn)到。 通過單片機(jī)課程設(shè)計(jì),我加深了對(duì)單片機(jī)理論的理解,學(xué)回了怎樣將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而且我還學(xué)會(huì)了如何去培養(yǎng)我們的不畏困難的挑戰(zhàn)精神,從而不斷地戰(zhàn)勝自己,超越自己,我在這一設(shè)計(jì)過程中,學(xué)會(huì)了堅(jiān)持不懈,不輕易言棄。設(shè)計(jì)過程,也好比是我們?nèi)祟惓砷L(zhǎng)的歷程,常有一些不如意,也許這就是在對(duì)我們提出了挑戰(zhàn),勇敢過,也戰(zhàn)勝了,勝利的鐘聲也就一定會(huì)為我們而敲響。7、 參考文獻(xiàn)【1】余發(fā)山,單片機(jī)原理及應(yīng)用技術(shù):中國(guó)礦業(yè)大學(xué)出社,2003
27、【2】 河南理工大學(xué)電氣學(xué)院:?jiǎn)纹瑱C(jī)實(shí)驗(yàn)報(bào)告指導(dǎo)冊(cè),2021【3】劉法治,常用電子器件及典型芯片應(yīng)用技術(shù):機(jī)械工業(yè)出版社,2007【4】何立民,MSC-51系列單片應(yīng)用系統(tǒng)設(shè)計(jì):北京航空航天大學(xué)出版社,19938、 附件#include <reg51.H> #define uchar unsigned char#define uint unsigned intsbit P1_0=P10; uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /數(shù)碼管顯示的字形0到9 uint m=1,n=60,x=0
28、,y=0,i=0,shang=2,zidong=1,xia=1,zanting=0; /定義全局變量并初始化,其中m,n分別表示分鐘與秒計(jì)時(shí),x,y分別表示甲乙/兩隊(duì)的分?jǐn)?shù),其余中間變量void delay(uint t) / 延時(shí)子程序 通過參數(shù)t,可以調(diào)整暫停時(shí)間 while(t-) uint i; for(i=0;i<200;i+); void display(uint i,uint j,uint x,uint y) / 數(shù)碼管動(dòng)態(tài)刷新顯示程序 if(shang=1&&xia!=2) /中間變量shang=1時(shí),為上半場(chǎng),對(duì)P1賦值 P1=0xbf; /點(diǎn)亮對(duì)應(yīng)上半
29、場(chǎng)指示燈 P2=0xfe; /數(shù)碼管動(dòng)態(tài)刷新顯示程序 i為分鐘 P0=tablei%100/10; /刷新顯示時(shí)間顯示分鐘十位 delay(1); /延時(shí)數(shù)碼管的點(diǎn)亮 P2=0xff; P0=0; P2=0xfd; /同理,動(dòng)態(tài)刷新時(shí)分鐘個(gè)位并延時(shí)點(diǎn)亮 P0=tablei%10; delay(1); P0=0; P2=0xff; P2=0xfb; /同理,動(dòng)態(tài)刷新時(shí)秒鐘十位并延時(shí)點(diǎn)亮 P0=tablej%100/10; delay(1); P0=0; P2=0xff; P2=0xf7; /同理,動(dòng)態(tài)刷新時(shí)秒鐘個(gè)位并延時(shí)點(diǎn)亮 P0=tablej%10; delay(1); P0=0; P2=0x
30、ff; P2=0xef; /同理,動(dòng)態(tài)刷新甲隊(duì)分?jǐn)?shù)十位并延時(shí)點(diǎn)亮 P0=tablex%100/10; delay(1); P2=0xff; P0=0; P2=0xdf; /同理,動(dòng)態(tài)刷新甲隊(duì)分?jǐn)?shù)個(gè)位并延時(shí)點(diǎn)亮 P0=tablex%10; delay(1); P2=0xff; P0=0; P2=0xbf; /同理,動(dòng)態(tài)刷新乙隊(duì)分?jǐn)?shù)十位并延時(shí)點(diǎn)亮 P0=tabley%100/10; delay(1); P0=0; P2=0xff; P2=0x7f; /同理,動(dòng)態(tài)刷新乙隊(duì)分?jǐn)?shù)十位并延時(shí)點(diǎn)亮 P0=tabley%10; delay(1); P0=0; P2=0xff; void tingzhi() /
31、比賽暫停子程序 if(P1_0=0) /檢測(cè)到暫停按鍵按下時(shí)候,關(guān)閉中斷 delay(1); if(P1_0=0) /按鍵消抖 while(P1_0=0); EA=0; while(1) display(m,n,x,y); if(P1_0=0) /當(dāng)暫停鍵再次按下時(shí)候開中斷 delay(1); if(P1_0=0) while(P1_0=0); EA=1; break; void t0(void) interrupt 1 /調(diào)用定時(shí)器T0 TH0=0xb1; TL0=0x10; /定時(shí)器定時(shí)單位為20毫秒 if(n=0) /分鐘與秒時(shí)間調(diào)整 n=60;m-; i+; if(i=50) /利用中
32、間變量i 令i值為50 50*20毫秒=1秒 n-; /以實(shí)現(xiàn)一秒計(jì)時(shí) i=0; display(m,n-1,x,y); /調(diào)用動(dòng)態(tài)刷新顯示程序 void jiafen() /加分按鍵子程序,在主程序中不斷調(diào)用該子程序 if(RXD=0) /當(dāng)檢測(cè)到甲隊(duì)加分按鍵按下時(shí),對(duì)應(yīng)加分 delay(1); if(RXD=0) /調(diào)用延時(shí)子程序 實(shí)現(xiàn)按鍵抖 while(RXD=0); x+; if(TXD=0) /同理,檢測(cè)乙隊(duì)加分按鍵時(shí)候按下,并加分 delay(1); if(TXD=0) while(TXD=0); y+; void jianfen()/減分按鍵檢測(cè)子程序 if(WR=0) dela
33、y(1); if(WR=0) while(WR=0); x-; if(RD=0) delay(1); if(RD=0) while(RD=0); y-; void tiaoshi() /顯示時(shí)間調(diào)整程序 if(INT0=0) delay(10); if(INT0=0) /回表子程序,檢測(cè)到INT0按下時(shí),使時(shí)間回倒 zanting=1; /松開時(shí),表暫停 n+; if(n=60) m+; n=1; if(INT1=0) /快表子程序,檢測(cè)到INT1按下時(shí),使倒計(jì)加快, delay(10); if(INT1=0) zanting=1; n-; void shijian() /該程序使回表和快表按鍵松開時(shí)候能自動(dòng)暫停 if(zanting=1&&INT0=1&&INT1=1 ) EA=0; zanting=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒樓消防知識(shí)培訓(xùn)課件
- 2024燃料油產(chǎn)業(yè)技術(shù)創(chuàng)新戰(zhàn)略聯(lián)盟合作協(xié)議3篇
- 2024樣板房樣板間智能化改造升級(jí)合同3篇
- 2024數(shù)碼相機(jī)產(chǎn)品研發(fā)與全球市場(chǎng)推廣合同3篇
- 2024架子工班組項(xiàng)目承包協(xié)議樣本版B版
- 中國(guó)礦業(yè)大學(xué)徐海學(xué)院《微生物學(xué)基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 長(zhǎng)沙職業(yè)技術(shù)學(xué)院《項(xiàng)目投資與融資》2023-2024學(xué)年第一學(xué)期期末試卷
- 腫瘤登記知識(shí)培訓(xùn)課件
- 教育培訓(xùn)行業(yè)安全事故案例分析
- 鐘表設(shè)計(jì)師職位概述
- 汽車經(jīng)營(yíng)計(jì)劃書
- 2024屆山東省濱州無棣縣聯(lián)考物理九上期末綜合測(cè)試試題含解析
- 兩高環(huán)境污染罪司法解釋解讀
- 部編版小學(xué)六年級(jí)語(yǔ)文上冊(cè)第六單元集體備課記錄表
- 手機(jī)繳費(fèi)收款授權(quán)委托書
- 財(cái)務(wù)情況說明書
- 無人值守汽車衡解決方案
- 動(dòng)脈瘤介入術(shù)后護(hù)理查房課件
- 淄博市張店區(qū)預(yù)防接種工作現(xiàn)狀及其影響因素分析中期報(bào)告
- 初中英語(yǔ)2023年中考專題訓(xùn)練任務(wù)型閱讀-完成表格篇
- 技術(shù)通知單(新模版-0516)
評(píng)論
0/150
提交評(píng)論