80C51中断系统

结构

80C51有5个中断源(89C52有6个),2个优先级,可实现二级中断嵌套

TCON中断标志


IT0(TCON.0),外部中断0触发方式控制位
IE0(TCON.1),外部中断0中断请求标志位
IT1(TCON.2),外部中断1触发方式控制位
IE1(TCON.3),外部中断1中断请求标志位
TF0(TCON.5),定时/计数器T0溢出中断请求标志位
TF1(TCON.7),定时/计数器T1溢出中断请求标志位

中断源响应优先级

中断响应条件

  • 中断源有中断请求
  • 此中断源的中断允许位置1
  • CPU开中断(即EA = 1)

定时/计数器的结构

定时/计数器的实质是加1计数器(16位),有由高8位和低8位两个寄存器组成,TMOD是定时/计数器的工作方式及寄存器,确定工作方式和功能,
TCON是控制寄存器,控制T0,T1的启动和停止及设置出标志位。

TMOD

  • GATE 门控位
  • C/T 模式选择位 1定时器模式,0计数器模式
  • M0M1工作方式位
    00 方式0 13位定时计数器
    01 方式1 16位定时计数器
    10 方式2 8位自动重装定时计数器
    11 方式3 T0分为两个独立的8位定时计数器,T1停止计数

定时/计数器初始化

  • 对TMOD赋值,以确定T0和T1的工作方式。
  • 计算初值,并将其写入TH0,TL0或TH1,TL1
    假设晶振12 计满时间为 t = 65535 * 1/12(震荡周期) * 12 = 65535
  • 中断方式,对IE赋值,开放中断
  • 使TR0或TR1置位,启动定时/计数器

定时器实现延时

#include <reg52.h>
#define uint unsigned int
#define uchar unsigned charsbit LE_D = P2^6;   //数码管段 该LE控制数码管显示的数字
sbit LE_W = P2^7;  //数码管位 该LE控制数码管显示的位置uint num = 0;
uint time = 0;//数码管从0->9
uchar code table[] = {0xC0,0xF9,0xA4,0XB0,0x99,0x92,0x82,0xF8,0x80,0x98};//数码管的数次从0开始每隔1s加1,用定时器实现
void main(){    //中断函数初始化EA = 1;       //开总中断ET0 = 1;     //开T0定时/计数器中断TR0 = 1;      //启动TO  TR0为T0运行控制位,置1开始工作TMOD = 0x01;//设置T0的工作方式 0000 0001TH0 = 0x3C; //65535 - 50000 = 15535 (50000为50mS)为3CAF TH0为高8位所以赋值3CTL0 = 0xAF;    //TL0低8位所以赋值AF//数码管显示的位置LE_W = 1;      //开位锁存器P0 = 0x01;  //第一个数码管显示数字LE_W = 0;  //关锁存器//数码管显示的初始数字LE_D = 1;P0 = table[0];LE_D = 0;while(1){if(time == 20){ //进入20次中断后,(每次中断为50mS) 20*50=1000ms = 1s  time = 0;          //time清零,重新开始定时LE_D = 1;            //开锁存器P0 = table[num];//锁存器存入table[num]LE_D = 0;          //关寄存器num++;              //使数码管显示的数字+1} if(num == 10){    //当数码管显示的数字为9时num清0 又从0开始num = 0;}}
}//定时器中断函数
void exter1() interrupt 1{  //1为定时/计数器0(T0)TH0 = 0x3C;   //每次进入定时器函数说明TH0,TL0已加满后清0,所以重新赋值TL0 = 0xAF;   //TL0低8位time++;           //没进入一次中断给time+1
}

Proteus仿真图

