中断源寄存器有哪几种类型

电子说

1.3w人已加入

描述

中断源寄存器包括定时器/计数器控制寄存器TCON和串行通信口控制寄存器SCON。

1.定时器/计数器控制寄存器TCON

定时器/计数器控制寄存器 TCON 的功能主要是接收外部中断源( INT0、INT1 )和定时器/计数器(T0、T1)送来的中断请求信号。其字节地址是88H,它有8位,每位均可进行位寻址,各位的地址和名称如下:

寄存器

下面是寄存器TCON各位功能的说明。

IE0和IE1:它们分别是外部中断0()和外部中断1()的中断请求标志位。当外部有中断请求信号输入单片机的引脚(即P3.2引脚)或引脚(即P3.3引脚)时,寄存器TCON的IE0和IE1位会被置“1”。

IT0和IT1:它们分别是外部中断0和外部中断1的输入方式控制位。以外部中断0()为例,当IT0=0时,开关置“1”处,端输入的低电平经非门后会将定时器/计数器控制寄存器TCON的IE0位置“1”;当IT1=1时,开关置“2”处,端只有输入信号下降沿时才能将IE0位置“1”,才表示有中断请求。

TF0和TF1:它们分别是定时器/计数器0和定时器/计数器1的中断请求标志。当定时器/计数器工作产生溢出时,会将TF0或TF1位置“1”,表示定时器/计数器有中断请求。

TR0和TR1:它们分别是定时器/计数器0和定时器/计数器1的启动/停止位。在编写程序时,若将TR0或TR1设置为“1”,那么相应的定时器/计数器开始工作;若设置为“0”,定时器/计数器则会停止工作。

注意:如果将TF*位设为“1”,则把IE*设置为下降沿置“1”,中断子程序执行完后,IE*位自动变为“0”(硬件置“0”);如果将TF*位设为“0”,则把IE*设置为低电平置“1”,中断子程序执行完后,IE*位将仍是“1”,所以在退出中断子程序前,要将 INT*端的低电平信号撤掉,再用指令将IE*位置“0”(软件置“0”),若退出中断子程序后,IE*位仍为“1”,将会产生错误的再次中断。

在单片机复位时,定时器/计数器控制寄存器TCON的各位均为“0”。

2.串行通信口控制寄存器SCON

串行通信口控制寄存器SCON的功能主要是接收串行通信口送到的中断请求信号。其字节地址是98H,它有8位,每位均可进行位寻址,各位的地址和名称如下:

寄存器

串行通信口控制寄存器SCON的TI位和RI位与中断有关,其他位用作串行通信控制,将在后面说明。

TI:串行通信口发送中断标志位。在串行通信时,每发送完一帧数据,串行通信口会将TI位置“1”,表明数据已发送完成,向单片机发送中断请求信号。RI:串行通信口接收中断标志位。在串行通信时,每接收完一帧数据,串行通信口会将 RI 位置“1”,表明数据已接收完成,向单片机发送中断请求信号。

单片机执行中断子程序后,TI位和RI位不能自动变为“0”,需要在退出中断子程序时,用软件指令将它们清0。
责任编辑人:CC

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分