畢業(yè)設計--基于單片機搶答器設計_第1頁
已閱讀1頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  畢業(yè)設計開題報告書</b></p><p>  設計題目: 基于單片機搶答器設計 </p><p>  系別: 自動化系 專業(yè): 機電一體化 </p><p>  學生姓名: 班級: 07機電52 </p><p>  指導教

2、師: </p><p><b>  摘要</b></p><p>  隨著電子技術的飛速發(fā)展,基于單片機的控制系統(tǒng)已廣泛應用與工業(yè)、農(nóng)業(yè)、電力、智能樓宇等行業(yè),微型計算機作為嵌入式控制系統(tǒng)的主題與核心,代替了傳統(tǒng)的控制系統(tǒng)的常規(guī)電子線路。同時樓宇智能化的發(fā)展與成熟,也為單片機的照明控制系統(tǒng)的普及與應用奠定了堅實的

3、基礎。本設計主要介紹了用單片機實現(xiàn)的智能搶答器的硬件結(jié)構和設計方法,系統(tǒng)介紹了它的硬件構成和軟件工作過程,系統(tǒng)以AT89C51為核心,主要采用中斷控制系統(tǒng),結(jié)合單片機的知識,實現(xiàn)系統(tǒng)的功能要求,設計過程中很好的將軟件與硬件相結(jié)合,達到了產(chǎn)品設計的基本要求。</p><p>  關鍵詞:單片機 微型計算機 軟件 智能 AT89C51 搶答器</p><p><b>  目 錄&

4、lt;/b></p><p>  第一節(jié) 前 言3</p><p>  1.1 智能搶答器的介紹4</p><p>  1.2 本設計任務4</p><p>  第二節(jié) 單片機簡介4</p><p>  2.1 80C51的主要性能:5</p><p>  2.2 信號引

5、腳介紹:6</p><p>  2.3 信號引腳的第二功能6</p><p>  2.4 引腳的第一、第二功能會不會混淆7</p><p>  第三節(jié) 設計方案比較8</p><p>  3.1 原始方案8</p><p>  3.2 最終方案10</p><p>  第四節(jié) 硬

6、件設計介紹10</p><p>  4.1、74LS47譯碼器10</p><p>  4.2、LM35811</p><p>  4.3 硬件部分工作原理12</p><p>  4.4、倒計時的處理14</p><p>  第五節(jié) 軟件設計14</p><p>  5.1、

7、主程序流程圖:14</p><p>  5.2 INT0中斷服務程序框圖:15</p><p>  5.3 中斷16</p><p><b>  結(jié)論21</b></p><p><b>  參考文獻25</b></p><p>  單片機控制的智能搶答器設計&

8、lt;/p><p><b>  第一節(jié) 前 言</b></p><p>  隨著我國經(jīng)濟和文化事業(yè)的發(fā)展,在很多公開競爭場合要求有公正的競爭裁決,諸如證券、股票交易及各種智力競賽等,因此出現(xiàn)了搶答器。搶答器一般是由很多電路組成的,線路復雜,可靠性不高,功能也比較簡單,特別是當搶答路數(shù)很多時,實現(xiàn)起來就更為困難。因此我們設計了以單片機為核心的新型智能的搶答器,在保留了原始

9、搶答器的基本功能的同時又增加一系列的實用功能并簡化其電路結(jié)構。搶答器又稱為第一信號鑒別器,其主要應用于各種知識競賽、文藝活動等場合。傳統(tǒng)普通搶答器主要存在以下缺陷:</p><p> ?。ㄒ唬?、在一次搶答過程中,當出現(xiàn)超前違規(guī)搶答時,只能處理違規(guī)搶答信號,而對沒有違規(guī)的有效搶答信號不能進行處理,因而使該次搶答過程變?yōu)闊o效。</p><p>  (二)、當有多個違規(guī)搶答時,普通搶答器或采用優(yōu)

10、先編碼電路選擇其中一個,或利用搶答電路電子元件的“競爭”選擇其中一個。對于后者由于搶答電路制作完畢后電子元件被固定。各路搶答信號的“競爭”能力也被固定,因而本質(zhì)上也有優(yōu)先權。普通搶答器存在不公平性。</p><p> ?。ㄈ?、當有多個違規(guī)搶答時,普通搶答器只能“抓住”其中一個而出現(xiàn)“漏洞”。</p><p>  1.1 智能搶答器的介紹</p><p>  這是一

11、種單片機控制的智能化搶答器,該搶答器可以克服普通搶答器存在的各種缺陷。詳細介紹了其硬件結(jié)構和設計方法。本系統(tǒng)的功能是通過按下?lián)尨疰I的按鈕使單片機的相應的口線讀入信號,經(jīng)過處理后輸出致7447顯示所按下的鍵號。本系統(tǒng)還具備了用概率的方法篩選第一有效搶答信號、顯示超前違規(guī)搶答信號、以及可變的提示搶答的倒計時信號和按鍵自檢等功能。其中簡述了單片機的特點和7447芯片的使用;概述中斷系統(tǒng)的控制功能,并詳細介紹了本系統(tǒng)軟件的程序設計和步驟。<

