日本高清不卡中文字幕-一起草草视频在线观看-亚洲精品一区二区三区色-国产亚洲精品免费视频

你好!歡迎來(lái)到深圳市穎特新科技有限公司!
語(yǔ)言
當(dāng)前位置:首頁(yè) >> 技術(shù)中心 >> 單片機(jī)入門(mén) >> MCS-51與中斷有關(guān)的寄存器、中斷入口地址及編號(hào)

MCS-51與中斷有關(guān)的寄存器、中斷入口地址及編號(hào)

關(guān)鍵字:51單片機(jī) 寄存器 中斷 作者:admin 來(lái)源:不詳 發(fā)布時(shí)間:2018-05-18  瀏覽:14

 1、中斷入口地址及編號(hào)

MCS-51在每一個(gè)機(jī)器周期順序檢查每一個(gè)中斷源,在機(jī)器周期的S6按優(yōu)先級(jí)處理所有被激活的中斷請(qǐng)求,此時(shí),如果CPU沒(méi)有正在處理更高或相同優(yōu)先級(jí)的中斷,或者現(xiàn)在的機(jī)器周期不是所執(zhí)行指令的最后一個(gè)機(jī)器周期,或者CPU不是正在執(zhí)行RETI指令或訪問(wèn)IE和IP的指令(因?yàn)榘碝CS-51中斷系統(tǒng)的特性規(guī)定,在執(zhí)行完這些指令之后,還要在繼續(xù)執(zhí)行一條指令,才會(huì)響應(yīng)中斷),CPU在下一個(gè)機(jī)器周期響應(yīng)激活了的最高級(jí)中斷請(qǐng)求。

中斷響應(yīng)的主要內(nèi)容就是由硬件自動(dòng)生成一條長(zhǎng)調(diào)用LCALL addr16指令,這里的addr16就是程序存儲(chǔ)器中相應(yīng)的中斷區(qū)入口地址,這些中斷源的服務(wù)程序入口地址如下:

  表1 5個(gè)中斷源的服務(wù)程序入口地址

中斷源

入口地址

中斷號(hào)

 

 

 

 

 

 

 

 

外中斷0

0003H

0

 

 

 

 

 

 

 

 

定時(shí)/計(jì)數(shù)器0

000BH

1

 

 

 

 

 

 

 

 

外中斷1

0013H

2

 

 

 

 

 

 

 

 

定時(shí)/計(jì)數(shù)器1

001BH

3

 

 

 

 

 

 

 

 

串行口中斷

0023H

4

 

 

 

 

 

 

 

 

定時(shí)/計(jì)數(shù)器T2

002BH

5

 

 

 

 

 

 

 

 

 

生成LCALL指令后,CPU緊跟著便執(zhí)行之.首先將PC(程序計(jì)數(shù)器)的內(nèi)容壓入堆棧保護(hù)斷點(diǎn),然后把中斷入口地址賦予PC,CPU便按新的PC地址(即中斷服務(wù)程序入口地址)執(zhí)行程序。

值得一提的是,各中斷區(qū)只有8個(gè)單元,一般情況下(除非中斷程序非常簡(jiǎn)單),都不可能安裝下一個(gè)完整的中斷服務(wù)程序。因此,通常是在這些入口地址區(qū)放置一條無(wú)條件轉(zhuǎn)移指令,使程序按轉(zhuǎn)移的實(shí)際地址去執(zhí)行真正的中斷服務(wù)程序。

對(duì)于匯編,中斷函數(shù)的一般形式為:

1. ORG 中斷入口地址

2.

3. AJMP 中斷服務(wù)程序地址

4.

5. 中斷服務(wù)程序地址:

6.

7. ......

對(duì)于C語(yǔ)言,中斷函數(shù)的一般形式為:

1. void FunctionName(void) interrupt 中斷號(hào) //其中“中斷號(hào)”可查表1

2.

3. {

4.

5. .........

6.

7. }

2、與中斷有關(guān)的寄存器

(1) 定時(shí)器控制寄存器TCON

  表2  TCON寄存器結(jié)構(gòu)

D7

D6

D5

D4

D3

D2

D1

D0

 

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

 

 

IE1:外部邊沿觸發(fā)中斷1請(qǐng)求標(biāo)志,其功能和操作類似于TF0。

IT1:外部中斷1類型控制位,通過(guò)軟件設(shè)置或清除,用于控制外中斷的觸發(fā)信號(hào)類型。IT1=1,邊沿觸發(fā)。IT=0是電平觸發(fā)。

IE0:外部邊沿觸發(fā)中斷0請(qǐng)求標(biāo)志,其功能和操作類似于IE1。

IT0:外部中斷0類型控制位,通過(guò)軟件設(shè)置或清除,用于控制外中斷的觸發(fā)信號(hào)類型。其功能和操作類似于IE1。

