2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩26頁(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、<p>  畢 業(yè) 設(shè) 計(jì)</p><p> 題目模擬交通燈 </p><p> 系別電氣工程系 </p><p> 專業(yè)電氣自動(dòng)化          </p><p> 班級(jí)電氣0902班

2、 </p><p> 姓名</p><p> 學(xué)號(hào)</p><p> 指導(dǎo)教師</p><p> 日期2011年11月 </p><p><b>  設(shè)計(jì)任務(wù)書</b></p><p&

3、gt;<b>  設(shè)計(jì)題目 </b></p><p><b>  模擬交通燈</b></p><p><b>  設(shè)計(jì)要求</b></p><p>  1.在十字路口的兩個(gè)方向上各設(shè)一組紅綠黃燈,顯示順序?yàn)椋?其中一個(gè)方向是綠燈、黃燈、紅燈,另一個(gè)方向是紅燈、綠燈、黃燈。</p><

4、;p>  2.設(shè)置一個(gè)喇叭,當(dāng)產(chǎn)生中斷時(shí)喇叭響起。</p><p><b>  設(shè)計(jì)進(jìn)度要求</b></p><p>  第一周: 確定設(shè)計(jì)題目并查閱相關(guān)資料。</p><p><b>  第二周:查閱資料。</b></p><p>  第三周:歸納總結(jié)查閱的資料,進(jìn)行程序編寫。</p&

5、gt;<p><b>  第四周:編寫程序。</b></p><p>  第五周:檢查程序并安裝程序。</p><p>  第六周:解決調(diào)試中所出現(xiàn)的問題。</p><p>  第七周:交由老師審核。</p><p>  第八周:撰寫設(shè)計(jì)報(bào)告。</p><p>  第九周:畢業(yè)答辯。

6、 </p><p>  指導(dǎo)教師(簽名): </p><p><b>  摘 要</b></p><p>  交通在人們的日常生活中占有重要位置,隨著人們社會(huì)活動(dòng)的日益頻繁,這點(diǎn)更是體現(xiàn)得淋漓盡致。交通信號(hào)燈的出現(xiàn),使交通得以有力管制,對(duì)于疏導(dǎo)交通流量、提高道路通行能力、減少交通事故有明顯效果。本系統(tǒng)

7、采用單片機(jī)AT89C51為中心來(lái)設(shè)計(jì)交通燈控制器,系統(tǒng)實(shí)用性強(qiáng)、簡(jiǎn)單操作、擴(kuò)展性強(qiáng)。本設(shè)計(jì)就是采用單片機(jī)模擬十字路口交通燈的各種狀態(tài)顯示以及緊急情況報(bào)警。</p><p>  本設(shè)計(jì)系統(tǒng)由單片機(jī)I/O口擴(kuò)展系統(tǒng),交通燈狀態(tài)顯示系統(tǒng)和緊急情況中斷系統(tǒng),復(fù)位電路等部分組成。系統(tǒng)除基本的交通等功能外,還具有緊急情況處理燈功能,較好的模擬實(shí)現(xiàn)了十字路口可能出現(xiàn)的狀況。</p><p>  軟件上采

8、用了C51變成,主要編寫了主程序,中斷程序,經(jīng)過(guò)整機(jī)調(diào)試,實(shí)現(xiàn)了對(duì)十字路口交通燈的模擬。</p><p>  關(guān)鍵詞:?jiǎn)纹瑱C(jī), AT89C51,交通燈</p><p><b>  目 錄</b></p><p><b>  摘 要II</b></p><p><b>  目 錄1

9、</b></p><p>  1 單片機(jī)的發(fā)展及應(yīng)用2</p><p>  1.1 單片機(jī)的發(fā)展2</p><p>  1.2 單片機(jī)的應(yīng)用2</p><p>  2 總體方案設(shè)計(jì)4</p><p><b>  2.1系統(tǒng)框圖4</b></p><p>

10、;  2.2 鍵鈕接口工作方案4</p><p><b>  3 硬件設(shè)備5</b></p><p>  3.1 AT89C51單片機(jī)簡(jiǎn)介5</p><p>  3.2 AT89C51單片機(jī)的引腳6</p><p><b>  3.3中斷系統(tǒng)8</b></p><p&

11、gt;<b>  3.4喇叭9</b></p><p>  3.5 電路原理設(shè)計(jì)10</p><p>  4 軟件設(shè)計(jì)11</p><p>  4.1 總體思路11</p><p>  4.2主程序模塊11</p><p>  4.3中斷服務(wù)程序模塊13</p><

12、;p><b>  4.4仿真13</b></p><p>  4.5 Proteus基本操作14</p><p>  4.6Proteus與Keil的聯(lián)調(diào)15</p><p>  4.7定時(shí)器初值計(jì)算16</p><p><b>  5 系統(tǒng)調(diào)試17</b></p>&

