基于單片機(jī)的籃球計(jì)時(shí)計(jì)分器_第1頁(yè)
基于單片機(jī)的籃球計(jì)時(shí)計(jì)分器_第2頁(yè)
基于單片機(jī)的籃球計(jì)時(shí)計(jì)分器_第3頁(yè)
基于單片機(jī)的籃球計(jì)時(shí)計(jì)分器_第4頁(yè)
基于單片機(jī)的籃球計(jì)時(shí)計(jì)分器_第5頁(yè)
已閱讀5頁(yè),還剩17頁(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、摘要單片機(jī),亦稱單片微電腦或單片微型計(jì)算機(jī)。它是把中央處理器(CPU)、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、輸入/輸出端口(I/0)等主要計(jì)算機(jī)功能部件都集成在一塊集成電路芯片上的微型計(jì)算機(jī)。計(jì)算機(jī)的產(chǎn)生加快了人類改造世界的步伐,但是它畢竟體積大。微計(jì)算機(jī)(單片機(jī))在這種情況下誕生了,它為我們改變了什么?縱觀我們現(xiàn)在生活的各個(gè)領(lǐng)域,從導(dǎo)彈的導(dǎo)航裝置,到飛機(jī)上各種儀表的控制,從計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,到工業(yè)自動(dòng)化過(guò)程的實(shí)時(shí)控制和數(shù)據(jù)處理,以及我們生活中廣泛使用的各種智能IC卡、電子 寵物等,這些都離不開(kāi)單片機(jī)。 本設(shè)計(jì)是籃球計(jì)時(shí)計(jì)分器,主要在籃球比賽中用于記錄整個(gè)賽程的比賽時(shí)間和

2、顯示甲、乙兩隊(duì)在比賽過(guò)程中的比分情況。該計(jì)時(shí)計(jì)分器有部分組成:一部分用來(lái)實(shí)現(xiàn)計(jì)時(shí)功能,其基本原理和定時(shí)鬧相似;另一部分用來(lái)實(shí)現(xiàn)計(jì)分功能,其基本原理和計(jì)數(shù)器相似,只不過(guò)所要記錄和顯示的對(duì)象是按鍵按下的次數(shù),每按下一次計(jì)數(shù)值加一。主控芯片采用AT89C51,采用匯編語(yǔ)言進(jìn)行編程,編程后利用Keil uVision3來(lái)進(jìn)行編譯,再生成的HEX文件裝入芯片中,采用proteus軟件來(lái)仿真,檢驗(yàn)功能是否能夠正常實(shí)現(xiàn)。該設(shè)計(jì)能夠?qū)崿F(xiàn)計(jì)時(shí)和計(jì)分功能,采用共陰極數(shù)碼管進(jìn)行動(dòng)態(tài)顯示,加分的部分用按鍵來(lái)完成,每按一次發(fā)送一個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)值加一。但是效果病不是很完美,計(jì)時(shí)顯示部分有時(shí)候會(huì)出現(xiàn)不穩(wěn)定的情況,通過(guò)對(duì)晶

3、振和電容值調(diào)整后仍然沒(méi)有改變效果,而且該設(shè)計(jì)最大遺憾是沒(méi)有實(shí)現(xiàn)中場(chǎng)時(shí)交換比分和結(jié)束時(shí)進(jìn)行報(bào)警的功能。目錄1 概述41.1發(fā)展背景41.2系統(tǒng)的功能42系統(tǒng)總體方案及硬件設(shè)計(jì)52.1系統(tǒng)組成52.2系統(tǒng)定時(shí)控制部件設(shè)計(jì)52.3系統(tǒng)的復(fù)位電路設(shè)計(jì)62.4顯示系統(tǒng)的設(shè)計(jì)73軟件設(shè)計(jì)83.1程序流程圖83.2 計(jì)時(shí)部分設(shè)計(jì)83.3 加分部分設(shè)計(jì)103.4顯示子程序設(shè)計(jì)113.5延時(shí)子程序設(shè)計(jì)124 Proteus軟件仿真134.1不工作狀態(tài)仿真圖134.2計(jì)時(shí)、計(jì)分工作狀態(tài)仿真圖135課程設(shè)計(jì)體會(huì)14參考文獻(xiàn)15附1 生成機(jī)器代碼16附2 源程序代碼17附3 系統(tǒng)原理圖:231 概述1.1發(fā)展背景體育

