定时器t0中断可以被外部中断0中断_中断源寄存器的介绍

本文详细介绍了单片机中断系统中的定时器/计数器控制寄存器TCON和串行通信口控制寄存器SCON,包括各位的功能、中断请求标志位、输入方式控制位以及启动/停止位。重点阐述了如何处理外部中断0和定时器0的中断请求,并提到了中断子程序执行后的状态管理。
摘要由CSDN通过智能技术生成

中断源寄存器

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

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

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

120a26762c58f90ddf563bde91c5edfd.png

下面是寄存器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位,每位均可进行位寻址,各位的地址和名称如下:

203e429c8d9447105eb81df3abee3bdd.png

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

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

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值