基于單片機(jī)的籃球計(jì)分器設(shè)計(jì)單片機(jī)課程設(shè)計(jì)_第1頁
基于單片機(jī)的籃球計(jì)分器設(shè)計(jì)單片機(jī)課程設(shè)計(jì)_第2頁
基于單片機(jī)的籃球計(jì)分器設(shè)計(jì)單片機(jī)課程設(shè)計(jì)_第3頁
基于單片機(jī)的籃球計(jì)分器設(shè)計(jì)單片機(jī)課程設(shè)計(jì)_第4頁
基于單片機(jī)的籃球計(jì)分器設(shè)計(jì)單片機(jī)課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)系統(tǒng)課 程 設(shè) 計(jì)成績評定表設(shè)計(jì)課題 : 基于單片機(jī)的籃球計(jì)分器設(shè)計(jì) 學(xué)院名稱 : 電氣工程學(xué)院 專業(yè)班級(jí) : 學(xué)生姓名 : 學(xué) 號(hào) : 指導(dǎo)教師 : 設(shè)計(jì)地點(diǎn) : 設(shè)計(jì)時(shí)間 : 指導(dǎo)教師意見:成績: 簽名: 年 月 日單片機(jī)系統(tǒng)課 程 設(shè) 計(jì)課程設(shè)計(jì)名稱: 基于單片機(jī)的籃球計(jì)分器設(shè)計(jì) 專 業(yè) 班 級(jí) : 學(xué) 生 姓 名 : 學(xué) 號(hào) : 指 導(dǎo) 教 師 : 課程設(shè)計(jì)地點(diǎn): 課程設(shè)計(jì)時(shí)間: 單片機(jī)系統(tǒng) 課程設(shè)計(jì)任務(wù)書學(xué)生姓名 專業(yè)班級(jí)學(xué)號(hào)題 目課題性質(zhì)工程設(shè)計(jì)課題來源選題指導(dǎo)教師 主要內(nèi)容(參數(shù)) 利用89c51單片機(jī)設(shè)計(jì)籃球計(jì)分器系統(tǒng),實(shí)現(xiàn)以下功能:(1)用4位led顯示器顯示兩隊(duì)分?jǐn)?shù);

2、 (2)能夠隨時(shí)手動(dòng)對a、b兩隊(duì)分別計(jì)分; (3)能夠手動(dòng)實(shí)現(xiàn)a、b兩隊(duì)的分?jǐn)?shù)位置隨場地交換而對應(yīng)調(diào)換任務(wù)要求(進(jìn)度)第1-2天:熟悉課程設(shè)計(jì)任務(wù)及要求,查閱技術(shù)資料,確定設(shè)計(jì)方案。第3-4天:按照確定的方案設(shè)計(jì)單元電路。要求畫出單元電路圖,元件及元件參數(shù)選擇要有依據(jù),各單元電路的設(shè)計(jì)要有詳細(xì)論述。第5-6天:軟件設(shè)計(jì),編寫程序。第7-8天:實(shí)驗(yàn)室調(diào)試。第9-10天:撰寫課程設(shè)計(jì)報(bào)告。要求內(nèi)容完整、圖表清晰、文理流暢、格式規(guī)范、方案合理、設(shè)計(jì)正確,篇幅合理。主要參考資料1 張迎新單片微型計(jì)算機(jī)原理、應(yīng)用及接口技術(shù)(第2版)m北京:國防工業(yè)出版社,20042偉福lab6000系列單片機(jī)仿真實(shí)驗(yàn)系

