版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
學(xué)習(xí)情境3-交通燈控制系統(tǒng)的制作中斷系統(tǒng)是單片機(jī)中非常重要的組成部分,它是為了使單片機(jī)能夠?qū)ν獠炕騼?nèi)部隨機(jī)發(fā)生的事件實(shí)時(shí)處理而設(shè)置的。中斷功能的存在,在很大程度上提高了單片機(jī)實(shí)時(shí)處理能力,可以極大地提高單片機(jī)的運(yùn)行效率,使系統(tǒng)工作更加靈活和智能化,是學(xué)習(xí)單片機(jī)必須掌握的重要內(nèi)容。生活中常見(jiàn)的交通燈控制就是單片機(jī)中斷控制系統(tǒng)的一個(gè)典型應(yīng)用。情境描述本情境由三個(gè)任務(wù)組成:任務(wù)一:可中斷控制的流水燈系統(tǒng)的制作,主要掌握中斷設(shè)置等基本操作,為下面的復(fù)雜交通燈系統(tǒng)的中斷控制打下基礎(chǔ);任務(wù)二:簡(jiǎn)易秒表的制作,主要定時(shí)器/計(jì)數(shù)器的C51編程,為下面的復(fù)雜交通燈系統(tǒng)的定時(shí)顯示打下基礎(chǔ);任務(wù)三:交通燈控制系統(tǒng)的制作,全方面利用了中斷控制和定時(shí)器/計(jì)數(shù)器,并進(jìn)行硬件電路的設(shè)計(jì)和程序的設(shè)計(jì)。程序包括主程序和中斷服務(wù)程序兩部分,通過(guò)學(xué)習(xí)可系統(tǒng)地掌握中斷的應(yīng)用技能。一、情境描述若遇到特殊情況,交警接到到命令,有特殊車輛要求緊急通過(guò),交警按下緊急按鈕,使兩個(gè)方向路口的交通燈都變成紅色,把路口讓出來(lái)。特殊車輛過(guò)去后,交通燈控制系統(tǒng)又恢復(fù)正常工作。交通高峰時(shí),交警發(fā)現(xiàn)A向是綠燈,可是沒(méi)有車輛再通過(guò)了,而B(niǎo)向是紅燈,車輛很多排起長(zhǎng)龍,這時(shí)交警可變換按鈕,使A方向變成紅燈,B方向變成綠燈放行,以緩解B方向交通壓力。項(xiàng)目1-可中斷控制的流水燈系統(tǒng)制作1知識(shí)儲(chǔ)備學(xué)習(xí)情境2-單片機(jī)控制數(shù)碼管的顯示一、項(xiàng)目描述二、項(xiàng)目分析在51單片機(jī)的P1口上接有8只LED。初始狀態(tài)8只LED亮,按下按鍵,高4位和低4位LED交替閃爍。在外部中斷0輸入引腳P3.2(INT0*)引腳接有一只按鈕開(kāi)關(guān)K1。程序要求將外部中斷0設(shè)置為負(fù)跳沿觸發(fā)。在程序啟動(dòng)時(shí),P1口上的8只LED亮。按一次按鈕開(kāi)關(guān)K1,使引腳接地,產(chǎn)生一個(gè)負(fù)跳沿觸發(fā)的外中斷0中斷請(qǐng)求,在中斷服務(wù)程序中,讓低4位的LED和高4位的LED交替閃爍。該任務(wù)需要掌握的知識(shí)技能如下:(1)單片機(jī)AT89C51中斷系統(tǒng)的結(jié)構(gòu)及組成;(2)中斷允許控制寄存器IE、中斷優(yōu)先級(jí)控制寄存器IP的作用;(3)各中斷源的中斷請(qǐng)求標(biāo)志位的意義及清零;(4)中斷的響應(yīng)過(guò)程;(5)外部中斷應(yīng)用的編程步驟及技巧。三、學(xué)習(xí)路線圖先接電話,然后再繼續(xù)看書(shū),這樣效率更高。中斷的概念只有一個(gè)CPU的51單片機(jī),面臨多任務(wù)時(shí),它是如何處理的呢?中斷的概念中斷的基本概念概念:“中斷”,是指計(jì)算機(jī)在執(zhí)行某一段程序的過(guò)程中,由于計(jì)算機(jī)系統(tǒng)內(nèi)、外的某種原因,有必要中止原程序的執(zhí)行,而去執(zhí)行相應(yīng)的處理程序,待處理結(jié)束后,再返回來(lái)繼續(xù)執(zhí)行原程序的過(guò)程。中斷技術(shù)主要用于實(shí)時(shí)監(jiān)測(cè)與控制,要求單片機(jī)能及時(shí)地響應(yīng)中斷請(qǐng)求源提出的服務(wù)請(qǐng)求,并快速響應(yīng)與及時(shí)處理。引導(dǎo)問(wèn)題1根據(jù)中斷的概念,你在生活中都見(jiàn)過(guò)哪些中斷應(yīng)用的場(chǎng)景?舉例說(shuō)明。承上中斷響應(yīng)機(jī)制一個(gè)完整的中斷處理過(guò)程應(yīng)包括:中斷請(qǐng)求中斷響應(yīng)中斷處理中斷返回當(dāng)中斷請(qǐng)求源發(fā)出中斷請(qǐng)求時(shí),如中斷請(qǐng)求被允許,單片機(jī)暫時(shí)中止當(dāng)前正在執(zhí)行的主程序,轉(zhuǎn)到中斷服務(wù)處理程序處理中斷服務(wù)請(qǐng)求,處理完中斷服務(wù)請(qǐng)求后,再回到原來(lái)被中止的程序之處(斷點(diǎn)),繼續(xù)執(zhí)行被中斷的主程序。小明看書(shū)電話鈴響暫??磿?shū)書(shū)中做記號(hào)電話談話繼續(xù)看書(shū)中斷的概念某人看書(shū)電話鈴響暫??磿?shū)書(shū)中做記號(hào)電話談話繼續(xù)看書(shū)現(xiàn)實(shí)生活中的中斷單片機(jī)的中斷
響應(yīng)中斷請(qǐng)求返回主程序中斷服務(wù)程序中斷請(qǐng)求主程序繼續(xù)執(zhí)行主程序CPU在處理某一工作A發(fā)生了另一事件B,請(qǐng)求CPU立刻去處理CPU暫時(shí)停止當(dāng)前的工作A記錄斷點(diǎn),轉(zhuǎn)去處理事件B處理B繼續(xù)A的工作中斷的概念某人看書(shū)電話鈴響暫??磿?shū)書(shū)中做記號(hào)電話談話繼續(xù)看書(shū)現(xiàn)實(shí)生活中的中斷單片機(jī)的中斷CPU在處理某一工作A發(fā)生了另一事件B,請(qǐng)求CPU立刻去處理CPU暫時(shí)停止當(dāng)前的工作A記錄斷點(diǎn),轉(zhuǎn)去處理事件B處理B返回繼續(xù)A的工作中斷請(qǐng)求中斷響應(yīng)(保護(hù)斷點(diǎn))中斷服務(wù)中斷返回中斷系統(tǒng)中斷的概念中斷源:是引起中斷的原因,或者是能發(fā)出中斷申請(qǐng)的來(lái)源,又被稱作“中斷請(qǐng)求源”。中斷請(qǐng)求:就是中斷源向CPU提出的處理請(qǐng)求。中斷響應(yīng):是當(dāng)中央處理機(jī)發(fā)現(xiàn)已有中斷請(qǐng)求時(shí),中止、保存現(xiàn)行程序執(zhí)行狀態(tài),并自動(dòng)引出中斷處理程序的過(guò)程。中斷的概念中斷服務(wù):程序是專門為中斷設(shè)計(jì)的,在中斷事件發(fā)生時(shí)執(zhí)行的專用子程序,一般分為:保護(hù)現(xiàn)場(chǎng)、執(zhí)行操作、恢復(fù)現(xiàn)場(chǎng)這些部分。中斷返回:中斷處理完畢,返回到被中斷的原程序的過(guò)程。引導(dǎo)問(wèn)題3如果出現(xiàn)更緊急的事件,如電熱水壺?zé)_(kāi),事件的先后順序如何?中斷優(yōu)先級(jí)處理原則對(duì)同時(shí)發(fā)生多個(gè)中斷申請(qǐng)時(shí),遵循以下原則:?不同優(yōu)先級(jí)的中斷同時(shí)申請(qǐng)(很難遇到)—先高后低?相同優(yōu)先級(jí)的中斷同時(shí)申請(qǐng)(很難遇到)—按序執(zhí)行?正處理低優(yōu)先級(jí)中斷又接到高級(jí)別中斷—高打斷低?正處理高優(yōu)先級(jí)中斷又接到低級(jí)別中斷—高不理低AT89C51中斷系統(tǒng)結(jié)構(gòu)AT89C51的中斷系統(tǒng)有5個(gè)中斷請(qǐng)求源,2個(gè)中斷優(yōu)先級(jí),可實(shí)現(xiàn)2級(jí)中斷服務(wù)程序嵌套。每一中斷源可用軟件獨(dú)立控制為允許中斷或關(guān)閉中斷狀態(tài);每一個(gè)中斷源的優(yōu)先級(jí)均可用軟件設(shè)置。外部中斷0(INT0):來(lái)自P3.2引腳,采集到低電平或者下降沿時(shí),產(chǎn)生中斷請(qǐng)求。外部中斷1(INT1):來(lái)自P3.3引腳,采集到低電平或者下降沿時(shí),產(chǎn)生中斷請(qǐng)求。定時(shí)器∕計(jì)數(shù)器0(T0):定時(shí)功能時(shí),計(jì)數(shù)脈沖來(lái)自片內(nèi);計(jì)數(shù)功能時(shí),計(jì)數(shù)脈沖來(lái)自片外P3.4引腳。發(fā)生溢出時(shí),產(chǎn)生中斷請(qǐng)求。定時(shí)器∕計(jì)數(shù)器1(T1):定時(shí)功能時(shí),計(jì)數(shù)脈沖來(lái)自片內(nèi);計(jì)數(shù)功能時(shí),計(jì)數(shù)脈沖來(lái)自片外P3.5引腳。發(fā)生溢出時(shí),產(chǎn)生中斷請(qǐng)求。串行口:為完成串行數(shù)據(jù)傳送而設(shè)置。單片機(jī)完成接收或發(fā)送一組數(shù)據(jù)時(shí),產(chǎn)生中斷請(qǐng)求。引導(dǎo)問(wèn)題4根據(jù)圖3-2AT89C51單片機(jī)中斷系統(tǒng)結(jié)構(gòu),將中斷名稱對(duì)應(yīng)的中斷源填寫在下表中。中斷名稱中斷源外部中斷0
定時(shí)器0溢出中斷
外部中斷1
定時(shí)器1溢出中斷
串口中斷引導(dǎo)問(wèn)題5請(qǐng)寫出P3.0、P3.1、P3.2、P3.3、P3.4、P3.5引腳的復(fù)用功能。引導(dǎo)問(wèn)題6如果要求外部中斷0控制LED燈,應(yīng)該通過(guò)哪個(gè)端口的引腳連接獨(dú)立按鍵,使用其它的接口是否可以,為什么?1、中斷號(hào)在C51中,每一個(gè)中斷源都有一個(gè)指定的中斷號(hào),中斷服務(wù)函數(shù)中必須聲明對(duì)應(yīng)的中斷號(hào),用中斷號(hào)確定該中斷服務(wù)程序是哪個(gè)中斷所對(duì)應(yīng)的中斷服務(wù)程序。C51中的中斷函數(shù)2、中斷函數(shù)定義格式在C51程序設(shè)計(jì)中,當(dāng)函數(shù)定義時(shí)用了interruptm修飾符,系統(tǒng)編譯時(shí)把對(duì)應(yīng)函數(shù)轉(zhuǎn)化為中斷函數(shù),自動(dòng)加上程序頭段和尾段,并按51系統(tǒng)中斷的處理方式自動(dòng)把它安排在程序存儲(chǔ)器中的相應(yīng)位置。C51中的中斷函數(shù)函數(shù)類型函數(shù)名(參數(shù))interruptm[usingn][usingn]用于指定本函數(shù)內(nèi)部使用的工作寄存器組,其中n的取值為0~3,表示寄存器組號(hào)??梢允÷?,省略后系統(tǒng)自動(dòng)選擇。中斷函數(shù)不能進(jìn)行參數(shù)傳遞,如果中斷函數(shù)中包含任何參數(shù)聲明都將導(dǎo)致編譯出錯(cuò)。中斷函數(shù)沒(méi)有返回值,建議在定義中斷函數(shù)時(shí)將其定義為void類型,以明確說(shuō)明沒(méi)有返回值。中斷服務(wù)程序的執(zhí)行外部中斷初始化流程任務(wù)3
外部中斷0控制LED變化任務(wù)要求:初始狀態(tài)奇數(shù)燈滅,偶數(shù)燈亮,每按鍵并松開(kāi)一次,LED奇偶燈亮滅狀態(tài)變化一次。分析:要求使用外部中斷控制LED燈,首先使AT89C51單片機(jī)的P1口連接8個(gè)LED,采用高電平點(diǎn)亮方式,觸發(fā)外部中斷0的為P3.2,按鍵按下,給P3.2輸入下降沿信號(hào),觸發(fā)中斷。#include<reg52.h>main(){
P1=0x55;//P1口初始值
EA=1;//全局中斷開(kāi)
EX0=1;//外部中斷0開(kāi)
IT0=1;//邊沿觸發(fā)
while(1)
{
//其他程序
}}/*------------------------------------------------
外部中斷程序------------------------------------------------*/void
ISR_Key(void)interrupt0using
1{
P1=~P1;}根據(jù)下表修改代碼,調(diào)試程序,運(yùn)行并將觀察到的結(jié)果填寫到表格中,將你對(duì)中斷參數(shù)對(duì)運(yùn)行結(jié)果的總結(jié)寫到側(cè)邊欄。硬件連接怎樣變化運(yùn)行結(jié)果分析原因EA=0,其他不變
EX0=0,其他不變
IT0=0,其他不變
EX1=1,IT1=1,其他不變
引導(dǎo)問(wèn)題15任務(wù)3所要求的的功能,也可以不使用中斷機(jī)制而改用判斷語(yǔ)句(if)實(shí)現(xiàn)。(1)請(qǐng)?jiān)谙旅娴目蛑袑懗龌趇f語(yǔ)句完成任務(wù)3功能的C程序代碼,并調(diào)試運(yùn)行。(2)當(dāng)CPU執(zhí)行到按鍵檢測(cè)語(yǔ)句后,才去改變LED的狀態(tài),如果沒(méi)有執(zhí)行到,那么即使你按下按鍵單片機(jī)也不會(huì)響應(yīng),也就是CPU主動(dòng)去問(wèn)按鍵有沒(méi)有被按下。無(wú)論CPU在干嘛,只要觸發(fā)中斷后,CPU就會(huì)放下手中的活,第一時(shí)間趕回來(lái)處理,也就是按鍵被按下后主動(dòng)告訴CPU。練習(xí)題:請(qǐng)針對(duì)下面進(jìn)行連線。 CPU主動(dòng)響應(yīng)中斷機(jī)制
CPU被動(dòng)響應(yīng)if語(yǔ)句任務(wù)4
按鍵控制8個(gè)LED依次點(diǎn)亮任務(wù)要求:每按鍵一次,LED從左到右依次逐個(gè)點(diǎn)亮,而其它LED都不亮,循環(huán)往復(fù)。引導(dǎo)問(wèn)題8小組討論,在線框內(nèi)畫出程序設(shè)計(jì)的流程圖。void
Delay10Ms(){
unsigned
char
i,j;
for(i=40;i>0;i--)
for(j=250;j>0;j--);}void
ISR_Key(void)interrupt0//外部中斷0引起的中斷程序{
Delay10Ms();
if(KEY==0)//二次判斷按鍵確實(shí)按下
{
while(KEY==0);//等待按鍵釋放
k=(k<<1)|0x01;//左移,最低位補(bǔ)1
}
if(KEY==0xff)
KEY=0xfe;}#include<reg52.h>sbitKEY=P3^2;unsigned
char
k=0xfe;void
Delay10Ms();int
main(){
IT0=1;//下降沿觸發(fā)
EX0=1;//外部中斷0允許
EA=1;//開(kāi)總中斷
while(1)
{
P1=k;
}}任務(wù)5
按鍵控制LED反向點(diǎn)亮任務(wù)要求:?jiǎn)纹瑱C(jī)開(kāi)發(fā)板上8個(gè)LED燈,初始狀態(tài)1,3,5,7燈亮,2,4,6,8燈滅,按一次按鍵,亮滅反轉(zhuǎn)。要求采用外部中斷1方式實(shí)現(xiàn),啟用按鍵去抖。引導(dǎo)問(wèn)題
任務(wù)要求外部中斷1控制LED燈,使用哪個(gè)接口實(shí)現(xiàn)與按鍵的連接?使用其它的接口是否可以,為什么?任務(wù)6
可中斷控制的流水燈系統(tǒng)(按鍵控制LED交替閃爍)任務(wù)要求:在51單片機(jī)的P1口上接有8只LED。在外部中斷0輸入引腳P3.2(INT0*)接有一只按鈕開(kāi)關(guān)K1。程序要求將外部中斷0設(shè)置為負(fù)跳沿觸發(fā)。在程序啟動(dòng)時(shí),P1口上的8只LED亮。按一次按鈕開(kāi)關(guān)K1,使引腳接地,產(chǎn)生一個(gè)負(fù)跳沿觸發(fā)的外中斷0中斷請(qǐng)求,在中斷服務(wù)程序中,讓低4位的LED和高4位的LED交替閃爍。引導(dǎo)問(wèn)題24(1)硬件連接填寫下表
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 武漢大學(xué)舞蹈課程設(shè)計(jì)表
- 音響商務(wù)談判課程設(shè)計(jì)
- 高校排球課程設(shè)計(jì)
- 素描課課程設(shè)計(jì)
- 鋼框架結(jié)構(gòu)課程設(shè)計(jì)書(shū)
- 跳躍活動(dòng)課程設(shè)計(jì)
- 藝術(shù)中班繪畫課程設(shè)計(jì)
- GB/T 44980-2024凍蝦滑
- 2025年度數(shù)據(jù)中心UPS電源采購(gòu)與能效提升合同3篇
- 二零二五版太陽(yáng)能發(fā)電站電力安全保障協(xié)議3篇
- 2024年醫(yī)師定期考核臨床業(yè)務(wù)知識(shí)考試題庫(kù)及答案(共三套)
- 2014新PEP小學(xué)英語(yǔ)六年級(jí)上冊(cè)-Unit5-What-does-he-do復(fù)習(xí)課件
- 建筑材料供應(yīng)鏈管理服務(wù)合同
- 孩子改名字父母一方委托書(shū)
- 2024-2025學(xué)年人教版初中物理九年級(jí)全一冊(cè)《電與磁》單元測(cè)試卷(原卷版)
- 江蘇單招英語(yǔ)考綱詞匯
- 2024年事業(yè)單位財(cái)務(wù)工作計(jì)劃例文(6篇)
- 2024年工程咨詢服務(wù)承諾書(shū)
- 青桔單車保險(xiǎn)合同條例
- 車輛使用不過(guò)戶免責(zé)協(xié)議書(shū)范文范本
- 2023-2024學(xué)年天津市部分區(qū)九年級(jí)(上)期末物理試卷
評(píng)論
0/150
提交評(píng)論