12、;/p><p><b>  1.2 本設計任務</b></p><p>  任務:以單片機為控制核心的智能型搶答器。它對采樣獲得的各種搶答信號進行分析,識別超前違規(guī)信號。并對它們進行處理,使每一次搶答過程都有效。利用存儲器記憶多個違規(guī)信號,克服“漏洞”現(xiàn)象。當同時出現(xiàn)多個搶答信號時,利用程序軟件隨機選擇其中一個十分公平并具有倒計時功能、驗鍵、違規(guī)顯示等功能。</p&

13、gt;<p>  第二節(jié) 單片機簡介</p><p>  電子計算機的發(fā)展經(jīng)歷了從電子管、晶體管、集成電路到大規(guī)模集成電路共四個階段,即通常所說的第一代、第二代、第三代和第四代計算機?,F(xiàn)在廣泛使用的微型計算機是大規(guī)模集成電路技術發(fā)展的產(chǎn)物,因此它屬于第四代計算機,而單片機則是微型計算機的一個分支。從1971年微型計算機問世以來,由于實際應用的需要,微型計算機向著兩個不同的方向發(fā)展:一個是向著高速度

14、、大容量、高性能的高檔微機方向發(fā)展;而另一個則是向穩(wěn)定可靠、體積小和價格廉的單片機方向發(fā)展。但兩者在原理和技術上是緊密聯(lián)系的。單片機因?qū)⑵渲饕M成部分集成在一個芯片上而得名,具體說就是把中央處理器、隨機存儲器、只讀存儲器、中斷系統(tǒng)、定時器/計數(shù)器以及I/O口電路等主要微型機部件,集成在一塊芯片上。雖然單片機只是一塊芯片,但從功能和組成上,它已具有了計算機的屬性,為此它稱為單片微型機。</p><p>  單片機有

15、很多的特點,主要表現(xiàn)在:體積小、功耗低、價格廉、控制功能強、應用現(xiàn)場環(huán)境惡劣等等。</p><p>  本設計核心采用了AT89C51單片機。80C51單片機系列是在MCS—51系列的基礎上發(fā)展起來的,早期的80C51只是系列眾多芯片中的一類,但是隨著后來的發(fā)展,80C51已經(jīng)形成獨立的系列,并且成為當前8位單片機的典型代表。80C51的芯片信號引腳和邏輯符號如圖2—1。</p><p>

16、  80C51芯片為40引腳雙列直插封裝,單一的+5V電源,其引腳排列和邏輯結(jié)構如圖2—1,它具有4個8位并行I/O口,以實現(xiàn)數(shù)據(jù)的并行輸入/輸出。此外還有256單元的RAM和2個16位計數(shù)結(jié)構的定時器/計數(shù)器。</p><p>  2.1 80C51的主要性能:</p><p>  1、8位微處理器和控制器</p><p>  2、內(nèi)含一個一位布爾運算處理器,可

17、直接對數(shù)據(jù)的位進行操作和運算,特別適用于邏輯控制。</p><p>  3、內(nèi)部含有4KB的程序ROM。</p><p>  4、2個16位的計數(shù)/定時器。</p><p><b>  5、內(nèi)部時鐘振蕩器</b></p><p>  6、全雙工方式的串行接口(UART)</p><p>  7、兩

18、極中斷優(yōu)先權的6個中斷源/5個中斷矢量的中斷邏輯。</p><p>  8、哈佛結(jié)構的存儲器組織,支持高達64K為單周期指令,支持六種尋址方式。</p><p>  9、最高時鐘振蕩頻率可達12MHZ,大部分指令執(zhí)行時間為1µs,乘、除指令為4µs。</p><p>  2.2 信號引腳介紹:</p><p><b

19、>  1、輸入/輸出口線</b></p><p>  ~ 口8位雙向口線</p><p>  ~ 口8位雙向口線</p><p>  ~ 口8位雙向口線</p><p>  ~ 口8位雙向口線</p><p>  2、ALE 地址鎖存控制信號</p><p>  

20、在系統(tǒng)擴展時,ALE用于控制把口輸出的底8位地址送入鎖存器鎖存起來,以實現(xiàn)低位地址和數(shù)據(jù)的分時傳送。此外由于ALE是以六分之一晶振頻率的固定頻率輸出的正脈沖,因此可作為外部時鐘或外部定時脈沖使用。</p><p>  3、外部程序存儲器讀選通信號</p><p>  在讀外部ROM時有效(低電平),以實現(xiàn)外部ROM單元的讀操作。</p><p>  4、訪問程序存儲

