硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2322|回复: 3
收起左侧

PWM代码里的对频率分段100和3000是什么意思?

[复制链接]

9

主题

12

回帖

39

积分

新手上路

积分
39
发表于 2021-1-13 16:06:02 | 显示全部楼层 |阅读模式

    if (_ulFreq < 100)
    {
        usPrescaler = 10000 - 1;                    /* 分频比 = 10000 */
        usPeriod =  (uiTIMxCLK / 10000) / _ulFreq  - 1;        /* 自动重装的值 */
    }
    else if (_ulFreq < 3000)
    {
        usPrescaler = 100 - 1;                    /* 分频比 = 100 */
        usPeriod =  (uiTIMxCLK / 100) / _ulFreq  - 1;        /* 自动重装的值 */
    }
    else    /* 大于4K的频率,无需分频 */
    {
        usPrescaler = 0;                    /* 分频比 = 1 */
        usPeriod = uiTIMxCLK / _ulFreq - 1;    /* 自动重装的值 */
    }
   这一段没理解是什么意思,为什么各个频段的分频比还不一样?

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117530
QQ
发表于 2021-1-13 17:25:31 | 显示全部楼层
仅修改一个参数的话,16bit定时器相应配置参数有范围的,0-65535.

而分担到两个参数上,就不容易超出范围了,参数更好配置。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117530
QQ
发表于 2021-1-13 17:25:42 | 显示全部楼层
仅修改一个参数的话,16bit定时器相应配置参数有范围的,0-65535.

而分担到两个参数上,就不容易超出范围了,参数更好配置。
回复

使用道具 举报

9

主题

12

回帖

39

积分

新手上路

积分
39
 楼主| 发表于 2021-1-13 19:28:07 | 显示全部楼层
eric2013 发表于 2021-1-13 17:25
仅修改一个参数的话,16bit定时器相应配置参数有范围的,0-65535.

而分担到两个参数上,就不容易超出范 ...

好的好的,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-13 01:52 , Processed in 0.039792 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表