4、比賽計(jì)時(shí)記分系統(tǒng)是對(duì)體育比賽過(guò)程中所產(chǎn)生的時(shí)間、比分等數(shù)據(jù)進(jìn)行快速采集記錄、加工處理、傳遞利用的信息系統(tǒng)。根據(jù)不同運(yùn)動(dòng)項(xiàng)目的不同比賽規(guī)則要求, 體育比賽的計(jì)時(shí)記分系統(tǒng)包括測(cè)量類、評(píng)分類、命中類、制勝類、得分類等多種類型?;@球比賽是根據(jù)運(yùn)動(dòng)隊(duì)在規(guī)定的比賽時(shí)間里得分多少來(lái)決定勝負(fù)的, 因此, 足球比賽的計(jì)時(shí)記分系統(tǒng)是一種得分類型的系統(tǒng)。籃球比賽的計(jì)時(shí)記分系統(tǒng)由計(jì)時(shí)器、記分器等多種電子設(shè)備組成。同時(shí), 根據(jù)目前高水平足球比賽要求, 完善的足球比賽計(jì)時(shí)記分系統(tǒng)設(shè)備應(yīng)該能夠與現(xiàn)場(chǎng)成績(jī)處理、現(xiàn)場(chǎng)大屏幕、電視轉(zhuǎn)播車等多種設(shè)備相聯(lián), 以便實(shí)現(xiàn)提高比賽現(xiàn)場(chǎng)感、表演娛樂(lè)觀眾等功能。1.2系統(tǒng)的功能隨著科技的迅猛發(fā)

5、展,單片機(jī)在計(jì)算機(jī)應(yīng)用領(lǐng)域中起到了越來(lái)越重要的作用. 單片機(jī)體積小,功能強(qiáng),集成了微型機(jī)的各部件,大大縮短了系統(tǒng)內(nèi)信號(hào)傳送的距離,從而提高了系統(tǒng)的可靠性及運(yùn)行速度。該系統(tǒng)主要是線以下兩種功能: 計(jì)分:能同時(shí)顯示甲、乙兩隊(duì)比分,最大計(jì)分?jǐn)?shù)為99。能分別對(duì)甲、乙兩隊(duì)比分進(jìn)行加分。計(jì)時(shí):從比賽開(kāi)始時(shí)啟動(dòng)計(jì)時(shí)工作方式,初始時(shí)間為00,最大計(jì)時(shí)為99 分鐘,經(jīng)過(guò)修改后應(yīng)該還能實(shí)施計(jì)時(shí)暫停,還能設(shè)定為倒計(jì)時(shí)。哨音提示:設(shè)定的比賽時(shí)間到了,能自動(dòng)哨音提示比賽結(jié)束.2系統(tǒng)總體方案及硬件設(shè)計(jì)2.1系統(tǒng)組成籃球比賽計(jì)分的準(zhǔn)確性和計(jì)時(shí)的精確度是要求很高的,而單片機(jī)在這方面有著出色的表現(xiàn)。本系統(tǒng)采用頻率為12 MHz

6、 的芯片,整個(gè)系統(tǒng)由按鍵、計(jì)時(shí)顯示、計(jì)分顯示等部分組成:該系統(tǒng)組成方框圖如圖1 所示: 按鈕單片機(jī)芯 片時(shí)間顯示比分顯示圖1:系統(tǒng)原理框圖單片機(jī)是該系統(tǒng)電路的核心組成部分,系統(tǒng)的各種功能都是在單片機(jī)內(nèi)通過(guò)編程來(lái)實(shí)現(xiàn)。 單片機(jī)選用ATMEL 公司的AT 89C51. AT89C51 是一個(gè)內(nèi)含4 K 字節(jié)FLASH RAM (閃速存儲(chǔ)器) 、128 字節(jié)RAM 和32 條I/ O 口線的8 位單片微處理器。AT89C51 的的X1 (19 腳) 和X2 (18 腳) 外接6MHZ 晶振,為單片機(jī)提供時(shí)鐘信號(hào)。晶振兩引腳各串一個(gè)瓷片電容,容值為20P50P ,用于提高晶振頻率的穩(wěn)定性。2.2系統(tǒng)定