21、器控制信號</p><p>  當信號為低電平時,對ROM的讀操作限定在外部程序存儲器;而當信號為高電平時,則對ROM的讀操作是從內(nèi)部程序存儲器開始,并可延續(xù)至外部程序存儲器。</p><p>  5、RST 復位信號</p><p>  當輸入的復位信號延續(xù)2個機器周期以上高電平時即為有效,用以完成單片機的復位操作。</p><p>  6

22、、XTAL1和XTAL2外接晶體引線端</p><p>  當使用芯片內(nèi)部時鐘時,此二引線端用于外接石英晶體和微調(diào)電容;當使用外部時鐘時,用于接外部時鐘脈沖信號。</p><p><b>  7、VSS地線</b></p><p>  8、VCC+5V 電源</p><p>  2.3 信號引腳的第二功能</p&g

23、t;<p>  由于工藝及標準化等原因,芯片的引腳數(shù)目是有限的,例如MCS—51系列芯片引腳數(shù)目40條,但單片機為實現(xiàn)其功能所需要的信號數(shù)目卻遠遠超過此數(shù),因此就出現(xiàn)了供需矛盾,所以只能“復用”,即給一些信號引腳賦予雙重功能。</p><p>  1、常見的第二功能信號</p><p>  (1)、口線的第二功能信號</p><p>  的8條口線都定

24、義有第二功能,詳見下表2—1</p><p>  表2—1口線的第二功能</p><p> ?。?)、EPROM存儲器程序固化所需要的信號</p><p>  有內(nèi)部EPROM的單片機芯片(例如87C51),為寫入程序需提供專門的編程脈沖和編程電源,它們也是由信號引腳以第二功能的形式提供的,即:</p><p>  編程脈沖: 30腳(AL

25、E/PROG)</p><p>  編程電壓(25V):31腳(/ )</p><p>  (3)、備用電源引入</p><p>  MCS—51單片機的備用電源也是以信號引腳第二功能的方式由9腳(RST/VPD)引入的。當電源發(fā)生故障,電壓降低到下限值時,備用電源經(jīng)此端向內(nèi)部RAM提供電壓,以保護內(nèi)部RAM中的信息不丟失。</p><p>

26、  2.4 引腳的第一、第二功能會不會混淆</p><p> ?。?)、對于各種型號的芯片,其引腳的第一功能信號是相同的,所不同的只在引用的第二功能信號上。 </p><p> ?。?)、對于9、30和31各引腳,由于第一功能信號與第二功能信號是單片機在不同工作方式下的信號,因此不會發(fā)生使用上的矛盾。 </p><p> ?。?)、口線的第二功能信號都是單片機的重要

27、控制信號。因此在實際使用時,總是先按需要優(yōu)先選用它的第二功能,剩下不用的才作為口線使用。引腳表現(xiàn)出的是單片機的外特性或硬件特性,在硬件方面用戶只能使用引腳,即通過引腳組建系統(tǒng)。因此熟悉引腳是單片機硬件學習的重要內(nèi)容。見圖2—1 </p><p>  1圖2—1 8051單片機芯片引腳圖</p><p>  第三節(jié) 設計方案比較</p><p><b> 

28、 3.1 原始方案</b></p><p>  其工作原理為主邏輯電路的工作原理介紹如下:參看圖3—1。IC1為CD4532八輸入優(yōu)先權編碼器,IC2為CD4042四D鎖存器,IC3為CD4511七段譯碼驅(qū)動器,IC4為CD4514二一十六線譯碼器。其作用是將八路按鍵的輸入轉(zhuǎn)化成三位二進制編碼,同時由GS端指示編碼的有效性。沒有鍵按下時GS為低電平、輸出無效的000,反之GS高電平、此時的代碼有效,

29、如果為000則是0號鍵的代碼。之所以采用優(yōu)先權編碼器,是考慮如果有多個鍵真正的同時按下(時間上的差別微小到電路無法區(qū)分)時,穩(wěn)定輸出這幾個鍵中優(yōu)先權最高的鍵的代碼。電路的關鍵之處是對IC2四D鎖存器的巧妙利用,其CP端與Q0相連。由其功能表可知,無任何鍵按下時,IC1的GS端為0,故IC2的CP端為1,IC3的BI端為0,IC4的INH端為1,由于IC2的M模式控制端為1,而且各鎖存器的輸出跟隨對應輸入的變化,Q1—Q3為無效的000,

30、IC2處于一個穩(wěn)態(tài);此時IC3處于消隱狀態(tài),數(shù)碼管無任何顯示,IC4處于輸出禁止狀態(tài),L0—L7也全滅。當AN0-AN7中有任何一個鍵按下時,IC1輸出有效數(shù)據(jù)的同時其GS端變?yōu)?,該組數(shù)據(jù)(包括GS)到達</p><p>  圖3—1 第一方案電路圖</p><p><b>  3.2 最終方案</b></p><p>  相較第一方案而言此

