凡亿教育-香老板
凡事用心,一起进步
打开APP
公司名片
凡亿课堂 | 面试指南
当前位置: 首页 面试指南
单片机定时器怎么产生PWM?频率和占空比到底由谁决定?
浏览量:3
2026-10-31 15:40:44

很多嵌入式岗位都会问定时器、计数比较和硬件PWM,这里重点是把计算关系讲对,并指出不同计数模式的差异。

面试官这样问

不用delay软件翻转GPIO,而用MCU硬件定时器产生20kHz PWM并调节占空比。你会改哪个寄存器?占空比从30%改到70%会影响频率吗?

参考回答|先讲结论

在常见的边沿对齐、向上计数PWM模式中,计数时钟经过预分频器PSC,再由自动重装寄存器ARR确定周期;比较寄存器CCR决定高低电平翻转位置。只修改CCR通常改变占空比而不改变周期;修改PSC或ARR则会改变频率,特殊模式还要看PWM极性与对齐方式。

核心原理,面试官真正要听的

以常见通用定时器的向上计数为例:PWM频率约为 fTIM / [(PSC+1)×(ARR+1)],占空比可按CCR与周期计数之比理解。中心对齐模式的计数路径包含上下双向过程,不能直接照搬同一频率公式。还应检查实际定时器输入时钟,它可能受到总线预分频和芯片时钟树规则影响。

PWM开关周期与脉宽波形

工程现场怎样检查与回答

STEP 01

从芯片时钟树确认定时器实际输入频率,再根据目标频率选择PSC与ARR,让ARR保留足够分辨率。

STEP 02

配置GPIO复用功能、通道PWM模式、极性和输出使能;必要时开启ARR/CCR预装载,避免更新瞬间出现毛刺。

STEP 03

通过CCR改变占空比,边界值0%和100%时要检查硬件的输出比较行为与计数边界。

STEP 04

用示波器测实际频率、占空比和抖动;如果控制电机,还要考虑驱动器的死区、开关损耗和可闻噪声。

容易踩的坑

不能把“CCR决定频率”或“PSC决定占空比”说反。也不能无条件把一个厂商的寄存器命名和公式套用到所有MCU定时器。

追问练习

同样20kHz PWM,为什么ARR越大通常占空比分辨率越高?因为一个周期内可用的比较计数级数增加,但前提是时钟频率与预分频配置允许。


声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。仅供学习交流使用,不构成商业目的。版权归原作者所有,如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时删除。 侵权投诉

相关文章

单片机工程师跳槽面试要重点准备什么?5大技术方向梳理

2026-08-08 16:45:41

TVS防护器件怎么选型和PCB布局

2026-08-11 17:46:41

ARM协处理器指令包括哪3类,请描述它们的功能。

2023-11-21 11:29:47

FPGA状态机怎么设计?一段式/两段式/三段式、状态编码、复位怎么选?

2026-10-11 15:25:54

Linux指的是什么,有什么区别?

2024-10-16 16:44:13