7、時(shí)控制部件設(shè)計(jì)定時(shí)控制部件是在規(guī)定的時(shí)刻發(fā)出各種操作所需的全部?jī)?nèi)部和外部控制信號(hào),使各功能元件協(xié)調(diào)工作,完成指令所規(guī)定的功能。主要任務(wù)是產(chǎn)生一個(gè)工作時(shí)序,其工作需要時(shí)鐘電路提供一個(gè)工作頻率。MCS-51內(nèi)部有一個(gè)用于構(gòu)成震蕩器的高增益反向放大器,此放大器的輸入端和輸出端分別是XTAL1和XTAL2,在XTAL1和XTAL2上外接時(shí)鐘源可構(gòu)成時(shí)鐘電路。單片機(jī)的生產(chǎn)工藝不同,時(shí)鐘的產(chǎn)生方式也不同有內(nèi)部和外部時(shí)鐘產(chǎn)生兩種時(shí)鐘方式。圖2 內(nèi)部時(shí)鐘產(chǎn)生方式本系統(tǒng)采用的是內(nèi)部時(shí)鐘產(chǎn)生方式,如圖2所示:在XTAL1和XTAL2兩端跨接晶體或陶瓷諧振器,于內(nèi)部反向器構(gòu)成穩(wěn)定的自激振蕩器。其發(fā)出的脈沖直接送入片

8、內(nèi)的定時(shí)控制部件。2.3系統(tǒng)的復(fù)位電路設(shè)計(jì) 圖3 上電加按鈕電平復(fù)位MCS-51單片機(jī)通常采用上電復(fù)位、按鈕電平復(fù)位、外部脈沖復(fù)位、上電加按鈕電平復(fù)位、程序運(yùn)行監(jiān)視復(fù)位等方式。 我采用的是上電加按鈕電平復(fù)位,電路圖如圖所示,是上電自動(dòng)復(fù)位與按鈕電平復(fù)位的組合。上電復(fù)位利用電容充電來(lái)實(shí)現(xiàn),即上電瞬間RST/Vpd端的電位與Vcc相同,隨著充電電流的減少, RST/Vpd的電位下降,最后被鉗位在0伏,按鈕電平復(fù)位,當(dāng)按鈕按下后,電源Vcc同過(guò)電阻施加在單片機(jī)復(fù)位端RST/Vpd上,實(shí)現(xiàn)單片機(jī)的復(fù)位。2.4顯示系統(tǒng)的設(shè)計(jì)根據(jù)系統(tǒng)設(shè)計(jì)要求,為了顯示比賽的時(shí)間及比分,采用了8個(gè)7段LED顯示器,其中4個(gè)

9、用于顯示比賽時(shí)間,其余4個(gè)用于顯示主隊(duì)和客隊(duì)的分?jǐn)?shù).圖4 顯示部分電路圖8位動(dòng)態(tài)LED顯示器由2個(gè)8位并行的控制端口(PA72PA0,PB72PB0)進(jìn)行控制,其中一個(gè)控制段選碼,一個(gè)控制位選碼。由于所有位的段選皆由一個(gè)I/O口控制,因此,在任一瞬間;8位LED顯示器要么全部或多位顯示同一個(gè)字符,要么只在一個(gè)指定位上顯示該字符,這取決于位選控制I/O端口的狀態(tài)。可使顯示器和各位輪流依次顯示一瞬間,在此瞬間,從段選口送出該位的段選碼,如此循環(huán)反復(fù),只要保證每秒鐘對(duì)所有位的循環(huán)在20次以上,由于人眼的視覺(jué)暫留效應(yīng),就會(huì)看到顯示器的各位“同時(shí)”顯示各自的內(nèi)容。3軟件設(shè)計(jì)3.1程序流程圖3.2 計(jì)時(shí)部

