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

DSP定时器的计算

以下是 0 到 F 的十六进制数对应的四位二进制表示的对照表:

十六进制二进制
00000
10001
20010
30011
40100
50101
60110
70111
81000
91001
A1010
B1011
C1100
D1101
E1110
F1111

定时器周期:

我们先将 0x1742 转换成二进制形式:

0x1742 = 0001 0111 0100 0010(二进制)
          ↑    ↑    ↑    ↑
        高位              低位(从右向左数位)

4位是0

5位是0

8位是0

9位是1

10位是1

11位是1

12位是0

以 TI 的 TMS320 系列 EVA 模块为例,T1CON 各个位的定义通常如下:

名称含义
15不常用(保留)
14不常用(保留)
13不常用(保留)
12-11TMODE1-TMODE0计数模式
10-8TPS2-TPS0时钟预分频
7-6不常用或保留
5-4TCLKS1-TCLKS0定时器时钟源
3-0其他控制位(如启用位等)

T1CON = 0x1742,可以拆解成以下几个关键配置位:

  • TMODE1- TMODE0 = 10连续增计数模式

  • TPS2-TPS0 = 7时钟预分频比为 1/128

  • TCLKS1-TCLKS0 = 00选择 HSPCLK(高频系统时钟)作为定时器的时钟源

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

  • TMODE1-TMODE0 = Bit12~11 = 10

    • 二进制位置:bit 12 = 1, bit 11 = 0

    • 含义:10 → 连续增计数模式(Continuous up-counting mode)

  • TPS2-TPS0 = Bit10~8 = 111

    • TPS2 = 1(bit10),TPS1 = 1(bit9),TPS0 = 1(bit8)

    • 即:111 → 分频比为 1/128(这个是固定映射关系)

  • TCLKS1-TCLKS0 = Bit5~4 = 00

    • 选择定时器时钟源为 HSPCLK

T1PR 是定时器1的 预分频寄存器(Prescaler Register)

它的值用于 将定时器的输入时钟再进行一次分频,分频因子就是你写入的值。

0x0200 转十进制                     0x0200 = 2 × 256 = 512

定时器输出 PWM 信号的频率与占空比:

这两页讲的是 TMS320F281x 定时器输出 PWM 信号的频率与占空比 的计算。


第一部分:T1 定时器输出 PWM 的频率与占空比

已知配置:

  • 外部时钟:75 MHz

  • T1PR = 0xFFFF = 65535

  • T1CON = 0x1042:连续计数模式、无分频

  • T1CMPR = 0x3C00 = 15360

1️⃣ PWM 频率计算:

PWM 频率由 T1PR 控制,计算公式如下:

频率 = 定时器时钟频率 / (T1PR + 1)= 75MHz / (0xFFFF + 1)= 75MHz / 65536 ≈ 1.144 kHz

2️⃣ 占空比计算:

高电平时间 = T1CMPR = 0x3C00 = 15360
周期总时间 = T1PR + 1 = 65536

高电平占空比 = 15360 / 65536 ≈ 23.4%
低电平占空比 = 1 - 23.4% = 76.6%

第二部分:T2 定时器输出 PWM 的频率与占空比

已知配置:

  • T2PR = 0x0FFF = 4095

  • T2CON = 0x1042:连续计数、无分频

  • T2CMPR = 0x03C0 = 960

  • 输出模式:T2PIN = 2 → 高电平有效


1️⃣ PWM 频率计算:

频率 = 75MHz / (0x0FFF + 1)= 75MHz / 4096= 18.31 kHz

2️⃣ 占空比计算:

高电平时间 = 0x0FFF - 0x03C0 = 4095 - 960 = 3135

高电平占空比 = 3135 / 4096 ≈ 76.5%
低电平占空比 = 1 - 76.5% = 23.5%

✅ 总结:

定时器频率高电平占空比低电平占空比
T11.144 kHz23.4%76.6%
T218.31 kHz76.5%23.5%

http://www.xdnf.cn/news/570331.html

相关文章:

  • Spring Boot集成Spring AI与Milvus实现智能问答系统
  • dali本地安装和使用
  • WSD3043 MOSFET 在吸黑头仪中的应用
  • 小数第n位--快速幂+数学
  • 软件设计师“数据流图”真题考点分析——求三连
  • System.in 的本质:输入流的方向​
  • 高效能、高可靠性——SILM94112/08-AQ可编程半桥电机驱动器
  • WordPress_Madara 本地文件包含漏洞复现(CVE-2025-4524)
  • 深入浅出:线程安全问题的原因与解决方案
  • 5月21日直播安排
  • Taro 安全区域
  • React-改变当前页class默认的样式
  • PHP 扇形的面积(Area of a Circular Sector)
  • Redis集群在NoSQL中的应用与优化策略
  • 提升加密交易效率:PumpSwap批量交易功能深度解析
  • JAVA批量发送邮件(含excel内容)
  • Proteus 51单片机仿真模拟步骤详解【附有51单片机的仿真图,仿真软件】【调试专用】
  • 【VSCode】在远程服务器Linux 系统 实现 Anaconda 安装与下载
  • 职坐标编程开发进阶路径
  • 详解Redis缓存穿透、缓存雪崩、缓存击穿:原理、场景与解决方案
  • Gradle导入旧工程报错问题解决
  • java接口自动化(二) - 接口测试的用例设计
  • springAI调用deepseek模型使用硅基流动api的配置信息
  • 分布式电源的配电网无功优化
  • 汽车转向系统行业2025数据分析报告
  • 【python】纤维宽度分布分析与可视化
  • 小米汽车二期工厂下月将竣工,产能提升助力市场拓展
  • 使用 Vue 展示 Markdown 文本
  • 一个实际电路的原理图是怎样设计出来的?附带案例流程图!
  • export和import的书写方式