【Keil5 C51】AT89C52 中断系统与定时/计数器的介绍相关推荐

  1. 51单片机—详细(存储器RAM/ROM、引脚、中断系统、定时/计数器、串行口通信)

    目录 一.数据存储器RAM 1.拓展RAM 2.片内256字节 1.高128位(80H~FFH) 2.低128位(00H~7FH) 二.程序存储器ROM 三.引脚 1.4组8位并行I/O口 2.其他引 ...

  2. 中断系统与定时/计数计时器

                1. 外部中断 1.1统计 INT0 的脉冲触发的个数,满10个,则停止统计将P1.0清0 ORG 0000H LJMP START ORG 0003H LJMP EXINT0 ...

  3. C51单片机————中断系统

    51单片机中断系统 CPU和外设之间的速度差异太大,CPU跑的太快了,外设追不上,机器的内部也可能出现突发事件.那怎么办?所以引入中断技术呀. Created with Raphaël 2.1.2张三 ...

  4. 51单片机学习笔记(郭天祥版)(3)——引脚讲解、数码管静态显示、中断系统(外部中断,定时器中断)...

    学习引脚的功能 9引脚 复位管脚,当给2个机器周期(24个时钟振荡周期)的高电平时会复位,单片机正常工作时会给0.5v的低电平 VPD备用电源的输入端,当主电源VCC发生故障降低到某一规定的低电平时, ...

  5. 单片机c语言中断意义,51单片机中断系统的重要性

    描述 在接下来的教程中,将会介绍定时器.串口通信等外设的基本使用,而这些外设的使用都要涉及中断,而且中断是单片机或嵌入式开发中一个相当重要的概念.不能掌握中断系统,就无法灵活应用这些外设. 1.什么是 ...

  6. 单片机_第6章 单片机的定时/计数器

    建议配合本专栏的文章"单片机_第6章 实验"一起使用 目录 6.1 定时/计数器的结构与工作原理 定时/计数的三种方式(不重要) 6.1.1 定时/计数器的基本原理 6.1.2 定 ...

  7. MCS-51的中断系统

    [说明]本文学习自<单片机原理及应用(张毅刚)> 目录 1 中断的概念 2 MCS-51中断系统的结构 3 中断请求源 4 中断控制 4.1  中断允许寄存器IE 4.2  中断优先级寄存 ...

  8. 51单片机自学笔记(1)——定时计数器

    1.定时/计数器的介绍   51单片机一共有两个16位的 定时/计数 器--T0,T1.其数据均存放于特殊功能寄存器(SFR)中.T0的16位数据分两部分存放,高8位存放在TH0(其字节地址位8CH) ...

  9. 单片机基础:什么是中断系统、中断系统如何用(附中断系统应用实例)

    中断系统 1.前言 2.什么是中断 3.什么是中断系统 4.中断的流程 5.中断的优先级控制 6.中断源 外部中断 7.与中断有关的特殊功能寄存器 7.1.定时/计数器控制寄存器 `TCON` 7.2 ...

最新文章

  1. 华数传媒牵手阿里云计算共建媒体云平台
  2. 阿里某员工面试华为后吐槽:面试官太水,反问几句都答不上来
  3. 实际测试例子+源码分析的方式解剖MyBatis缓存的概念
  4. Linux查看utmp文件,linuxc操作utmp和wtmp文件接口
  5. C\C++不经意间留下的知识空白------宏
  6. IAR环境中实现数据或函数的定位
  7. IDEA中jsp页面写out.println会报错?
  8. Spring4.x()--Jdbc事务-XML
  9. 从教科书式的失败到手术刀式的自救,李宁找回了“李宁”!
  10. 2的指数算法唯一算包含信息
  11. 11. 王道考研-二叉树的实现
  12. javaparser - java源码分析修改框架
  13. 基于nodejs,tinypng的压缩图片工具
  14. 被低估的电池管理系统BMS
  15. 最小二乘支持向量机LSSVM
  16. android 应用升级,系统做了什么?
  17. 银行卡号码的校验规则(Luhn算法/模10算法)
  18. 获取Android 手机设备信息:包括机型、操作系统版本号、手机分辨率、运营商、当前联网方式、IMEI、MEID、MAC地址
  19. iphonex中全屏h5的适配
  20. Unity3D研究院之在MAC上脚本XlsxWriter写入Excel .xlsx格式

热门文章

  1. 流程图软件lauto_Iauto免费版下载|Iauto(流程图软件) v2.6.0官方版 - 万方软件下载站...
  2. 计算机专业和电子通信哪个好,读电子通信和计算机哪个好?
  3. J2EE进阶之HTML 一
  4. 学设计需要会哪些基础知识?设计的基本原则是什么?
  5. node.js+uniapp计算机毕业设计安卓劳务派遣APP(程序+APP+LW)
  6. LTK5135M MSOP-8封装 耐压7V_F类、单声道音频放大器/兼容于4890,音质更好适用于车载导航仪、对讲机、便携游戏机等
  7. 案例研究|萤石网络通过JumpServer解决安全运维难题
  8. 通信标准3之PUSCH频率域资源分配
  9. Java在线考试(答案)cqupt
  10. 404页面模板php,粉色的清爽404页面模板下载