10、分設(shè)計(jì)MAIN: LCALL FLASH1 LCALL FLASH2主程序采用長(zhǎng)條轉(zhuǎn)指令進(jìn)入計(jì)時(shí)部分,第一步跳轉(zhuǎn)將所有計(jì)數(shù)初值清零,再一次跳轉(zhuǎn)進(jìn)入計(jì)時(shí)循環(huán)。 FLASH1: SETB IT0 SETB EA MOV ONE, #00 MOV TWO,#00 MOV THREE, #00 MOV FIVE,#00 MOV SIX,#00 RET DAY:MOV A, ONE MOV B, #10 DIV AB MOV 11H,A;將商放在11H中 MOV A,B MOV 12H,A LCALL DSP ;調(diào)顯示子程序 INC ONE MOV A, ONE CJNE A,#60,DAY;當(dāng)累計(jì)到6

11、0時(shí),進(jìn)一位此程序?yàn)轱@示計(jì)時(shí)秒部分,首先對(duì)緩存區(qū)ONE清零,然后采用DIV指令,將其拆分成分別顯示的十位與個(gè)位,并分別將兩個(gè)內(nèi)容送入不同緩存去,通過(guò)長(zhǎng)跳轉(zhuǎn)指令進(jìn)入顯示部分,當(dāng)顯示過(guò)后,再一次將顯示秒的緩存區(qū)加一,然后與60相比,判斷是否相等,當(dāng)相等時(shí)程序順序執(zhí)行,程序進(jìn)入顯示分部分,若不等,程序返回,再次對(duì)秒位進(jìn)行判斷控制,實(shí)現(xiàn)循環(huán)。 MOV ONE,#00 MOV A,ONE MOV A,#00 CLR A INC TWO MOV A,TWO MOV B,#10 DIV AB MOV 21H,A;顯示分計(jì)數(shù)的十位 MOV A,B MOV 22H,A LCALL DSP;調(diào)顯示子程序 MOV

12、A,TWO CJNE A,#59,DAY1;當(dāng)分累計(jì)到60時(shí)向時(shí)進(jìn)位此段為顯示分的部分,通過(guò)秒的進(jìn)位進(jìn)行判斷控制,當(dāng)秒每累計(jì)到60次時(shí),程序通過(guò)CJNE指令順序執(zhí)行,對(duì)分進(jìn)行操作,同樣通過(guò)除指令,分別送入不同緩存去,進(jìn)行顯示,并與60相比,若相等程序順序執(zhí)行進(jìn)入顯示小時(shí)部分,若不等,程序跳轉(zhuǎn)返回到秒位顯示部分,繼須等待60次。 MOV TWO,#00 INC THREE MOV A,THREE MOV B,#10 DIV AB MOV 31H,A MOV A,B MOV 32H,A LCALL DSP ;調(diào)顯示子程序 MOV A,THREE CJNE A,#24,DAY2;當(dāng)時(shí)累計(jì)到24時(shí),進(jìn)

13、入循環(huán) MOV ONE,#00 MOV TWO,#00 MOV THREE,#00 AJMP MAIN RET此段程序?yàn)橛?jì)時(shí)部分顯示小時(shí)的部分,當(dāng)分位累計(jì)到60次時(shí),程序順序執(zhí)行,對(duì)小時(shí)位進(jìn)行操作,同樣通過(guò)跳轉(zhuǎn)進(jìn)入顯示程序,并與24相比,若不等,程序跳回顯示秒位,等待其進(jìn)位,從而等待分進(jìn)位,再次判斷與60關(guān)系,進(jìn)入小時(shí)部分,從而進(jìn)行循環(huán),若相等,程序?qū)⑺忻?,分,時(shí)的緩存區(qū)清零。并返回主程序。3.3 加分部分設(shè)計(jì)CCTV: LCALL DISPLAY JNB SET1,S1 JNB SET2,S2 S1:LCALL DELAY JB SET1,RETUNE INC FIVE LJMP DISP

14、LAY S2:LCALL DELAY JB SET2,RETUNE INC SIX LJMP DISPLAY J0: JB SET1,RETUNE LCALL DISPLAY J1:JB SET2,RETUNE LCALL DISPLAY RETUNE: RET 加分部分,首先同過(guò)主程序部分的清零,對(duì)初值進(jìn)行顯示,并為零,然后通過(guò)JNB指令,判斷是否有鍵按下,若有責(zé)跳轉(zhuǎn)到指定部分,通過(guò)JB指令判斷是否松開(kāi)從而進(jìn)行操作,若沒(méi)有,程序?qū)⒁@示加分的隊(duì)的緩存區(qū)內(nèi)容加一。并通過(guò)長(zhǎng)跳轉(zhuǎn)指令返回到顯示子程序。3.4顯示子程序設(shè)計(jì)DSP: MOV A,11H MOV DPTR,#TAB MOVC A,A+D