3、統(tǒng)使用說明書3 閻石數(shù)字電路技術(shù)基礎(chǔ)(第五版)北京:高等教育出版社,2006審查意見系(教研室)主任簽字: 年 月 日 目錄1、概述41.1、研究背景41.2、基本功能及設(shè)計(jì)思路42、總體方案設(shè)計(jì)52.1、方案選取52.2、總體設(shè)計(jì)53、硬件電路設(shè)計(jì)63.1、電源電路63.2、晶振電路73.3、鍵盤電路73.4、復(fù)位電路83.5、顯示電路84、系統(tǒng)軟件設(shè)計(jì)94.1、主程序設(shè)計(jì)104.2、加分程序設(shè)計(jì)104.3、交換程序設(shè)計(jì)124.4、led顯示程序設(shè)計(jì)13 4.5、共陰極數(shù)碼管字形表145、總結(jié)15參考文獻(xiàn)15附錄1:系統(tǒng)原理圖17附錄2:源程序18附錄3:系統(tǒng)調(diào)試251、概述1.1、研究背景

4、在這個(gè)電子信息技術(shù)迅速普及的今天,人們對電子產(chǎn)品的需求越來越多。二十一世紀(jì)的今天,科學(xué)技術(shù)迅猛發(fā)展,時(shí)代前進(jìn)的腳步越邁越寬,應(yīng)用自動(dòng)化設(shè)備,現(xiàn)代化通訊,計(jì)算機(jī)處理,數(shù)字化信息,現(xiàn)代化顯示設(shè)備等一些高新技術(shù)使人類邁向智能化發(fā)展。在智能化產(chǎn)品中,單片機(jī)的應(yīng)用已經(jīng)越來越廣泛,單片機(jī)以它體積小、質(zhì)量輕、耗電省、可靠性高、價(jià)格低等優(yōu)點(diǎn),開始不斷發(fā)展,并廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)療設(shè)備、航天航空領(lǐng)域、工業(yè)專用設(shè)備的管理及過程控制等領(lǐng)域,在很多的大中型的電氣設(shè)備以及小型的電子產(chǎn)品中也用到了單片機(jī)進(jìn)行控制。單片機(jī)把我們帶入了智能化的電子領(lǐng)域,許多繁瑣的系統(tǒng)若由單片機(jī)進(jìn)行設(shè)計(jì),便能收到電路更簡單、功能更齊

5、全的良好效果。若把經(jīng)典的電子系統(tǒng)當(dāng)作一個(gè)僵死的電子系統(tǒng),那么智能化的現(xiàn)代電子系統(tǒng)則是一個(gè)具有“生命”的電子系統(tǒng)。本設(shè)計(jì)就是基于單片機(jī)設(shè)計(jì)籃球計(jì)分系統(tǒng),通過串口通信動(dòng)態(tài)傳輸數(shù)據(jù),使計(jì)分系統(tǒng)有了更多更完善的功能。單片機(jī)系統(tǒng)的硬件結(jié)構(gòu)給予了籃球計(jì)分器系統(tǒng)“身軀”,而單片機(jī)的應(yīng)用程序賦予了其新的“生命”,使其在傳統(tǒng)的籃球計(jì)分器面前具有電路簡單、成本低、運(yùn)行可靠等特色。1.2、基本功能及設(shè)計(jì)思路1、利用89c51單片機(jī)設(shè)計(jì)籃球計(jì)分器系統(tǒng),實(shí)現(xiàn)以下功能(1)用4位led顯示器顯示兩隊(duì)分?jǐn)?shù); (2)能夠隨時(shí)手動(dòng)對a、b兩隊(duì)分別計(jì)分;(3)能夠手動(dòng)實(shí)現(xiàn)a、b兩隊(duì)的分?jǐn)?shù)位置隨場地交換而對應(yīng)調(diào)換。2、設(shè)計(jì)思路:以

6、at89c51單片機(jī)為核心元件,利用獨(dú)立式鍵盤控制,使4位共陰極led數(shù)碼管以靜態(tài)顯示方式實(shí)時(shí)記錄a、b兩隊(duì)的分?jǐn)?shù)。獨(dú)立式鍵盤由k1、k2、k3、k4、k5、k6、k7、k8構(gòu)成。其功能如下:(1)k1、k2:加1分;(2)k3、k4:加2分;(3)k5、k6:加3分;(4)k7:半場換分;(5)k8:顯示復(fù)位。a、b兩隊(duì)分別占用兩位led顯示器,顯示范圍為099,能夠基本滿足一般比賽需要。2、總體方案設(shè)計(jì)2.1、方案選取 單片機(jī)在各種電子產(chǎn)品中的應(yīng)用已經(jīng)越來越廣泛,很多的電子產(chǎn)品利用單片機(jī)所取得的便利得到了人們的好評,針對基于單片機(jī)的籃球計(jì)分器的設(shè)計(jì)要求,實(shí)現(xiàn)其功能的方案有多種,現(xiàn)列舉如下:

