单片机学习笔记---定时器和中断系统如何连起来工作

前面两节我们分别讲了中断系统和定时器,这节我们看看这两者连起来工作的原理。

说明:看这一节之前一定要先把前两节给看明白了再仔细琢磨这一节的每一张图!

前两节:

单片机学习笔记---中断系统(含外部中断)-CSDN博客

单片机学习笔记---定时器/计数器(简述版!)-CSDN博客

首先看一下我们51单片机芯片手册上的定时器工作图,以定时器0,工作在方式1(模式1)的情况为例。

我们可以按这三大块系统给以上工作图划分

我们来看一下手册上的这幅图和我们上一节讲的工作图的对应关系

先看时钟模块的对应关系

其中SYSclk是系统时钟,即晶振周期,本开发板上的晶振是12MHz。

6T和12T表示什么意思呢?

表示这个12Mhz脉冲会进行分频,把12MHz的系统时钟进行12分频,分频后输出的频率就是1Mhz,那它一个周期就是1微秒。那么计数系统那个单元就会每隔1微秒就计一次数,当它记到最大值,就会产生中断。

再看计数单元的对应关系

最后是中断系统这块的对应关系

定时器和中断系统的连接:

接下来看一下定时器和中断系统是怎么连接起来的:

本节讲的主要流程如下图工作路线:

完整的对比图如下:

下节是代码是代码演示!

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-04 06:12:05       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-04 06:12:05       106 阅读
  3. 在Django里面运行非项目文件

    2024-02-04 06:12:05       87 阅读
  4. Python语言-面向对象

    2024-02-04 06:12:05       96 阅读

热门阅读

  1. kafka排除zookeeper使用kraft的最新部署方案

    2024-02-04 06:12:05       46 阅读
  2. kafka自定义分区策略详解

    2024-02-04 06:12:05       43 阅读
  3. Xlua分析:C#调用Lua

    2024-02-04 06:12:05       40 阅读
  4. 数组和List之间的相互转换

    2024-02-04 06:12:05       49 阅读
  5. 2024.2.3

    2024.2.3

    2024-02-04 06:12:05      44 阅读
  6. 开源模型应用落地-业务优化篇(四)

    2024-02-04 06:12:05       46 阅读
  7. Node.js版本管理工具之_GNVM

    2024-02-04 06:12:05       40 阅读
  8. vue实现二维数组表格渲染

    2024-02-04 06:12:05       52 阅读
  9. 超越原生:探索Node.js中最佳文件系统三方库

    2024-02-04 06:12:05       44 阅读
  10. 类银河恶魔城学习记录1-8 PlayerDash补全 P35

    2024-02-04 06:12:05       45 阅读