15、PTR CLR P1.0 MOV P0,A;顯示妙計(jì)數(shù)的十位 LCALL DELAY;調(diào)延時(shí)子程序 SETB P1.0 MOV A,12H MOVC A,A+DPTR CLR P1.1 MOV P0,A;顯示妙計(jì)數(shù)的個(gè)位 LCALL DELAY1;延時(shí)子程序 SETB P1.1 MOV A,21H MOV DPTR,#TAB MOVC A,A+DPTR CLR P1.2 MOV P0,A;顯示分計(jì)數(shù)的十位 LCALL DELAY2;調(diào)延時(shí)子程序 SETB P1.2 MOV A,22H MOVC A,A+DPTR CLR P1.3 MOV P0,A;顯示分計(jì)數(shù)的個(gè)位 LCALL DELAY3;延

16、時(shí)子程序 SETB P1.3 MOV A,31H MOV DPTR,#TAB MOVC A,A+DPTR CLR P1.4 MOV P0,A;顯示時(shí)計(jì)數(shù)的十位 LCALL DELAY4;調(diào)延時(shí)子程序 SETB P1.4 MOV A,32H MOVC A,A+DPTR CLR P1.5 MOV P0,A;顯示時(shí)計(jì)數(shù)的個(gè)位 LCALL DELAY5;延時(shí)子程序 SETB P1.5 LCALL CCTV RET顯示部分通過(guò)P0口外加上拉電阻進(jìn)行顯示,數(shù)碼管采用7段共陰極數(shù)碼管,通過(guò)查表指令進(jìn)行顯示,首先將要顯示的緩存單元,送入累加器中,通過(guò)累加器進(jìn)行查表,將要顯示的數(shù)值存儲(chǔ)起來(lái),然后通過(guò)位選信號(hào),將

17、要顯示的位的數(shù)碼管打開(kāi),進(jìn)行現(xiàn)實(shí)。并通過(guò)延時(shí)子程序進(jìn)行延時(shí),使其顯示的數(shù)值穩(wěn)定下來(lái)。然后再通過(guò)位選信號(hào),將顯示的數(shù)值關(guān)斷,從而顯示下一個(gè)數(shù)值。但當(dāng)顯示完一圈后程序跳出,等待下一個(gè)跳進(jìn)來(lái)的指令,再次進(jìn)行現(xiàn)實(shí)。3.5延時(shí)子程序設(shè)計(jì)DELAY: MOV R1,#0EFH ;延時(shí)子程序 TT: MOV A,R1 MOV R0,#0FEH AA: DEC R0 DJNZ R0,AA DEC R1 CJNE A,#00,TT RET延時(shí)子程序采用DJNZ指令實(shí)現(xiàn)循環(huán),首先對(duì)兩個(gè)緩存單元送入不同數(shù)值,此處設(shè)計(jì)時(shí)老是跳不出,經(jīng)常出現(xiàn)死循環(huán),后與同學(xué)一起商量,終于發(fā)現(xiàn)原來(lái)是跳轉(zhuǎn)標(biāo)志位出錯(cuò)了。程序中首先對(duì)其中一個(gè)

