IT培训机构|91免费精品视频|专注编程培训|91免费精品|软件开发培训_91免费国产视频_华清远见教育

當前位置:首頁 > 嵌入式培訓 > 單片機學習 > 單片機教程 > 51單片機中斷概念及操作詳解

51單片機中斷概念及操作詳解 時間:2018-07-25      來源:未知

51單片機中斷概念及操作詳解

中斷的意思就是中止當前的工作,然后去執行另外的任務,執行完之后再回來執行原來的任務。比如說你正在看書,突然電話響了,你接完電話,又接著看書,這就是中斷。上面的程序就是設置定時器中斷的,定時器中斷是這樣的,當定時器記滿65535之后,就會溢出,溢出就會觸發中斷,中斷完成后又接著計數,當然,如果你想每次定時時間一樣長的話,也要在中斷服務程序中重新裝入初值。

一.中斷的概念

中斷發生

CPU在處理某一事件A時,發生了另一事件B請求CPU迅速去處理

中斷響應和中斷服務

CPU暫時中斷當前的工作,轉去處理事件B

中斷返回

待CPU將事件B處理完畢后,再回到原來事件A被中斷的地方繼續處理事件A

這一過程稱為中斷

二.中斷過程示意圖

三.MCS51中斷系統的結構

MCS51的中斷系統有5個中斷源(8052有 6個) ,2個優先級,可實現二級中斷嵌套

中斷編號 中斷名 中斷源

0 外部中斷0 IE0(P3.2)

1 定時器0溢出中斷 TF0

2 外部中斷1 IE1(P3.3)

3 定時器1溢出中斷 TF1

4 串行口中斷 RI

四.中斷寄存器

單片機有10個寄存器主要與中斷程序的書寫控制有關

中斷允許控制寄存器IE

定時器控制寄存器TCON

串口控制寄存器SCON

中斷優先控制寄存器IP

定時器工作方式控制寄存器TMOD

定時器初值賦予寄存器(TH0/TH1,TL0/TL1)

五.部分寄存器詳解

1.中斷允許控制寄存器(IE)

EX0:外部中斷0允許位;

ET0:定時/計數器T0中斷允許位;

EX1:外部中斷1允許位;

ET1:定時/計數器T1中斷允許位;

ES :串行口中斷允許位;

EA :CPU中斷允許(總允許)位。

2.定時器/計數器控制寄存器控制寄存器(TCON)

IT0:外部中斷0觸發方式控制位

當IT0=0時,為電平觸發方式(低電平有效)

當IT0=1時,為邊沿觸發方式(下降沿有效)

IE0:外部中斷0中斷請求標志位

IT1:外部中斷1觸發方式控制位

IE1:外部中斷1中斷請求標志位

TF0:定時/計數器T0溢出中斷請求標志位

TF1:定時/計數器T1溢出中斷請求標志位

3.串行口控制寄存器(SCON)

RI:串行口接收中斷標志位。當允許串行口接收數據時,每接收完一個串行幀,由硬件置位RI。注意,RI必須由軟件清除。

TI:串行口發送中斷標志位。當CPU將一個發送數據寫入串行口發送緩沖器時,就啟動了發送過程。每發送完一個串行幀,由硬件置位TI。CPU響應中斷時,不能自動清除TI,TI必須由軟件清除。

4.中斷優先級控制寄存器(IP)

PX0:外部中斷0優先級設定位

PT0:定時/計數器T0優先級設定位

PX1:外部中斷0優先級設定位

PT1:定時/計數器T1優先級設定位

PS :串行口優先級設定位

PT2:定時/計數器T2優先級設定位

六.中斷響應條件

中斷源有中斷請求

此中斷源的中斷允許位為1

開中斷(即EA=1)

一.定時器相關寄存器

工作方式寄存器(TMOD)

該寄存器用于設置定時/計數器的工作方式,低四位用于定時器0,高四位用于定時器1。

GATE:門控位。GATE=0時,只要用軟件使TCON中的TR0或TR1為1,就可以啟動定時/計數器工作;GATA=1時,要用軟件使TR0或TR1為1,同時外部中斷引腳INT0/1也為高電平時,才能啟動定時/計數器工作。即此時定時器的啟動條件,加上了INT0/1引腳為高電平這一條件。

