基于單片機(jī)籃球賽計(jì)時(shí)計(jì)分器設(shè)計(jì)方案_第1頁(yè)
基于單片機(jī)籃球賽計(jì)時(shí)計(jì)分器設(shè)計(jì)方案_第2頁(yè)
基于單片機(jī)籃球賽計(jì)時(shí)計(jì)分器設(shè)計(jì)方案_第3頁(yè)
基于單片機(jī)籃球賽計(jì)時(shí)計(jì)分器設(shè)計(jì)方案_第4頁(yè)
基于單片機(jī)籃球賽計(jì)時(shí)計(jì)分器設(shè)計(jì)方案_第5頁(yè)
已閱讀5頁(yè),還剩32頁(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)介

PAGE1-編號(hào)基于單片機(jī)籃球賽計(jì)時(shí)計(jì)分器設(shè)計(jì)DesignofTimingandScoringofBasketballCompetitionBasedonSingleChipComputer學(xué)生姓名:專業(yè):學(xué)號(hào):指導(dǎo)教師:學(xué)院:2009年06月PAGEPAGEII摘要TC”摘要"\fCTimescoringbasketballgameistosolvethegameofbasketballwiththetimepointswhentheissueofaccuracy。ThisdeviceiscompletedusingAT89C51single-chiptimingandscoringfunctions。Thisarticledescribesindetailthesystemhardwareandsoftwaredesignprocess,designbyAT89C51programmingcontrolforLEDSeven—SegmentLEDdisplaysubsystemofthegametime。Thesystemissetupwiththeschedulefromtimetotime,scheduletimetopause,refreshintimeA,B,andafterthetwosidesachievedatemporarysuccessfunctions.Itisinexpensive,stableperformance,easytooperateandeasytocarryandsoon。Awiderangesuitableforalltypesofschoolsorsmallgroupsastime—pointsrace。Keywords:MCUBasketballTimeBasketballScoreboard目錄TC”目錄"\fC\l”1”TOC\o"1—3”\f\h\z摘要 1HYPERLINK\l”_Toc233691436"Abstract 1HYPERLINK\l”_Toc233691437”目錄 IHYPERLINK\l”_Toc233691438"第一章引言 -1-_Toc233691440”1.2設(shè)計(jì)意義 -1-HYPERLINK\l”_Toc233691441”1.3設(shè)計(jì)目的 —1—HYPERLINK\l”_Toc233691442”第二章系統(tǒng)硬件介紹 —3-2。1MCS-51單片機(jī)簡(jiǎn)述 —3—_Toc233691445"2。1。2主要特性 —4-_Toc233691447”2.1.4芯片擦除 —6—HYPERLINK\l”_Toc233691448"2.1。5掉電模式 —6—HYPERLINK\l”_Toc233691449"2。1。6程序儲(chǔ)存器的加密 -6-HYPERLINK\l”_Toc233691450"2。2顯示器及其接口 —7-HYPERLINK\l”_Toc233691451”2。2.1顯示器介紹 —7—2。2.2結(jié)構(gòu)與原理 —7—HYPERLINK\l”_Toc233691453”2.2。3LED顯示器顯示方式 —8-HYPERLINK\l”_Toc233691454"2.3CD4094芯片介紹 —8-_Toc233691456"2.5報(bào)警器 —9-2.5。1報(bào)警器的分類 —10-HYPERLINK\l”_Toc233691458”2.5.2報(bào)警器工作原理 -10-HYPERLINK\l”_Toc233691459”第三章硬件電路設(shè)計(jì) —11-HYPERLINK\l”_Toc233691460"3.1系統(tǒng)方案設(shè)計(jì) -11—HYPERLINK\l”_Toc233691461"3.1。1系統(tǒng)構(gòu)成框圖 —11-3。1。2器件選擇 —12-HYPERLINK\l”_Toc233691463”3.2硬件總體設(shè)計(jì) -12-3。3。1振蕩電路 —12-3。3.2計(jì)時(shí)電路的工作原理 -15-HYPERLINK\l”_Toc233691467"3。4計(jì)分電路部分 —16-3。4。1串行接口工作原理 —16-HYPERLINK\l”_Toc233691469"3.4。2計(jì)分電路原理圖 —16-_Toc233691471”第四章籃球計(jì)時(shí)計(jì)分器軟件設(shè)計(jì) —19—_Toc233691473"4。2籃球計(jì)時(shí)計(jì)分器編程設(shè)計(jì) -19—4.3主要模塊說(shuō)明 —20—HYPERLINK\l”_Toc233691475”4。3.1計(jì)時(shí)部分模塊流程 -20-4。3.2記分部分模塊流程 —21-HYPERLINK\l”_Toc233691477”4.4籃球計(jì)時(shí)計(jì)分器程序源代碼 -21-_Toc233691479"參考文獻(xiàn) -32—HYPERLINK\l”_Toc233691480”致謝 -33-第一章引言TC”第一章引言”\fC\l”1"1.1背景知識(shí)介紹TC”1.1背景知識(shí)介紹”\fC\fC\l”2"單片機(jī)的應(yīng)用是具有高度現(xiàn)實(shí)意義的。單片機(jī)極高的可靠性,微型性和智能性(我們只要編寫不同的程序后就能夠完成不同的控制工作),單片機(jī)已成為工業(yè)控制領(lǐng)域中普遍采用的智能化控制工具,已經(jīng)深深地滲入到我們的日常生活當(dāng)中。通過(guò)此次基于單片機(jī)設(shè)計(jì)的籃球計(jì)時(shí)計(jì)分系統(tǒng),我們可以更清楚詳細(xì)的了解單片機(jī)程序設(shè)計(jì)的基本指令功能、編程步驟和技巧來(lái)講述單片機(jī)編程,并對(duì)MCS-51單片機(jī)的結(jié)構(gòu)和原理進(jìn)行講述,以及基于單片機(jī)開(kāi)發(fā)應(yīng)用的相關(guān)芯片的工作原理,并且可以在將來(lái)的工作和學(xué)習(xí)中加以應(yīng)用[5].1。3設(shè)計(jì)目的TC"1。3設(shè)計(jì)目的"\fC隨著單片機(jī)在各個(gè)領(lǐng)域的廣泛應(yīng)用,許多用單片機(jī)做控制的球賽計(jì)時(shí)計(jì)分系統(tǒng)也應(yīng)運(yùn)而產(chǎn)生,如用單片機(jī)控制LCD液晶顯示器計(jì)時(shí)計(jì)分器,用單片機(jī)控制LED七段顯示器計(jì)時(shí)計(jì)分器等。本次設(shè)計(jì)用由AT89C51編程控制LED七段數(shù)碼管作顯示的球賽計(jì)時(shí)計(jì)分系統(tǒng)。該系統(tǒng)具有賽程定時(shí)設(shè)置,賽程時(shí)間暫停,及時(shí)刷新甲、乙雙方的成績(jī)以及賽后成績(jī)暫存等功能。它具有價(jià)格低廉,性能穩(wěn)定,操作方便并且易于攜帶等特點(diǎn).廣泛適合各類學(xué)校或者小型團(tuán)體作為賽程計(jì)時(shí)計(jì)分[8].通過(guò)本次基于C51系列籃球計(jì)時(shí)計(jì)分器的設(shè)計(jì),可以了解、熟悉有關(guān)單片機(jī)開(kāi)發(fā)設(shè)計(jì)的過(guò)程,并加深對(duì)單片機(jī)的理解和應(yīng)用以及掌握單片機(jī)與外圍接口的一些方法和技巧,這主要表現(xiàn)在以下一些方面:(1)籃球賽計(jì)時(shí)計(jì)分系統(tǒng)包含了8051系列單片機(jī)的最小應(yīng)用系統(tǒng)的構(gòu)成,同時(shí)在此基礎(chǔ)上擴(kuò)展了一些使用性強(qiáng)的外圍接口.(2)可以了解到LED顯示器的結(jié)構(gòu)、工作原理以及這種顯示器的接口實(shí)例與具體連接與編程方法。(3)怎樣利用串行口來(lái)擴(kuò)展顯示接口等[6]。第二章系統(tǒng)硬件介紹TC”第二章系統(tǒng)硬件介紹”\fC\l”1”2。1MCS—51單片機(jī)簡(jiǎn)述TC"2。1MCS-51單片機(jī)簡(jiǎn)述"\fC\fCAT89C51的主要特性如表2—1所示:

