(定时器/计数器)中断系统(详解与使用)

讲解

简介

定时器/计数器

定时器实际上也是计数器,只是计数的是固定周期的脉冲

定时和计数只是触发来源不同(时钟信号和外部脉冲)其他方面是一样的。

 定时器在单片机内部就像一个小闹钟一样,根据时钟的输出信号,每隔“一秒”,计数单元的数值就增加一,当计数单元数值增加到“设定的闹钟提醒时间”时,计数单元就会向中断系统发出中断申请,产生“响铃提醒”,使程序跳转到中断服务函数中执行。

中断

中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。

假设一个人在家看电视,这时候突然门铃响了,这个人此时就要停止看电视去开门,然后关上门后继续回来看电视,这个例子当中看电视这个动作就是常规的计算机运行过程,门铃响就相当于一个中断信号(中断请求),用户这时停止看电视(中断当前程序)起来开门(中断响应),关上门后(中断处理结束)继续看电视(继续执行当前程序)。这一整个过程就是中断发生时,CPU的处理方式。

  还是上面的例子,现在假设门铃响的时候水烧开了,此时用户可以选择先开门后关水,也可以选择先关水后开门,这个先后关系就是中断优先级,假设门铃的中断优先级比烧水的优先级高,那就会先开门,后关水,反之,则会先关水,后开门,这就是针对两个及两个以上中断同时发生的时候CPU根据中断优先级执行中断的过程。

51单片机

定时器/计数器

16位寄存器T0、T1分别由TH0、TL0和TH1、TL1四个8位计数器组成

定时器的区别

        T0可分为2个独立的8位定时器,而定时器1不能;

        T1可作为串口的波特率发生器,而定时器0不能。

工作原理

        用途:定时器和计数器

        核心:加1计数器

        原理:每来一个脉冲则加1计数器加1,当加到寄存器要溢出时再来一个脉冲使加1计数器归零(溢出)同时使TCON寄存器中的TF0(或TF1)置1,向CPU发出中断请求。

脉冲来源

        定时器:由系统的时钟晶振输出脉冲源提供

        计数器:脉冲来源是由T0或T1引脚输入的外部脉冲源提供

注意: T0或T1都不能同时既做定时器也做计数器  

TCON控制寄存器

启动和停止定时/计数器的计数,并控制定时器的工作状态,支持按位寻址。单片机复位后清0。

注意:TCON寄存器中的低四位和定时计数器无关,和外部中断相关

位序D7D6D5D4D3D2D1D0
名称TF1TR1TF0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/502731.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

多输入多输出 | Matlab实现RIME-BP霜冰算法优化BP神经网络多输入多输出预测

多输入多输出 | Matlab实现RIME-BP霜冰算法优化BP神经网络多输入多输出预测 目录 多输入多输出 | Matlab实现RIME-BP霜冰算法优化BP神经网络多输入多输出预测预测效果基本介绍程序设计往期精彩参考资料 预测效果 基本介绍 多输入多输出 | Matlab实现RIME-BP霜冰算法优化BP神经网…

Java SPI:Service Provider Interface

SPI机制简介 SPI(Service Provider Interface),是从JDK6开始引入的,一种基于ClassLoader来发现并加载服务的机制。 一个标准的SPI,由3个组件构成,分别是: Service:是一个公开的接口…

线性规划在多种问题形式下的应用

线性规划的用处非常的广泛,这主要是因为很多类型的问题是可以通过转化的方式转化为线性规划的问题。例如需要再图论中寻找起始点到给定的点的最短路径问题: 添加图片注释,不超过 140 字(可选) 假设要计算从节点0到节点…

Java毕业设计 基于SpringBoot jsp 交友系统

Java毕业设计 基于SpringBoot jsp 交友系统 SpringBoot jsp 交友系统 功能介绍 登录 验证码 注册 忘记密码 完善资料 后台首页 个人信息 修改密码 寻找好友 随机 添加好友 我的好友 留言板 申请列表 我的申请 我要充值 充值消费记录 管理员用户功能 登录 验证码 忘记密码 完…

如何在群晖Docker运行本地聊天机器人并结合内网穿透发布到公网访问

文章目录 1. 拉取相关的Docker镜像2. 运行Ollama 镜像3. 运行Chatbot Ollama镜像4. 本地访问5. 群晖安装Cpolar6. 配置公网地址7. 公网访问8. 固定公网地址 随着ChatGPT 和open Sora 的热度剧增,大语言模型时代,开启了AI新篇章,大语言模型的应用非常广泛,包括聊天机…

【改进算法】【IHAOAVOA】天鹰优化算法和非洲秃鹫混合优化算法

目录 1 主要内容 IHAOAVOA流程图 主要创新点 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序复现《IHAOAVOA: An improved hybrid aquila optimizer and African vultures optimization algorithm for global optimization problems》,天鹰优化算法&am…

c++函数指针 回调函数

目录 函数指针 ​编辑 实例 函数指针作为某个函数的参数 实例 std::function轻松实现回调函数 绑定一个函数 作为回调函数 作为函数入参 函数指针 函数指针是指向函数的指针变量。 通常我们说的指针变量是指向一个整型、字符型或数组等变量,而函数指针是指向…

第六节:Vben Admin权限-后端控制方式

系列文章目录 第一节:Vben Admin介绍和初次运行 第二节:Vben Admin 登录逻辑梳理和对接后端准备 第三节:Vben Admin登录对接后端login接口 第四节:Vben Admin登录对接后端getUserInfo接口 第五节:Vben Admin权限-前端控制方式 文章目录 系列文章目录前言一、角色权限(后端…

网安播报|开源Xeno RAT特洛伊木马在GitHub上成为潜在威胁

1、开源Xeno RAT特洛伊木马在GitHub上成为潜在威胁 一种“设计复杂”的远程访问特洛伊木马(RAT),称为Xeno RAT已在GitHub上提供,使其他参与者可以轻松访问,无需额外费用。开源RAT是用C#编写的,与Windows 10…

react-router 源码之matchPath方法

1. 基础依赖path-to-regexp react-router提供了专门的路由匹配方法matchPath(位于packages/react-router/modules/matchPath.js),该方法背后依赖的其实是path-to-regexp包。 path-to-regexp输入是路径字符串(也就是Route中定义的path的值)&…

Ansible的playbook的编写和解析

目录 什么是playbook Ansible 的脚本 --- playbook 剧本 实例部署(使用playbook安装启动httpd服务) 1.编写一个.yaml文件 在主机下载安装http,将配置文件复制到opt目录下 运行playbook 在192.168.17.77主机上查看httpd服务是否成功开启…

3,设备无关位图显示

建立了一个类Dib Dib.h #pragma once #include “afx.h” class CDib :public CObject { public: CDib(); ~CDib(); char* GetFileName(); BOOL IsValid(); DWORD GetSize(); UINT GetWidth(); UINT GetHeight(); UINT GetNumberOfColors(); RGBQUAD* GetRGB(); BYTE* GetDat…