C/T:定時/計數模式選擇位。C/T=0為定時模式;C/T=1為計數模式。

定時器/計數器控制寄存器控制寄存器(TCON)

該寄存器的低4位用于控制外部中斷,已在前面介紹,高4位用于控制定時/計數器的啟動和中斷申請。

TF1:T1溢出中斷請求標志位。T1計數溢出時由硬件自動置TF1為1。CPU響應中斷后TF1由硬件自動清0。

TR1:T1運行控制位。TR1置1時,T1開始工作;TR1置0時,T1停止工作。TR1由軟件置1或清0。所以,用軟件可控制定時/計數器的啟動與停止。

TF0:T0溢出中斷請求標志位,其功能與TF1類同。

TR0:T0運行控制位,其功能與TR1類同。

中斷允許控制寄存器(IE)

ET0:定時/計數器T0中斷允許位;

ET1:定時/計數器T1中斷允許位;

EA :CPU中斷允許(總允許)位。

二.定時器溢出中斷的處理過程

1、設置定時器工作方式

2、為定時器裝入初值

3、定時器中斷允許位置為1

4、開總中斷

5、開定時器,等待產生溢出中斷請求

三.實現簡單時鐘

說明:

1.使用動態數碼管顯示

2.選擇工作方式1,以16位的定時器0進行工作,即TMOD=0x01,中斷編號為1;

3.定時50ms,即每隔50ms產生一次中斷:

TH0=(65536-50000)/256; //16位定時器的高8位

TL0=(65536-50000)%256; //16位定時器的低8位

具體的時間與單片機的晶振有關,請了解機器周期、指令周期、時鐘周期等相關知識。

#include

#define uchar unsigned char

#define uint unsigned int

uchar hour,min,sec;

uchar code wei[8]= {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //共陰極數碼管位選編碼

uchar code duan[11]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x01}; //共陰極數碼管段選編碼

void delay(uint z)

{

uint i,j;

for(i=z;i>0;i--)

for(j=110;j>0;j--);

}

void timer0_init()

{

TMOD=0X01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

ET0=1;

TR0=1;

EA=1;

}

void main()

{

uchar i;

timer0_init();

while(1)

{

num[0]=duan[hour/10];

num[1]=duan[hour%10];

num[2]=0x40; //顯示一橫

num[3]=duan[min/10];

num[4]=duan[min%10];

num[5]=0x40; //顯示一橫

num[6]=duan[sec/10];

num[7]=duan[sec%10];

for(i=0; i<8; i++) //顯示部分

{

P0=wei[i]; //位選

P1=num[i]; //段選

delay(2);

P1=0x00; //消隱

}

}

/*啟動定時器后,沒次計數溢出就會進入中斷服務函數,重新賦初值,再進行計數,來達到定時的效果*/

void timer0() interrupt 1 //定時器中斷服務函數

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

t++;

if(hour==24)

hour=0;

if(min==60)

{

hour++;

min=0;

}

if(sec==60)

{

min++;

sec=0;

}

if(t==20)

{

sec++;

t=0;

}

}

上一篇:單片機AD轉換方法 為什么要AD轉換?

下一篇:單片機開關方式 控制開關電源三種方式

熱點文章推薦
華清學員就業榜單
高薪學員經驗分享
熱點新聞推薦
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部

