0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于定时控制寄存器TCON

GReq_mcu168 来源:玩转单片机 作者:玩转单片机 2020-07-03 09:11 次阅读

单片机中断源

一般而言,MCS-51单片机有5个中断源,分别是:外部中断0、外部中断1、定时/计数器0中断、定时/计数器1中断、串行口发送或接受中断。

用到外部中断

EX0=1;//中断允许开关

IT0=0;//下降沿触发方式

EA=1;//总开关

用到定时/计数器中断

ET0=1;//启动计数器中断开关

EA=1;//总开关

//定时器的核心在这下面这段代码

TMOD=0x09;

TH0=0x0D8;

TL0=0x0F0;

TR0=1;//启动定时器

用到串口中断

EX1=1;//外部中断1分开关

IT1=1;//触发方式:下降沿

PX1=1;//设置为高优先级

//波特率配置,由定时器1的益处率决定

TMOD=0x20;

//00100000=0x20,定时器1设置为工作方式2,8位自动装载的定时器

TH1=0xF4;//初值

TL1=0xF4;//波特率4800

ET1=1;//定时器1允许分开关

TR1=1;//启动定时

//设置串口工作方式

SCON=0x50;//等同于TMOD,方式一,允许接收01010000

//PCON=0x00;

//TI =0;发送中断标志位

//RI =0;接收中断标志位

ES=1;//IE寄存器第四位,串口中断允许位

EA=1;//外部中断总开关

单片机寄存器

1中断允许寄存器IE

按位寻址,地址位A8H。

基于定时控制寄存器TCON

EX0:中断0中断允许位。1为允许,0否则相反。

EX1:中断1中断允许位。1为允许,0否则相反。

ET0:定时器/计数器0中断允许位。1为允许,0否则相反。

ET1:定时器/计数器1中断允许位。1为允许,0否则相反。

ES:串口中断允许位。

ET2:定时/计数器2中断允许位(8052用)。

EA:总开关。

如果定时器工作在中断方式下,则当定时器的当前值计满溢出时,就会触发定时器溢出中断。

2定时控制寄存器TCON

按位寻址,地址位88H。

IT0:外部中断0触发方式。1为低电平,0为下降沿信号

IT1:外部中断1触发方式。1为低电平,0为下降沿信号。

IE0:外部中断0请求标志位。IE0=1,有中断请求,0则没有。

IE1:外部中断1请求标志位。IE0=1,有中断请求,0则没有。

TR0:定时器/计数器0启动停止。1为启动,0为停止。

TR1:定时器/计数器1启动停止。1为启动,0为停止。

TF0:定时器/计数器标志位。1为溢出,0则没有溢出。

TF1:定时器/计数器标志位。1为溢出,0则没有溢出。

3中断优先级寄存器IP

中断优先级寄存器不常用,简单介绍一下。按位寻址,地址位B8H。

PX0:外部中断0。

PX1:外部中断1。

PT0:定时器/计数器0中断。

PT1:定时器/计数器1中断。

PS:串口中断。

4定时器方式寄存器TMOD

不按位寻址,地址位89H。

基于定时控制寄存器TCON

GATE:定时操作开关控制位。GATE=1时,INT1或INT0引脚为高电平,同时TCON中的TR0或TR1控制位为1时,定时/计数器0或1才开始工作。GAYTE=0时,则只要将TR0或TR1控制位设为1,定时/计数器0或1就开始工作。

C/T:定时器或计数器功能的选择位。C/T=1为计数器,通过外部引脚T0或T1输入计数脉冲。C/T=1时为定时器,由内部系统时钟提供计时工作脉冲。

M1:模式选择高位。

M0:模式选择低位。

5串口控制寄存器SCON

特殊功能寄存器,按位寻址,地址位98H。

基于定时控制寄存器TCON

SM2:多机通信使能位。

REN:串口数据接收允许位 1允许,0禁止。该位有软件置位或清0。

TB8:在方式2和方式3中,这位发送的是第9位,就是校验位。

RB8:在方式2和方式3中,这位发送的是第9位,就是校验位。

TI:发送中断标志位 ,用完时要用软件清0。

RI:接受中断标志位,用完时要用软件清0。
责任编辑:pj

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

    关注

    6001

    文章

    43977

    浏览量

    620861
  • 定时器
    +关注

    关注

    23

    文章

    3148

    浏览量

    112040
  • 控制寄存器
    +关注

    关注

    0

    文章

    34

    浏览量

    11432