7、 方案(一)按鍵控制每次各隊(duì)的加分值為1分或2分,如若進(jìn)3分球,則需兩鍵相加。并由半場換分按鍵和復(fù)位功能。分?jǐn)?shù)通過4位led顯示器動(dòng)態(tài)顯示; 方案(二)系統(tǒng)采用三個(gè)按鍵控制每次各隊(duì)的加分值為1分、2分或3分。同樣也有半場換分按鍵和復(fù)位功能。并通過4位led顯示器靜態(tài)顯示分?jǐn)?shù)。這二個(gè)方案都是基于單片機(jī)控制的,通過按鍵加分及數(shù)碼管顯示,不同的設(shè)計(jì)部分在于按鍵的數(shù)量和顯示方式的選取上。方案(一)的按鍵數(shù)量較少,加上交換按鍵和復(fù)位按鍵共需要6個(gè),但也能完成基本功能。不過在顯示方面,動(dòng)態(tài)方式編程較為復(fù)雜。方案(二)的按鍵雖然較多,但功能齊全,使用方便。并且電路不是太過復(fù)雜,編程較為簡單。 最終方案:經(jīng)過

8、以上比較,方案(一)按鍵使用不方便,且軟件設(shè)計(jì)復(fù)雜。因此選用方案(二),即以8位獨(dú)立式鍵盤分別實(shí)現(xiàn)加1分、加2分、加3分、半場換分和顯示復(fù)位的功能,并用4位共陰極led顯示器以靜態(tài)顯示方式顯示分?jǐn)?shù)。2.2、總體設(shè)計(jì) 籃球計(jì)分器的設(shè)計(jì)是基于滿足設(shè)計(jì)要求的前提并且根據(jù)理論上的可實(shí)現(xiàn)性和硬件上的經(jīng)濟(jì)實(shí)用性,而進(jìn)行設(shè)計(jì)的重要環(huán)節(jié)。本節(jié)從人們對系統(tǒng)功能需求出發(fā),在綜合考慮各種因素的情況下,設(shè)計(jì)出籃球計(jì)分器的總體構(gòu)架。1、加分功能設(shè)計(jì):通過顯示緩沖區(qū)為中間加分媒介。每當(dāng)按鍵按下時(shí),首先通過外部中斷源實(shí)現(xiàn)中斷,進(jìn)入中斷后判斷鍵值再進(jìn)入相應(yīng)加分子程序,對相應(yīng)顯示緩沖區(qū)加分。2、分?jǐn)?shù)調(diào)換功能:同樣是利用外部中斷

9、源實(shí)現(xiàn)中斷,中斷服務(wù)程序應(yīng)能實(shí)現(xiàn)中場分?jǐn)?shù)位置調(diào)換的功能。3、分?jǐn)?shù)顯示功能:用同步移位寄存器74hc164實(shí)現(xiàn)4位led數(shù)碼管靜態(tài)顯示。通過查表指令在字形表中找到與顯示緩沖區(qū)對應(yīng)的字形碼,然后串行移位輸出即可。基于89c51單片機(jī)的籃球計(jì)分器總體設(shè)計(jì)框圖如圖2所示。 圖2 籃球計(jì)分器總體框圖在框圖所示的系統(tǒng)構(gòu)架中,8位獨(dú)立式鍵盤包括6位加分按鍵,1位分?jǐn)?shù)調(diào)換按鍵和1位復(fù)位按鍵。其中加分按鍵通過7421實(shí)現(xiàn)中斷掃描,分?jǐn)?shù)調(diào)換按鍵則直接通過外部中斷1入口p3.3實(shí)現(xiàn)中斷服務(wù)。3、 硬件電路設(shè)計(jì)3.1、源電路 單片機(jī)正常工作電壓為5v,因此設(shè)計(jì)的電源電路主要是提供單片機(jī)工作電壓。圖3.1是為單片機(jī)提供

