当前位置: 首页 > 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%

相关文章:

  • [每日一题] 3356. 零数组变换ii
  • C++初阶-vector的模拟实现2
  • WebRTC与RTSP|RTMP的技术对比:低延迟与稳定性如何决定音视频直播的未来
  • 汽车电子电气架构诊断功能开发全流程解析
  • Shell入门篇二
  • CPS是什么?
  • 基于Springboot + vue3实现的流动摊位管理系统
  • 【CCS】关于CCS12 编译报错:error #10099-D:program will not fit into available memory解决办法
  • 使用MATLAB输出给定范围内的所有质数
  • 07 接口自动化-用例管理框架之pytest单元测试框架
  • MySQL--day5--多表查询
  • MySQL字符串拼接方法全解析
  • 25_05_19Linux实战篇、第一章_01若依前后端部署之路(后端)
  • 【web全栈】若依框架B站学习视频
  • 如何解决测试覆盖率与迭代速度的冲突问题?
  • `application-{env}.yml` 配置文件来实现多环境配置
  • 循环队列分析及应用
  • JavaScript 函数、方法、限定符
  • MySQL中的JSON_CONTAINS函数用法
  • Kali Linux 中文设置