请选择 进入手机版 | 继续访问电脑版
查看: 1490|回复: 7

[求助] 定时器多路pwm输出问题

[复制链接]

该用户从未签到

1

主题

5

帖子

0

新手上路

Rank: 1

积分
27
最后登录
2021-6-3
发表于 2021-5-25 11:16:08 | 显示全部楼层 |阅读模式
1NXP金币
芯片为KL系列,定时器为TPM0,一路正常pwm输出,另一路用pwm实现呼吸灯,但测试过程中发下,呼吸灯的时长会影响到另一路的输出(因为呼吸灯的实现需要不停改变pwm的参数),但两路通道是相互独立的,请问大神们,这是什么原因引起的。谢谢!

最佳答案

查看完整内容

能否告知具体哪款KL芯片?以便查看errata里是否有对应的bug和workaround如果用的是MCUXpresso SDK的例程,可以直接告诉我是哪个版本、哪个开发板的例程,方便我在开发板上测试一下 另外如楼上说的,如果你只是调解PWM(CnV)实现占空比变化是不会影响另一路通道的,但如果你同时还调节了周期频率(MOD)值那是会影响另一路通道的。 因为同一个TPM模块只有一个MOD寄存器,但每个通道都有各自的CnV寄存器 ...
回复

使用道具 举报

该用户从未签到

653

主题

6308

帖子

0

超级版主

Rank: 8Rank: 8

积分
19847
最后登录
2024-4-16
发表于 2021-5-25 11:16:09 | 显示全部楼层
本帖最后由 小恩GG 于 2021-6-1 11:04 编辑

能否告知具体哪款KL芯片?以便查看errata里是否有对应的bug和workaround如果用的是MCUXpresso SDK的例程,可以直接告诉我是哪个版本、哪个开发板的例程,方便我在开发板上测试一下

另外如楼上说的,如果你只是调解PWM(CnV)实现占空比变化是不会影响另一路通道的,但如果你同时还调节了周期频率(MOD)值那是会影响另一路通道的。
因为同一个TPM模块只有一个MOD寄存器,但每个通道都有各自的CnV寄存器
Figure 31-1. TPM block diagram.jpg
回复

使用道具 举报

  • TA的每日心情
    开心
    6 天前
  • 签到天数: 1335 天

    [LV.10]以坛为家III

    88

    主题

    4292

    帖子

    12

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    9049
    最后登录
    2024-4-13
    发表于 2021-5-25 14:57:22 | 显示全部楼层
    PWM的实现有两个参数,一个是频率,一个脉宽。
    楼主所谓的调节,是哪个参数?
    P.S. 脉宽的调节应该不会影响到其它通道
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    开心
    6 天前
  • 签到天数: 1335 天

    [LV.10]以坛为家III

    88

    主题

    4292

    帖子

    12

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    9049
    最后登录
    2024-4-13
    发表于 2021-5-25 14:58:44 | 显示全部楼层
    PWM的实现有两个参数,一个是频率,一个脉宽。
    楼主所谓的调节,是哪个参数?
    P.S. 脉宽的调节应该不会影响到其它通道
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-2-8 09:39
  • 签到天数: 217 天

    [LV.7]常住居民III

    92

    主题

    1109

    帖子

    29

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    7535

    热心会员

    最后登录
    2024-4-15
    发表于 2021-5-26 13:05:24 | 显示全部楼层
    芯片不一样,而且pwm调频可能需要调两个,一个是时钟的分频,一个pwm的计数
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    5

    帖子

    0

    新手上路

    Rank: 1

    积分
    27
    最后登录
    2021-6-3
     楼主| 发表于 2021-6-3 13:45:46 | 显示全部楼层
    jobszheng5 发表于 2021-5-25 14:57
    PWM的实现有两个参数,一个是频率,一个脉宽。
    楼主所谓的调节,是哪个参数?
    P.S. 脉宽的调节应该不会影响 ...

    是的,当初调试时修改了频率和脉宽,后续查找芯片手册,直接修改寄存器CnV的值就可以了,感谢指导
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    5

    帖子

    0

    新手上路

    Rank: 1

    积分
    27
    最后登录
    2021-6-3
     楼主| 发表于 2021-6-3 14:10:13 | 显示全部楼层
    小恩GG 发表于 2021-5-25 11:16
    能否告知具体哪款KL芯片?以便查看errata里是否有对应的bug和workaround如果用的是MCUXpresso SDK的例程, ...

    谢谢回复,这张图当时没有看到,不然思路可能会更清晰点,造成上述现象的原因是在呼吸灯实现的函数里改重新设置了频率,改变了TPM_CNT和TPM_MOD的值,虽然频率一样,但还是会造成影响。在呼吸灯只改变CnV就可以了,虽然也有少许波动,但在接受误差范围内。
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    5

    帖子

    0

    新手上路

    Rank: 1

    积分
    27
    最后登录
    2021-6-3
     楼主| 发表于 2021-6-3 14:11:28 | 显示全部楼层
    az158 发表于 2021-5-26 13:05
    芯片不一样,而且pwm调频可能需要调两个,一个是时钟的分频,一个pwm的计数 ...

    谢谢指导,目前问题已经解决。
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-16 22:24 , Processed in 0.150660 second(s), 25 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

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