13、lt;p><b>  6 結(jié) 論18</b></p><p><b>  致 謝19</b></p><p><b>  參考文獻(xiàn)20</b></p><p><b>  附 錄121</b></p><p><b>  附

14、 錄224</b></p><p>  1 單片機(jī)的發(fā)展及應(yīng)用</p><p>  1.1 單片機(jī)的發(fā)展</p><p>  單片微型計(jì)算機(jī)是微型計(jì)算機(jī)的一個(gè)重要分支,也是一種非常活躍和頗具有生命力的機(jī)種。單片微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī),特別適用于工業(yè)控制領(lǐng)域,因此又稱為微控器。</p><p>  1971年微處理器研制成功不久,就

15、出現(xiàn)了單片微型計(jì)算機(jī)即單片機(jī),但最早的單片機(jī)是1位的,處理能力有限。</p><p>  單片機(jī)的發(fā)展分為4個(gè)階段:</p><p>  第一階段(1974—76年):?jiǎn)纹瑱C(jī)初級(jí)階段。因?yàn)槭芄に囅拗?,單片機(jī)采用單片的形式而且功能比較簡(jiǎn)單。例如美國(guó)仙童公司生產(chǎn)的F8單片機(jī),實(shí)際上只包括了8位CPU,64個(gè)字節(jié)的RAM和2個(gè)并行接口</p><p>  第二階段(197

16、6—78年):低性能單片機(jī)階段。以Intel公司生產(chǎn)的MCS——48系列單片機(jī)為代表,該系列單片機(jī)片內(nèi)集成有8位CPU,8位定時(shí)器/計(jì)數(shù)器,并行I/O接口,RAM和ROM等,但是最大的缺點(diǎn)就是無(wú)串行接口,中斷處理比較簡(jiǎn)單而且片內(nèi)RAM和ROM容量較小,且尋址范圍不大與4KB。</p><p>  第三階段(1978—83)高性能單片階段這個(gè)階段推出的單片機(jī)普遍帶有串行接口。多級(jí)中斷系統(tǒng),16位定時(shí)器/計(jì)數(shù)器,片內(nèi)

17、ROM,RAM容量加大,且尋址范圍可達(dá)64KB,有的片內(nèi)還帶有A/D轉(zhuǎn)換器。</p><p>  第四階段(1983年至今)8位單片機(jī)鞏固發(fā)展以及16位單片機(jī),32 位單片機(jī)推出階段。此階段的主要特征是:一方面發(fā)展16位單片機(jī),32位單片機(jī)及專用型單片機(jī);另一方面不斷完善高檔8位單片機(jī),改善其結(jié)構(gòu),增加片內(nèi)器件,以滿足不同的客戶要求。</p><p>  1.2 單片機(jī)的應(yīng)用</p&

18、gt;<p>  單片機(jī)的應(yīng)用很廣,分別在以下領(lǐng)域中得到了廣泛的應(yīng)用。</p><p>  工業(yè)自動(dòng)化:在自動(dòng)化技術(shù)中,無(wú)論是過(guò)程控制技術(shù)、數(shù)據(jù)采集技術(shù)還是測(cè)控技術(shù),都離不開單片機(jī)。在工業(yè)自動(dòng)化的領(lǐng)域中,機(jī)電一體化技術(shù)將發(fā)揮愈來(lái)愈重要的作用,在這種機(jī)械、微電子和計(jì)算機(jī)技術(shù)為一體的綜合技術(shù)(例如機(jī)器人技術(shù)、數(shù)控技術(shù))中,單片機(jī)將發(fā)揮非常重要的作用特別是近些年來(lái),隨著計(jì)算機(jī)技術(shù)的發(fā)展,工業(yè)自動(dòng)化也發(fā)展到

19、了一個(gè)新的高度,出現(xiàn)了無(wú)人工廠、機(jī)器人作業(yè)、網(wǎng)絡(luò)化工廠等,不僅將人從繁重、重復(fù)和危險(xiǎn)的工業(yè)現(xiàn)場(chǎng)解放出來(lái),還大大提高了生產(chǎn)效率,降低了生產(chǎn)成本。</p><p>  儀器儀表:目前對(duì)儀器儀表的自動(dòng)化和智能化要求越來(lái)越高。在自動(dòng)化測(cè)量?jī)x器中,單片機(jī)應(yīng)用十分普及。單片機(jī)的使用有助于提高儀器儀表的精度和準(zhǔn)確度,簡(jiǎn)化結(jié)構(gòu),減小體積,易于攜帶和使用,加速儀器儀表向數(shù)字化、智能化和多功能化方向發(fā)展。</p>&l