18、緩存單元的數(shù)值減一,直到其減到零為止,程序進(jìn)行下一步操作,對(duì)另一個(gè)緩存單元減一,并與0相比,若不等則返回,繼續(xù)將第一個(gè)緩存單元送入數(shù)值,然后重復(fù)上一次操作,直到第二個(gè)緩存單元與零相等,延時(shí)程序跳出。4 Proteus軟件仿真4.1不工作狀態(tài)仿真圖4.2計(jì)時(shí)、計(jì)分工作狀態(tài)仿真圖5課程設(shè)計(jì)體會(huì)經(jīng)過(guò)將近兩周的單片機(jī)課程設(shè)計(jì),終于完成了我的足球計(jì)時(shí)計(jì)分器的設(shè)計(jì),雖然沒(méi)有完全達(dá)到設(shè)計(jì)要求,但從心底里說(shuō),還是高興的,畢竟這次設(shè)計(jì)做了出來(lái),高興之余不得不深思呀!在本次設(shè)計(jì)的過(guò)程中,我發(fā)現(xiàn)很多的問(wèn)題,雖然以前還做過(guò)這樣的設(shè)計(jì)但這次設(shè)計(jì)真的讓我長(zhǎng)進(jìn)了很多,單片機(jī)課程設(shè)計(jì)重點(diǎn)就在于軟件算法的設(shè)計(jì),需要有很巧妙的程

19、序算法,雖然以前寫過(guò)幾次程序,但我覺(jué)的寫好一個(gè)程序并不是一件簡(jiǎn)單的事,舉個(gè)例子,以前寫的那幾次,數(shù)據(jù)加減時(shí),我用的都是BCD碼,這一次,我全部用的都是16進(jìn)制的數(shù)直接加減,顯示處理時(shí)在用除法去刪分,感覺(jué)效果比較好,有好多的東西,只有我們?nèi)ピ囍隽?,才能真正的掌握,只學(xué)習(xí)理論有些東西是很難理解的,更談不上掌握。我做的是籃球比賽計(jì)時(shí)計(jì)分器,電路中RP1上拉電阻的目的是讓計(jì)時(shí)顯示器變得更亮,沒(méi)有rp1計(jì)時(shí)顯示器不能點(diǎn)亮。而RP2上拉電阻是讓計(jì)分顯示器變得更亮,當(dāng)去掉它時(shí)也可以,只是變得不太清楚而已,單片機(jī)的頻率必須是12MHz。 從這次的課程設(shè)計(jì)中,我真真正正的意識(shí)到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際

20、,把我們所學(xué)的理論知識(shí)用到實(shí)際當(dāng)中,學(xué)習(xí)單機(jī)片機(jī)更是如此,程序只有在經(jīng)常的寫與讀的過(guò)程中才能提高,這就是我在這次課程設(shè)計(jì)中的最大收獲。參考文獻(xiàn)1余發(fā)山.單片機(jī)原理及應(yīng)用技術(shù).徐州:中國(guó)礦業(yè)大學(xué)出版社,2003.2佟云峰,等.單片機(jī)原理及其應(yīng)用.重慶:重慶大學(xué)出版社,2004,13吳金戌,等8051單片機(jī)實(shí)踐與應(yīng)用北京:清華大學(xué)出版社,2001,84劉瑞新.單片機(jī)原理及應(yīng)用教程.北京:機(jī)械工業(yè)出版社,20055聶毅.宏匯編語(yǔ)言程序設(shè)計(jì)教程.北京:電子工業(yè)出版社,1998.6周航慈.單片機(jī)應(yīng)用程序設(shè)計(jì)技術(shù).北京:北京航空航天大學(xué)出版社,2002附1 生成機(jī)器代碼:03000000020006F5:

21、10002300F00A84F511E5F0F:1000330010E510B43CE7751000E5107400E40520EA:10004300E52075F00A84F521E5F0F522120082120D53075F03B:100063000A84F531E5F0F93C290F580120113D290E51263:1000930093C291F580120122D291E52190018F93B1:1000A300C292F58012012FD292E52293C293F5807A:1000B30012013CD293E53190018F93C294F58012E3:1000

22、C3000149D294E53293C295F580120156D29537:1000D30022E54075F00A8493C2A0F5B0120113D251:1000E300A0E5F093C2A1F:1000F3002FD2A1E55075F00A8493C2A2F5B0120184:1001030013D2A2E5F093C2A3F5B0120113D2A32236:1001130079EFE978FE7FFE18D8FD19B400F422794F:10012300FFE978A018D8FD19B400F62279EFE97831:080133006418D8FD19B400F6

23、B0:10013B002279EFE978FE18D8FD19B400F62279EF91:10014B00E978FE18D8FD19B400F62279EFE978FEAC:10015B0018D8FD19B400F6221200D430960330974C:10016B000B05400200D41201132020:10017B00971105500200D42096091200D420970342:0E018B001200D4223F065B4F666D7D077F6F2A:00000001FF附2 源程序代碼 SET1 BIT P1.6 SET2 BIT P1.7 ONE EQU