主站蜘蛛池模板: 联系我们果博东方公司福布斯客服电话| 雾度计-雾度仪-透光率测试仪-3nh品牌雾度仪生产厂家 | 亚克力游泳池_透明/空中/无边泳池_别墅亚克力泳池设计生产厂家_瑞地格乐-深圳他拍档 | 无塔供水_无塔供水设备_全自动_石家庄工泉水处理设备有限公司_家用无塔供水器 | 真空热处理-渗碳热处理-氮化热处理-[东莞德亿]专业热处理加工厂家 | 数据交易导航,数据资产入表,数据交易平台,数据要素市场 | 环链电动葫芦-群吊电动葫芦-链条电动葫芦-环链葫芦-河北大力起重官方网站 | 三亚酒吧KTV会所 专业舞台音响灯光 智能影音 会议音响工程 首选海南东演音响公司 | 泰州阳光会计服务有限公司官网-泰州公司注册|泰州代理记账 | 河南车用尿素设备_郑州车用尿素设备_河南江宇环保车用尿素液厂家 | 唐山自粘防水|沥青防水涂料信息|压膜防水卷材报价-德生防水股份有限公司 | 进销存软件|仓库管理软件|库存物资出入库|ERP生产|MRP|易特软件官方网站 | 三叶罗茨鼓风机_三叶罗茨风机厂家_山东九洲四海机械有限公司 | 水分测定仪_微量水分测定仪_高低温试验箱_昆山鹭工精密仪器有限公司 | 进销存软件|仓库管理软件|库存物资出入库|ERP生产|MRP|易特软件官方网站 | 河北湛存边坡防护工程有限公司-边坡防护网_边坡绿化修复_喷浆挂网 | 悬挂式小鼠笼架,植物标本采集箱,昆虫标本盒厂家-北京合力科创科技发展有限公司 | 生物除臭塔_生物除臭箱_玻璃钢吸收塔_玻璃钢集气罩_-安丘恒业玻璃钢有限公司 | 人工气候-智能-低温生化培养箱厂家|价格-上海予卓仪器 | 绝缘油介电强度测试仪|d33压电测试仪|准静态d33压电测量仪厂家直销-上海蓝巢电气有限公司【官网】 | 饮料制造机械设备-罐体设备报价-CIP清洗设备-饮料生产线交钥匙工程-上海哲苏轻工机械有限公司 | 三菱plc_触摸屏_变频器_欧姆龙plc_普洛菲斯_安川伺服电机-广州凌控 | 深圳蓝枫印刷_画册印刷_彩页印刷_宣传册印刷_包装盒印刷_彩盒印刷厂_不干胶印刷厂 | 江西省屹诚建筑装饰工程有限公司 | 涂料分散剂_水墨分散剂-厚洹化学水性色浆助剂厂家 | 无塔供水设备_无负压供水设备_变频供水设备_净化过滤设备_加油站油罐_S/F双层油罐_开封市东方供水设备有限公司 | 气体检测仪,多功能气体检测仪,四合一检测仪,氯气检测仪,有机挥发气体检测仪,气体报警器-南京诺邦电子科技有限公司 | 橡塑板_橡塑板厂家_橡塑保温管厂家_廊坊虓龙保温材料有限公司 | 金属探测机_食品金属探测仪_食品金属探测器_广东善安金属检测机 金属剪切机,金属打包机,废钢剪切机,废铁压块机,金属压块机,废纸打包机,重废龙门剪,废钢龙门剪,箱式剪,液压剪切机-瑞顿机械装备制造江阴有限公司 | 食品甲醛测定仪,啤酒甲醛测定仪,食盐碘测定仪,食品细菌检验仪,水质细菌检验仪-厦门欣锐仪器仪表有限公司 | 滑动轴承_无油自润滑轴承_复合干式_含油铜套_石墨铜套-嘉善盛元自润滑轴承厂 | 真空工业炉-真空油淬炉-真空气淬炉-高温石墨化炉-江苏华弘真空科技有限公司 | 消防车厂家_东风水罐泡沫消防车价格图片吨位-湖北新东日专用汽车有限公司 | 润滑油展会 沈阳 南京 润滑油 展会 西安 润滑脂 中国国际润滑油 全国润滑油 汽配_中国国际润滑油、脂、养护用品及技术设备展览会 | 胶球清洗-射水抽气器-磷酸盐加药装置-连云港振辉机械设备有限公司 | 南通海拓机械有限公司|剪板机|折弯机|卷板机|开卷校平线 | 模具配件加工厂|东莞模具配件加工|模具配件加工厂|精密塑胶模具配件|东莞市优迪精密模具制品有限公司 | 中式婚礼_汉服婚礼_传统婚礼_婚庆公司_云歌婚礼策划【官网】 | 耐磨工业软管,PTFE耐腐蚀软管,耐磨喷砂胶管,超耐磨软管厂家,漯河利通液压管利通科技-耐磨工业软管,PTFE耐腐蚀软管,耐磨喷砂胶管,超耐磨软管厂家,漯河利通液压管利通科技 | 磨粉机_上海磨粉机_雷蒙磨粉机_超细磨粉机_磨粉机价格-上海山卓重工机械有限公司 | 合肥固化地坪-安徽耐磨地坪-合肥环氧地坪厂家-安徽玉平地坪工程有限公司 |