20、t;p>  消費(fèi)類電子產(chǎn)品:該應(yīng)用主要反映在家電領(lǐng)域。目前家電產(chǎn)品的一個(gè)重要發(fā)展趨勢(shì)是不斷提高其智能化程度。例如,電子游戲、照相機(jī)、洗衣機(jī)、電冰箱、空調(diào)、電視機(jī)、微波爐、手機(jī)、IC卡、汽車電子設(shè)備等。在這些設(shè)備中使用了單片機(jī)后,其功能和性能大大提高,并實(shí)現(xiàn)了智能化、最優(yōu)化控制</p><p>  通信方面:較高檔的單片機(jī)都具有通信接口,因而為單片機(jī)在通信設(shè)備中的應(yīng)用創(chuàng)造了很好的條件。例如,在微波通信、短波通

21、信、載波通信、光纖通信、程控交換等通信設(shè)備和儀器中都能找到單片機(jī)的應(yīng)用。</p><p>  武器裝備:在現(xiàn)代化的武器裝備中, 如飛機(jī)、軍艦、坦克、導(dǎo)單、魚雷制導(dǎo)、智能武器設(shè)備、航天飛機(jī)導(dǎo)航系統(tǒng),都有單片機(jī)在其中發(fā)揮重要作用。</p><p>  終端及外部設(shè)備控制:計(jì)算機(jī)網(wǎng)絡(luò)終端設(shè)備,如銀行終端,以及計(jì)算機(jī)外部設(shè)備如打印機(jī)、硬盤驅(qū)動(dòng)器、繪圖機(jī)、傳真機(jī)、復(fù)印機(jī)等,在這些設(shè)備中都使用了單片機(jī)

22、。</p><p>  近年來(lái)隨著科技的飛速發(fā)展,同時(shí)帶動(dòng)自動(dòng)控制系統(tǒng)日新月異更新,單片機(jī)的應(yīng)用正在不斷地走向深入。</p><p><b>  2 總體方案設(shè)計(jì)</b></p><p><b>  2.1系統(tǒng)框圖</b></p><p>  交通燈控制的總體設(shè)計(jì)框圖如圖2-1所示。</p&g

23、t;<p><b>  圖2-1系統(tǒng)框圖</b></p><p>  2.2 鍵鈕接口工作方案</p><p>  在單片機(jī)應(yīng)用系統(tǒng)中,常用按鈕作為輸入設(shè)備,通過(guò)它將數(shù)據(jù)、內(nèi)存地址、命令及指令等輸入到系統(tǒng)中,來(lái)實(shí)現(xiàn)簡(jiǎn)單的人機(jī)通信。</p><p>  在本設(shè)計(jì)中,當(dāng)按下按鈕時(shí),喇叭響起</p><p>&l

24、t;b>  3 硬件設(shè)備</b></p><p>  3.1 AT89C51單片機(jī)簡(jiǎn)介 </p><p>  AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編

25、程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。如圖3.1所示</p><p> 

26、 圖3.1 AT89C51管腳圖</p><p><b>  1.主要特性:</b></p><p>  ﹒與MCS-51 兼容</p><p>  ﹒4K字節(jié)可編程閃爍存儲(chǔ)器</p><p>  ﹒壽命:1000寫/擦循環(huán)</p><p>  ﹒數(shù)據(jù)保留時(shí)間:10年</p><

27、;p>  ﹒全靜態(tài)工作:0Hz-24Hz</p><p>  ﹒三級(jí)程序存儲(chǔ)器鎖定</p><p>  ﹒128*8位內(nèi)部RAM</p><p>  ﹒32可編程I/O線</p><p>  ﹒兩個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b>  ﹒5個(gè)中斷源</b></p>

28、<p><b>  ﹒可編程串行通道</b></p><p>  ﹒低功耗的閑置和掉電模式</p><p>  ﹒片內(nèi)振蕩器和時(shí)鐘電路</p><p>  3.2 AT89C51單片機(jī)的引腳</p><p><b>  VCC:供電電壓。</b></p><p>&

29、lt;b>  GND:接地。</b></p><p>  P0口:P0口為一個(gè)8位漏級(jí)開路雙向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外部必須被拉高。</p><p>  P1

30、口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 </p><p>  P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉

31、高,且作為輸入。并因此作為輸入時(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)。</p><p>  P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的

32、雙向I/O口,可接收輸出

33、 4個(gè)TTL門電流。當(dāng)

34、P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為</p><p>  P3口也可作為AT89C51的一些特殊功能口,如下</p><p>  P3.0 RXD(串行輸入口)</p><p>  P3.1 TXD(串行輸出口)</p><p>  P3.2 /INT0(外部中斷0)</p><

35、p>  P3.3 /INT1(外部中斷1)</p><p>  P3.4 T0(記時(shí)器0外部輸入)</p><p>  P3.5 T1(記時(shí)器1外部輸入)</p><p>  P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)</p><p>  P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)</p><p>  P3口同時(shí)為閃

36、爍編程和編程校驗(yàn)接收一些控制信號(hào)。</p><p>  RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p>  ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或

37、用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。</p><p>  /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有

38、效的/PSEN信號(hào)將不出現(xiàn)。</p><p>  /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)。</p><p>  XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電