10、電壓的電源電路,包括變壓、整流、穩(wěn)壓、濾波等環(huán)節(jié)。在這個(gè)電路中采用了三端集成穩(wěn)壓器lm7805,可以輸出5v的直流電壓以供給單片機(jī)。圖3.1 電源電路3.2、晶振電路電路中的晶振即石英晶體震蕩器。由于石英晶體震蕩器具有非常好的頻率穩(wěn)定性和抗外界干擾的能力,所以,石英晶體震蕩器是用來產(chǎn)生基準(zhǔn)頻率的。通過基準(zhǔn)頻率來控制電路中的頻率的準(zhǔn)確性。同時(shí),它還可以產(chǎn)生振蕩電流,向單片機(jī)發(fā)出時(shí)鐘信號(hào)。圖3.2是單片機(jī)的晶振電路。片內(nèi)電路與片外器件就構(gòu)成一個(gè)時(shí)鐘產(chǎn)生電路,cpu的所有操作均在時(shí)鐘脈沖同步下進(jìn)行。片內(nèi)振蕩器的振蕩頻率非常接近晶振頻率,一般多在1.2mhz24mhz之間選取。c1、c2是反饋電容,其

11、值在20pf100pf之間選取,典型值為30pf。本電路選用的電容為30pf,晶振頻率為12mhz。圖3.2 晶振電路3.3、鍵盤電路鍵盤電路在籃球計(jì)分器中的主要作用是用于實(shí)現(xiàn)加分和交換分?jǐn)?shù)位置。鍵盤可分為獨(dú)立式鍵盤和行列式鍵盤。本設(shè)計(jì)中由于按鍵數(shù)少于8個(gè),所以采用獨(dú)立式按鍵電路。另外采用中斷掃描方式掃描鍵盤的狀態(tài),當(dāng)然也可以直接用編程掃描方式,兩者工作思路基本一樣。具體電路如圖3.3所示。at89c51單片機(jī)的直流輸入電流為15ma,當(dāng)直流電源電壓為+5v時(shí),可選擇5.1k的上拉電阻保證單片機(jī)的正常工作。圖3.3 鍵盤電路3.4、復(fù)位電路復(fù)位電路的主要功能是使單片機(jī)進(jìn)行初始化,在初始化的過程

12、中需要在復(fù)位引腳上加大于2個(gè)機(jī)器周期的高電平。復(fù)位后的單片機(jī)地址初始化為0000h,然后繼續(xù)從0000h單元開始執(zhí)行程序。在復(fù)位電路中提供復(fù)位信號(hào),等到系統(tǒng)電源穩(wěn)定后,再撤銷復(fù)位信號(hào)。但是為了在復(fù)位按鍵穩(wěn)定的前提下,電源穩(wěn)定后還要經(jīng)一定的延時(shí)才撤銷復(fù)位信號(hào),以防在按鍵過程中引起的抖動(dòng)而影響復(fù)位。圖3.4所示的 rc 復(fù)位電路可以實(shí)現(xiàn)上述基本功能。圖3.4 復(fù)位電路3.5、顯示電路顯示電路是用于顯示分?jǐn)?shù)。采用led數(shù)碼管進(jìn)行顯示是因?yàn)閘ed數(shù)碼管具有以下幾個(gè)優(yōu)點(diǎn):(1)能在低電壓、小電流條件下驅(qū)動(dòng)發(fā)光,能與cmos、itl電路兼容。(2)發(fā)光響應(yīng)時(shí)間極短(0.1s),高頻特性好,單色性好,亮度高