31、方案(如圖3—2)采單片機為控制核心大大簡化了系統(tǒng)電路結(jié)構,把各種處理的功能整合在了單片機內(nèi)部。此設計方案把軟件的設計作為設計重點,在原始的單一功能上添加了倒計時搶答、糾正同時按鍵問題等新穎的附屬功能。并保留了傳統(tǒng)的光亮報警部分。</p><p>  圖3—2 最終方案電路圖</p><p>  第四節(jié) 硬件設計介紹</p><p>  4.1、74LS47譯碼器&

32、lt;/p><p>  圖3—3 7447引腳圖</p><p>  7447為4-7線譯碼驅(qū)動器,使其與數(shù)碼管各個管腳相連接顯示數(shù)字,如:輸出1001置7447則數(shù)碼管則顯示9, 其具體設定詳見圖3—3和表3—1。具體連接時使其使能端全部接電源。</p><p>  表3—1 7447真值表</p><p><b>  4.2、L

33、M358</b></p><p>  圖3—4 LM358管腳圖</p><p>  LM358為一電流放大元件,在此電路中用于為聲音報警提供所需電流。其管腳如圖3—4所示</p><p>  4.3 硬件部分工作原理</p><p>  本設計采用AT89C51單片機作為控制核心。AN0~AN7為8個 搶答鍵。P0.0~P0.

34、7為8路搶答信號輸入端。當有搶答鍵按下時,對應輸入端為低電平“0”反之為高電平“1”。AN8為搶答啟動鍵。在搶答開始時,按動一下AN8鍵,向單片機申請一次INTO中斷單片機在中斷服務程序中對搶答信號進行采樣和識別處理。</p><p>  采用二位LED共陽數(shù)碼管以動態(tài)掃描方式對搶答鍵號、違規(guī)搶答鍵號、倒計時時間等信息進行顯示,倒計時時間由選擇開關K2進行選擇。本設計共有4個時間檔供選擇(15S、30S、60S、

35、99S)AN10為違規(guī)顯示器。按動AN10鍵,可對一次搶答過程中出現(xiàn)的所有超前違規(guī)搶答的鍵號進行顯示。K為驗鍵功能選擇開關,當需要驗鍵時,將K閉合,可檢驗各搶答鍵能否正常工作,驗鍵完畢將K打開。LED1為違規(guī)指示燈。當一次搶答過程存在違規(guī)搶答信號時,LED1發(fā)出多個第一有效搶答信號的處理。</p><p>  1、第一有效搶答信號的處理</p><p>  在搶答過程中往往會出現(xiàn)多個搶答鍵

36、同時按下,或者時間差非常短。單片機無法識別它們之間的時間差,此時R2中會出現(xiàn)多個為1的位,既出現(xiàn)多個第一有效搶答信號。但每次搶答過程只能輸出顯示一個第一有效搶答信號,公正處理這個問題的方法是隨機地挑選其中的一個。本設計采用一種隨機定位查找方法:將R2中各位的查找順序排成一個環(huán),如圖3—5然后找一個隨機數(shù)x從第x位開始按上述查找順序環(huán)規(guī)定查找順序找R2中為1的位。</p><p>  圖3—5 隨機查找示意圖&l

37、t;/p><p>  第一個被找到為1的位其對應的搶答信號作為被選擇的第一有效搶答信號。本設計搶答鍵的權目為8個隨機權數(shù)可選擇為0~7。</p><p>  例如:假設x=3,R2=01010001B即出現(xiàn)三個第一有效搶答信號。(對應AN6.AN4.AN0三個鍵)根據(jù)上述方法,則從D3位開始查找第一個找到為1的位是D4因而搶答鍵AN4被選中。</p><p>  2、違

38、規(guī)搶答信號的記錄</p><p>  搶答開始按動AN8鍵單片機開始INT0中斷服務程序,先采樣P0口并將采樣值送入工作寄存器R0使LED顯示“AA”字形提示開始,顯然R0中寄存了搶答開始前最后一瞬間各路搶答輸入信號。若無違規(guī)搶答,R0值為FFH;若有違規(guī)搶答,R0值不為FFH。R0中為0的位對應的搶答鍵屬違規(guī)。若R0=10111110B表示AN0和AN6二路搶答鍵違規(guī)出現(xiàn)R0時表示八路搶答器全部違規(guī),LED顯示

39、“UU”延時5s后返回主程序需重新?lián)尨稹?lt;/p><p>  所謂“有效搶答信號”是指從LED顯示“HH”字形提示搶答開始之后的搶答信號,在搶答提示之前的搶答信號屬于“違規(guī)信號”。最先到達的有效搶答信號稱為“第一有效信號”。</p><p>  3、第一有效搶答信號的處理</p><p>  搶答提示之后,單片機再采樣P0口,用于檢測搶答信號,將采樣值送入工作寄存器