39、路的輸入。</p><p>  XTAL2:來(lái)自反向振蕩器的輸出。</p><p><b>  3.3中斷系統(tǒng)</b></p><p>  中斷系統(tǒng)又叫作中斷管理系統(tǒng),其功能是使處理機(jī)對(duì)外界異步事件具有處理能力。</p><p>  中斷是一個(gè)過(guò)程,當(dāng)中央處理器CPU在處理某件事情時(shí),外部又發(fā)生了另一緊急事件,請(qǐng)求CPU

40、暫停當(dāng)前的工作而去迅速處理該緊急事件。處理結(jié)束后,再回到原來(lái)被中斷的地方,繼續(xù)原來(lái)的工作。引起中斷的原因或發(fā)出中斷請(qǐng)求的來(lái)源,稱為中斷源。</p><p>  單片機(jī)一般允許有多個(gè)中斷源,當(dāng)幾個(gè)中斷源同時(shí)向CPU請(qǐng)求中斷時(shí),就存在CPU優(yōu)先響應(yīng)哪一個(gè)中斷請(qǐng)求源的問題(優(yōu)先級(jí)問題),一般根據(jù)中斷源的輕重緩急排隊(duì),優(yōu)先處理最緊急事件的中斷請(qǐng)求,于是便規(guī)定每一個(gè)中斷源都有一個(gè)中斷優(yōu)先級(jí)別,并且CPU總是響應(yīng)級(jí)別最高的中

41、斷請(qǐng)求。</p><p>  本設(shè)計(jì)中以按鈕接INT0(即P3.2端口)上有中斷請(qǐng)求電信號(hào)輸入。當(dāng)按下按鈕時(shí),中斷源發(fā)出中斷請(qǐng)求信號(hào),將使響應(yīng)中斷標(biāo)志置1. CPU檢測(cè)到此中斷標(biāo)志為“1”,在滿足中斷響應(yīng)條件下,響應(yīng)中斷。CPU響應(yīng)中斷請(qǐng)求后,就進(jìn)入P2.2的中斷入口地址,轉(zhuǎn)入執(zhí)行中斷服務(wù)程序。當(dāng)按下按鈕時(shí),中斷結(jié)束。回到原工作程序中去。 </p><p>  中斷按鈕如圖3.2所示:&l

42、t;/p><p><b>  圖3.2 中斷按鈕</b></p><p><b>  3.4喇叭</b></p><p>  當(dāng)CPU檢測(cè)到中斷標(biāo)志為“1”,滿足中斷服務(wù)條件,中斷從P2.2輸出,喇叭響起。如圖3.-3</p><p><b>  圖3.3 喇叭響起</b><

43、/p><p>  3.5 電路原理設(shè)計(jì)</p><p>  電路的核心是89C51單片機(jī),其內(nèi)部帶有4KB的FlashROM,無(wú)須擴(kuò)展程序存儲(chǔ)器;電腦沒有大量的運(yùn)算和暫存數(shù)據(jù),現(xiàn)有的128B片內(nèi)RAM已能滿足要求,也不必?cái)U(kuò)展片外RAM;按鍵接口,由P3.2,P3.5來(lái)完成。P1口接交通指示燈,整個(gè)系統(tǒng)采用查表的方發(fā),將交通燈的顯示情況以代碼的形式送到指示燈,啟動(dòng)定時(shí)器,查詢按鍵。利用中斷的方法

44、使計(jì)時(shí)時(shí)間循環(huán),當(dāng)按下應(yīng)急按鍵時(shí)停止定時(shí)器,送一個(gè)代碼使兩個(gè)方向等都不亮,按下一個(gè)按鍵時(shí)啟動(dòng)定時(shí)器,恢復(fù)循環(huán)。如圖3.4所示</p><p><b>  圖3.4 設(shè)計(jì)電路</b></p><p><b>  4 軟件設(shè)計(jì)</b></p><p><b>  4.1 總體思路</b></p&g

45、t;<p>  交通燈的控制主要是利用單片機(jī),是單片機(jī)的一個(gè)典型應(yīng)用,首先用12個(gè)二極管的亮與滅來(lái)模擬交通燈的各種狀態(tài)??紤]交通燈的功能,一個(gè)十字路口至少需4組交通燈:東西南北各一組,而設(shè)計(jì)的關(guān)鍵是控制交通燈的亮與滅。考慮南北、東西方向燈的亮滅規(guī)律相同,故可以考慮用三個(gè)兩組交通燈來(lái)模擬實(shí)際的三組交通燈:東西一組三個(gè)二極管,南北一組三個(gè)二極管,分別用紅、綠、黃用來(lái)指示行走與停止。可用中斷計(jì)數(shù)器控制,來(lái)顯示不同的二極管來(lái)模擬交