·兼容MCS—51指令系統(tǒng)·4k可反復(fù)擦寫(〉1000次)FlashROM

·32個(gè)雙向I/O口·可編程UARL通道

·兩個(gè)16位可編程定時(shí)/計(jì)數(shù)器·全靜態(tài)操作0-24MHz

·1個(gè)串行中斷·128x8bit內(nèi)部RAM

·兩個(gè)外部中斷源·共6個(gè)中斷源

·可直接驅(qū)動(dòng)LED·3級(jí)加密位

·低功耗空閑和掉電模式·軟件設(shè)置睡眠和喚醒功能表2-1AT89C51主要功能描述2。1.3管腳說(shuō)明TC"2.1.3管腳說(shuō)明”\fC\l”3"

VCC:供電電壓。GND:接地。P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門電流.當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位.在FIASH編程時(shí),P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流.P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收.P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入.并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容.P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入.作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故.P3口也可作為AT89C51的一些特殊功能口,如表2—2所示:表2—2AT89C51特殊功能表端口引腳第二功能P3。0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2/INT0(外部中斷0)P3。3/INT1(外部中斷1)P3。4T0(記時(shí)器0外部輸入)P3.5T1(記時(shí)器1外部輸入)P3.6/WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7/RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間.ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖.如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。

/PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效.但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)./EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H—FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器.注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來(lái)自反向振蕩器的輸出。2。1.4芯片擦除TC”2。1。4芯片擦除"\fC\l”3”整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持ALE管腳處于低電平10ms來(lái)完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行.此外,AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式.在閑置模式下,CPU停止工作。但RAM,定時(shí)器,計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位為止[6]。2.1。5掉電模式TC”2。1。5掉電模式”\fC\l”3”在掉電模式下,振蕩器停止工作,進(jìn)入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi)RAM和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié)。推出掉電模式的唯一方法是硬件復(fù)位。復(fù)位后將重新定義全部特殊功能寄存器但不改變RAM中的內(nèi)容,在VCC恢復(fù)到正常工作電平前,復(fù)位應(yīng)無(wú)效,且必須保持一定時(shí)間以使振蕩器重新啟動(dòng)并且穩(wěn)定的工作[5]。表2—3外部引腳狀態(tài)表模式空閑模式空閑模式掉電模式掉電模式程序存儲(chǔ)器內(nèi)部外部?jī)?nèi)部外部ALE1100/PROG1100P0數(shù)據(jù)浮空數(shù)據(jù)浮空P1數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)P2數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)P3浮空浮空數(shù)據(jù)數(shù)據(jù)2。1。6程序儲(chǔ)存器的加密TC”2。1.6程序儲(chǔ)存器的加密"\fC\fC2。2。1顯示器介紹TC”2。2。1顯示器介紹"\fC\fC\l”3”圖2—27段LED數(shù)碼管如圖2-2,LED顯示器又稱為數(shù)碼管,LED顯示器由8個(gè)發(fā)光二極管組成。中7個(gè)長(zhǎng)條形的發(fā)光管排列成“日"字形,另一個(gè)賀點(diǎn)形的發(fā)光管在顯示器的右下角作為顯示小數(shù)點(diǎn)用,它能顯示各種數(shù)字及部份英文字母.LEDD顯示器有兩種不同的形式:一種是8個(gè)發(fā)光二極管的陽(yáng)極都連在一起的,稱之為共陽(yáng)極LED顯示器;另一種是8個(gè)發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED顯示器[1]。如圖2-3所示。圖2-3共陰與共陽(yáng)極LED顯示器2。2.3LED顯示器顯示方式TC"2。2.3LED顯示器顯示方式"\fC點(diǎn)亮LED顯示器有兩種方式:一是靜態(tài)顯示;二是動(dòng)態(tài)顯示。在本次設(shè)計(jì)中,采用的是靜態(tài)顯示。這種電路的優(yōu)點(diǎn)在于:在同一時(shí)間可以顯示不同的字符;但缺點(diǎn)就是占用端口資源較多。從下圖可以看出,每位LED顯示器需要單獨(dú)占用8根端口線,因此,在數(shù)據(jù)較多的時(shí)候,往往不采用這種設(shè)計(jì),而是采用動(dòng)態(tài)顯示方式[3]。所謂動(dòng)態(tài)顯示,就是將要顯示的多位LED顯示器采用一個(gè)8位的段選端口,然后采用動(dòng)態(tài)掃描一位一位地輪流點(diǎn)亮各位顯示器。圖2-4為4位LED顯示器動(dòng)態(tài)顯示電路。圖2-4動(dòng)態(tài)顯示圖2.3CD4094芯片介紹TC”2.3CD4094芯片介紹"\fC\l”2"在本次設(shè)計(jì)的計(jì)分電路中,我們使用集成電路CD4094。CD4094是8位移位寄存器,它主要完成串行輸入,并行輸出8位數(shù)據(jù)的功能,所以又叫8位串/并轉(zhuǎn)換器.圖2—5為CD4094的引腳圖:圖2-5CD4094引腳分布圖2。474LS21芯片介紹TC"2。474LS21芯片介紹"\fC本次設(shè)計(jì)中的比分校正電路采用四輸入與門74LS21來(lái)實(shí)現(xiàn)。74LS21是雙4輸入與門。在一個(gè)芯片里有兩個(gè)相同的單元,其中一個(gè)任何一個(gè)都是1/2斷口。同型號(hào)的74系列、74HC系列、74LS系列芯片,邏輯功能上是一樣的。表2-4為74、74HC、74LS系列芯片資料[8]。表2-474、74HC、74LS相關(guān)資料表系列電平典型傳輸延遲ns最大驅(qū)動(dòng)電流AHCCMOS8。5-8/8AHCTCOMS/TTL8.5-8/8HCCOMS25-8/8HCTCOMS/TTL25-8/8ACTCOMS/TTL10-24/24FTTL6.5

