各种工作寄存器(定时器/中断)

发布者:心愿成真最新更新时间:2016-12-31 来源: eefocus关键字:工作寄存器  定时器  中断 手机看文章 扫描二维码
随时随地手机看文章

以下内容参考郭天祥的书籍:

EA:全局中断允许位,要想打开任何中断,EA都必须为1.然后再允许某个特定的中断。ES:串行口中断允许。ES=1时,串口接收或者发送完成数据以后会引起中断(TI=1,或者RI=1)ET1:定时计数器1中断允许。ET1=1时,当定时计数器1计数满,溢出后引起中断,可在中断函数中处理定时器。EX1:外部中断1允许位。EX=1时,外部条边沿(或者电平)中断信号来后,会引起外部中断,可在外部中断函数中处理事件。ET0/EX0功能跟上面一样,只是换了个定时器或者外部中断。

 

PS:串行口中断优先级控制位。PS=1设定串行口为高优先级中断;PS=0为低优先级中断。 

PT1:T1中断优先级控制位。PT1=1设定定时器T1为高优先级中断;PT1=0为低优先级中断。

PX1:外部中断1优先级控制位。PX1=1设定定时器外部中断1为高优先级中断;PX1=0为低优先级中断。

PT0:T0中断优先级控制位。PT0=1设定定时器T0为高优先级中断;PT0=0为低优先级中断。

PX0:外部中断0优先级控制位。PX0=1设定定时器外部中断0为高优先级中断;PX0=0为低优先级中断。

例:设有如下要求,将T0、外中断1设为高优先级,其它为低优先级,求IP的值。 

IP的首3位没用,可任意取值,设为000,后面根据要求写就可以了因此,最终,IP的值就是06H。

在上例中,如果5个中断请求同时发生,求中断响应的次序。 

响应次序为:定时器0->外中断1->外中断0->实时器1->串行中断。


  其中低四位定义定时器/计数器T0,高四位定义定时器/计数器T1,各位的说明: 
  Ⅰ,GATE——门控制。 
  ●GATE=1时,由外部中断引脚INT0、INT1来启动定时器T0、T1。 
  当INT0引脚为高电平时TR0置位,启动定时器T0; 
  当INT1引脚为高电平时TR1置位,启动定时器T1。 
  ●GATE=0时,仅由TR0,TR1置位分别启动定时器T0、T1。 
  Ⅱ,C/T——功能选择位 
  C/T=0时为定时功能,C/T=1时为计数功能。 
  置位时选择计数功能,清零时选择定时功能。 
  Ⅲ,M0、M1——方式选择功能 
  由于有2位,因此有4种工作方式 
================================================================= 
  M1M0 工作方式 计数器模式 TMOD(设置定时器模式)                                                                 ==
  0 0 方式0 13位计数器 TMOD=0x00                                ==
  0 1 方式1 16位计数器 TMOD=0x01                                ==
  1 0 方式2 自动重装8位计数器 TMOD=0x02                            ==
  1 1 方式3 T0分为2个8位独立计数器,T1为无中断重装8位计数器 TMOD=0x03            ==

================================================================= 

=============================================================================================

TF1       TCON.7        8FH       定时器1溢出标志;当定时器/计数器发生溢出时由硬件置位;该位  可以用软件清零,当CPU转向中断服务程序时该位被自动清零,要注意的是,                                                                             如果使用定时器中断,那么改位不用人为操作,但是是用软件的话,查询到该位置1后,就需要用软件清0.
                                                                                         
TR1       TCON.6        8EH      定时器1运行控制,由软件置位和清零,分别可以启动和停止定时/计数器1,当GATE=1,且INT1=1时,TR1=1启动定时器。当GATE=0,                                                   TR1=1启动定时器。   

                                                                                           
TF0        TCON.5       8DH       定时器0标志
TR0        TCON.4       8CH       定时器0运行控制
IE1         TCON.3       8BH       外部中断1的中断标志,当探测到外部中断1时由硬件置位,当转入中断服务    程序后用软件清零
                                                                                        
IT1         TCON.2       8AH       外部中断1控制位,其置位和清零由软件设置,分别对应着外部中断1的下降沿触发和低电平触发

 

当IT1=1,为电平触发方式,每个机器周期的S5P2采样INT1引脚,若INT1脚为低电平,则置1,否则IE1清0。

当IT1=0,INT1为跳变延触发方式,当第一个周期采样到INT1位低电平时,则IE1=1,表示外部中断1正在向CPU申请中断。当CPU响应中断,转向中断服务程序时,该位由硬件清0.
                                                                                            
IE0         TCON.1       89H       外部中断0的中断标志
IT0         TCON.0       88H       外部中断0控制位

=============================================================================================

可以通过TMOD寄存器中的M1M0来进行工作方式的选择


关键字:工作寄存器  定时器  中断 引用地址:各种工作寄存器(定时器/中断)

上一篇:通信(通信方式\电平转换\波特率\串行口结构)
下一篇:单片机I2C驱动程序

推荐阅读最新更新时间:2024-03-16 15:28

