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

嵌入式第五十四天(EPIT,GPT)

一.EPIT

在 ARM 架构中,EPIT 即 Enhanced Periodic Interrupt Timer,是增强型周期性中断定时器,其工作原理如下:

- 基本特性  :EPIT 是 32 位定时器,拥有 12 位的分频值,并且它是时钟源可选的 32 位向下计数器,每当一个时钟周期来临,计数值就会减 1,直到减为 0,当计数值和比较寄存器中的比较值相等时,就会产生中断。
- 时钟源选择  :EPIT 通常有 3 个时钟源可供选择,通过配置其配置寄存器 EPITx_CR 中的 CLKSRC 位来实现,比如,CLKSRC 位为 1 时,选择 Peripheral 时钟(ipg_clk),为 2 时,选择 High - frequency 参考时钟(ipg_clk_highfreq),为 3 时,选择 Low - frequency 参考时钟(ipg_clk_32k)。
- 分频处理  :选定的时钟源会进入到 12 位的分频器,分频器对应的值是 0 到 4095,分别对应 1 到 4096 分频,通过设置 EPITx_CR 寄存器的 PRESCALAR 位能设定分频值。
- 工作模式  :set - and - forget 模式下,EPITx_CR 寄存器的 RLD 位置 1,计数器从加载寄存器 EPITx_LR 中获取初始值,计数器计数到 0 后,会再次从加载寄存器中重新加载数据继续计数。而 free - running 模式下,RLD 位清零,计数器计数到 0 后,会从 0XFFFFFFFF 重新开始计数,并非从加载寄存器取数。
- 中断产生机制 :EPIT 内部有比较寄存器 EPIT_CMPR 和计数寄存器 EPIT_CNR,当两者中的值相等时,若配置寄存器中的中断使能位 OCIEN 被置 1,就会产生一个比较中断信号,告知 CPU 执行相关的定时任务。

二.GPT

在 ARM 架构里,GPT 指 General Purpose Timer,即通用目的定时器,其工作原理如下:

- 时钟源选择:GPT 通常存在多个时钟源可供选择,以IMX6ULL芯片为例,它有高频参考时钟、低频参考时钟、外围时钟、外部时钟以及晶体振荡器时钟 5 种时钟源,通过 GPT 配置寄存器中的相关位可进行时钟源的选取  。
- 分频处理:GPT 拥有一个 12 位的预分频器,预分频值可在 0 到 4095 之间设置,对应 1 到 4096 分频。最终输入到计数器的时钟频率为时钟源频率除以预分频数加 1 所得的值  。
- 计数器工作模式:GPT 计数器能被编程为重新启动模式或自由运行模式。在重新启动模式下,当计数器计数值与比较寄存器中的值相等时,计数器会复位至 0 并重新开始计数,该模式仅和比较通道 1 相关。而自由运行模式中,计数器从 0 计数到 0xFFFFFFFF 后会自动归零并继续计数,所有比较通道发生比较事件都不会让其重置  。
- 输入捕获功能:GPT 具备两个输入捕获通道,能够设置触发方式,可针对上升沿、下降沿或两者都进行捕获。当信号出现设定的触发沿跳变时,定时器的捕获寄存器就会保存当下的计数器值,借此可以计算信号的脉宽等时间参数  。
- 输出比较功能:GPT 包含三个输出比较通道,当输出比较寄存器中预先设定的值与计数器中的值匹配时,就会设置输出比较状态标志,并且能产生中断信号,此外还有强制比较功能,可立即触发比较事件,但不会设置状态标记位和产生中断  。


文章转载自:

http://W645aR26.ngzkt.cn
http://5RNmt2jg.ngzkt.cn
http://SWtYTTpy.ngzkt.cn
http://X50Zno2e.ngzkt.cn
http://8iWL1tYm.ngzkt.cn
http://jhX2ynFn.ngzkt.cn
http://9ohRBhFo.ngzkt.cn
http://sDiRuPSU.ngzkt.cn
http://X0mbgYsB.ngzkt.cn
http://Ht0nn7xT.ngzkt.cn
http://hdvBOpEo.ngzkt.cn
http://34Gd4jyn.ngzkt.cn
http://VzNnOXmA.ngzkt.cn
http://EblYoxR2.ngzkt.cn
http://dqqa2VQi.ngzkt.cn
http://0rKXdpV3.ngzkt.cn
http://4jfA7Mat.ngzkt.cn
http://OSEhfW4O.ngzkt.cn
http://zFA2bAim.ngzkt.cn
http://2ixbWVpO.ngzkt.cn
http://C6iujQs6.ngzkt.cn
http://sr8GI4al.ngzkt.cn
http://2pIDFXHL.ngzkt.cn
http://XtwdEQ0V.ngzkt.cn
http://E5tgAvlY.ngzkt.cn
http://kDLWidum.ngzkt.cn
http://328mtpcu.ngzkt.cn
http://I8nepg4G.ngzkt.cn
http://0F3QZbl5.ngzkt.cn
http://Iau88RCX.ngzkt.cn
http://www.dtcms.com/a/386139.html

相关文章:

  • 何为楼宇自动化控制系统的质量管理?本质与关键要素解析
  • Spring 源码学习(十二)—— HandlerMapping(一)
  • 七牛云技术前瞻:GPT-5-Codex如何开启智能体编程新时代
  • The Oxford-IIIT宠物图像识别数据集(753M)
  • 从Cursor到GPT-5-Codex:AI编程Agent的技术与商业全解析
  • 实践-医学影像AI诊断系统:基于DICOMweb、ViT/U-Net和Orthanc的端到端实现
  • HarmonyOS 应用开发新范式:深入理解声明式 UI 与状态管理 (基于 ArkUI API 12+)
  • UDP和TCP网络通信
  • 基于R语言的水文、水环境模型优化技术及快速率定方法与多模型案例应用
  • 网络:RDMA原理以及在AI基础设施中的应用
  • 深度学习之pytorch基本使用(二)
  • Redis 协议(RESP)详解:请求与响应解析
  • k8s污点与容忍介绍
  • 设计模式-桥接模式04
  • 设计模式-桥接模式01
  • 架构设计java
  • 零知IDE——基于STM32F407VET6的HC-SR505安防监控系统
  • P1439 两个排列的最长公共子序列-普及+/提高
  • C#上位机软件:1.2 工控上位机学习内容和前提条件
  • 非常经典的Android开发问题-mipmap图标目录和drawable图标目录的区别和适用场景实战举例-优雅草卓伊凡
  • Linux-> UDP 编程2
  • EPLAN-关联参考
  • 实验部分撰写要求
  • R语言入门课| 08 变量的重编码与重命名
  • Ubuntu 系统下搭建 FTP 服务器及文件传输
  • Field II 超声成像仿真 --2-CPWC (Coherent Plane-Wave Compounding)
  • 具身导航技能分解与重组!SkillNav:基于技能的视觉语言导航智能体混合架构
  • 【ADB】多设备文件传输工具
  • Vue3 通过JSON渲染el-table-column生成完整el-table
  • 传输层协议——TCP协议