13、。(3)體積小,重量輕,抗沖擊性能好。 數(shù)碼管有共陰極和共陽極兩種類型,其公共端主要進(jìn)行位控制,筆畫端則是進(jìn)行字符控制,數(shù)碼管有靜態(tài)顯示和動(dòng)態(tài)顯示兩種方法。本設(shè)計(jì)采用的是4位共陰極led數(shù)碼管的串行驅(qū)動(dòng)電路來達(dá)到顯示的目的。驅(qū)動(dòng)器采用74hc164,由單片機(jī)89c51的p3.0和p3.1來控制led數(shù)碼管的顯示。顯示電路圖如3.5所示。因?yàn)楣碴帢O數(shù)碼管可以不用外接電阻,所以原理圖中的電阻可去掉。圖3.5 顯示電路4、 系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)軟件設(shè)計(jì)主要由加分中斷服務(wù)程序,交換中斷服務(wù)程序,led顯示程序等幾部分構(gòu)成。本章節(jié)系統(tǒng)的介紹了籃球計(jì)分器的主程序和各主要功能子程序的設(shè)計(jì)流程,具體的程序代碼見

14、附錄2。4.1、主程序設(shè)計(jì)主程序構(gòu)成無限循環(huán),主要完成單片機(jī)初始化,等待加分和交換中斷的功能。主程序的流程圖如圖4.1所示。圖4.1 主程序流程圖主程序流程說明:電路主要分為以下幾個(gè)部分,分別是電源部分、按鍵部分、顯示部分,各部分具有不同的子程序。主程序的作用主要是先讓單片機(jī)初始化,包括棧底指針的重新賦值、開中斷、設(shè)置外部中斷為脈沖觸發(fā)等;然后使顯示緩沖區(qū)清零,使讓led顯示為零;再利用無條件轉(zhuǎn)移指令sjmp $,等待加分中斷和交換中斷。待中斷服務(wù)程序執(zhí)行完后,再次返回主程序等待下一次中斷。4.2、加分程序設(shè)計(jì)硬件電路中設(shè)計(jì)了6個(gè)加分按鍵,采用中斷和查詢結(jié)合的方法擴(kuò)充外部中斷源,實(shí)現(xiàn)相應(yīng)加分的

15、功能。加分程序的流程圖如圖4.2所示。圖4.2 加分程序流程圖加分程序流程說明:按下加分按鍵后,產(chǎn)生外部中斷0,cpu從主程序跳轉(zhuǎn)到加分中斷服務(wù)程序繼續(xù)執(zhí)行。當(dāng)在執(zhí)行相應(yīng)加分中斷服務(wù)程序時(shí),不允許其它按鍵按下有相應(yīng)操作,所以必須在進(jìn)入中斷后通過clr ea指令關(guān)中斷,又因?yàn)闉榱吮苊獗Wo(hù)現(xiàn)場時(shí),一些寄存器的內(nèi)容出現(xiàn)紊亂,此指令必須放在push指令之前。cpu通過查詢方式判斷鍵值后進(jìn)入相應(yīng)的加分子程序。因?yàn)樵诓僮靼存I時(shí),無論是按下還是松開,觸點(diǎn)在閉合和斷開時(shí)均會(huì)產(chǎn)生抖動(dòng),此時(shí)邏輯電平是不穩(wěn)的,如果得不到正確處理,可能會(huì)引起單片機(jī)對按鍵命令的錯(cuò)誤執(zhí)行,所以必須執(zhí)行一段延時(shí)子程序,用來軟件去抖動(dòng)。比如

16、延時(shí)10ms:mov r0,#0ahdl2:mov r1,#7dhdl1:nopnopdjnz r1,dl1djnz r0,dl2延時(shí)子程序執(zhí)行完后,再次判斷鍵值,倘若仍然能夠檢測到相應(yīng)鍵值信號(hào),則繼續(xù)向下執(zhí)行,否則返回主程序。繼續(xù)向下執(zhí)行時(shí),首先讓相應(yīng)顯示緩沖區(qū)加相應(yīng)的分?jǐn)?shù),然后通過cjne指令與10進(jìn)行比較。若小于10,則串行輸出顯示,否則向相應(yīng)高位進(jìn)1,并減10。進(jìn)1后的高位仍需與10進(jìn)行比較,若小于10,則將上述減數(shù)重新賦予相應(yīng)低位,然后串行輸出,否則各位清零。輸出刷新后,cpu返回主程序。4.3、交換程序設(shè)計(jì) 由于籃球比賽中場結(jié)束之后,要交換場地,則分?jǐn)?shù)的顯示位置也要隨之調(diào)換。硬件電