—15/64ALSTTL10-15/64LSTTL18-15/242.5報(bào)警器TC”2.5報(bào)警器”\fC\fC報(bào)警器的種類很多,比如:揚(yáng)聲器,蜂鳴器等,本次設(shè)計(jì)采用的是電磁式蜂鳴器作為報(bào)警器。電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、震動(dòng)膜片以及外殼等組成。接通電源后,振蕩器產(chǎn)生的音頻信號(hào)通過(guò)電磁線圈,使得電磁線圈產(chǎn)生了一個(gè)磁場(chǎng)。振動(dòng)膜片在電磁線圈和磁鐵的相互作用下,周期性的振動(dòng)發(fā)聲[2]。第三章硬件電路設(shè)計(jì)TC"第三章硬件電路設(shè)計(jì)”\fC系統(tǒng)硬件由以下幾個(gè)部分組成:(1)單片機(jī)AT89C51(2)計(jì)時(shí)電路(3)計(jì)分電路(4)按鍵開(kāi)關(guān)說(shuō)明:整個(gè)系統(tǒng)只用一片AT89C51;在圖中將計(jì)時(shí)電路與計(jì)分電路分開(kāi)畫,只是為了能夠更好的更清晰的說(shuō)明問(wèn)題;并且在整個(gè)畫圖過(guò)程中將AT89C51引腳打亂是為了使圖示能夠更加的清晰明了[7]。3.1系統(tǒng)方案設(shè)計(jì)TC”3。1系統(tǒng)方案設(shè)計(jì)”\fC\l”2”3。1。1系統(tǒng)構(gòu)成框圖TC"3.1.1系統(tǒng)構(gòu)成框圖”\fC\l”3"基于單片機(jī)系統(tǒng)的籃球賽計(jì)時(shí)計(jì)分器的系統(tǒng)構(gòu)成框圖如圖3-1所視。圖3-1系統(tǒng)構(gòu)成圖本系統(tǒng)采用單片機(jī)AT89C51作為本設(shè)計(jì)的核心元件.利用7段共陰LED作為顯示器件.在本次設(shè)計(jì)中,共接入十個(gè)七段共陰LED顯示器,其中6個(gè)用于記錄甲、乙兩隊(duì)的分?jǐn)?shù),每隊(duì)3個(gè)LED顯示器分?jǐn)?shù)范圍可達(dá)到0—99分,足夠滿足賽程需要。另外4個(gè)LED顯示器則用于記錄賽程的時(shí)間,其中兩個(gè)用于顯示分鐘;2個(gè)用于顯示秒鐘。賽程計(jì)時(shí)采用倒計(jì)時(shí)方式.即比賽前將時(shí)間設(shè)置好,比賽開(kāi)始時(shí)啟動(dòng)計(jì)時(shí),直至計(jì)時(shí)到零為止。根據(jù)設(shè)計(jì),計(jì)時(shí)范圍可達(dá)0—99分鐘,也完全滿足賽程的需要。其次,為了配合計(jì)時(shí)器和計(jì)分器校正、調(diào)整時(shí)間和比分,特在本設(shè)計(jì)中設(shè)立了7個(gè)按鍵。其中4個(gè)用于輸入甲、乙兩隊(duì)的分?jǐn)?shù);另外3個(gè)則用于完成設(shè)置、調(diào)整、啟動(dòng)和暫停賽程時(shí)間等功能[6]。3。1.2器件選擇TC"3.1.2器件選擇”\fC\l”3”本系統(tǒng)在設(shè)計(jì)的過(guò)程中主要選取了以下一些器件:?jiǎn)纹瑱C(jī):AT89C51四一七段BCD譯碼芯片:CD4511并行/串行轉(zhuǎn)換芯片:CD4094四輸入與門:74LS21顯示器件:7段共陰LED顯示器按鍵:歐姆龍按鍵3。2硬件總體設(shè)計(jì)TC"3.2硬件總體設(shè)計(jì)"\fC3.3。1振蕩電路TC"3。3。1振蕩電路”\fC\l”3”本次設(shè)計(jì)要使用到AT89C51單片機(jī)的時(shí)鐘振蕩功能.AT89C51中有一個(gè)用于構(gòu)成內(nèi)部震蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入和輸出端.這個(gè)放大器與作為反饋元件的片外石英晶體或者陶瓷諧振器一起構(gòu)成自激振蕩器[1]。振蕩電路如圖3-2所示圖3—2時(shí)鐘振蕩電路圖3—3外部時(shí)鐘電路圖3-4系統(tǒng)總體電路圖3-5計(jì)時(shí)電路原理圖3.3。2計(jì)時(shí)電路的工作原理TC”3。3.2計(jì)時(shí)電路的工作原理"\fC\l”3”計(jì)時(shí)電路如圖3—5所示,主要由開(kāi)關(guān)K5—K7,單片機(jī)AT89C51,譯碼器以及LED顯示器構(gòu)成。其工作過(guò)程如下:當(dāng)比賽準(zhǔn)備開(kāi)始的時(shí)候,當(dāng)調(diào)時(shí)(十位)開(kāi)關(guān)K5按下時(shí),產(chǎn)生一個(gè)低電平;立即數(shù)00H取出,同時(shí)對(duì)應(yīng)調(diào)分(十位)控制端P2。0的LE輸出高電平,表示此時(shí)可以向調(diào)分(十位)的CD4511發(fā)送數(shù)據(jù),但CD4511的輸出端不會(huì)有輸出,因?yàn)長(zhǎng)E=1時(shí),CD4511鎖存。這時(shí),只要將要顯示數(shù)據(jù)的代碼經(jīng)過(guò)P1口的P1。0送到CD4511的輸入端A~~D端,送完后,將LE清零。這時(shí)便可以將要顯示數(shù)據(jù)的代碼經(jīng)過(guò)CD4511譯碼后,從輸出端a~~g輸出,送LED顯示器顯示即可.調(diào)時(shí)按鍵開(kāi)關(guān)每按一次,數(shù)字自動(dòng)加1,直到調(diào)到需要設(shè)置的時(shí)間即[2]。3.4計(jì)分電路部分TC"3.4計(jì)分電路部分"\fCMCS-51系列單片機(jī)片內(nèi)有一個(gè)串行I/O端口,通過(guò)引腳RXD(P3.0)和TXD(P3.1)可與外設(shè)電路進(jìn)行全雙工的串行異步通信[12]。8051單片機(jī)的串行端口有4種基本工作方式,通過(guò)編程設(shè)置,可以使其工作在任一方式,以滿足不同應(yīng)用場(chǎng)合的需要。其中,方式0主要用于外接移位寄存器,以擴(kuò)展單片機(jī)的I/O電路;方式1多用于雙機(jī)之間或與外設(shè)電路的通信;方式2,3除有方式l的功能外,還可用作多機(jī)通信,以構(gòu)成分布式多微機(jī)系統(tǒng).串行端口有兩個(gè)控制寄存器(SCON和PCON),用來(lái)設(shè)置工作方式、發(fā)送或接收的狀態(tài)、特征位、數(shù)據(jù)傳送的波特率(每秒傳送的位數(shù))以及作為中斷標(biāo)志等[11]。串行端口有一個(gè)數(shù)據(jù)寄存器SBUF(在特殊功能寄存器中的字節(jié)地址為99H),該寄存器為發(fā)送和接收所共同。發(fā)送時(shí),只寫不讀;接收時(shí),只讀不寫。在一定條件下,向SBUF寫入數(shù)據(jù)就啟動(dòng)了發(fā)送過(guò)程;讀SBUF就啟動(dòng)了接收過(guò)程。串行通信的波特率可以程控設(shè)定。在不同工作方式中,由時(shí)鐘振蕩頻率的分頻值或由定時(shí)器T1的溢出率確定,使用十分方便靈活[10]。3。4.2計(jì)分電路原理圖TC"3。4.2計(jì)分電路原理圖”\fC圖3—6計(jì)分電路原理圖3.4。3計(jì)分電路的工作原理TC"3。4.3計(jì)分電路的工作原理"\fC4.1籃球計(jì)時(shí)計(jì)分器的工作過(guò)程TC"4.1球賽計(jì)時(shí)計(jì)分器的工作過(guò)程”\fC編程前,必須設(shè)置好地址、數(shù)據(jù)以及控制信號(hào)。編程單元的地址加在P1口和P2口的P2。0-P2.3(11位地址范圍為0000H—0FFFH),數(shù)據(jù)從P0口輸入,引腳P2。6、P2.7、P3.6、P3.7的電平設(shè)置參考校驗(yàn)電路,/PSEN為低電平,RST保持高電平,EA/Vpp引腳是編程電源的輸入端,按要求加上編程電壓,ALE/PROG引腳輸入編程脈沖。編程時(shí),可采用4—20MHZ的時(shí)鐘振蕩器,本次設(shè)計(jì)采用12MHZ的石英晶體振蕩器。具體過(guò)程是:(1)在地址線上加上要編程單元的地址信號(hào),這里為33H,34H,35H,36H,37H,38H,6個(gè)地址符.(2)在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié),比如甲隊(duì)加一分就是在36H地址上加上(偏移)一個(gè)字符06H。(3)激活相應(yīng)的控制信號(hào)。(4)在高電壓編程方式時(shí),將EA/Vpp端加上+12V編程電壓。(5)改變編程單元的地址和寫入的數(shù)據(jù),重復(fù)1—5步驟,直到全部文件編程結(jié)束,每個(gè)字節(jié)寫入周期是自身定時(shí)的,通常約為1。5ms[7]。本次設(shè)計(jì)的程序流程圖如4—1:圖4—1程序流程圖4。3主要模塊說(shuō)明TC"4.3主要模塊說(shuō)明”\fC\l”2"4。3。1計(jì)時(shí)部分模塊流程TC”4.3。1計(jì)時(shí)部分模塊流程”\fC\l”3"圖4-2計(jì)時(shí)部分流程圖4。3。2記分部分模塊流程TC"4.3.2記分部分模塊流程”\fC\l”3"圖4-3計(jì)分部分流程4。4籃球計(jì)時(shí)計(jì)分器程序源代碼TC"4.4籃球計(jì)時(shí)計(jì)分器程序源代碼"\fC\l”2"程序代碼:ORG0000HAJMPLK1;主程序地址ORG000BH;定時(shí)中斷入口地址AJMPCTCOORG0013H;外部中斷入口地址AJMPCXTLK1:MOV33H,#00H;甲隊(duì)記分清0MOV34H,#00HMOV35H,#00HMOV36H,#00H;乙隊(duì)記分清0MOV37H,#00HMOV38H,#00HMOV40H,#00H;記時(shí)分鐘清0MOV41H,#00HCLRP0。0Mp:CLRP2。0;計(jì)時(shí)牌子清零CLRP2。1;分分秒秒清0CLRP2。2CLRP2.3MOVP1,#00HNOPNOPSETBP2.0SETBP2。1SETBP2.2SETBP2.3MOV42H,#05H;送秒鐘初值59秒MOV43H,#09HMOVSCON,#00H;計(jì)分牌子清零程序CLRP3。7MOVR1,#33HMOVR2,#06LP:MOVA,@R1MOVDPTR,#TAB;取顯示數(shù)MOVCA,@A+DPTRMOVSBUF,A;通過(guò)串行口發(fā)顯示數(shù)據(jù)JNBTI,$;是否發(fā)送完畢CLRTI;清除標(biāo)志位INCR1DJNZR2,LP;6次是否發(fā)送完畢SETBP3。7;顯示數(shù)據(jù)LK3:JBP2。4,LK6ACALLD10MSJBP2。4,LK3ACALLD2SLK4:JBP2.4,LK3;調(diào)整分鐘(十位)CLRP2.0;顯示分鐘十位數(shù)據(jù)MOVP1,40HSETBP2.0ACALLD2S;調(diào)用延時(shí)程序INC40H;將十位加1MOVA,40HCJNEA,#0AH,LK4;十到了沒(méi)有MOV40H,#00HAJMPLK4LK6:JBP2.5,LK5ACALLD10MSJBP2。5,LK6ACALLD2SLK7:JBP2。5,LK6;調(diào)分鐘(個(gè)位)CLRP2。1;顯示分鐘個(gè)位數(shù)據(jù)MOVP1,41HSETBP2.1ACALLD2S;調(diào)用延時(shí)程序INC41H;將個(gè)位加1MOVA,41HCJNEA,#0AH,LK7;十到了沒(méi)有MOV41H,#00HAJMPLK7LK5:JBP2。6,LK3;等待啟動(dòng)計(jì)時(shí)ACALLD10MSJBP2。6,LK5CLRP2。2;顯示秒鐘十位MOVP1,42HNOPNOPSETBP2。2CLRP2.3;顯示秒鐘個(gè)位MOVP1,43HNOPNOPSETBP2。3SETBP0.0;點(diǎn)亮計(jì)時(shí)指示燈MOVTMOD,#01H;定時(shí)中斷初始化MOVTL0,#0B0H;送定時(shí)初值MOVTH0,#3CHSETBET0;開(kāi)放定時(shí)中斷SETBEX1;開(kāi)放外部中斷CLRIT0;外部中斷低電平有效SETBTR0;啟動(dòng)定時(shí)MOVR0,#14HSJMP$CTCO:JNBP2。6,LK8;定時(shí)中斷程序DJNZR0,NEXT;一秒鐘到了嗎?MOVR0,#14HDEC43HCLRP2.3;顯示時(shí)間MOVP1,43H;顯示秒鐘個(gè)位NOPNOPSETBP2。3CLRP2。2;顯示秒鐘十位MOVP1,42HNOPNOPSETBP2.2CLRP2。1;顯示分鐘個(gè)位MOVP1,41HNOPNOPSETBP2.1CLRP2.0;顯示分鐘十位MOVP1,40HNOPNOPSETBP2.0MOVA,43HCJNEA,#00H,NEXT;秒鐘個(gè)位回到0沒(méi)有MOV43H,#0AH;秒鐘個(gè)位送初值10MOVA,42HCJNEA,00H,LP3;秒鐘十位回到0沒(méi)有MOV42H,#05H;秒鐘十位送初值5MOVA,41HCJNEA,#00H,LP2;分種個(gè)位回到0沒(méi)有MOV41H,#09H;分鐘個(gè)位送初值9MOVA,40HCJNEA,#00H,LP1;分鐘十位回到0沒(méi)有CLRP0.0CLRP3.6;時(shí)間到發(fā)出警備10SACALLD10SSETBP3.6KP11:JBP2.6,KP11;等待交換AJMPKP12;去兩隊(duì)分?jǐn)?shù)交換程序LK8:ACALLD10MSJBP2.6,CTCO;計(jì)時(shí)暫停處理CLRP0。0LK9:JNBP2。6,LK9;等待鍵按下KL10:JBP2.6,LK10;等待鍵放開(kāi)SETBP0。0;繼續(xù)計(jì)時(shí)AJMPCTCOP3:DEC42H;將秒鐘十位減1AJMPNEXTLP1:DEC40H;將分鐘十位減1AJMPNEXTLP2:DEC41H;將分鐘個(gè)位減1NEXT:MOVTL0,#0B0H;定時(shí)中斷送初值返回MOVTH0,#3CHRETIKP12:MOVA,33H;甲乙兩隊(duì)交換分?jǐn)?shù)XCHA,36HMOV33H,AMOVA,34HXCHA,37HMOV34H,AMOVA,35HXCHA,38HMOV35H,AAJMPmp;返回顯示交換后的分?jǐn)?shù)CXT:JNBP3.5,KP1;甲隊(duì)+1JNBP3。4,KP2;甲隊(duì)—1JNBP0。2,KP3;乙隊(duì)+1JNBP0。1,KP4;乙隊(duì)—1AJMPKPKP1:JNC36H;甲隊(duì)+1程序MOVA,36HCJNEA,#0AH,KP5MOV36H,#00HINC37HMOVA,37HCJNEA,#0AH,KP5MOV37H,#00HINC38HAJMPKP5KP2:MOVA,36H;甲隊(duì)—1程序CJNEA,#00H,AP1MOV36H,#09HDEC37HAJMPKP5AP1:DEC36HAJMPKP5KP3:INC33H;乙隊(duì)+1程序MOVA,33HCJNEA,#0AH,KP5MOV33H,#00HINC34HMOVA,34HCJNEA,#0AH,KP5MOVA,34HCJNEA,#0AH,KP5MOV34H,#00HINC35HAJMPKP5KP4:MOVA,33H;乙隊(duì)—1程序CJNEA,#00H,AP2MOV34H,#09HDEC35HAJMPKP5AP2:DEC34HKP5:CLRP3。7;顯示分?jǐn)?shù)MOVR1,#33HMOVR2,#06HLP6:MOVA,@R1MOVDPTR,#TAB;查找顯示數(shù)據(jù)MOVCA,@A+DPTRMOVSBUF,A;通過(guò)串行口發(fā)送顯示JNBTI,$;串行口是否發(fā)送完畢CLRTI;串行口標(biāo)志清0INCR1DJNZR2,L;6次是否發(fā)送完畢SETBP3。7KP6:JNBP3.3,KP6KP:RETITAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H;顯示字D10S:MOV50H,#05H;延時(shí)程序10SD2S:MOVR3,#0AH;延時(shí)程序2SD200MS:MOVR7,#14HD10MS:MOVR6,#05HLOOP3:MOVR5,#0F9HNOPNOPLOOP2:DJNZR5,LOOP2DJNZR6,LOOP3DJNZR7,D10MSDJNZR3,D200MSDJNZ50H,D2SRET