46、通燈不</p><p>  同的狀態(tài)。同時(shí)使用喇叭來(lái)處理緊急情況。</p><p><b>  4.2主程序模塊</b></p><p>  主程序初始化和按鍵控制,首先將時(shí)間、中斷分別進(jìn)行初始化,然后啟動(dòng)定時(shí)器對(duì)時(shí)間進(jìn)行判斷,同時(shí)掃描按鍵程序,用無(wú)條件跳轉(zhuǎn)指令返回, 再調(diào)用顯示程序,如此周而復(fù)始的循環(huán),如圖4.1所示</p>&

47、lt;p>  圖4.1 主程序流程圖</p><p><b>  主程序:</b></p><p>  初值:X=216-定時(shí)時(shí)間/振蕩周期×12=216-50ms/1us=15536=3CB0H,TH0=3CH , TL0=0B0H。</p><p>  ORG 0000H</p><p>  A

48、JMP START</p><p>  ORG 0030H</p><p>  START: MOV TMOD, #01H; 令T0為定時(shí)器方式1</p><p>  MOV TH0, #3CH ; 裝入定時(shí)器初值</p><p>  MOV TL0, #0B0H  <

49、;/p><p>  SETB EA ; 開T0中斷</p><p>  SETB TF0</p><p>  SEBT  TR0   ; 啟動(dòng)T0計(jì)數(shù)器</p><p>  MOV   R0,  #20H ??; 軟件計(jì)數(shù)器賦初值</p><p

50、>  LJMP $ ;  等待中斷</p><p>  4.3中斷服務(wù)程序模塊</p><p>  進(jìn)入中斷程序后,先保護(hù)現(xiàn)場(chǎng),看CPU是否相應(yīng)中斷,如果沒有就恢復(fù)現(xiàn)場(chǎng),返回主程序,如果CPU相應(yīng)中斷,那么喇叭想起,所有指示燈全部滅;判斷指示燈循環(huán)顯示完了嗎?如果沒完,將保地址重新送入程序計(jì)數(shù)器中,然后再查表下一地址,顯示下一組指示燈狀態(tài),保存

51、下一組程序數(shù)據(jù)地址,恢復(fù)現(xiàn)場(chǎng),返回主程序,如果完了,查表首地址,保存下一地址,恢復(fù)現(xiàn)場(chǎng),返回主程序。數(shù)據(jù)繼續(xù)循環(huán),如果循環(huán)完必,應(yīng)查表首地址,周而復(fù)始的循環(huán)。</p><p><b>  4.4仿真 </b></p><p>  Proteus ISIS是英國(guó)Labcenter公司開發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于  Windows操作系統(tǒng)上,可以仿真

52、、分析(SPICE)各種模擬器件和集成電路,該軟件的特點(diǎn)是:</p><p> ?。?)實(shí)現(xiàn)了單片機(jī)仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)等。</p><p> ?。?) 支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單

53、片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。    </p><p> ?。?)提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C

54、51 uVision2等軟件。</p><p>  (4)具有強(qiáng)大的原理圖繪制功能。總之,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大。</p><p>  4.5 Proteus基本操作</p><p>  預(yù)覽窗口(The Overview Window):</p><p>  Proteus它具有兩個(gè)功能:

55、 </p><p>  1、當(dāng)你在元件列表中選擇一個(gè)元件時(shí),它會(huì)顯示該元件的預(yù)覽圖;</p><p>  2、當(dāng)你的鼠標(biāo)焦點(diǎn)落在原理圖編輯窗口時(shí)(即放置元件到原理圖編輯窗口后或在原理圖編輯窗口中點(diǎn)擊鼠標(biāo)后),它會(huì)顯示整張?jiān)韴D的縮略圖,并會(huì)顯示一個(gè)綠色的方框,如左上角位置,你可用鼠標(biāo)改變綠色的方框的位置,從而改變?cè)韴D的可

56、視范圍。</p><p>  原理圖編輯窗口(The Editing Window):</p><p>  Proteus用來(lái)繪制原理圖。藍(lán)色方框內(nèi)為可編輯區(qū),如圖1.1所示,元件要放到它里面。注意,這個(gè)窗口是沒有滾動(dòng)條的,你可通過(guò)預(yù)覽窗口來(lái)改變?cè)韴D的可視范圍,或shift+鼠標(biāo)移動(dòng)到窗口邊框來(lái)實(shí)現(xiàn)滾動(dòng)。</p><p>  在模型選擇工具欄中選“元件”(默認(rèn)),

57、單擊“P”按鈕,出現(xiàn)挑選元件窗口,通過(guò)上面介紹的兩種方法之一(關(guān)鍵字Keywords篩選或分類篩選),篩選出所需的單片機(jī)芯片,雙擊將其放入元件列表;同樣的方法放入交通指示燈traffic light、 Res(電阻),從Led-(光電器件)中挑選出不同顏色的發(fā)光二極管:LED-RED、LED-YELLOW、LED-GTEEN。</p><p>  4.6Proteus與Keil的聯(lián)調(diào)</p><