17、路中設(shè)置k7鍵完成此項(xiàng)功能。交換程序流程圖如圖4.3所示。 圖4.3 交換程序流程圖交換程序流程說明:按下交換按鍵后,產(chǎn)生外部中斷1,cpu從主程序跳轉(zhuǎn)到交換中斷服務(wù)程序中繼續(xù)執(zhí)行。通過中間寄存器a和交換指令xch實(shí)現(xiàn)分?jǐn)?shù)位置的交換。交換完成后,cpu返回主程序。4.4、led顯示程序設(shè)計(jì)硬件設(shè)計(jì)中利用4位led靜態(tài)顯示電路顯示分?jǐn)?shù)。通過顯示緩沖區(qū)利用movc a,a+dptr查表指令找到指定字形碼,并由串行口串行輸出顯示。led顯示程序流程圖如圖4.3所示。圖4.3 led顯示程序流程圖led顯示程序流程說明:首先將高位顯示緩沖區(qū)的值,也就是字形表的檢索值給累加器a,并將字形表首地址給dpt

18、r,然后利用查表指令找到指定的字形碼,最后由單片機(jī)的串行口串行輸出。緊接著將下一位緩沖區(qū)的值給累加器a,同樣由查表指令找到相應(yīng)字形碼,并串行輸出。依次循環(huán)執(zhí)行上述操作,直至4位全部輸出后返回主程序。4.5、共陰極數(shù)碼管字形表 硬件電路所用數(shù)碼管為共陰極,所以串行口輸出高電平有效。并且4位數(shù)碼管的dp段都沒有使用,因此始終為0。另外應(yīng)特別注意的是字形碼的高低位順序應(yīng)與硬件中數(shù)碼管引腳的連接對應(yīng)。共陰極數(shù)碼管字形表如表4.1所示。表4.1 共陰極數(shù)碼管字形表字形a b c d e f g dp字形碼01234567891 1 1 1 1 1 0 00 1 1 0 0 0 0 01 1 0 1 1

19、0 1 01 1 1 1 0 0 1 00 1 1 0 0 1 1 01 0 1 1 0 1 1 01 0 1 1 1 1 1 01 1 1 0 0 0 0 01 1 1 1 1 1 1 01 1 1 1 0 1 1 00fch60h0dah0f2h66h0b6h0beh0e0h0feh0f6h5、總結(jié) 本次設(shè)計(jì)敘述了籃球計(jì)分器的基本原理及使用方法,給出了一種籃球計(jì)分器的設(shè)計(jì)方案。此次設(shè)計(jì)的籃球計(jì)分器,電路簡單,而且易懂,使操作使用者使用非常方便,成本較低,靈敏可靠,計(jì)錄準(zhǔn)確,連接簡單,具有非常高的使用價(jià)值。設(shè)計(jì)內(nèi)容包括比分顯示、比分調(diào)換等部分,可以使參加比賽的成員、裁判和觀眾一目了然的看到參

20、賽隊(duì)的成績,以最快的速度評出結(jié)果.該籃球計(jì)分器還能廣泛應(yīng)用于各類知識(shí)競賽。本設(shè)計(jì)由at89c51編程控制led七段數(shù)碼管作球賽計(jì)時(shí)計(jì)分系統(tǒng)具有賽程定性能穩(wěn)定、操作方便且易攜帶等特點(diǎn)。可廣泛適合各類學(xué)校和小團(tuán)體作為賽程計(jì)分。通過這次籃球計(jì)分器的設(shè)計(jì),可以更清楚的了解單片機(jī)程序設(shè)計(jì)的基本指令功能、編程步驟和技巧,對at89c51單片機(jī)的原理和結(jié)構(gòu)進(jìn)一步熟悉和掌握,并對一些繪圖和仿真工具積累了更多的使用經(jīng)驗(yàn)。參考文獻(xiàn): 1 張迎新單片微型計(jì)算機(jī)原理、應(yīng)用及接口技術(shù)(第二版)北京:國防工業(yè)出版社,20042 鄭鋒 王巧芝 程麗平 張清鵬51單片機(jī)典型應(yīng)用開發(fā)范例大全北京:中國鐵道出版社,20113 彭

