版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、-PAGE . z基于單片機(jī)的搶答器電路設(shè)計(jì)摘要:隨著人才的競爭也越來越劇烈,一些企事業(yè)單位為了選拔或者獎勵員工會采取智力問答、知識競賽的方式,所以搶答器也就成為必備的設(shè)備。本文介紹了一種基于單片機(jī)的搶答器的設(shè)計(jì)方法,以單片機(jī)為控制核心,通過檢測按鍵的方式來判斷搶答的選手,并將選手的編號以數(shù)字的方式在數(shù)碼管上顯示出來。在選手答復(fù)下列問題時(shí),其他選手的搶答按鍵將被屏蔽。系統(tǒng)還為每路搶答器設(shè)置了雙色發(fā)光二極管,用于指示選手搶答成功或犯規(guī)。本文提出的設(shè)計(jì)方法簡單易懂、操作方便。關(guān)鍵字:搶答器、單片機(jī)、數(shù)碼管,74LS164TheDesignof The ResponderBased On Micro
2、controllerAbstract:With the petition between talents is more and more fierce. As a result, to select and reward the staff, some of enterprise and public institutions take a way of mind quiz or knowledge petition, and responderbees one of the necessary equipments. In this paper, the author introduces
3、 a design procedure of the responderbased on Microcontroller, with the cybernetics core of Microcontroller, and through the way of testing the keys pressing to judge which petitor races to be the first to answer and to show the number of the petitor digitally on the digitaltube. Also, when the petit
4、or presses the key, the buzzer will be singing at the same time and the signals of others answer keys will be shielded. The system also setsdouble colour Light emitting diode for differentr responder, which can dedicate the success or foul of petitors. Generally speaking, the design procedure introd
5、uced is easy to understand and convenient to operate.Keywords:Responder、Microcontroller、Digital tube、74LS164目 錄 TOC o 1-3 h z u HYPERLINK l _Toc325960492目 錄 PAGEREF _Toc325960492 h 2HYPERLINK l _Toc325960493第一章 序言 PAGEREF _Toc325960493 h 4HYPERLINK l _Toc3259604941.1 選題目的及意義 PAGEREF _Toc325960494 h
6、4HYPERLINK l _Toc3259604951.2 搶答器簡介 PAGEREF _Toc325960495 h 4HYPERLINK l _Toc325960496第二章 方案設(shè)計(jì) PAGEREF _Toc325960496 h 6HYPERLINK l _Toc3259604972.1 課題要求 PAGEREF _Toc325960497 h 6HYPERLINK l _Toc3259604982.2 設(shè)計(jì)方案選擇 PAGEREF _Toc325960498 h 6HYPERLINK l _Toc3259604992.2.1 系統(tǒng)設(shè)計(jì)方案選擇 PAGEREF _Toc32596049
7、9 h 6HYPERLINK l _Toc3259605002.2.2 控制器選擇 PAGEREF _Toc325960500 h 7HYPERLINK l _Toc3259605012.2.3 顯示器件選擇 PAGEREF _Toc325960501 h 7HYPERLINK l _Toc325960502第三章 系統(tǒng)硬件設(shè)計(jì) PAGEREF _Toc325960502 h 8HYPERLINK l _Toc3259605033.1 電路設(shè)計(jì)環(huán)境 PAGEREF _Toc325960503 h 8HYPERLINK l _Toc3259605043.2 輸入按鍵電路設(shè)計(jì) PAGEREF _T
8、oc325960504 h 9HYPERLINK l _Toc3259605053.3單片機(jī)控制電路設(shè)計(jì) PAGEREF _Toc325960505 h 9HYPERLINK l _Toc3259605063.3.1 單片機(jī)的開展 PAGEREF _Toc325960506 h 9HYPERLINK l _Toc3259605073.3.2 單片機(jī)AT89S51芯片簡介 PAGEREF _Toc325960507 h 10HYPERLINK l _Toc325960508時(shí)鐘電路設(shè)計(jì) PAGEREF _Toc325960508 h 13HYPERLINK l _Toc325960509復(fù)位電路
9、設(shè)計(jì) PAGEREF _Toc325960509 h 14HYPERLINK l _Toc325960510控制電路設(shè)計(jì)PAGEREF _Toc325960510 h 14HYPERLINK l _Toc3259605113.4 顯示電路設(shè)計(jì) PAGEREF _Toc325960511 h 15HYPERLINK l _Toc3259605123.4.1 74LS164介紹 PAGEREF _Toc325960512 h 15HYPERLINK l _Toc3259605133.4.2 顯示電路設(shè)計(jì) PAGEREF _Toc325960513 h 16HYPERLINK l _Toc32596
10、05143.5 LED燈提示電路設(shè)計(jì) PAGEREF _Toc325960514 h 17HYPERLINK l _Toc3259605153.6 穩(wěn)壓電源設(shè)計(jì) PAGEREF _Toc325960515 h 18HYPERLINK l _Toc3259605163.7 本章小結(jié) PAGEREF _Toc325960516 h 19HYPERLINK l _Toc325960517第四章 系統(tǒng)軟件設(shè)計(jì) PAGEREF _Toc325960517 h 20HYPERLINK l _Toc3259605184.1 程序設(shè)計(jì)應(yīng)用軟件 PAGEREF _Toc325960518 h 20HYPERLI
11、NK l _Toc3259605194.2 程序設(shè)計(jì)流程 PAGEREF _Toc325960519 h 21HYPERLINK l _Toc3259605204.3 讀取按鍵值程序設(shè)計(jì) PAGEREF _Toc325960520 h 23HYPERLINK l _Toc3259605214.4 顯示程序設(shè)計(jì) PAGEREF _Toc325960521 h 24HYPERLINK l _Toc3259605224.5 定時(shí)時(shí)間程序設(shè)計(jì) PAGEREF _Toc325960522 h 26HYPERLINK l _Toc3259605234.6本章小結(jié) PAGEREF _Toc325960523
12、 h 29HYPERLINK l _Toc325960524第五章 系統(tǒng)調(diào)試故障與分析 PAGEREF _Toc325960524 h 30HYPERLINK l _Toc325960525第六章 總結(jié) PAGEREF _Toc325960525 h 33HYPERLINK l _Toc325960526致 PAGEREF _Toc325960526 h 34HYPERLINK l _Toc325960527參考文獻(xiàn) PAGEREF _Toc325960527 h 35HYPERLINK l _Toc325960528附錄1 電路原理圖 PAGEREF _Toc325960528 h 36HY
13、PERLINK l _Toc325960529附錄2 中英文翻譯 PAGEREF _Toc325960529 h 37HYPERLINK l _Toc325960530附錄3 元件清單 PAGEREF _Toc325960530 h 43HYPERLINK l _Toc325960531附錄4 源程序清單 PAGEREF _Toc325960531 h 44第一章 序言隨著計(jì)算機(jī)技術(shù)的開展和在控制系統(tǒng)中的廣泛應(yīng)用,以及設(shè)備向小型化、智能化開展,作為高新技術(shù)之一的單片機(jī)以其體積小、功能強(qiáng)、價(jià)格低廉、使用靈活等優(yōu)勢,顯示出了很強(qiáng)的生命力。進(jìn)入21世紀(jì)以來,開發(fā)推出單片機(jī)的公司很多,各種高性能單片機(jī)
14、芯片市場也異?;顫?,新技術(shù)的不斷采用,更加使單片機(jī)的種類、性能以及應(yīng)用領(lǐng)域不斷擴(kuò)大和提高。因其功耗低,超高型,低本錢,功能完整,在國越來越受到用戶的重視和廣泛使用。1.1 選題目的及意義搶答器是一種應(yīng)用于企事業(yè)單位或者智力競賽節(jié)目中作為搶答使用的一種電子設(shè)備。隨著社會經(jīng)濟(jì)的飛速開展,人才的競爭也越來越劇烈,一些企事業(yè)單位為了選拔或者獎勵員工會采取智力問答、知識競賽的方式,所以搶答器也就成為必備的設(shè)備。由于現(xiàn)在社會上普遍使用的搶答器一般都是老式的模擬、數(shù)字混合電路設(shè)計(jì)的電子搶答器,雖然這種設(shè)計(jì)技術(shù)已經(jīng)非常成熟,但是功能單一,電路構(gòu)造非常復(fù)雜龐大,本錢相當(dāng)高,不易于修改、升級和功能的擴(kuò)展。并且搶答
15、器的使用頻率較低,做為一個(gè)單位假設(shè)專購一臺搶答器雖然在經(jīng)濟(jì)上可以承受,但每年使用的次數(shù)極少,往往因長期存放使電子器件的搶答器損壞,再購置的麻煩和及時(shí)性就會影響活動的開展。因此設(shè)計(jì)了本搶答器即基于51單片機(jī)的8路搶答器。本說明書共分為4章,第一章課題分析與方案論證;第二章對硬件進(jìn)展了詳細(xì)的說明;第三章對系統(tǒng)的軟件進(jìn)展了分析;第四章有選擇地列舉了軟硬件在調(diào)試過程中出現(xiàn)的問題,并對問題作出了分析。設(shè)計(jì)的最終成果是:能通過搶答顯示搶答者組號;限時(shí)搶答;答題具有倒計(jì)時(shí)功能;違規(guī)搶答用不同指示信號。1.2 搶答器簡介搶答器時(shí)在競賽、文娛節(jié)目中可以準(zhǔn)確、直觀地判斷出搶答選手的電子設(shè)備,通過搶答選手的指示燈顯
16、示、聲音提示、數(shù)碼管顯示等方法指示搶答選手。搶答器主要分為電子搶答器和電腦搶答器。電子搶答器:電子搶答器的中心一般是由單片機(jī)及其外圍電路組成的,多適用于學(xué)校和企事業(yè)單位的簡單的搶答活動。電子搶答器有語音和非語音之分,非語音搶答器只有一個(gè)主機(jī)和一個(gè)搶答器按鈕,沒有記分牌顯示屏;語音搶答器由主機(jī)和顯示屏組成,可以記錄選手的分?jǐn)?shù)。電腦搶答器:電腦搶答器有無線和有線之分。無線電腦搶答器是由主機(jī)、搶答器專用軟件和無線按鈕組成,利用電腦和投影儀等設(shè)備可以活潑搶答的氣氛,多適用于大型的活動;有線電腦搶答器也是由主機(jī)和電腦組成,只是必須通過串口方式連接,配合投影儀和軟件等,也可以到達(dá)無線電腦搶答器活潑氣氛的效
17、果。第二章 方案設(shè)計(jì)2.1 課題要求系統(tǒng)設(shè)計(jì)方框圖如圖2-1所示。以AT89S51單片機(jī)為控制器,單片機(jī)通過查詢的方式判斷哪一路按鍵按下,并將搶答選手的編號送至數(shù)碼管顯示電路進(jìn)展顯示,*一位選手搶答成功時(shí),其他選手的搶答按鍵將被屏蔽,同時(shí)數(shù)碼管顯示答復(fù)下列問題的定時(shí)時(shí)間。在搶答期間,數(shù)碼管可以顯示搶答定時(shí)時(shí)間,搶答成功以LED燈亮提示,如果選手搶答犯規(guī),則以另一色LED燈亮提示。圖 2-1 系統(tǒng)設(shè)計(jì)方框圖2.2 設(shè)計(jì)方案選擇 系統(tǒng)設(shè)計(jì)方案選擇方案一:利用邏輯電路來搭建系統(tǒng)電路。按下按鍵后電路中的高電平觸發(fā)蜂鳴器蜂鳴提示,同時(shí)給顯示單元數(shù)字芯片一個(gè)高電平觸發(fā)信號,進(jìn)而來驅(qū)動顯示電路顯示數(shù)字。利用
18、這種方法設(shè)計(jì)的搶答器電路構(gòu)造復(fù)雜,所用的芯片比擬多,顯的比擬龐大,也不利于硬件制作,功能單一,修改與擴(kuò)展比擬繁瑣。方案二:利用單片機(jī)搭建系統(tǒng)電路。單片機(jī)通過檢測按鍵來判斷搶答選手,并將選手編號送數(shù)碼管顯示。電路簡單清晰、操作方便。比擬以上兩種方案,第一種方案除了電路構(gòu)造復(fù)雜外,對于按鍵的屏蔽也很難做到,而第二種方案通過軟件程序很輕松就可以實(shí)現(xiàn)按鍵屏蔽、編號顯示等功能。所以,本設(shè)計(jì)選用第二種設(shè)計(jì)方案。 控制器選擇對于控制芯片常用的可以選擇的有CPLD器件和單片機(jī)。方案一:CPLD器件。采用CPLD器件設(shè)計(jì)起來構(gòu)造清晰,各個(gè)模塊從硬件上設(shè)計(jì)起來相對簡單,控制與顯示模塊間的連接也會比擬方便,但是考慮
19、到本設(shè)計(jì)的特點(diǎn),CPLD在功能擴(kuò)展上比擬受限制,而且CPLD占用的資源也相對多一些,從本錢上來講,用可編程邏輯器件來設(shè)計(jì)沒有什么優(yōu)勢。方案二:單片機(jī)。單片機(jī)有豐富的中斷源,方便本實(shí)驗(yàn)的設(shè)計(jì),它的準(zhǔn)確度相當(dāng)高,并且C語言和匯編兼容的編程環(huán)境也很方便來實(shí)現(xiàn)一些調(diào)用。I/O口功能也比擬強(qiáng)大,方便使用,方便對設(shè)計(jì)進(jìn)展擴(kuò)展,使設(shè)計(jì)更加完善,本錢也相對低一些,雖然在控制與顯示的結(jié)合上有些復(fù)雜,但和前者相比用單片機(jī)設(shè)計(jì)還是比擬可行的。綜上所述,本設(shè)計(jì)選用單片機(jī)作為系統(tǒng)控制器。 顯示器件選擇方案一:采用LCD液晶顯示屏,液晶顯示屏的顯示功能強(qiáng)大,可顯示大量文字、圖形,顯示多樣,清晰可見,但是價(jià)格昂貴,需要的接
20、口線多。方案二:采用點(diǎn)陣式數(shù)碼管顯示,點(diǎn)陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,比擬適合顯示文字或者制作大型屏幕。方案三:采用LED數(shù)碼管動態(tài)掃描,LED數(shù)碼管價(jià)格適中,對于顯示數(shù)字最適宜,而且采用動態(tài)掃描法與單片機(jī)連接時(shí),占用的單片機(jī)口線少。綜上所述,搶答器顯示上要求顯示選手的編號和定時(shí)時(shí)間,所以,本設(shè)計(jì)選用數(shù)碼管作為顯示器件。第三章 系統(tǒng)硬件設(shè)計(jì)3.1 電路設(shè)計(jì)環(huán)境本設(shè)計(jì)硬件電路是在Protel電子設(shè)計(jì)軟件環(huán)境下進(jìn)展設(shè)計(jì)的,系統(tǒng)整體電路原理圖見附錄2。Protel電子線路設(shè)計(jì)軟件是在TANGO根底上改良的電路CAD軟件,由原理圖編輯、印制板設(shè)計(jì)、原理圖輸出、印制板輸出、原理圖器件庫編輯和其
21、他應(yīng)用程序組成。電路原理圖的設(shè)計(jì)是印制電路板設(shè)計(jì)中的第一步,也是非常重要的一步。電路原理圖設(shè)計(jì)得好壞將直接影響到后面的工作。電路原理圖的設(shè)計(jì)過程可分為以下幾個(gè)步驟:1、設(shè)置電路圖紙參數(shù)及相關(guān)信息根據(jù)電路圖的復(fù)雜程度設(shè)置圖紙的格式、尺寸、方向等參數(shù)以及與設(shè)計(jì)有關(guān)的信息,為以后的設(shè)計(jì)工作建立一個(gè)適宜的工作平面。2、裝入所需要的元件庫將所需的元件庫裝入設(shè)計(jì)系統(tǒng)中,以便從中查找和選定所需的元器件。3、設(shè)置元件將選定的元件放置到已建立好的工作平面上,并對元件在工作平面上的位置進(jìn)展調(diào)整,對元件的序號、封裝形式、顯示狀態(tài)等進(jìn)展定義和設(shè)置,以便為下一步的布線工作打好根底。4、電路圖布線利用Protel所提供的
22、各種工具、命令進(jìn)展畫圖工作,將事先放置好的元器件用具有電氣意義的導(dǎo)線、網(wǎng)絡(luò)標(biāo)號等連接起來,布線完畢后,一完整的電路原理圖根本完成。5、調(diào)整、檢查和修改利用Protel所提供的各種工具對前面所繪制的原理圖做進(jìn)一步的調(diào)整和修改。6、補(bǔ)充完善對原理圖做一些相應(yīng)的說明、標(biāo)注和修飾,增加可讀性和可觀性。7、保存和打印輸出這局部工作主要是對設(shè)計(jì)完成的原理圖進(jìn)展保存,包括存盤、打印輸出等,以供以后的工作中使用。3.2 輸入按鍵電路設(shè)計(jì) 按鍵電路如圖3-1所示。單片機(jī)的P1口控制矩陣鍵盤。本設(shè)計(jì)采用4*4矩陣鍵盤,S1-S8按鍵分別代表8個(gè)選手的按鍵。矩陣鍵盤的行線接P1.0-P1.3引腳,列線接P1.4-P
23、1.7引腳。將P1.0-P1.3引腳置為高電平,P1.4-P1.7引腳依次置為低電平,當(dāng)按鍵沒有按下時(shí),P1.0-P1.3口各引腳狀態(tài)不變,一旦有按鍵按下,則P1.0-P1.3就會有引腳變?yōu)榈碗娖?,這樣,通過讀入P1.0-P1.3的狀態(tài)就可得知是哪一個(gè)按鍵按下了,即對應(yīng)的哪一位選手搶答成功。輸入按鍵電路還需要注意到是兩個(gè)主要問題是判斷是否有按鍵按下和消除按鍵抖動的影響。按鍵確實(shí)認(rèn)反映在電壓上,就是和按鍵相連的引腳呈現(xiàn)出高電平還是低電平。消除按鍵的抖動通常有硬件、軟件兩種消除方法。一般在按鍵較多時(shí),采用軟件的方法消除抖動,即在第一次檢測到有按鍵按下時(shí),執(zhí)行一段延時(shí)10ms的子程序后,再確認(rèn)該鍵電
24、平是否任保持為閉合狀態(tài)電平,如果保持為閉合狀態(tài)電平就可以確認(rèn)真有按鍵按下,從而消除抖動的影響。圖3-1 按鍵電路3.3單片機(jī)控制電路設(shè)計(jì) 單片機(jī)的開展單片機(jī)是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器CPU、隨機(jī)存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。 單片機(jī)也被稱為微控制器,它最早是被用在工業(yè)控制領(lǐng)域。單片機(jī)由芯片僅有CPU的專用處理器開展而來。早期的單片機(jī)都是8位或4位的。其中最成功的是INTEL的8031,因?yàn)楹唵慰煽慷阅懿诲e獲得了很大的好評。此后在8031上開展出了M
25、CS51系列單片機(jī)系統(tǒng)?;谶@一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開場出現(xiàn)了16位單片機(jī),但因?yàn)樾詢r(jià)比不理想并未得到很廣泛的應(yīng)用。90年代后隨著消費(fèi)電子產(chǎn)品大開展,單片機(jī)技術(shù)得到了巨大提高。隨著INTEL i960系列特別是后來的ARM系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單片機(jī)的高端地位,并且進(jìn)入主流市場。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。單片機(jī)誕生于20世紀(jì)70年代末,經(jīng)歷了SCM、MCU、SoC三大階段。1、SCM即單片微型計(jì)算機(jī)階段:主要是尋求最正確的單片形態(tài)嵌入式系統(tǒng)的最正確體系構(gòu)造。 2、MCU即微控制器
26、階段:主要的技術(shù)開展方向是:不斷擴(kuò)展?jié)M足嵌入式應(yīng)用時(shí),對象系統(tǒng)要求的各種外圍電路與接口電路,突顯其對象的智能化控制能力。它所涉及的領(lǐng)域都與對象系統(tǒng)相關(guān),因此,開展MCU的重任不可防止地落在電氣、電子技術(shù)廠家。Philips公司以其在嵌入式應(yīng)用方面的巨大優(yōu)勢,將MCS-51從單片微型計(jì)算機(jī)迅速開展到微控制器。3、嵌入式系統(tǒng):單片機(jī)是嵌入式系統(tǒng)的獨(dú)立開展之路,向MCU階段開展的重要因素,就是尋求應(yīng)用系統(tǒng)在芯片上的最大化解決;因此,專用單片機(jī)的開展自然形成了SoC化趨勢。隨著微電子技術(shù)、IC設(shè)計(jì)、EDA工具的開展,基于SoC的單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)會有較大的開展。單片機(jī)AT89S51芯片簡介單片機(jī)是指將
27、CPU、隨機(jī)存儲器RAM、只讀存儲器ROM、輸入/輸出I/O接口電路集成在一個(gè)芯片上的微處理器,它將定時(shí)器/計(jì)數(shù)器等局部都制作在一塊芯片上,從而構(gòu)成一個(gè)完整的計(jì)算機(jī)系統(tǒng)。單片機(jī)的部構(gòu)造圖如圖3-2所示。圖3-2 單片機(jī)部構(gòu)造圖各局部功能介紹:CPU:中央處理器,是單片機(jī)最核心的局部,主要功能是完成運(yùn)算和控制功能。部存儲器:包含部數(shù)據(jù)存儲器和程序存儲器,存儲器由大量的存放器組成,每個(gè)存放器稱為一個(gè)存儲單元。定時(shí)/計(jì)數(shù)器:定時(shí)器是由單片機(jī)的部來提供一個(gè)計(jì)數(shù)信號;計(jì)數(shù)器記錄單片機(jī)外部發(fā)生的事件,由單片機(jī)的外部電路來提供計(jì)數(shù)信號。中斷系統(tǒng):中斷系統(tǒng)在單片機(jī)中起著非常重要的作用,采用的是一種實(shí)時(shí)控制技術(shù)
28、,能對突發(fā)時(shí)間進(jìn)展及時(shí)處理,從而提高系統(tǒng)的實(shí)時(shí)性能。串行I/O口:串行I/O口的數(shù)據(jù)每個(gè)位是按照順序傳輸?shù)?,其特點(diǎn)就是需要一對傳輸線,且本錢低,但是速度比擬慢,效率低,適合于靜態(tài)顯示的應(yīng)用。并行I/O口:并行I/O接口的數(shù)據(jù)所有的位同時(shí)傳輸?shù)?,其特點(diǎn)是速度快、效率高,但是傳輸多少位就需要多少根線,因此本錢較高,適合于動態(tài)顯示的應(yīng)用。AT89S51是美國ATMEL公司生產(chǎn)的低電壓、高性能的CMOS 8位單片機(jī),AT89S51的部構(gòu)造:MCS-51系列單片機(jī)都是在8051的根底上增加局部資源,例如程序存儲器、數(shù)據(jù)存儲器、I/O口、定時(shí)器/計(jì)數(shù)器及一些其他特殊部件構(gòu)成的,其一般都含有8051除程序存
29、儲器外的其他根本硬件。兼容MCS-51核系列的單片機(jī)一般可尋址64KB程序存儲器,或64KB數(shù)據(jù)存儲器,其部程序存儲器一般在032KB之間。AT89S51由CPU核、程序存儲器、數(shù)據(jù)存儲器、IO口、復(fù)位與時(shí)鐘、定時(shí)器與計(jì)數(shù)器、中斷系統(tǒng)、串行通訊接口、看門狗和ISP在線編程接口組成。AT89S51引腳圖如圖3-3所示。圖3-3AT89S51單片機(jī)引腳圖引腳主要功能如下:P0口P0.0P0.7為雙向8位三態(tài)I/O口,當(dāng)作為I/O口使用時(shí),可直接連接外部I/O設(shè)備。它是地址總線低8位及數(shù)據(jù)總線分時(shí)服用口,可驅(qū)動8個(gè)TTL負(fù)載。一般作為擴(kuò)展時(shí)地址/數(shù)據(jù)總線口使用。P1口P1.0P1.7的每一位都可以分
30、別定義為輸入線和輸出線做輸入時(shí),鎖存器必須置1,可驅(qū)動4個(gè)TTL負(fù)載。P1口常用作通用I/O口,它是一個(gè)標(biāo)準(zhǔn)的準(zhǔn)雙向口。P2口P2.0P2.7為8位準(zhǔn)雙向I/O口,當(dāng)作為I/O口使用時(shí),可直接連接外部I/O設(shè)備。它是地址總線的高8位復(fù)用,可驅(qū)動4個(gè)TTL負(fù)載。一般作為擴(kuò)展地址總線的高8為使用。P3口P3.0P3.7為8位準(zhǔn)雙向I/O口,是雙功能復(fù)用口,可驅(qū)動4個(gè)TTL負(fù)載,能夠?qū)崿F(xiàn)第一功能,可作為通用I/O口。P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號。P3口還有第二功能定義,如表3-1所示:表3-1 P3口第二功能定義引腳定義功能引腳定義功能P3.0-R*D串行輸入口P3.1-T*D串行
31、輸出口P3.2-外部中斷0P3.3-外部中斷1P3.4-T0計(jì)時(shí)器0外部輸入P3.5-T1計(jì)時(shí)器1外部輸入P3.6-外部數(shù)據(jù)存儲器寫選通P3.7-外部數(shù)據(jù)存儲器讀選通RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE:地址鎖存控制信號。在系統(tǒng)擴(kuò)展時(shí),ALE用于控制把P0口輸出的低8位地址鎖存起來,以實(shí)現(xiàn)低位地址和數(shù)據(jù)的分時(shí)傳送。:片外程序存儲器選通信號,低電平有效。:片外程序存儲器允許信號,低電平有效。在與Flash并行編程/校驗(yàn)期間,該引腳施加12V的編程電壓VPP。*TAL1和*TAL2:外接晶振引線端。使用芯片部時(shí)鐘時(shí),這2個(gè)引腳用于外接晶振和微調(diào)電容;
32、使用外部時(shí)鐘時(shí),外接時(shí)鐘脈沖信號。時(shí)鐘電路設(shè)計(jì)單片機(jī)的各功能部件的運(yùn)行都是以時(shí)鐘頻率為基準(zhǔn)的條件下進(jìn)展有序工作的,因此,時(shí)鐘對于單片機(jī)來說非常重要。AT89S51片由一個(gè)反相放大器構(gòu)成振蕩器,可以通過它倆產(chǎn)生時(shí)鐘。常用的單片機(jī)產(chǎn)生時(shí)鐘的方法有兩種:部時(shí)鐘方式和外部時(shí)鐘方式。本設(shè)計(jì)選用部時(shí)鐘方式,電路如圖3-4所示。單片機(jī)部*TAL1引腳為高增益反向放大器的輸入端,*TAL2為輸出端,在這2個(gè)引腳之間接石英晶振和電容,就可以構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。電路中兩個(gè)電容 C1,C2的作用有兩個(gè):一是幫助振蕩器起振;二是對振蕩器的頻率進(jìn)展微調(diào)。晶振的大小主要取決于單片機(jī)的工作頻率,晶振振蕩頻率不大于單片
33、機(jī)的最大工作頻率即可。如果有串行通信,需要選擇振蕩頻率除以串行通信頻率可以整除的晶振。本設(shè)計(jì)選用的12MHz晶振的計(jì)數(shù)周期如下式所示:圖3-4 時(shí)鐘電路復(fù)位電路設(shè)計(jì)單片機(jī)的復(fù)位引腳RST為單片機(jī)提供了初始化手段。復(fù)位是單片機(jī)的初始化操作,在本設(shè)計(jì)中復(fù)位電路采用按鍵電平方式,使RST引腳經(jīng)過10u電解電容與VCC電源接通,同時(shí)經(jīng)過電阻與地連接而實(shí)現(xiàn),單片機(jī)是高電平復(fù)位有效,當(dāng)按鍵S16按下時(shí)候,單片機(jī)的9腳RESET管腳處于高電平,此時(shí)單片機(jī)處于復(fù)位狀態(tài)。當(dāng)上電后,由于電容的緩慢充電,單片機(jī)的9腳電壓逐步由高向低轉(zhuǎn)化,經(jīng)過一段時(shí)間后,單片機(jī)的9腳處于穩(wěn)定的低電平狀態(tài),此時(shí)單片機(jī)上電復(fù)位完畢,系統(tǒng)
34、程序重新執(zhí)行。如圖3-5所示。圖3-5 復(fù)位電路控制電路設(shè)計(jì) 單片機(jī)控制電路如圖3-6所示。單片機(jī)的P1口控制矩陣鍵盤,通過掃描的方式確定哪一個(gè)按鍵被按下,當(dāng)有按鍵按下時(shí),對應(yīng)的發(fā)光二極管亮滅,提示有選手答復(fù)下列問題;單片機(jī)的P2口控制數(shù)碼管顯示電路;P3口控制LED燈,通過控制2個(gè)74LS164來控制16路LED燈,以提示選手搶答成功或者犯規(guī)。圖3-6 單片機(jī)控制電路3.4 顯示電路設(shè)計(jì)3.4.1 74LS164介紹74LS164為8位移位存放器,管腳圖如圖3-7所示。當(dāng)MR為低電平時(shí),輸出端Q0-Q7均為低電平。串行數(shù)據(jù)輸入端A,B可控制數(shù)據(jù)。當(dāng)A、B有一個(gè)為高電平,則另一個(gè)就允許輸入數(shù)據(jù)
35、,并在CLOCK上升沿作用下決定Q0的狀態(tài)。真值表如表3-2所示。圖3-7 74LS164引腳圖表3-2 74LS164真值表InputsOutputs/MRClockA BQ0 Q1 . Q7 L H H H H*L * * * * H H L * * L L L . L QA0 QB0 . QH0 H QAn . QGn L QAn QGn L QAn . QGnH高電平,L低電平,*任意電平,低到高電平跳變,QA0、QB0、QH0規(guī)定的穩(wěn)態(tài)條件建立前的電平,Qan、QGn時(shí)鐘最近的前的電平。 顯示電路設(shè)計(jì)本設(shè)計(jì)中選用數(shù)碼管作為顯示器件。LED數(shù)碼管由八只發(fā)光二極管組成,編號是a、b、c、
36、d、e、f、g、h,分別和同名管腳相連,當(dāng)發(fā)光二極管導(dǎo)通時(shí)發(fā)光。每個(gè)二極管就是一個(gè)筆劃,假設(shè)干個(gè)二極管發(fā)光時(shí),就構(gòu)成一個(gè)顯示字符。假設(shè)將單片機(jī)的I/O口與數(shù)碼管的a-g和h相連,高電平對應(yīng)共陰極數(shù)碼管或低電平對應(yīng)共陽極數(shù)碼管的位對應(yīng)的發(fā)光二極管就會亮,這樣,I/O口輸出不同的代碼就可以控制數(shù)碼管顯示不同的字符。為減少電路板中的焊接線,本設(shè)計(jì)選用4位一體數(shù)碼管,采用串行輸入并行輸出的8位移位存放器74LS164進(jìn)展驅(qū)動輸出,單片機(jī)的P2.4和P2.5口作為74LS164的數(shù)據(jù)線和CLK信號。74LS164將輸入的串行數(shù)據(jù)鎖存在并行輸出端,通過這些并行口線驅(qū)動數(shù)碼管的各字段。數(shù)碼管選用共陽型,當(dāng)7
37、4LS164的*個(gè)輸出端口為低電位時(shí),數(shù)碼管對應(yīng)的字段將被點(diǎn)亮。軟件設(shè)計(jì)中數(shù)碼管采用循環(huán)送顯的方式,單片機(jī)通過控制9012來選擇要送顯的數(shù)碼管。單片機(jī)控制74LS164的數(shù)據(jù)端和時(shí)鐘端,74LS164的輸出Q0-Q7分別對應(yīng)接到數(shù)碼管的a-h端口。當(dāng)需要*一位數(shù)碼管顯示時(shí),該數(shù)碼管相對應(yīng)的三極管基極所連接的單片機(jī)引腳輸出高電平,三極管導(dǎo)通,進(jìn)而選通該位數(shù)碼管,單片機(jī)再將數(shù)據(jù)寫入到74LS164部鎖存,再由74LS164將顯示譯碼送入該位數(shù)碼管個(gè)碼段顯示,從而實(shí)現(xiàn)了單片機(jī)控制數(shù)碼管顯示的功能。顯示電路如圖3-8所示。圖3-8 顯示電路3.5 LED燈提示電路設(shè)計(jì) 為了讓系統(tǒng)功能更加完善,本設(shè)計(jì)為
38、每位選手增加了2路雙色燈來提示搶答成功或犯規(guī)。電路如圖3-9所示。單片機(jī)通過控制74LS164的數(shù)據(jù)端A和B,根據(jù)其CLK上升沿的時(shí)序來實(shí)現(xiàn)對輸出Q0-Q7的控制,而輸出Q0-Q7直接接LED燈,從而實(shí)現(xiàn)所要求的共能即搶答成功相對應(yīng)編號的綠色發(fā)光二極管亮,搶答失誤以及搶答失敗的相對應(yīng)編號的紅色發(fā)光二極管亮。圖3-9 LED燈提示電路3.6 穩(wěn)壓電源設(shè)計(jì)為了保護(hù)直流電路,起到降壓的作用,使電壓輸出更穩(wěn)定。本設(shè)計(jì)還采用了三端穩(wěn)壓電路如圖3-10所示,采用LM7805器件與C1,C2以及一節(jié)9V電池組成三端穩(wěn)壓電路,通過端口1輸入9V電壓經(jīng)過LM7805后,穩(wěn)定輸出5V的電壓。輸入端電容的作用是濾除
39、輸入電源9V電池的噪聲。這2個(gè)電容的一大一小,用以濾除低頻和高頻噪聲并起到穩(wěn)壓作用。圖3-10 穩(wěn)壓電源3.7 本章小結(jié)本章講的是以89S51單片機(jī)為核心的搶答器電路的硬件電路的設(shè)計(jì)。硬件電路分為輸入按鍵電路、單片機(jī)控制電路時(shí)鐘電路、復(fù)位電路、控制電路、數(shù)碼管顯示電路、LED發(fā)光二極管顯示電路、穩(wěn)壓電源這幾個(gè)局部。硬件工作的流程是通過輸入按鍵電路輸入一個(gè)高電平信號,經(jīng)過單片機(jī)處理后輸入移位存放器74LS164中,通過上升沿觸發(fā)輸出對應(yīng)管腳的高電平信號用來導(dǎo)通三極管,驅(qū)動數(shù)碼管顯示以及驅(qū)動LED發(fā)光二極管顯示結(jié)果。從而到達(dá)所要求的功能。經(jīng)過硬件的設(shè)計(jì),我發(fā)現(xiàn)第四章 系統(tǒng)軟件設(shè)計(jì)4.1 程序設(shè)計(jì)應(yīng)
40、用軟件本設(shè)計(jì)軟件的設(shè)計(jì)是在Keil C51的環(huán)境下編譯的。Keil C51是美國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。 Keil C51開發(fā)系統(tǒng)根本知識1. 系統(tǒng)概述Keil C51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能表達(dá)高級語言的優(yōu)勢。下面詳細(xì)介紹Keil C51開發(fā)系統(tǒng)各局部功能和使用。2
41、. Keil C51單片機(jī)軟件開發(fā)系統(tǒng)的整體構(gòu)造C51工具包的uVision與Ishell分別是C51 for Windows和for Dos的集成開發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程。開發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及C51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)立生成庫文件,也可以與庫文件一起經(jīng)L51連接定位生成絕對目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的He*文件,以供調(diào)試器dScope51或tScope51使用進(jìn)展源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)展調(diào)試,也可以直接寫入程
42、序存貯器如EPROM中。使用獨(dú)立的Keil仿真器時(shí),考前須知:仿真器標(biāo)配11.0592MHz的晶振,但用戶可以在仿真器上的晶振插孔中換插其他頻率的晶振。仿真器上的復(fù)位按鈕只復(fù)位仿真芯片,不復(fù)位目標(biāo)系統(tǒng)。仿真芯片的31腳/EA已接至高電平,所以仿真時(shí)只能使用片ROM,不能使用片外ROM;但仿真器外引插針中的31腳并不與仿真芯片的31腳相連,故該仿真器仍可插入到擴(kuò)展有外部ROM其CPU的/EA引腳接至低電平的目標(biāo)系統(tǒng)中使用。Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能表達(dá)高級語言的優(yōu)勢。 編程語言在開發(fā)大型軟件時(shí)更能表達(dá)高級語言的優(yōu)勢。C
43、語言有以下特點(diǎn):1、語言簡潔、緊湊、使用方便、靈活。C語言一共只有32個(gè)關(guān)鍵字,9種控制語句,程序書寫自由,主要用小寫字母表示,壓縮了一切不必要的成分。2、運(yùn)算符豐富。C的運(yùn)算符包含的圍很廣泛,共有34種運(yùn)算符,使得C的運(yùn)算類型極其豐富,表達(dá)式類型多樣化,靈活使用各種運(yùn)算符可以實(shí)現(xiàn)在其他高級語言中難以實(shí)現(xiàn)的運(yùn)算。3、數(shù)據(jù)構(gòu)造豐富,具有現(xiàn)代化語言的各種數(shù)據(jù)構(gòu)造,能用來實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)構(gòu)造的運(yùn)算。4、具有構(gòu)造化的控制語句,用函數(shù)作為程序的模塊單位,便于實(shí)現(xiàn)程序的模塊化。5、語法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大。6、C語言能進(jìn)展位操作,能實(shí)現(xiàn)匯編語言的大局部功能,可以直接對硬件進(jìn)展操作。因此,C既具
44、有高級語言的功能,又具有低級語言的許多功能,可用來寫系統(tǒng)軟件。C語言的這種雙重性,使它既是成功的系統(tǒng)描述語言,又是通用的程序設(shè)計(jì)語言。7、生成目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。8、用C語言寫的程序可移植性好。根本上不用修改就能用于各種型號的計(jì)算機(jī)和各種操作系統(tǒng)。對操作系統(tǒng)和系統(tǒng)實(shí)用程序以及需要對硬件進(jìn)展操作的場合,用C語言明顯地優(yōu)勢于其他高級語言,有的大型應(yīng)用軟件也用C語言來編寫。4.2 程序設(shè)計(jì)流程 本設(shè)計(jì)軟件設(shè)計(jì)流程圖如圖4-1所示,完整源程序見附錄5。圖4-1 程序設(shè)計(jì)流程圖 整體過程是初始化按鍵,鍵盤按下開場鍵后,程序主函數(shù)中開場掃描讀取按鍵,通過讀取按鍵值程序段讀取對應(yīng)的選手編號,如果
45、有數(shù)據(jù)輸入則調(diào)用第一排LED發(fā)光二極管的程序綠燈,否則調(diào)用調(diào)用第二排LED發(fā)光二級管的顯示程序紅燈,最后將讀取按鍵值將讀取后的選手編號保存入數(shù)組中。經(jīng)過送顯示程序,在送顯示程序中調(diào)用寫入程序向164寫入數(shù)據(jù),通過74LS164控制數(shù)碼管顯示。最終通過LED顯示子程序和數(shù)碼管顯示讀取的按鍵值即在數(shù)碼管上顯示選手編號和對應(yīng)的LED發(fā)光二極管發(fā)出的紅綠光,以此來到達(dá)所要求的功能。4.3 讀取按鍵值程序設(shè)計(jì)單片機(jī)讀取按鍵值的方法有兩種:查詢方式和中斷方式。查詢方式是利用鍵盤程序不斷查詢是否有按鍵按下,有按下則進(jìn)入相應(yīng)按鍵的子程序進(jìn)展數(shù)據(jù)處理,沒有則一直循環(huán)查詢;中斷方式是將按鍵動作與單片機(jī)的中斷系統(tǒng)聯(lián)
46、系起來,有按鍵按下時(shí),就引起單片機(jī)中斷,使系統(tǒng)進(jìn)入中斷處理程序。本設(shè)計(jì)采用查詢方式來處理讀取按鍵值程序。設(shè)計(jì)按鍵程序時(shí),首先應(yīng)注意的是按鍵的機(jī)械觸點(diǎn)效應(yīng),原理上,按鍵按下時(shí),單片機(jī)端口為低電平,但是由于按鍵的機(jī)械觸點(diǎn)效應(yīng),按鍵在斷開和閉合瞬間會有抖動過程,這個(gè)過程會出現(xiàn)一系列的負(fù)脈沖,這樣會讓單片機(jī)引起誤判,因地,必須才需措施去掉按鍵抖動的影響。去按鍵抖動常用的有兩種方法:硬件方法和軟件方法。硬件方法一般是并接電容,或者加R-S觸發(fā)器;軟件去抖動一般采用延時(shí)的方法,按鍵抖動的過程一般持續(xù)5-10ms的時(shí)間,在判斷按鍵狀態(tài)時(shí),只要加一個(gè)5-10ms的延時(shí)程序,再次判斷按鍵是否狀態(tài)不變,即可實(shí)現(xiàn)去
47、抖動的作用。本設(shè)計(jì)中選用軟件延時(shí)的方法去按鍵抖動。按鍵程序設(shè)計(jì)流程圖如圖4-2所示。圖4-2 按鍵程序流程圖本設(shè)計(jì)中按鍵的鍵號轉(zhuǎn)換為10進(jìn)制如表4-1所示,各個(gè)按鍵所對應(yīng)的功能如表4-2所示。表4-1 按鍵鍵號表173365129183466130203668132244072136表4-2 按鍵功能表1號選手2號選手3號選手4號選手5號選手6號選手7號選手8號選手-搶答限時(shí)搶答限時(shí)搶答復(fù)位4.4 顯示程序設(shè)計(jì)根據(jù)數(shù)碼管的驅(qū)動方式不同,數(shù)碼管送顯方式有兩種:靜態(tài)送顯和動態(tài)送顯。靜態(tài)顯示驅(qū)動:靜態(tài)驅(qū)動也稱直流驅(qū)動,在靜態(tài)顯示驅(qū)動方式下,數(shù)碼管的共陰極或共陽極共同接地或接電源,每個(gè)數(shù)碼管的段選線與
48、8位的單片機(jī)并口連接。靜態(tài)顯示驅(qū)動方式占用的單片機(jī)I/O端口比擬多,一般在實(shí)用中不采用。動態(tài)顯示驅(qū)動:數(shù)碼管動態(tài)顯示方式是將所有的段選線并聯(lián)在一起,由一個(gè)8位I/O口來控制,再利用單片機(jī)的其他I/O口來作為數(shù)碼管的位選線。當(dāng)單片機(jī)輸出顯示數(shù)字的譯碼時(shí),哪個(gè)數(shù)碼管顯示由單片機(jī)對位選通電路的控制來選擇,所以將欲顯示的數(shù)碼管的位選通端選通,該數(shù)碼管就會顯示,其它數(shù)碼管均不會亮。通過輪流控制各個(gè)數(shù)碼管的選通端使數(shù)碼管輪流顯示。在顯示過程中,每個(gè)數(shù)碼管的顯示時(shí)間為1-2ms,由于人們的視覺暫留現(xiàn)象及發(fā)光二極管的余暉效應(yīng),只要掃描的速度夠快,給人的印象就是同時(shí)點(diǎn)亮的,而且不會有閃爍感。本設(shè)計(jì)中選用動態(tài)顯示
49、驅(qū)動方式,數(shù)據(jù)通過74LS164的數(shù)據(jù)端送至數(shù)碼管顯示。先按照74LS164的時(shí)鐘時(shí)序?qū)懭?段碼,寫完后送入數(shù)碼管,74LS164的時(shí)序圖如圖4-2所示。圖4-2 74LS164時(shí)序圖顯示子程序如下: *void write_164(uchar l*) /向164寫入段碼uchar i,j;j=l*;for(i=0;i1; delay(2);void disp_all(void) /送數(shù)碼管顯示 uchar i,j; for(i=0;i20;i+) for(j=0;j4;j+) P2=0*0F; write_164(DISP_SAVEj); delay(50); P2=0*0F; write_
50、164(0*ff);4.5 定時(shí)時(shí)間程序設(shè)計(jì)本設(shè)計(jì)通過單片機(jī)定時(shí)器中斷來提供定時(shí)時(shí)間。定時(shí)器/計(jì)數(shù)器是單片機(jī)的重要部件,其作用主要包括產(chǎn)生各種時(shí)標(biāo)間隔、記錄外部事件的數(shù)量等。AT89S51單片機(jī)有2個(gè)16位的定時(shí)器/計(jì)數(shù)器:定時(shí)器/計(jì)數(shù)器0T0和定時(shí)器/計(jì)數(shù)器1T1。定時(shí)器/計(jì)數(shù)器的核心是一個(gè)16位的加1計(jì)數(shù)器:做定時(shí)器時(shí),其計(jì)數(shù)脈沖來源于時(shí)鐘振蕩器經(jīng)12分頻后提供,這個(gè)脈沖的周期稱為單片機(jī)的機(jī)器周期,每一個(gè)機(jī)器周期定時(shí)存放器自動加1,所以定時(shí)器也可看做是計(jì)算機(jī)器周期的計(jì)數(shù)器,由于每一個(gè)機(jī)器周期為12個(gè)時(shí)鐘振蕩周期,所以定時(shí)器的分辨率是時(shí)鐘振蕩頻率的1/12,一旦振蕩頻率選定,則機(jī)器周期也確定
51、;作計(jì)數(shù)器時(shí),其計(jì)數(shù)脈沖來源于單片機(jī)外部引腳T0或T1的脈沖。即T*端口有從1到0的負(fù)跳變,計(jì)數(shù)器就自動加1,計(jì)算機(jī)是在每個(gè)機(jī)器周期采樣為0時(shí),計(jì)數(shù)器即加一計(jì)數(shù),計(jì)算機(jī)需用兩個(gè)機(jī)器周期來識別1次計(jì)數(shù),因而最大計(jì)數(shù)速率為振蕩頻率的1/24。AT89S51單片機(jī)的定時(shí)器/計(jì)數(shù)器T0由TH0、TL0構(gòu)成,T1由TH1、TL1構(gòu)成。TMOD用于控制和確定各定時(shí)器/計(jì)數(shù)器的功能和工作模式。TCON用于控制定時(shí)器/計(jì)數(shù)器T0、T1的啟動和停頓計(jì)數(shù),同時(shí)包含定時(shí)/計(jì)數(shù)器的狀態(tài)。T0、T1的方式存放器TMOD:方式存放器TMOD是一個(gè)逐位定義的8位存放器,是只能字節(jié)尋址的存放器,字節(jié)地址為89H,其格式如表4
52、-1所示。表4-1 TMOD存放器格式D7D6D5D4D3D2D1D0GATEC/TM1M0GATEC/TM1M0 T1 T0其中低4位定義定時(shí)器/計(jì)數(shù)器T0,高4位定義定時(shí)器/計(jì)數(shù)器T1,各位的意義如下:GATE門控位。GATE=1時(shí),由外部中斷/INT0、/INT1和TR0、TR1來啟動定時(shí)器。當(dāng)/INT0引腳為高電平時(shí),TR0置位,啟動定時(shí)器T0;當(dāng)/INT1引腳為高電平時(shí),TR1置位,啟動定時(shí)器T1。GATE=0時(shí),僅由TR0和TR1置位來啟動定時(shí)器T0、T1。C/T功能選擇位。C/T=1時(shí),選擇計(jì)數(shù)功能;C/T=0時(shí),選擇定時(shí)功能。M0、M1方式選擇位。由于M1和M0兩位,可以有4種
53、工作方式,如表4-2所示。表4-2 T0、T14種工作方式M1M0工作方式計(jì)數(shù)器配置00方式013位計(jì)數(shù)器01方式116位計(jì)數(shù)器10方式2自動再裝入的8位計(jì)數(shù)器11方式3T0分為兩個(gè)8位計(jì)數(shù)器、T1停頓計(jì)數(shù)T0、T1控制存放器TCON:TCON是一個(gè)逐位定義的8位存放器,既可字節(jié)尋址也可位尋址,字節(jié)地址為88H,為尋址的地址為88H8FH。與中斷源有關(guān)的位如表4-3 所示。表4-3 TCON存放器位說明位D7D6D5D4D3D2D1D0TCONTF1TF0IE1IT1IE0IT0位地址8FH8DH8BH8AH89H88H各位的意義如下:TF1:T1溢出中斷標(biāo)志。T1被允許計(jì)數(shù)后,從初值開場加1
54、計(jì)數(shù)。當(dāng)產(chǎn)生溢出時(shí)硬件置1”TF1,向CPU請求中斷,一直保持到CPU響應(yīng)中斷時(shí),才由硬件清0”也可由查詢軟件清零。TF0:T0溢出中斷標(biāo)志。T0被允許計(jì)數(shù)后,從初值開場加1計(jì)數(shù)。當(dāng)產(chǎn)生溢出時(shí)硬件置1”TF0,向CPU請求中斷,一直保持到CPU響應(yīng)中斷時(shí),才由硬件清0”也可由查詢軟件清零。IE1:外部中斷1請求源標(biāo)志。IE1=1,外部中斷向CPU請求中斷,當(dāng)CPU響應(yīng)該中斷時(shí)由硬件清0”IE1邊沿觸發(fā)方式。IT1:由軟件置位/復(fù)位選擇外部中斷1/INT1的跳變/電平激活中斷請求。當(dāng)置位IT1為1時(shí),則外部中斷1端口由1”-0”跳變前一個(gè)機(jī)器周期為高電平,后一個(gè)機(jī)器周期為低電平,即發(fā)生負(fù)跳變時(shí)激
55、活中斷請求標(biāo)志位IE1,向主機(jī)請求中斷處理;如果復(fù)位IT1為0,則在/INT1端口出現(xiàn)低電平時(shí),激活中斷請求標(biāo)志IE1,向主機(jī)請求中斷處理。IE0:外部中斷0請求源/INT0,P3.2標(biāo)志。IE0=1外部中斷0向CPU請求中斷,當(dāng)CPU響應(yīng)外部中斷時(shí),由硬件清0”IE0邊沿觸發(fā)方式。IT0:外部中斷0觸發(fā)方式控制位,其意義和功能與IT1類似。T0、T1的數(shù)據(jù)存放器:T0、T1各有一個(gè)16位的數(shù)據(jù)存放器,它們都是由高8位存放器和低8位存放器組成。這些存放器不經(jīng)緩沖,直接顯示當(dāng)前的計(jì)數(shù)值。T0、T1的數(shù)據(jù)存放器都是讀/寫存放器,任何時(shí)候都可以對它們進(jìn)展讀/寫操作。復(fù)位后,這些存放器全部清零。4.6
56、本章小結(jié)第五章 系統(tǒng)調(diào)試故障與分析系統(tǒng)調(diào)試包括硬件調(diào)試和軟件調(diào)試。硬件調(diào)試的任務(wù)是排除系統(tǒng)的硬件電路故障,包括設(shè)計(jì)性錯誤和工藝性故障。軟件調(diào)試時(shí)利用開發(fā)工具進(jìn)展在線仿真調(diào)試,除發(fā)現(xiàn)和解決程序錯誤外,也可以發(fā)現(xiàn)硬件故障。4.1 硬件調(diào)試.硬件調(diào)試方法 脫機(jī)調(diào)試。脫機(jī)調(diào)試是在樣機(jī)加電之前,先用萬用表等工具,根據(jù)硬件電氣原理圖和裝配圖,子線檢查樣機(jī)線路的正確性,并核對元器件型號,規(guī)格和安裝是否符合要求。特別注意電源的走線,防止電源之間的短路或極性錯誤,重點(diǎn)檢查系統(tǒng)的總線或其他信號線之間是否存在相互的短路。樣機(jī)所用的電源,事先必須單獨(dú)調(diào)試后才能加到系統(tǒng)中。在不插芯片的情況下,加電檢查各插件上引腳的電位
57、,子線測量個(gè)點(diǎn)電位是否正常,尤其應(yīng)注意單片機(jī)插座上的各點(diǎn)電位是否正常。 聯(lián)機(jī)調(diào)試。通過脫機(jī)調(diào)試可排除一些明顯的硬件故障,有些硬件故障需要通過聯(lián)機(jī)調(diào)試才能發(fā)現(xiàn)和排除。通電后,執(zhí)行讀寫指令,對用戶樣機(jī)的存儲器,I/O端口進(jìn)展讀寫和邏輯檢查等操作,用示波器等設(shè)備觀察波形如輸出波形,讀/寫控制信號,地址數(shù)據(jù)波形和有關(guān)控制電平,通過對哦性的觀察分析,發(fā)現(xiàn)和排除故障。. 故障及解決方法在焊接數(shù)碼管的過程中,由于焊接問題導(dǎo)致最后調(diào)試的過程中數(shù)碼管一直在閃爍,最后通過萬用表檢查電路發(fā)現(xiàn)了虛焊。最終成功解決了數(shù)碼管閃爍的問題。在最后測試的時(shí)候,驗(yàn)證搶答功能時(shí),按鍵過后,數(shù)碼管顯示搶答成功的選手的編號,但是對應(yīng)編
58、號的發(fā)光二極管并未亮起。檢查后才知識發(fā)光二極管損壞導(dǎo)致未亮起,最后更換了發(fā)光二極管功能得以實(shí)現(xiàn)。4.2 軟件調(diào)試的方法及考前須知軟件調(diào)試方法與選用的軟件構(gòu)造和程序設(shè)計(jì)技術(shù)有關(guān),如果采用模塊設(shè)計(jì)技術(shù),則逐個(gè)模塊調(diào)試好以后,再進(jìn)展系統(tǒng)程序總調(diào)試;如果采用實(shí)時(shí)多任務(wù)操作系統(tǒng),一般是逐個(gè)任務(wù)進(jìn)展調(diào)試。 對于模塊構(gòu)造程序,要對子程序逐個(gè)進(jìn)展調(diào)試。調(diào)試子程序時(shí),一定要符合入口條件和出口條件,調(diào)試手段可采用單步運(yùn)行方式和斷點(diǎn)運(yùn)行方式,通過檢查用戶系統(tǒng)CPU的現(xiàn)場,RAM的容和I/O口的狀態(tài),檢測程序執(zhí)行結(jié)果是否符合設(shè)計(jì)要求。通過檢測,可以發(fā)現(xiàn)程序中的死循環(huán)錯誤,機(jī)器代碼錯誤和轉(zhuǎn)移地址錯誤,同時(shí)也可以發(fā)現(xiàn)用戶
59、系統(tǒng)中的硬件故障,軟件算法和硬件設(shè)計(jì)錯誤,在調(diào)試過程中不斷調(diào)整用戶系統(tǒng)的軟件和硬件,完成每個(gè)程序模塊的調(diào)試。 每個(gè)模塊通過后,可以聯(lián)合各功能模塊進(jìn)展整體程序綜合調(diào)試。在這一階段如果發(fā)生故障,可以分析子程序在運(yùn)行時(shí)是否破壞現(xiàn)場,緩沖單元是否發(fā)生沖突,零位的建立和去除在設(shè)計(jì)上是否失誤,堆棧區(qū)域是否溢出,或輸入設(shè)備的狀態(tài)時(shí)否正常等。等用戶系統(tǒng)是在開發(fā)系統(tǒng)的監(jiān)控程序選運(yùn)行,還要考慮用戶緩沖單元是否和監(jiān)控程序的工作單元發(fā)生沖突。 單步運(yùn)行只能驗(yàn)證程序正確與否,而不能確定定時(shí)精度,CPU的使用響應(yīng)等問題,所以單步和斷點(diǎn)調(diào)試后,還應(yīng)進(jìn)展連續(xù)調(diào)試。除了觀察穩(wěn)定性之外,還要觀察用戶系統(tǒng)的操作是否符合原始設(shè)計(jì)要求
60、,以及安排的用戶操作是否合理等,必要時(shí)還要做適當(dāng)修正。 實(shí)時(shí)多任務(wù)操作系統(tǒng)的調(diào)試方法與上述方法相似,只是實(shí)時(shí)多任務(wù)操作系統(tǒng)的應(yīng)用程序是有假設(shè)干個(gè)任務(wù)程序組成的們一般是逐個(gè)任務(wù)進(jìn)展調(diào)試。在調(diào)試*一個(gè)任務(wù)時(shí),同時(shí)也調(diào)試相關(guān)的子程序,中斷效勞程序和一些操作系統(tǒng)的程序。各個(gè)任務(wù)調(diào)試好以后,再使各個(gè)任務(wù)同時(shí)運(yùn)行。如果操作系統(tǒng)中沒有錯誤,一般情況下系統(tǒng)就能正常運(yùn)轉(zhuǎn)。4.3 系統(tǒng)聯(lián)調(diào)系統(tǒng)聯(lián)調(diào)是指讓用戶系統(tǒng)的軟件在其硬件上實(shí)際運(yùn)行,進(jìn)展軟、硬件聯(lián)合調(diào)試,從中發(fā)現(xiàn)硬件故障或軟,硬件設(shè)計(jì)錯誤。這是對用戶系統(tǒng)檢驗(yàn)的重要一關(guān)。系統(tǒng)聯(lián)調(diào)方法:采用單步,斷電,連續(xù)運(yùn)行方式調(diào)試與硬件相關(guān)的各程序段既可以檢驗(yàn)這些用戶程序段的
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全生產(chǎn)月培訓(xùn)
- 2026年深圳市南山區(qū)教苑幼兒園招聘備考題庫及完整答案詳解1套
- 萬博科技職業(yè)學(xué)院2026年招聘備考題庫及1套參考答案詳解
- 2026年杭州市錢江灣小學(xué)招聘非編教師備考題庫及一套參考答案詳解
- 2026年湖南師大附中雙語實(shí)驗(yàn)學(xué)校(南校區(qū))教師招聘備考題庫及完整答案詳解1套
- 化工產(chǎn)品安全使用與儲存指南(標(biāo)準(zhǔn)版)
- 航運(yùn)物流操作與運(yùn)輸管理指南(標(biāo)準(zhǔn)版)
- 企業(yè)品牌資產(chǎn)評估的方法與實(shí)務(wù)研究
- 金融智能投顧系統(tǒng)用戶行為分析研究教學(xué)研究課題報(bào)告
- 初中英語閱讀策略中篇章情感基調(diào)把握對理解正確率的影響研究教學(xué)研究課題報(bào)告
- 工會女工培訓(xùn)課件
- 檔案移交數(shù)字化建設(shè)規(guī)劃
- 2025新疆和田地區(qū)“才聚和田·智匯玉都”招才引智招聘工作人員204人(公共基礎(chǔ)知識)綜合能力測試題附答案解析
- 2026年醫(yī)療機(jī)構(gòu)人力資源配置降本增效項(xiàng)目分析方案
- 孤獨(dú)癥個(gè)案護(hù)理
- 2025年自然資源所個(gè)人年終總結(jié)(8篇)
- 【地】降水的變化與分布課件-2025-2026學(xué)年七年級地理上學(xué)期(人教版2024)
- 2025年高考物理黑龍江卷含解析及答案
- 腦缺血-急性腦梗死的影像學(xué)表現(xiàn)教案
- 高職汽車維修專業(yè)培訓(xùn)教材
- 2026年中級注冊安全工程師之安全生產(chǎn)法及相關(guān)法律知識考試題庫500道含答案ab卷
評論
0/150
提交評論