通用定时器基本原理讲解
概述: STM32定时器:STM32F10x系列总共最多有8个定时器。 三种STM32定时器区别: 通用定时器功能特点描述: STM3 的通用 TIMx (TIM2、TIM3、TIM4 和 TIM5)定时器功能特点包括: 位于低速的APB1总线上(APB1) 16 位向上、向下、向上/向下(中心对齐)计数模式,自动装载计数器(TIMx_CNT)。 16 位可编程(可以实时修改)预分频器(TIMx_PSC),计数器时钟频率的分频系数 为 1~65535 之间的任意数值。 4 个独立通道(TIMx_CH1~4),这些通道可以用来作为: 输入捕获 输出比较 PWM 生成(边缘或中间对齐模式) 单脉冲模式输出 可使用外部信号(
[单片机]
通用<font color='red'>定时器</font>基本原理讲解
(C51学习四)外部中断定时器中断
1.什么是中断 中断就是指CPU正在执行一项任务A,然后突然停止任务A去执行任务B,执行完任务B再回来继续执行任务A的过程。 例如:你正在看电视,然后电话响了,你就停止看电视,跑去接电话,接完电话后由回来继续看电视。这个过程叫中断。 中断跟硬件有关。可以说是硬件来让单片机中断。 2.中断有什么用 1.中断能让CPU同时执行多项任务,例如CPU在执行流水灯程序,就无法执行 按下按键时,蜂鸣器发声了。 2.当然上面的例子可以用软件轮询检擦案件是否按下来实现,但这样就消耗了CPU一部分资源来轮询检测 按键是否有按下了,所以中断的另一个优点就是 节省CPU资源 3.双重功能的P3引脚 由最小系统板
[单片机]
(C51学习四)外部<font color='red'>中断</font>和<font color='red'>定时器</font><font color='red'>中断</font>
基于DSP的USB接口设计与实现
  1 引言   近年来,随着数字信号技术的发展,需要处理的数据量越来越大,处理的速度也越来越快,因此具有高速性能DSP 芯片的应用得到了广泛重视。而通过DSP 处理的数据往往要传输给PC 机进行存储和再处理,那么就必须解决DSP 与 PC 机之间的高速通信问题。本设计方案以德州仪器(TI)的C5000 系列DSP 芯片TMS320VC5416为微处理器,利用Cypress公司提供的USB2.0接口芯片CY7C68001 实现了USB2.0 从机接口设计,从而使PC机与DSP 通过USB2.0 接口实现高速双向地传输数据。   2 TMS320VC5416 与CY7C68001 EZUSBSX2硬件接口设计   系统方
[嵌入式]
用51单片机中断编写的4x4键盘程序
应用查询扫描编写键盘程序,由于要给按键去抖动,程序变得比较复杂和冗长(详见2013年9月29日博文《MSP430和AT89C51单片机4x4键盘C程序》),如果用中断编写,设置中断响应在下降沿时执行中断,则程序编写不用去抖动判断,所以相比较要简单很多!下面用汇编和C语言两种方式编写4X4键盘程序! 一、汇编程序 ORG 0000H LJMP MAIN ORG 0003h Ljmp ZD0 ORG 000Bh LJMP TZD0 ORG 0013h Ljmp ZD1 ORG 001Bh LJMP TZD1
[单片机]
用51单片机<font color='red'>中断</font>编写的4x4键盘程序
STM32学习日志——定时器中断实验
今天学习的是通用定时器及其中断,首先是内部时钟的选择,定时器的时钟Tclk是由APB1时钟乘以1或2决定的,至于是1还是2,要看APB1的分频系数(AHB/APB1),如果为1,则乘以1,否则乘以2。接着就可以根据我们想设定的时间Tout,去配置ARR跟PSC,这两个数是存在16位的寄存器,所以他们的范围为(0-65535),在这个范围内任意取值,满足公式即可。如果我么要配置500ms,可将ARR配置为2499,PSC配置为14399。也就是定时器计数的一个周期为500ms。(ARR为自动重装载值,PSC为Tclk的预分频系数) 根据步骤去写程序就很简单了。 实现功能:通过定时器的中断控制一个绿灯翻转,时间为500ms
[单片机]
STM32学习日志——<font color='red'>定时器</font><font color='red'>中断</font>实验
LPC210X定时器查询方式及如何初始化
定时器查询方式定时器初始化: 1、设置定时器分频数,为(x+1)分频 2、匹配通道X中断并复位TxTC 3、比较值(1S定时值) 4、启动并复位TxTC 如: T1PR = 99; // 设置定时器0分频为100分频,得110592Hz T1MCR = 0x03; // 匹配通道0匹配中断并复位T0TC T1MR0 = 110592/2; // 比较值(1S定时值) T1TCR = 0x03; // 启动并复位T0TC T1TCR = 0x01; 研究了好长一段时间,LPC210X的定时器,查询方式定时很简单如上面,但中断方式要操作好多寄存器,太麻烦,一直是一头雾水。好不容易理出了思路,现将一段例程粘贴备忘。 #inclu
[单片机]
PIC16F877A例程--定时器中断
#include pic.h //调用头文件 //#include pic1687x.h __CONFIG(0x3F32); //芯片配置字 #define uchar unsigned char #define uint unsigned int void initPORTA(void); void initTMR2(void); void interrupt TMR2INT(void); uint TMR2_COUTER; uint couter; void main (void) { TRISA=0X00; PORTA=0XFF; //定
[单片机]
STM32串口中断实验总结函数的初始化必须在变量的初始化之后
在进行串口的实验的时候,自己没有看教程,写了一段代码,但是进行编译之后发现一直有错误,就算我把代码更改之后还是一直有错误。对比了官方给的教程之后发现唯一的不同之处就是我的有一个函数的初始化是在变量的初始化之前,进行的初始化,在进行相应的知识查询之后,还有请教了师兄之后,发现了自己以前一直没有注意到的问题就是,函数的初始化必须放到变量的初始化之后,否则在使用keil也就是MDK进行建立工程的时候就会报错。 注意细节
[单片机]
STM32串口<font color='red'>中断</font>实验总结函数的初始化必须在变量的初始化之后
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved