当前位置: 首页 > news >正文

TC39x STM(System Timer)学习记录

STM有哪些特性?

  • 自由运行的 64 位计数器
  • 所有 64 位可同步读取
  • 可同步读取 64 位计数器的不同 32 位部分
  • 基于与 STM 部分内容的比较匹配,灵活地产生服务请求
  • 在应用复位后自动开始计数
  • 若 ARSTDIS.STMxDIS 位清零,应用复位将复位 STM 寄存器;若该位被置位,则应用复位不复位 STM 寄存器,改由系统复位进行复位
  • 特殊的 STM 寄存器语义提供对整个 64 位计数器的同步视图,或不同分辨率的 32 位子集视图

        上图是STM模块的概览图,展示了读取 STM 内容各部分的选项。

STM有哪些功能?

        STM 是一个向上计数的计数器,工作频率为 fSTM。若发生应用复位,且SCU_ARSTDIS.STMxDIS 位清零,则 STM 被复位。复位后,STM 被使能并立即开始向上计数。在正常运行期间无法改变定时器的内容。定时器寄存器只能读,不能写。

        STM 可选地被禁用以节能,或在调试时挂起。在挂起模式下,STM 时钟停止,但所有寄存器仍可读。

        由于 STM 的宽度为 64 位,无法用一条指令读出其全部内容。需要两次加载指令。因为在两次读取之间定时器会继续计数,所以可能导致两次读取的值不一致(低位部分在两次读取间溢出到高位)。为实现对 STM 内容的同步一致读取,实现了一个捕获寄存器(CAP)。每当读取 TIM0 至 TIM5 中任一寄存器时,它会锁存 STM 高位部分的内容。因此,CAP 在与低位部分读取完全相同的时间点保持定时器高位的值。第二次读取再读取 CAP 的内容以获取完整的定时器值。

        STM 也可以从七个寄存器 TIM0 至 TIM6 中的任意一个分段读取,这些寄存器选择 STM 的不同高阶 32 位范围。可以将它们视作各自独立的 32 位定时器,每个具有不同的分辨率和计时范围。

        64 位系统定时器的内容可与存储在 CMP0 和 CMP1 寄存器中的两个比较值进行比较。可在与 CMP0 或 CMP1 比较匹配时产生服务请求。

比较寄存器操作

64 位 STM 的内容可以与存储在 CMP0 和 CMP1 寄存器中的两个比较值进行比较。在与 CMP0 或 CMP1 比较匹配时可以产生服务请求。

比较操作可编程的两个参数:

  1. 用于比较操作的 CMP0/CMP1 寄存器(比较宽度 MSIZEx)中相关位的宽度,可从 0 到 31 编程。
  2. 用于比较操作的 64 位 STM 中的起始位位置,可从 0 到 31 编程。

这些编程能力使比较功能非常灵活。甚至可以通过设置 MSIZE = 0 且 MSTART = n(n = 0 到 31)来检测 64 位 STM 中单个位 n 的位跃迁。

http://www.dtcms.com/a/324975.html

相关文章:

  • 压力测试等工具源码包编译及使用方法
  • Vulnhub doubletrouble 靶场复现 详细攻略
  • Knuth‘s TwoSum Algorithm 原理详解
  • MyBatis 核心入门:从概念到实战,一篇掌握简单增删改查
  • 【东枫科技】FR3 可扩展测试平台,适用于 6G 研究与卫星通信,高达 1.6 GHz 的带宽
  • 【自动化运维神器Ansible】playbook案例解析:Tags组件实现任务选择性执行
  • 【01】华勤技术股份有限公司——华勤C++笔试,题目记录及解析
  • Java基础-使用反射做一个简易框架
  • Python 实例属性和类属性
  • 【PyTorch】单目标检测项目
  • vulnhub-Drippingblues靶机
  • Typora结合PicGo + 使用Gitee搭建个人免费图床
  • 计算机网络---IP(互联网协议)
  • 2025年6月电子学会全国青少年软件编程等级考试(Python六级)真题及答案
  • 二叉树进阶 之 【二叉搜索树的简介与模拟实现的前提准备】
  • 【杂谈】-智能代理+可观察性:构建下一代复杂系统监控体系
  • UE5多人MOBA+GAS 41、制作一个飞弹,添加准心索敌
  • JS实现数组扁平化
  • 计算二分类误差时的常见错误及解决方案
  • ubuntu22.04+samba
  • VMware 使用 Ubuntu 一段时间后逐渐卡顿、甚至卡死的问题
  • sqli-labs-master/Less-51~Less-61
  • 解读 GPT-5:从“博士级 AI 专家”能力到 OpenAI API Key 获取与实践(提示工程→性能调优全流程)
  • MySQL自增ID与UUID的区别及其在索引分裂中的表现与优化
  • W3D引擎游戏开发----从入门到精通【23】
  • 2013年考研数学(二)真题
  • A#语言详解
  • 相比于传统的全波分析,特征模分析具有哪些优点
  • vue如何监听localstorage
  • 博览会(树形DP)