58、;p>  Proteus是Labcenter公司出品的電路分析、實(shí)物仿真系統(tǒng)。它可仿真各種電路和集成IC,最讓我們高興的是它支持許多型號(hào)的單片機(jī)的仿真,另外還提供Schematic Drawing與PCB設(shè)計(jì)功能。它的元件庫(kù)齊全,使用方便,是不可多得的電子電路設(shè)計(jì)輔助軟件。keil是目前世界上最好的51單片機(jī)的匯編和C語(yǔ)言的開發(fā)工具。它支持匯編,C語(yǔ)言以及混合編程,同時(shí)具備功能強(qiáng)大的軟件仿真和硬件仿真(用mon51協(xié)議,

59、需硬件支持)功能。但是我們?cè)诶盟姆抡婀δ艿臅r(shí)候都有一定的限制。如果我們把這兩個(gè)軟件結(jié)合來(lái)用,調(diào)試軟硬件就方便多了。其實(shí)Proteus在設(shè)計(jì)的時(shí)候已經(jīng)注意到和各種單片機(jī)編譯程序的整合了。如它可以和Keil、MPLAB IDE等編譯模擬軟件結(jié)合。筆者在這里先向大家介紹Proteus怎么樣和keil結(jié)合的。</p><p>  第一步,安裝Proteus軟件完畢后,右擊Proteus的圖標(biāo),將其屬性打開,

60、點(diǎn)擊[查找目標(biāo)],將Proteus\ crack目錄下的BIN文件夾復(fù)制,替換[查找目標(biāo)]上有級(jí)目錄的BIN文件夾,點(diǎn)擊確定即可。</p><p>  第二步,將 keil軟件安裝完畢后,安裝keil驅(qū)動(dòng)。</p><p>  第三步,Proteus的設(shè)置。運(yùn)行Proteus的ISIS,鼠標(biāo)左鍵點(diǎn)擊菜單“DEBUG”,選中“use romote debuger 

61、;monitor”對(duì)所做的圖進(jìn)行隨時(shí)保存。下面我們用鼠標(biāo)左鍵點(diǎn)擊菜單“File”,再點(diǎn)擊“Load Design”,導(dǎo)入我們所完成的文件。注意,一定要把keil的工程和Proteus的文件放到同一個(gè)目錄下。好了,我們現(xiàn)在就可以試試我們的成果了!打開keil,按Ctrl+F5進(jìn)入調(diào)試界面或者點(diǎn)擊工具欄的按鈕。如果不能進(jìn)入調(diào)試界面,可能設(shè)置有誤,按照上面的步驟再重新設(shè)置一下。進(jìn)入了調(diào)試界面,按F5或者點(diǎn)擊工具欄的 按鈕,

62、全速運(yùn)行,再看看ISIS,有什么變化了嗎?你可以調(diào)整一下你的屏幕,讓兩個(gè)程序同時(shí)出現(xiàn)顯示器上。</p><p>  連接成功以后,你可以在keil調(diào)試你的程序了,單步、全速都可以;也可以進(jìn)行設(shè)置斷點(diǎn)、觀察變量的值等。你也可以在Proteus做硬件方面的模擬,如按按鍵、改變可調(diào)電阻的阻值等,這個(gè)時(shí)候keil都會(huì)有反應(yīng)的;我們還可以在Proteus加上一些儀表,如示波器、電表、頻率發(fā)生器等。</p>&

63、lt;p>  4.7定時(shí)器初值計(jì)算</p><p>  定時(shí)器工作時(shí)必須給計(jì)數(shù)器送初值,將這個(gè)值送到TH和TL中。他是以加法記數(shù)的,并能從全1到全0時(shí)自動(dòng)產(chǎn)生溢出中斷請(qǐng)求。因此工作于方式1,定時(shí)器為16位計(jì)數(shù)器其定時(shí)時(shí)間由下式計(jì)算:</p><p>  X=216-定時(shí)時(shí)間/振蕩周期×12</p><p>  式中x為T0的初始值,該值和計(jì)數(shù)器工作方

64、式有關(guān)。</p><p>  如單片機(jī)的主脈沖頻率為12Mhz ,經(jīng)過(guò)12分頻</p><p>  方式0  定時(shí)時(shí)間=213 × 1微秒=8.192毫秒</p><p>  方式1  定時(shí)時(shí)間=216 × 1微秒=65.536毫秒</p><p>  秒鐘已經(jīng)超過(guò)了計(jì)數(shù)器的最大定時(shí)間,所以我們只有采用定時(shí)器和軟件相結(jié)合

