概述
中断允许寄存器IE、IE2和INT_CLKO
IE:中断允许寄存器(可位寻址)
SFR name | bit | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
---|---|---|---|---|---|---|---|---|---|
IE | name | EA | ELVD | EADC | ES | ET1 | EX1 | ET0 | EX0 |
EA:CPU的总中断允许位,EA=1,CPU开放中断,EA=0,CPU屏蔽所有的中断申请。EA的作用是使中断允许形成多级控制。即各中断源首先受EA控制;其次还受各中断源自己的中断允许控制位控制。
ELVD:低压检测中断允许位,ELVD=1,允许低压检测中断,ELVD=0,禁止低压检测中断。
EADC:A/D转换中断允许位,EADC=1,允许A/D转换中断,EADC=0,禁止A/D转换中断。
ES:串行口1中断允许位,ES=1,允许串行口1中断,ES=0,禁止串行口1中断。
ET1:定时/计数器T1的溢出中断允许位,ET1=1,允许T1中断,ET1=0,禁止T1中断。
EX1:外部中断1中断允许位,EX1=1,允许外部中断1中断,EX1=0,禁止外部中断1中断。
ET0:T0的溢出中断允许位,ET0=1,允许T0中断,ET0=0,禁止T0中断。
EX0:外部中断0中断允许位,EX0=1允许中断,EX0=0禁止中断。
IE2:中断允许寄存器(不可位寻址)
SFR name | bit | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
---|---|---|---|---|---|---|---|---|---|
IE2 | name | - | ET4 | ET3 | ES4 | ES3 | ET2 | ESPI | ES2 |
ET4:定时器4的中断允许位。
ET4=1,允许定时器4产生中断;ET4=0,禁止定时器4产生中断。
ET3:定时器3的中断允许位。
ET3=1,允许定时器3产生中断;ET3=0,禁止定时器3产生中断。
ES4 :串行口4中断允许位。
ES4=1,允许串行口4中断;ES4=0,禁止串行口4中断。
ES3 :串行口3中断允许位。
ES3=1,允许串行口3中断;ES3=0,禁止串行口3中断。
ET2:定时器2的中断允许位。
ET2=1,允许定时器2产生中断;ET2=0,禁止定时器2产生中断。
ESPI:SPI中断允许位。
ESPI=1,允许SPI中断;ESPI=0,禁止SPI中断。
ES2:串行口2中断允许位。
ES2=1,允许串行口2中断;ES2=0,禁止串行口中断。
INT_CLKO(AUXR2):外部中断允许和时钟输出寄存器
SFR name | bit | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
---|---|---|---|---|---|---|---|---|---|
INT_CLKO(AUXR2) | name | - | EX4 | EX3 | EX2 | - | T2CLKO | T1CLKO | T0CLKO |
EX4:外部中断4中断允许位,EX4=1允许中断,EX4=0禁止中断。只能下降沿触发。
EX3:外部中断3中断允许位,EX3=1允许中断,EX3=0禁止中断。只能下降沿触发。
EX2:外部中断2中断允许位,EX2=1允许中断,EX2=0禁止中断。只能下降沿触发。
中断优先级控制寄存器IP
中断优先级的两条基本规则:
1.低优先级中断可被高优先级中断所中断,反之不能。
2.任何一种中断(不管是高级还是低级),一旦得到响应,不会被它的同级中断所中断。
IP:中断优先级控制寄存器(可位寻址)
SFR name | bit | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
---|---|---|---|---|---|---|---|---|---|
IP | name | PPCA | PLVD | PADC | PS | PT1 | PX1 | PT0 | PX0 |
当对应控制位置0时,该位对应中断为最低级中断(优先级0);
当对应控制位置1时,该位对应中断为最高级中断(优先级1)。
定时器/计数器控制寄存器TCON(可位寻址)
SFR name | bit | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
---|---|---|---|---|---|---|---|---|---|
TCON | name | TF1 | TR1 | TF0 | TR0 | IE1 | IT1 | IE0 | IT0 |
TF1:T1溢出中断标志。T1被允许计数以后,从初值开始加1计数。当产生溢出时由硬件置“1”TF1,向CPU请求中断,一直保持到CPU响应中断时,才由硬件清“0”(也可由查询软件清“0”)。
TR1:定时器1的运行控制位。
TF0:T0溢出中断标志。T0被允许计数以后,从初值开始加1计数,当产生溢出时,由硬件置“1”TF0,向CPU请求中断,一直保持CPU响应中断时,才由硬件清“0”(也可由查询软件清“0”)。
TR0:定时器0的运行控制位。
IE1:外部中断1(INT1/P3.3)中断请求标志。IE1=1,外部中断向CPU请求中断,当CPU响应该中断时由硬件清“0”IE1。
IT1:外部中断1中断源类型选择位。IT1=0,INT1/P3.3引脚上的上升沿或下降沿信号均可触发外部中断1。IT1=1,外部中断1为下降沿触发方式。
IE0:外部中断0(INT0/P3.2)中断请求标志位。IE0=1,外部中断0向CPU请求中断,当CPU响应外部中断时,由硬件清“0”IE0。
IT0:外部中断0中断源类型选择位。IT0=0,INT0/P3.2引脚的上升沿或下降沿均可触发外部中断。IT0=1,外部中断0为下降沿触发方式。
串行口1控制寄存器SCON(可位寻址)
SFR name | bit | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
---|---|---|---|---|---|---|---|---|---|
SCON | name | SM0/FE | SM1 | SM2 | REN | TB8 | RB8 | TI | RI |
RI:串行口1接收中断标志。若串行口1允许接收且以方式0工作,则每当接收到第8位数据时置1;若以方式1、2、3工作且SM2=0,则每当接收到停止位的中间时置1;当串行口以方式2或方式3工作且SM2=1时,则仅当接收到的第9位数据RB8为1后,同时还要接收到停止位的中间时置1。RI为1时表示串行口1正在向CPU申请中断(接收中断),RI必须由用户的中断服务程序清零。
TI:串行口1发送中断标志。串行口1以方式0发送时,每当发送完8位数据,由硬件置1;若以方式1,方式2或方式3发送时,在发送停止位的开始时置1。TI=1表示串行口1正在向CPU申请中断(发送中断)。值得注意的是,CPU响应发送中断请求,转向执行中断服务程序时并不将TI清零,TI必须由用户在中断服务程序中清零。
低压检测中断相关寄存器
电源控制寄存器PCON
SFR name | bit | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
---|---|---|---|---|---|---|---|---|---|
PCON | name | SMOD | SMOD0 | LVDF | POF | GF1 | GF0 | PD | IDL |
LVDF:低压检测标志位,同时也是低压检测中断请求标志位。
A/D转换控制寄存器ADC_CONTR
SFR name | bit | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
---|---|---|---|---|---|---|---|---|---|
ADC_CONTR | name | ADC_POWER | SPEED1 | SPEED0 | ADC_FLAG | ADC_START | CHS2 | CHS1 | CHS0 |
ADC——POWER:ADC电源控制位。
当ADC_POWER =0时,关闭ADC电源;当ADC_POWER=1时,打开ADC电源。
ADC_FLAG:ADC电源控制位,可用于请求A/D转换的中断。当A/D转换完成后,ADC_FLAG=1,要用软件清0。不管是A/D转换完成后由该位申请产生中断,还是由软件查询该A/D转换是否结束,当A/D转换完成后,ADC_FLAG=1,一定要软件清0。
ADC_START:ADC转换启动控制位,设置为“1”时,开始转换,转换结束后为0。
最后
以上就是潇洒唇膏为你收集整理的STC学习:中断相关寄存器的全部内容,希望文章能够帮你解决STC学习:中断相关寄存器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复