40、R1。若采樣值為FFH表示還沒有搶答,繼續(xù)采樣P0口。若R1值不為FFH表示有人按下?lián)尨疰I。</p><p>  但還應判斷是否由違規(guī)搶答所導致,這只需將R1值與R0值進行比較。若R1和R0值相同表示是由違規(guī)搶答所導致,則繼續(xù)采樣P0口。若R1和R0值不同,則表示存在有效搶答,不再采樣P0口。此時R1中含有第一有效搶答信號。為了提取R1中第一有效搶答信號,拋棄其中的違規(guī)搶答信號,可進行如下處理:將R0與R1相“異

41、或”再與R0相“與”,并將運算送工作寄存器R2即(R0⊕R1)·R0置R2。</p><p>  經(jīng)上述邏輯運算可知,若搶答鍵產(chǎn)生第一有效搶答信號,則R2中第i位為1(R2i=1)若R2值為0則表示沒有效搶答信號,此表為搶答過程中可能出現(xiàn)的4種搶答信號處理過程。其具體數(shù)值詳見表3—2</p><p>  表3—2 搶答信號處理過程表</p><p>  

42、4.4、倒計時的處理</p><p>  本設計有多個時間檔可選擇,用于留出搶答選手對搶答的反應。原設計方案有多檔位可以選擇,但實際應用中我只做了99秒的倒計時顯示用以達到顯示的效果,若要修改計時的檔位只需要修改軟件地址預設的數(shù)值即可。倒計時還為違規(guī)搶答的顯示留出時間檔,以記錄和顯示違規(guī)操作的鍵號。 </p><p>  第五節(jié) 軟件設計</p><p>  系

43、統(tǒng)軟件由主程序和INT0中斷服務組成。主程序由驗鍵,違規(guī)顯示,倒計時等功能子程序組成,系統(tǒng)完成初始化后循環(huán)檢查各個功能當用戶使用某個功能時,按下相應的按鈕(或開關)單片機進入相應的功能處理。INT0中斷服務程序完成搶答信號采樣和識別處理。</p><p>  5.1、主程序流程圖:</p><p>  圖4-1 主程序流程圖</p><p>  5.2 INT0中

44、斷服務程序框圖:</p><p>  圖4—2中斷服務程序框圖</p><p><b>  5.3 中斷</b></p><p>  本設計以中斷為基礎因此這里對中斷進行詳細的說明。這是由于中斷是一項重要的計算機技術,這一門技術在單片機中得到了充分繼承。</p><p>  中斷是工業(yè)過程控制及智能化儀器用微型機或單片

45、機應用最多的一種數(shù)據(jù)傳送方式。在通常情況下,單片機執(zhí)行主程序,只有當正常狀態(tài)出現(xiàn)故障,或發(fā)出中斷請求時,單片機才暫停執(zhí)行主程序,轉(zhuǎn)去執(zhí)行或處理中斷服務程序,執(zhí)行完中斷服務程序后,再返回到主程序繼續(xù)運行。</p><p>  基于資源共享原理上的中斷技術,在計算機中得到了廣泛的應用。中斷技術能實現(xiàn)CPU與外部設備的并行工作,提高CPU的利用率以及數(shù)據(jù)的輸入/輸出效率;中斷技術也能對計算機運行過程中突然發(fā)生的故障作到

46、及時發(fā)現(xiàn)并進行自動處理如:硬件故障、運算錯誤及程序故障等;中斷技術還能使我們通過鍵盤發(fā)出請求,隨時對運行中的計算機進行中的計算機進行干擾,而不用先停機處理,然后再重新開機等等。</p><p>  在單片機中,中斷技術主要用于實時控制。所謂實時控制,就是要求計算機能及時地相應被控對象提出的分析、計算和控制等請求,使被控對象保持在最佳工作狀態(tài),以到達預定的控制效果。由于這些控制參量的請求都是隨機發(fā)出,而且要求單片機

47、必須作出快速響應并及時處理,對此只有靠中斷技術才能實現(xiàn)。</p><p>  向CPU發(fā)出中斷請求的來源稱之為中斷源。MCS-51是一個多中斷源的單片機,以80C51為例有3類共五個中斷源,分別是外部中斷2個,定時中斷2個和串行中斷1個。</p><p>  在MCS-51單片機中,控制寄存器共有4個,即定時器控制寄存器、中斷允許控制寄存器、中斷優(yōu)先控制寄存器及串行口控制寄存器。這4個控制