24、10H TWO EQU 20H THREE EQU 30H FIVE EQU 40H ;計(jì)分控制 SIX EQU 50H ;計(jì)分控制 ORG 0000H LJMP MAIN ORG 0003H LJMP CCTVMAIN: LCALL FLASH1 LCALL FLASH2 FLASH1: SETB IT0 SETB EA MOV ONE, #00 MOV TWO,#00 MOV THREE, #00 MOV FIVE,#00 MOV SIX,#00 RET FLASH2: DAY1: DAY2: DAY:MOV A, ONE MOV B, #10 DIV AB MOV 11H,A;將商放在1

25、1中 MOV A,B MOV 12H,A LCALL DSP ;調(diào)顯示子程序 INC ONE MOV A, ONE CJNE A,#60,DAY;當(dāng)累計(jì)到60時(shí),進(jìn)一位 MOV ONE,#00 MOV A,ONE MOV A,#00 CLR A INC TWO MOV A,TWO MOV B,#10 DIV AB MOV 21H,A;顯示分計(jì)數(shù)的十位 MOV A,B MOV 22H,A LCALL DSP;調(diào)顯示子程序 MOV A,TWO CJNE A,#59,DAY1;當(dāng)分累計(jì)到60時(shí)向時(shí)進(jìn)位 MOV TWO,#00 INC THREE MOV A,THREE MOV B,#10 DIV A

26、B MOV 31H,A MOV A,B MOV 32H,A LCALL DSP ;調(diào)顯示子程序 MOV A,THREE CJNE A,#23,DAY2;當(dāng)時(shí)累計(jì)到24時(shí),進(jìn)入循環(huán) MOV ONE,#00 MOV TWO,#00 MOV THREE,#00 AJMP MAIN RET DSP:MOV A,11H MOV DPTR,#TAB MOVC A,A+DPTR CLR P1.0 MOV P0,A;顯示妙計(jì)數(shù)的十位 LCALL DELAY;調(diào)延時(shí)子程序 SETB P1.0 MOV A,12H MOVC A,A+DPTR CLR P1.1 MOV P0,A;顯示妙計(jì)數(shù)的個(gè)位 LCALL DEL

27、AY1;延時(shí)子程序 SETB P1.1 MOV A,21H MOV DPTR,#TAB MOVC A,A+DPTR CLR P1.2 MOV P0,A;顯示分計(jì)數(shù)的十位 LCALL DELAY2;調(diào)延時(shí)子程序 SETB P1.2 MOV A,22H MOVC A,A+DPTR CLR P1.3 MOV P0,A;顯示分計(jì)數(shù)的個(gè)位 LCALL DELAY3;延時(shí)子程序 SETB P1.3 MOV A,31H MOV DPTR,#TAB MOVC A,A+DPTR CLR P1.4 MOV P0,A;顯示時(shí)計(jì)數(shù)的十位 LCALL DELAY4;調(diào)延時(shí)子程序 SETB P1.4 MOV A,32H

28、MOVC A,A+DPTR CLR P1.5 MOV P0,A;顯示時(shí)計(jì)數(shù)的個(gè)位 LCALL DELAY5;延時(shí)子程序 SETB P1.5 LCALL CCTV RET DISPLAY:MOV A,FIVE ;顯示紅隊(duì)計(jì)分 MOV B,#10 DIV AB MOVC A,A+DPTR CLR P2.0 MOV P3,A LCALL DELAY LCALL DELAY1 LCALL DELAY2 SETB P2.0 MOV A,B MOVC A,A+DPTR CLR P2.1 MOV P3,A LCALL DELAY LCALL DELAY1 LCALL DELAY2 SETB P2.1MOV A,SIX ;顯示藍(lán)隊(duì)計(jì)分 MOV B,#10 DIV AB MOVC A,A+DPTR CLR P2.2 MOV P3,A LCALL DELAY LCALL DELAY1 LCALL DELAY2 SETB P2.2 MOV A,B MOVC A,A+DPTR CLR P2.3 MOV P3,A

溫馨提示

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