21、為 黃科 雷道仲單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講北京:電子工業(yè)出版社,20064 閻石數(shù)字電子技術(shù)基礎(chǔ)北京:高等教育出版社,20065 夏路易 石宗義電路原理圖與電路板設(shè)計(jì)教程protel 99se北京:北京希望電子出版社,2004附錄1:系統(tǒng)原理圖附錄2:源程序k1 bit p0.0k2 bit p0.1k3 bit p0.2k4 bit p0.3k5 bit p0.4k6 bit p0.5dis0 equ 30h;定義顯示緩沖區(qū)dis1 equ 31hdis2 equ 32hdis3 equ 33horg 0000hljmp main;跳轉(zhuǎn)到主程序ljmp grade;跳轉(zhuǎn)到加分中斷服務(wù)程序or

22、g 0013hljmp exchange;跳轉(zhuǎn)到交換中斷服務(wù)程序org 0033hmain:mov sp,#3fh;對堆棧指針進(jìn)行賦值mov ie,#85h;開中斷mov tmod,#05h;外部中斷為下降沿脈沖觸發(fā)lcall clearlcall display1sjmp $;等待中斷grade:clr ea;關(guān)中斷jnb k1,lgrade1;判斷鍵值jnb k2, lgrade2jnb k3, lgrade3jnb k4, rgrade1jnb k5, rgrade2jnb k6, rgrade3lgrade1:lcall delay;延時(shí)去抖動(dòng)jnb k1,sw1;再次確定k1鍵是否按

23、下setb ea;開中斷retisw1:inc dis1;k1鍵按下則加分ljmp lcomparelgrade2:lcall delay;延時(shí)去抖動(dòng)jnb k2,sw2;再次確定k2鍵是否按下setb ea;開中斷reti sw2:inc dis1;k2鍵按下則加分inc dis1ljmp lcomparelgrade3:lcall delay;延時(shí)去抖動(dòng)jnb k3,sw3;再次確定k3鍵是否按下setb ea;開中斷reti sw3:inc dis1;k3鍵按下則加分inc dis1inc dis1ljmp lcomparelcompare:mov a,dis1cjne a,#10,lc

24、omp;(dis1)的值與10進(jìn)行比較sjmp lcarry;(dis1)等于10則跳轉(zhuǎn)到進(jìn)位子程序lcomp:jc $+2;(dis1)小于10則輸出顯示ljmp display2sjmp lcarry;(dis1)大于10則跳轉(zhuǎn)到進(jìn)位子程序lcarry:clr cmov a,dis1subb a,#10inc dis0mov a,dis0cjne a,#10,$+9;(dis0)的值與10進(jìn)行比較lcall clear;(dis0)等于10則數(shù)碼管顯零ljmp display2mov dis1,aljmp display2rgrade1:lcall delay;延時(shí)去抖動(dòng)jnb k4,sw4;再次確定k4鍵是否按下setb ea;開中斷reti sw4:inc dis3;k4鍵按下則加分ljmp rcomparergrade2:lcall delay;延時(shí)去抖動(dòng)jnb k5,sw5;再次確定k5鍵是否按下setb ea;開中斷reti sw5:inc dis3;k5鍵按下則加分inc dis3ljmp rcomparergrade3:lcall delay;延時(shí)去抖動(dòng)jnb k6,sw6;再次確定k6鍵是否按下setb ea;開中斷reti sw6:inc dis3;k6鍵按下

溫馨提示

  • 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)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論