48、寄存器都屬于專用寄存器之列。MCS-51的中斷優(yōu)先級控制比較簡單,因為系統(tǒng)只定義高低2個優(yōu)先級。各中斷源的優(yōu)先級由中斷優(yōu)先級寄存器(IP)進行設定。從中斷相應到轉(zhuǎn)向執(zhí)行中斷服務程序,完成中斷所要求的操作任務,是一個很復雜的過程。中斷完成后,TCON或SCON中的中斷請求標志應及時清除。否則就意味著中斷請求仍然存在,弄不好就會造成中斷的重復查詢和相應,因此就存在一個中斷請求的撤銷問題。MCS-51是通過只有在一條指令的最后一個機器周期的查

49、詢有效才能進行中斷相應來實現(xiàn)。它有一種單步工作方式,所謂單步執(zhí)行就是由外來脈沖控制程序的執(zhí)行。而外來脈沖是通過按鍵產(chǎn)生的,因此實際上單步執(zhí)行就是按一次鍵執(zhí)行一條指令。</p><p><b>  中斷系統(tǒng)的控制</b></p><p>  1、定時器/計數(shù)器的控制寄存器</p><p> ?。?)、定時器控制寄存器(TCON)</p>

50、;<p>  TCON寄存器既參與中斷控制又參與定時控制。現(xiàn)對其定時功能加以介紹。其中有關定時的控制位共有4位:</p><p>  ?F0和TF1—計數(shù)溢出標志位</p><p>  當計數(shù)器計數(shù)溢出(計滿)時,該位置“1”;使用查詢方式時,此位作狀態(tài)位供查詢,但應注意查詢有效后應以軟件方法及時將該位清“0”;使用中斷方式時,此位作中斷標志位,在轉(zhuǎn)向中斷服務程序時由硬件自動

51、清“0”。</p><p>  ?R0和TR1—定時器運行控制位</p><p>  TRO(TR1)=0 停止定時器/計數(shù)器工作</p><p>  TRO(TR1)=1 啟動定時器/計數(shù)器工作</p><p> ?。?)、工作方式控制寄存器(TMOD)</p><p> 

52、 TMOD寄存器是一個專用寄存器,用于設定兩個定時器/計數(shù)器的工作方式。但TMOD寄存器不能位尋址,只能用字節(jié)傳送指令設置其內(nèi)容。各位定義如表4—1:</p><p>  表4—1 TMOD定義表</p><p>  從寄存器的位格式中可以看出,它的低半字節(jié)定義定時器/計數(shù)器0,高半字節(jié)定義定時器/計數(shù)器1。</p><p><b>  ?ATE——門控位

53、</b></p><p>  GATE=O 以運行控制位TR啟動定時器</p><p>  GATE=1 以外中斷請求信號(或)啟動定時器</p><p>  ?——定時方式或計數(shù)方式選擇位 </p><p>  =0 定時工作方式 </p><p>  =1 計數(shù)工作

54、方式 </p><p>  ?M1M0——工作方式選擇 </p><p>  M1M0=00 方式0</p><p>  M1M0=01 方式1</p><p>  M1M0=10 方式2</p><p>  M1M0=11 方式3</p><p>  (3

55、)、中斷允許控制寄存器(IE)</p><p>  ?EA——中斷允許總控制位</p><p>  ?ET0和ET1——定時/計數(shù)中斷 </p><p>  定時器/計數(shù)器提供給用戶使用的有:8位計數(shù)器TH和TL,以及有關的控制位。這些內(nèi)容只能以軟件方法使用。中斷源和中斷標志位能夠產(chǎn)生中斷申請的部件被稱為中斷源。8051型單片機提供了五個中斷源:兩個外部中斷

56、源和三個內(nèi)部中斷源。每一個中斷源都有一個中斷申請標志位,但是串行口占有兩個中斷標志位。一共有六個中斷標志位。表4—2給出了它們各自的名稱。</p><p>  表4—2 中斷的說明表</p><p><b>  2、定時工作方式0</b></p><p>  (1)、電路邏輯結(jié)構</p><p>  方式0是13位計數(shù)結(jié)

57、構的工作方式,其計數(shù)器由TH0全部8位和TL0的低五位構成。TL0的高3位棄之不用。其中OCS是Oscillator(震蕩器)的縮寫。當C/=0時,多路開關接通振蕩脈沖的12分頻輸出,13位計數(shù)器以此進行計數(shù),這就是所謂定時器工作方式。當C/=1時,多路開關接通計數(shù)引腳(T0),外部計數(shù)脈沖由引腳T0輸入。當計數(shù)脈沖發(fā)生負跳變時,這就是所謂計數(shù)工作方式。</p><p>  不管是哪種工作方式,當TL0的低五位計