收藏 人收藏

    评论

    相关推荐

    干货满满:ARM的内核寄存器讲解

    内核寄存器与外设寄存器: 内核寄存器与外设寄存器是完全不同的概念。内核寄存器是指 CPU 内部的寄存器
    发表于 04-17 11:47 153次阅读
    干货满满:ARM的内核<b class='flag-5'>寄存器</b>讲解

    C语言玩转单片机的寄存器操作技巧

    由于寄存器中有时会有连续几个寄存器位用于控制某个功能,现假设我们需要把寄存器的某几个连续位清零,且其它位不变,代码如下。
    发表于 03-07 11:36 319次阅读

    CPU的6个主要寄存器

    CPU寄存器是中央处理器内的组成部分,是有限存贮容量的高速存贮部件。寄存器是CPU内部的元件,包括通用寄存器、专用寄存器控制
    的头像 发表于 02-03 15:15 1131次阅读

    labview读取三菱plc寄存器内容

    如何使用LabVIEW读取三菱PLC的寄存器内容,并提供一些实例代码和注意事项。 首先,我们需要了解PLC寄存器的基本概念。PLC寄存器是一种用于存储数据的内部变量,被用于传输和保存信息。在三菱PLC中,常见的
    的头像 发表于 12-27 16:31 726次阅读

    寄存器查看器的功能和使用

    对于搞嵌入式底层开发的软件或者硬件工程师来说,经常会涉及到查看芯片手册,比如某个芯片的串口控制器的寄存器值,需要知道这个值对应寄存器的哪些位,微软计算器的程序员模式虽然可以查看寄存器
    的头像 发表于 11-28 12:26 821次阅读
    <b class='flag-5'>寄存器</b>查看器的功能和使用

    寄存器开发,HAL开发和LL开发的区别和参考代码

    1,寄存器开发【难度值:难】寄存器开发是一种直接访问微控制寄存器的编程方法,它提供了对硬件的极大灵活性和直接控制。在
    的头像 发表于 11-17 08:00 411次阅读
    <b class='flag-5'>寄存器</b>开发,HAL开发和LL开发的区别和参考代码

    gic的寄存器 gicv3的LPI中断

    (1)gicv2的寄存器 gicv2寄存器,都是使用memory-mapped的方式去访问的 • ◾GICD_: distributor的寄存器 • ◾GICH_: 虚拟interface的
    的头像 发表于 11-08 16:09 289次阅读

    80C51单片机的定时器/计数器介绍

    定时/计数器T0和T1分别是由两个8位的专用寄存器组成,即定时/计数器T0由TH0和TL0组成,T1由TH1和TL1组成。此外,其内部还有2个8位的特殊功能寄存器TMOD和
    的头像 发表于 11-01 12:29 2347次阅读
    80C51单片机的<b class='flag-5'>定时</b>器/计数器介绍

    CPSR寄存器和APSR寄存器的组成

    程序状态寄存器的作用就是反映处理器的状态信息。在程序运行期间我们可以通过查看程序状态寄存器的状态位来进行程序的分支跳转处理,或者我们可以设置程序状态寄存器的模式位来改变处理器的运行模式,或者我们可以设置程序状态
    的头像 发表于 10-20 11:38 1807次阅读
    CPSR<b class='flag-5'>寄存器</b>和APSR<b class='flag-5'>寄存器</b>的组成

    51单片机的定时器结构及工作原理详细说明

    本质上是一致的,在以后的叙述中将定时器/计数笼统称为定时器。组成:两个16位的定时器T0和T1,以及他们的工作方式寄存器TMOD和
    发表于 09-25 08:23

    怎样通过改变寄存器中的内容实现对CPU的控制呢?

    寄存器是CPU中程序员可以用指令读写的部件,通过改变寄存器中的内容实现对CPU的控制
    的头像 发表于 09-20 15:49 780次阅读
    怎样通过改变<b class='flag-5'>寄存器</b>中的内容实现对CPU的<b class='flag-5'>控制</b>呢?

    寄存器是什么?怎么操作寄存器点亮LED灯?

    寄存器,是集成电路中非常重要的一种存储单元,通常由触发器组成。在集成电路设计中,寄存器可分为电路内部使用的寄存器和充当内外部接口的寄存器这两类。
    的头像 发表于 07-21 16:59 2978次阅读
    <b class='flag-5'>寄存器</b>是什么?怎么操作<b class='flag-5'>寄存器</b>点亮LED灯?

    寄存器是什么 掌握使用寄存器做设计需要注意的事项

    既然RTL是以寄存器行为为基础,那么就必须先了解寄存器是什么,并且掌握使用寄存器做设计需要注意的事项。
    的头像 发表于 07-13 15:38 880次阅读
    <b class='flag-5'>寄存器</b>是什么 掌握使用<b class='flag-5'>寄存器</b>做设计需要注意的事项

    RAL寄存器模型操作指南

    寄存器模型操作,指的是通过寄存器模型对RTL中寄存器进行读写访问,或者同步寄存器模型与RTL中寄存器的值。
    的头像 发表于 07-12 09:37 703次阅读
    RAL<b class='flag-5'>寄存器</b>模型操作指南

    RAL寄存器模型操作图鉴

    寄存器模型操作,指的是通过寄存器模型对RTL中寄存器进行读写访问,或者同步寄存器模型与RTL中寄存器的值。
    的头像 发表于 05-17 09:01 560次阅读
    RAL<b class='flag-5'>寄存器</b>模型操作图鉴