結(jié)論TC"結(jié)論"\fC\l”1"在本次畢業(yè)設(shè)計(jì),我通過(guò)基于典型單片機(jī)AT89C51的設(shè)計(jì)和應(yīng)用,對(duì)于單片機(jī)工作原理,功能有了宏觀的了解,并對(duì)單片機(jī)匯編程序的應(yīng)用有了新的、進(jìn)一步的認(rèn)識(shí)。在本次設(shè)計(jì)的過(guò)程中,我發(fā)現(xiàn)很多的問(wèn)題,給我的感覺(jué)就是下手很難,很不順手,看似很簡(jiǎn)單的電路,要?jiǎng)邮职阉o設(shè)計(jì)出來(lái),是很難的一件事,主要原因是我們沒(méi)有經(jīng)常動(dòng)手設(shè)計(jì)過(guò)電路。另外單片機(jī)系統(tǒng)的知識(shí)似懂非懂,而且很多知識(shí)當(dāng)時(shí)弄明白了,現(xiàn)在要用的時(shí)候又不記得,造成我用了大量的時(shí)間去查閱各種資料和程序命令,因此整個(gè)過(guò)程時(shí)間安排不合理.由于設(shè)計(jì)的計(jì)劃沒(méi)有安排好,設(shè)計(jì)的時(shí)間極為倉(cāng)促,尤其是在硬件調(diào)試的過(guò)程中出現(xiàn)了很大的問(wèn)題.另外資料的查找也是一大難題,這就要求我們?cè)谝院蟮膶W(xué)習(xí)中,應(yīng)該注意到這一點(diǎn),更重要的是我們要學(xué)會(huì)把從書本中學(xué)到的知識(shí)和實(shí)際的電路聯(lián)系起來(lái),這不論是對(duì)我們以后的就業(yè)還是學(xué)習(xí),都會(huì)起到很大的促進(jìn)和幫助.在利用單片機(jī)設(shè)計(jì)簡(jiǎn)易LED顯示屏的整個(gè)設(shè)計(jì)過(guò)程中,從電路的設(shè)計(jì),元器件的采購(gòu),電路的調(diào)試,程序的編寫以及最后的電路板的制作,我都親自參與了設(shè)計(jì)與制作,這對(duì)我對(duì)于理論和實(shí)際相結(jié)合有了新的認(rèn)識(shí)。單片機(jī)目標(biāo)系統(tǒng)裝完之后,應(yīng)該首先認(rèn)真細(xì)致地檢查一遍:第一,根據(jù)硬件電路原理圖和裝配圖仔細(xì)檢查線路的正確性,并檢查元器件安裝是否正確。常常要注意的是芯片及開(kāi)關(guān)管的型號(hào)、放大器和開(kāi)關(guān)管的極性、電容器的耐壓和極性、電阻的阻值和功率是否與設(shè)計(jì)圖紙相符,重點(diǎn)檢查系統(tǒng)總線間或總線與其它信號(hào)線間是否存在短路;第二,檢查焊接點(diǎn)是否

溫馨提示

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