58、數(shù)溢出時,向TH0進位,而全部13位計數(shù)溢出時,則向計數(shù)溢出標志位TF0進位。</p><p>  門控位GATE:當GATE=0時,由于GATE信號封鎖了或門,使用TRO引腳信號無效。而這時或門輸出端的高電平狀態(tài)卻打開了與門。因此可以由TRO(TCON)的狀態(tài)來控制計數(shù)脈沖的接通與斷開。這時如果TRO=1,TRO則接通模擬開關,使計數(shù)器進行加法計數(shù),即定時器/計數(shù)器0工作。如果TRO=0,則斷開模擬開關,停止計

59、數(shù),定時器/計數(shù)器0不能工作。因此在單片機的定時或計數(shù)應用中要注意GATE位的清“0”。</p><p>  當GATE=1,同時又TRO=1時,有關電路的或門和與門全都打開,計數(shù)脈沖的接通與斷開由外引腳信號控制。當該信號為高電平時計數(shù)器工作;當該信號為低電平時計數(shù)器停止工作。這種情況可用于測量外信號的脈沖寬度。</p><p> ?。?)、定時和計數(shù)應用</p><p

60、>  兩個前提:溢出停止和加法計數(shù)</p><p><b>  A、定時工作方式0</b></p><p>  在方式0工作方式下,當為計數(shù)工作方式時,計數(shù)值的范圍是:</p><p>  1~8192(213)</p><p>  當為定時工作方式時,定時時間的計算公式為:</p><p>

61、;  (213-計數(shù)初值)×晶振周期×12</p><p>  或(213-計數(shù)初值)×機器周期</p><p>  其時間單位與晶振周期或機器周期相同(us).</p><p><b>  B、定時工作方式1</b></p><p>  方式1是16位計數(shù)結(jié)構的工作方式,計數(shù)器由TH0全部

62、8位和TL0全部8位構成。其邏輯電路和工作情況與方式0完全相同。所不同的只是組成計數(shù)器的位數(shù)。</p><p>  當為計數(shù)工作方式時,計數(shù)值的范圍是:</p><p>  1~65536(216)</p><p>  當為定時工作方式時,定時時間計算公式為:</p><p> ?。?16-計數(shù)初值)×晶振周期×12<

63、;/p><p>  或 (216-計數(shù)初值)×機器周期</p><p>  其時間單位與晶振周期或機器周期相同。</p><p>  在方式0和方式1中,每當CPU響應中斷后,都應該在中斷服務子程序中對T0和T1初始化,即軟件重裝初值n。而且必須用兩條指令對TH0 和TL0(TH1和TL1)分別裝載初值。還應該注意到中斷服務子程序執(zhí)行的時間可能部分地影響定時時

64、間。</p><p> ?。ㄋ模?、具體設計方法</p><p>  本設計主要是以中斷的方法(中斷的概念已在上一節(jié)詳細的介紹過了)來一步一步的實現(xiàn)各個部分的具體功能,以倒計時為例:1S等于1000000微妙,而每一計時脈沖是1微秒,因此需要輸入1000000個計時脈沖方可達到1秒的時間。由于16位計數(shù)初值為0000H,需要65536個計時脈沖方可發(fā)生溢出?,F(xiàn)在需要1000000個脈沖,則溢

65、出次數(shù)達15.258次。</p><p>  1000000=65536*15+16960</p><p>  65536-16960=48576=BDC0H</p><p>  BDH給TH0,C0H給TL0</p><p>  其他部分的軟件的編程方法也諸如此類,圍繞中斷展開,這里就不逐一進行介紹了。各個部分的設計方法詳見程序附錄及之前的

66、程序流程圖。</p><p><b>  結(jié)論</b></p><p>  本設計報告主要介紹了用單片機實現(xiàn)的搶答器的軟件設計方法。系統(tǒng)介紹了該電路的硬件構成和軟件工作過程,系統(tǒng)以AT89C51為核心,主要采用中斷控制系統(tǒng),結(jié)合所學的單片機的知識,實現(xiàn)系統(tǒng)的功能要求。設計中很好的使軟、硬件相結(jié)合,雖然還存一些問題但產(chǎn)品基本上達到了設計的要求。在設計過程中,通過大量的查

67、閱資料,認真研究教材,并向指導老師請教很多問題,使自己對單片機有了更為深刻的理解,在做軟件時,仔細的分析硬件電路,畫出程序流程圖,培養(yǎng)了我的耐性和刻苦鉆研的精神。</p><p><b>  程序:</b></p><p><b>  1、主程序</b></p><p><b>  ORG 00H</b&

68、gt;</p><p>  JMP START</p><p><b>  ORG 0BH</b></p><p>  JMP TIMER</p><p>  START:MOV TMOD,#01H</p><p>  MOV TH0,#0BDH</p><p>

69、  MOV TL0,#0C0H</p><p>  MOV IE,#82H</p><p>  MOV 20H,#10</p><p>  MOV 21H,#10</p><p>  MOV R7,#10</p><p><b>  CLR TR0</b></p><