65、的辦法才能解決這個(gè)問題,定時(shí)器需定時(shí)50毫秒,故T0工作于方式1,定時(shí)20次,就可定時(shí)一秒。</p><p><b>  5 系統(tǒng)調(diào)試</b></p><p>  完成了硬件的設(shè)計(jì)、制作和軟件編程之后,要使系統(tǒng)能夠按設(shè)計(jì)意圖正常運(yùn)行,必須進(jìn)行系統(tǒng)調(diào)試。系統(tǒng)調(diào)試包括硬件調(diào)試和軟件調(diào)試兩個(gè)部分。不過(guò),作為一個(gè)單片機(jī)系統(tǒng),其運(yùn)行是軟硬件相結(jié)合的,因此,軟硬件的調(diào)試也是絕對(duì)不

66、可能分開的。</p><p>  程序的調(diào)式應(yīng)一個(gè)模塊一個(gè)模塊地進(jìn)行,單獨(dú)調(diào)試各功能子程序,檢驗(yàn)程序是否能夠?qū)崿F(xiàn)預(yù)期的功能,接口電路的控制是否正常等;最后逐步將各個(gè)子程序連接起來(lái)總調(diào)。聯(lián)調(diào)需要注意的是,各程序模塊間能否正確傳遞參數(shù),特別要注意各子程序的現(xiàn)場(chǎng)保護(hù)與恢復(fù)。調(diào)試的基本步驟如下:</p><p>  將所要調(diào)試的程序輸入道偉福6000中,然后進(jìn)行編譯,根據(jù)系統(tǒng)的提示查找原因?qū)⒊鲥e(cuò)的

67、地方調(diào)整正確,例如:有的時(shí)標(biāo)號(hào)未定義,有的時(shí)少標(biāo)點(diǎn)符號(hào)等。最后以ASM擴(kuò)展名保存。</p><p>  將在偉福中調(diào)試好的程序方入keil內(nèi),將單片機(jī)實(shí)驗(yàn)相與計(jì)算機(jī)連接,然后在keil中進(jìn)行編譯程序,運(yùn)行程序,根據(jù)單片機(jī)所顯示的結(jié)果分析程序,修改程序直到程序正常。</p><p>  在調(diào)試過(guò)程中出現(xiàn)的問題:</p><p> ?。?)執(zhí)行程序時(shí),當(dāng)按下按鈕時(shí)喇叭不

68、響,經(jīng)檢查發(fā)現(xiàn)是中斷程序部分編寫有些錯(cuò)誤,改正后達(dá)到設(shè)計(jì)要求。</p><p> ?。?)當(dāng)打開仿真軟件執(zhí)行程序時(shí),發(fā)現(xiàn)發(fā)光二極管不亮,通過(guò)檢查發(fā)現(xiàn)硬件和軟件端口不符。</p><p><b>  6 結(jié) 論</b></p><p>  通過(guò)單片機(jī)課程設(shè)計(jì),我不僅加深了對(duì)單片機(jī)理論的理解,將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而且我還學(xué)會(huì)了如何去培養(yǎng)

69、我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新,是要我們學(xué)會(huì)將理論很好地聯(lián)系實(shí)際,并不斷地去開動(dòng)自己的大腦,從為人類造福的意愿出發(fā),做自己力所能及的,別人卻沒想到的事。使之不斷地戰(zhàn)勝別人,超越前人。同時(shí),更重要的是,我在這一設(shè)計(jì)過(guò)程中,學(xué)會(huì)了堅(jiān)持不懈,不輕易言棄。設(shè)計(jì)過(guò)程,也好比是我們?nèi)祟惓砷L(zhǎng)的歷程,常有一些不如意,也許這就是在對(duì)我們提出了挑戰(zhàn),勇敢過(guò),也戰(zhàn)勝了,勝利的鐘聲也就一定會(huì)為我們而敲響。</p><p&

70、gt;<b>  致 謝</b></p><p>  本設(shè)計(jì)的完成是在呂老師的細(xì)心指導(dǎo)下進(jìn)行的。在每次設(shè)計(jì)遇到問題時(shí)老師不辭辛苦的講解才使得我的設(shè)計(jì)順利的進(jìn)行。從設(shè)計(jì)的選題到資料的搜集直至最后設(shè)計(jì)的修改的整個(gè)過(guò)程中,花費(fèi)了xx老師很多的寶貴時(shí)間和精力,真的非常感謝xx老師,你能在我大學(xué)的最后學(xué)習(xí)階段——畢業(yè)設(shè)計(jì)階段給我的指導(dǎo)。從最初的定題,到資料收集,到寫作、修改,到論文定稿,給了我耐心的

71、指導(dǎo)和無(wú)私的幫助還要感謝和我同一設(shè)計(jì)小組的幾位同學(xué),是你們?cè)谖移綍r(shí)設(shè)計(jì)中和我一起探討問題,并指出我設(shè)計(jì)上的誤區(qū),使我能及時(shí)的發(fā)現(xiàn)問題把設(shè)計(jì)順利的進(jìn)行下去,沒有你們的幫助我不可能這樣順利地結(jié)稿,在此表示深深的謝意。為了指導(dǎo)我們的畢業(yè)論文,xx老師拋棄了自己的休息時(shí)間,這種無(wú)私奉獻(xiàn)的敬業(yè)精神令人欽佩,在此我向你表示我誠(chéng)摯的謝意。恰是因?yàn)槟銈?,我才能在各方面取得明顯的提高,在此向你們表示我由衷的謝意,并祝xx老師培養(yǎng)出越來(lái)越多的優(yōu)秀人才,桃李

