8051单片机提供5个中断请求源,其中两个中断请求源为外部中断源,由、输入;两个中断请求源为片内的定时/计数器溢出时产生的中断请求(用TF0、TF1作为标志);一个中断请求源为片内串行口产生的中断请求(TI或RI)。这些中断请求源分别由8051的特殊功能寄存器TCON和SCON的相应位所锁存。
TCON为定时/计数器的控制寄存器,字节地址为88H。TCON锁存外部中断请求标志。其格式如下:
IT0:选择外部中断请求为边沿触发方式或电平触发方式的控制位。当IT0=0时,为电平触发方式,其低电平有效;IT0=1时,为边沿触发方式,其输入脚上的电平从高到低的负跳变有效。IT0可由软件置“1”或清“0”。
IE0:外部中断0的中断申请标志位。当IT0=0即电平触发方式时,每个机器周期的S5P2采样,若为低电平,则置“1”IE0,否则清零;当IT0=1即为边沿触发方式时,当第1个机器周期采样到为高电平,第2个机器周期采样到为低电平时,则置“1”IE0,IE0为1表示外部中断0正在向CPU响应中断,转向中断服务程序时,由硬件清零IE0。
IT1:选择外部中断请求1为边沿触发方式或电平触发方式的控制位。其意义和IT0类似。
IE1:外部中断1有中断标志位。其意义和IE0的意义类似。
TF0:8051片内定时器/计数器T0溢出中断申请标志位。当启动T0计数后,定时器/计数器T0从零开始加1计数,当最高位产生溢出时,由硬件置“1”TF0,向CPU申请中断,CPU响应TF0中断时清零TF0。TF0也可由软件清零。(www.xing528.com)
TF1:8051片内的定时器/计数器T1的溢出中断申请标志位。其功能和TF0的功能类同。
当8051复位后,TCON被清零。
SCON为串行口控制寄存器,字节地址为98H,SCON的低二位锁存串行口的接收中断和发送中断标志,其格式如下:
TI:8051串行口的发送中断标志位。在串行口以方式0发送时,每当发送完8位数据,由硬件置“1”TI;若以方式1、方式2或方式3发送时,在发送停止位的开始时置“1”TI,TI=1表示串行口发送正在向CPU申请中断,要发送的数据一旦写入串行口的数据缓冲器SBUF,单片机内部的硬件就立即启动发送器继续发送。值得注意的是,CPU响应发送器中断请求,转向执行中断服务程序时并不清零TI,TI必须由用户的中断服务程序清零,即中断服务程序中必须用CLR TI或ANL SCON,#0FDH等清零TI的指令。
RI:串行口接收中断标志位。若串行口接收器允许接收,并以方式0工作,每当接收到第8位数据时置“1”RI;若以方式1、2、3工作,且SM2=0时,每当接收器接收到停止位的中间时置“1”RI,当串行口中以方式2或方式3工作,且SM2=1时仅当接收到的第9位数据RB8为1后,同时还要在接收到停止位的中间位置时置“1”RI,RI为1,表示串行口接收器正在向CPU申请中断,同样RI必须由用户的中断服务程序清零。
8051复位后,SCON也被清零。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。