[其他ST产品] 定时器学习篇之LAT0106 STM32F030R8 定时器移植问题

[复制链接]
748|12
 楼主| cr315 发表于 2023-11-14 15:26 | 显示全部楼层 |阅读模式
问题:某客户工程师在某型号新产品的设计中,使用STM32F030R8 的TIM15 的CH1 和CH2 来产生需要的波形 (2 路PWM 信号)。据其工程师讲述:在以前的产品上,是使用 STM32F101 的TIM3/4 产生同样的波形。现在,将原代码移 植到STM32F030 的TIM15上,发现仅有一路输出(CH2),另一路(CH1)没有输出。调研:首先查看数据手册,看看是否是管脚映射出错。经核对,没有问题; 其次查看寄存器,看看配置是否有问题。经核对,TIM15_CR2的位0被置位。参考手册里寄存器描述中 有如下说明,CCPC: Capture/compare preloaded control0: CCxE, CCxNE and OCxM bits are not prel1: CCxE, CCxNE and OCxM bits are preloaded, after having been written, they are updated only when COM bit is set.这意味着,当CCPC被置位后,必须先有一个COM事件触发,才会将CCxE/CCxNE/OCxM位加载到寄存器 中。如果没有COM事件,则相关设置不会被加载,就无法产生期望的输出波形。
结论:移植过程中,不同定时器的差异导致代码需要微调。

STM32F030R8 定时器移植问题.pdf (159.45 KB, 下载次数: 1)
童雨竹 发表于 2024-8-1 08:10 | 显示全部楼层

只要内存占用量不超过 256.0 就可以用 small 模式编译
Wordsworth 发表于 2024-8-1 09:13 | 显示全部楼层

专门的滤波器来阻止交流噪声进入周围的电路
Clyde011 发表于 2024-8-1 10:16 | 显示全部楼层

电流型变换器电流检测电阻的公共接点和输出端电阻分压器的下端
公羊子丹 发表于 2024-8-1 11:09 | 显示全部楼层

超过变量128后必须使用compact模式编译
万图 发表于 2024-8-1 12:12 | 显示全部楼层

引线长度就决定了其响应信号的波长
Uriah 发表于 2024-8-1 13:15 | 显示全部楼层

数字电压表(DVM)或仪器来测量效率
帛灿灿 发表于 2024-8-1 15:11 | 显示全部楼层

任何一条PCB引线都可能成为天线
Bblythe 发表于 2024-8-1 16:14 | 显示全部楼层

滤波电容、功率开关管或整流器、电感或变压器
周半梅 发表于 2024-8-1 18:10 | 显示全部楼层

128以上的某些地址为特殊寄存器使用,不能给程序用
Pulitzer 发表于 2024-8-1 19:13 | 显示全部楼层

交流能量就会从输入或输出滤波电容上流进流出
好几遍vh 发表于 2024-8-31 18:04 | 显示全部楼层
当 CCPC 位被置位时,比较寄存器的更新需要通过 COM 事件来触发。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1466

主题

4964

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部