寄存器图

可以通过操作以下的寄存器来实现对timer(定时器)内核的操作(仅描述32位计数器)

状态寄存器:

TO(timeout) :计数器计数到0时,该位置1,之后TO位的值会保持,直到手动清零,向状态寄存器写零,可以清除TO位

RUN:只读寄存器,读该寄存器,返回值为1表示计数其正在运行,0表示计数器停止计数,向状态寄存器写值,对该位无影响

控制寄存器:

ITO(interrupt timeout):该位为1允许timer在计数为0 时输出中断。该位为0,计数至0时,不输出中断信号.

CONT(continuous):该位控制定时器计数至0 后的动作,该位为1 ,计数器继续运行;该位为0,计数器到0后,停止计数。(无论该位为何值,在计数器到0后,均会载入计数初值)

START:启动计数器。当计数器停止时,写1,计数器从原计数器继续计数;当计数器运行时,写1,无影响。向该位写0,无影响.

STOP:停止计数器,当计数器运行时,写1,计数器停止计数;当计数器已经停止时,写1,无影响。向该位写0,无影响.(在硬件配置时,没选择"Start/Stop control bits" ,向该位写值,无影响)

注意:同时向START位和STOP位写1,结果不可预测!

计数值寄存器:

32位存储计数初值,计数器载入该值时满足的条件(二者选其一):

1,计数器计数至零;

2,对该计数值寄存器进行写操作;

计数器的计数周期为,初值加1,因为计数器需计数至0后,才载入计数初值

当硬件配置时,选择“Start/Stop control bits”,向该寄存器写值,计数其停止计数;若未选择时,计数器不会停止计数。未选择“Writeable period”,向该寄存器写值,会使计数器复位

临时值寄存器:

向给寄存器写任意值,计数器当前计数值会复制到临时值寄存器!

对该寄存器的操作,对计数器无影响

 中断行为:

当ITO位为1,且计数器计数至0时,计数器发出中断信号,

最新文章

  1. 获取当前应用的系统路径工具类和java的System.getProperty()方法介绍
  2. linux性能检测工具
  3. 【Eclipse】 Alt+/ 代码提示问题解决方案
  4. [转]基于 Quercus 的手游项目终于上线了
  5. 树莓派 不稳定 ssh经常断 解决
  6. SQLSERVER2008 18456错误
  7. C++中struct和class的区别 [转]
  8. python学习第十五天 -面向对象之继承和多态
  9. 从M个数中随机选出N个数的所有组合,有序,(二)
  10. Lucene.Net 2.3.1开发介绍 —— 二、分词(三)
  11. 学习NodeJS第一天:node.js介绍
  12. 深刻认识shift_ram IP core——图像处理学习笔记
  13. jquery系列教程6-ajax的应用全解
  14. JAVA虚拟机:对象的创建过程
  15. 【interview】汉诺塔学递归
  16. mysql 分库分表转
  17. Hive 导入 parquet 格式数据(未完,待续)
  18. 201621123001 《java程序设计》第2周学习总结
  19. (error) MOVED 5798 172.17.0.3:6379
  20. springboot深入学习(一)-----springboot核心、配置文件加载、日志配置

热门文章

  1. Hadoop 集群ssh免密登录设置
  2. js判断Android和Ios
  3. Android Studio3.0.0之前首次安装通用配置
  4. SQL With As的用法
  5. A conflict in the working copy obstructs the current operation
  6. linux做免密登录,成功分发公钥后登录主机依旧需要输入密码的问题解决
  7. laravel实现excel表的导入导出功能
  8. CentOS7下使用C/C++连接MariaDB/MySQL
  9. 第五十篇 入门机器学习——线性回归(Linear Regression)
  10. 第四十二篇 入门机器学习——Numpy的基本操作——索引相关