70、;p>  A4: JNB P0.0,B0_0</p><p>  JNB P0.1,B1_1</p><p>  JNB P0.2,B2_2</p><p>  JNB P0.3,B3_3</p><p>  JNB P0.4,B4_4</p><p>  JNB P0.5,B5_5</p>

71、;<p>  JNB P0.6,B6_6</p><p>  JNB P0.7,B7_7</p><p>  B0_0:AJMP B0</p><p>  B1_1:AJMP B1</p><p>  B2_2:AJMP B2</p><p>  B3_3:AJMP B3</p><

72、;p>  B4_4:AJMP B4</p><p>  B5_5:AJMP B5</p><p>  B6_6:AJMP B6</p><p>  B7_7:AJMP B7</p><p>  MOV p2,#10H</p><p>  CALL DELAY</p><p>  ANL

73、P2,#00H</p><p>  MOV P2,#20H</p><p>  CALL DELAY</p><p>  ORL P2,#00H</p><p>  JB P3.0,A4</p><p><b>  SETB TR0</b></p><p>  A1

74、: MOV A,20H</p><p>  MOV DPTR,#TABLE</p><p>  MOVC A,@A+DPTR</p><p>  ADD A,#10H</p><p><b>  MOV P2,A</b></p><p>  CALL DELAY</p>

75、<p>  ANL P2,#00H</p><p>  MOV A,21H</p><p>  MOV DPTR,#TABLE</p><p>  MOVC A,@A+DPTR</p><p>  ADD A,#20H</p><p><b>  MOV P2,A</b><

76、;/p><p>  CALL DELAY</p><p>  ANL P2,#00H</p><p>  MOV A,#01H</p><p>  CJNE A,21H,A1</p><p>  MOV A,#01</p><p>  CJNE A,20H,A1</p><

77、p>  JMP START</p><p>  TIMER:DJNZ R7,A2</p><p>  MOV TH0,#0BDH</p><p>  MOV TL0,#0C0H</p><p>  MOV R7,#16</p><p>  DJNZ 20H,A2</p><p>  

78、MOV 20H,#10</p><p>  DJNZ 21H,A2</p><p>  MOV 21H,#10</p><p>  A2: RETI</p><p>  B0:MOV P2,#11H</p><p>  ACALL DELAY</p><p><b>  AJM

79、P A4</b></p><p>  B1:MOV P2,#12H</p><p>  ACALL DELAY</p><p><b>  AJMP A4</b></p><p>  B2:MOV P2,#13H</p><p>  ACALL DELAY</p><

80、;p><b>  AJMP A4</b></p><p>  B3:MOV P2,#14H</p><p>  ACALL DELAY</p><p><b>  AJMP A4</b></p><p>  B4:MOV P2,#15H</p><p>  LCALL

81、DELAY</p><p><b>  LJMP A4</b></p><p>  B5:MOV P2,#16H</p><p>  ACALL DELAY</p><p><b>  AJMP A4</b></p><p>  B6:MOVX P2,#17H</p&g

82、t;<p>  LCALL DELAY</p><p><b>  LJMP A4</b></p><p>  B7:MOV P2,#18H</p><p>  ACALL DELAY</p><p>  ALJMP A4 <

83、;/p><p>  DELAY:MOV R6,#248</p><p><b>  DJNZ R6,$</b></p><p><b>  RET</b></p><p>  TABLE:DB 00H,00H,01H,02H,03H,04H</p><p>  DB 05H,0

84、6H,07H,08H,09H</p><p><b>  END</b></p><p>  總結(jié)  經(jīng)過近幾周的努力,在老師和同學的商討和幫助下,我較好的完成了設計任務,通過此次課程設計,我重新認識到了自學的重要性,以及學以致用的道理。我在圖書館查閱了大量的資料,同時也認識到了圖書館的重要作用。通過此次的搶答器的設計,讓我重新拾起了以前所學習的電子知識,及我覺得此

85、次設計讓我更加鞏固了所學的知識并在設計的過程中學會了與時俱進,克服了編程的枯燥感,讓我受益匪淺。由于知識水平的局限,設計中可能會存在著一些不足,我真誠的接受老師和同學的批評和指正。</p><p><b>  參考文獻</b></p><p>  周航慈編. 單片機應用程序設計技術(修訂版)[M]. 2002</p><p>  徐愛卿編.單

86、片微型計算機應用和開發(fā)系統(tǒng)[M]1998.</p><p> ?。?] 戴梅芳編.微型計算機技術及應用[M].,1996.</p><p> ?。?] 李廣弟,朱月秀,王秀山編.單片機基礎[M]2001.</p><p>  [5] 吳金戌. 8051單片機實踐與應用[M]. 2003年</p><p> ?。?] 李朝青. PC機及單片機數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論