(2) 中斷允許寄存器IE

 

  表3  IE寄存器結(jié)構(gòu)

D7

D6

D5

D4

D3

D2

D1

D0

 

EA

-

-

ES

ET1

EX1

ET0

EX0

 

 

EA:中斷總控制位,EA=1,CPU開(kāi)放中斷。EA=0,CPU禁止所有中斷。

ES:串行口中斷控制位,ES=1允許串行口中斷,ES=0,屏蔽串行口中斷。

ET1:定時(shí)/計(jì)數(shù)器T1中斷控制位。ET1=1,允許T1中斷,ET1=0,禁止T1中斷。

EX1:外中斷1中斷控制位,EX1=1,允許外中斷1中斷,EX1=0,禁止外中斷1中斷。

ET0:定時(shí)/計(jì)數(shù)器T0中斷控制位。ET1=1,允許T0中斷,ET1=0,禁止T0中斷。

EX0:外中斷0中斷控制位,EX1=1,允許外中斷0中斷,EX1=0,禁止外中斷0中斷。

(3) 中斷優(yōu)選級(jí)控制寄存器IP

 

  表4  IP中斷優(yōu)先級(jí)控制寄存器結(jié)構(gòu)

D7

D6

D5

D4

D3

D2

D1

D0

 

-

-

-

PS

PT1

Px1

PT0

PX0

 

 

PS:串行口中斷口優(yōu)先級(jí)控制位,PS=1,串行口中斷聲明為高優(yōu)先級(jí)中斷,PS=0,串行口定義為低優(yōu)先級(jí)中斷。

PT1:定時(shí)器1優(yōu)先級(jí)控制位。PT1=1,聲明定時(shí)器1為高優(yōu)先級(jí)中斷,PT1=0定義定時(shí)器1為低優(yōu)先級(jí)中斷。

PX1:外中斷1優(yōu)先級(jí)控制位。PT1=1,聲明外中斷1為高優(yōu)先級(jí)中斷,PX1=0定義外中斷1為低優(yōu)先級(jí)中斷。

PT0:定時(shí)器0優(yōu)先級(jí)控制位。PT1=1,聲明定時(shí)器0為高優(yōu)先級(jí)中斷,PT1=0定義定時(shí)器0為低優(yōu)先級(jí)中斷。

PX0:外中斷0優(yōu)先級(jí)控制位。PT1=1,聲明外中斷0為高優(yōu)先級(jí)中斷,PX1=0定義外中斷0為低優(yōu)先級(jí)中斷。

(4)串行通信控制寄存器SCON

它是一個(gè)可尋址的專用寄存器,用于串行數(shù)據(jù)的通信控制,單元地址是98H,其結(jié)構(gòu)格式如下:

 

表5串行通信控制寄存器SCON

D7

D6

D5

D4

D3

D2

D1

D0

 

SM0

SM1

SM2

REN

TB8

RB8

TI

RI

 

TI:發(fā)送中斷標(biāo)志位。

方式0時(shí),發(fā)送完第8位數(shù)據(jù)后,由硬件置位,其它方式下,在發(fā)送或停止位之前由硬件置位,因此,TI=1表示幀發(fā)送結(jié)束,TI可由軟件清“0”。

RI:接收中斷標(biāo)志位。

接收完第8位數(shù)據(jù)后,該位由硬件置位,在其他工作方式下,該位由硬件置位,RI=1表示幀接收完成。

(5)T2狀態(tài)控制寄存器T2CON

表6 T2定時(shí)器控制寄存器T2CON

B7

B6

B5

B4

B3

B2

B1

B0

TF2

EXF2

RCLK

TCLK

EXEN2

TR2

C/T2

CP/RL2

TF2:T2溢出中斷標(biāo)志。TF2必須由用戶程序清“0”。當(dāng)T2作為串口波特率發(fā)生器時(shí),TF2不會(huì)被置“1”。

EXF2:定時(shí)器T2外部中斷標(biāo)志。EXEN2為1時(shí),當(dāng)T2EX(P1.1)發(fā)生負(fù)跳變時(shí)置1中斷標(biāo)志DXF2,EXF2必須由用戶程序清“0”。

EXEN2:T2的外部中斷充許標(biāo)志

編輯:admin  最后修改時(shí)間:2018-05-18

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬(wàn)眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號(hào)-4

车致| 永安市| 翁牛特旗| 定边县| 道真| 禄丰县| 灵山县| 金堂县| 富源县| 新余市| 新晃| 会同县| 迁西县| 若尔盖县| 潍坊市| 长阳| 漳浦县| 贞丰县| 卢龙县| 桑植县| 普安县| 银川市| 开化县| 苍南县| 临泉县| 夏津县| 桐乡市| 安图县| 河东区| 博湖县| 江口县| 乡城县| 淅川县| 建湖县| 乡宁县| 洛川县| 自治县| 平阳县| 奈曼旗| 民勤县| 甘南县|