72、滿天下。</p><p><b>  參考文獻(xiàn)  </b></p><p>  [1] 李全利,遲榮強(qiáng).單片機(jī)原理及其接口技術(shù).高等教育出版社,2004</p><p>  [2] 錫存.單片機(jī)原理及接口技術(shù)[M].陜西.西安電子科技大學(xué)出版社,2000</p><p>  [3] 沈紅偉.單片機(jī)應(yīng)用

73、系統(tǒng)設(shè)計(jì)實(shí)例與分析.北京.航空航天出版社,2003</p><p>  [5] 萬(wàn)光毅.單片機(jī)實(shí)驗(yàn)與實(shí)踐教程[M].北京.航空航天大學(xué)出版,2004</p><p>  [6] 周堅(jiān).單片機(jī)輕松入門.北京.航空航天大學(xué)出版社,2004</p><p>  [7] 李家才.單片機(jī)控制工程實(shí)踐技術(shù)[M].北京.化學(xué)工業(yè)出版社,2004</p><p&

74、gt;  [8] 陳海宴.51單片機(jī)原理及應(yīng)用[M].北京航空航天大學(xué)出版社,2010.</p><p>  [9] 李平等.單片機(jī)入門與開發(fā)[M].機(jī)械工業(yè)出版社,2008</p><p><b>  附 錄1</b></p><p>  ORG 0000H </p><p>  LJMP MAIN &

75、lt;/p><p><b>  ORG 0003H</b></p><p><b>  LJMP INT0</b></p><p><b>  ORG 000BH</b></p><p><b>  LJMP LP1</b></p><p&

76、gt;<b>  ORG 0030H</b></p><p>  MAIN: MOV P2,#00H</p><p>  MOV P1,#00H</p><p>  LCALL DELAY</p><p>  MOV P2,#0FFH</p><p>  MOV P1,#0FFH</p>

77、;<p>  LCALL DELAY</p><p>  CLR P2.2</p><p>  MOV TMOD,#01H</p><p>  MOV TH0,#0FCH</p><p>  MOV TL0,#44H</p><p><b>  SETB EA</b>&l

78、t;/p><p><b>  SETB ET0</b></p><p><b>  SETB EX0</b></p><p><b>  SETB IT0</b></p><p>  JB P3.5,MAIN</p><p>  START: LCAL

79、L ZHT0</p><p>  LCALL ZHT1</p><p>  LCALL ZHT2</p><p>  LCALL ZHT3</p><p>  LJMP START</p><p>  ZHT0: MOV P1,#0F3H</p><p>  MOV R4,#22</p&g

80、t;<p><b>  MOV R3,#3</b></p><p><b>  LCALL DIR</b></p><p><b>  RET</b></p><p>  ZHT1: MOV P1,#0F5H</p><p><b>  MOV R4,#

81、3</b></p><p>  MOV R3,#22</p><p><b>  LCALL DIR</b></p><p><b>  RET</b></p><p>  ZHT2: MOV P1,#0DEH</p><p>  MOV R4,#22</p

82、><p><b>  MOV R3,#0</b></p><p><b>  LCALL DIR</b></p><p><b>  RET</b></p><p>  ZHT3: MOV P1,#0EEH</p><p><b>  MOV R4

83、,#3</b></p><p>  MOV R3,#22</p><p><b>  LCALL DIR</b></p><p><b>  RET</b></p><p>  DIR: MOV A,R3</p><p>  MOV DPTR,#TABLE<

84、/p><p>  MOVC A,@A+DPTR</p><p><b>  MOV P2,A</b></p><p>  LCALL DELAY</p><p><b>  INC R3</b></p><p>  DJNZ R4,DIR</p><p>

85、<b>  RET</b></p><p>  DELAY: MOV R5,#20</p><p>  D1: MOV R6,#100</p><p>  D2: MOV R7,#248</p><p><b>  DJNZ R7,$</b></p><p>  DJNZ R

86、6,D2</p><p>  DJNZ R5,D1</p><p><b>  RET</b></p><p>  INT0: CPL TR0</p><p><b>  RETI</b></p><p>  LP1: MOV TH0,#0FCH</p>

87、<p>  MOV TL0,#44H </p><p>  CPL P2.2</p><p><b>  RETI </b></p><p>  TABLE: DB 25H,24H,23H,22H,21H</p><p>  DB 20H,19H,18H,17H,16H,15H,14H,13H,12

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論