注册 登录
查看: 471|回复: 6

K60_PWM

[复制链接]
发表于 2014-12-1 19:53:06 | 显示全部楼层 |阅读模式
PWM初始化如下:
  1.   FTM_PWM_init(FTM0,FTM_CH3,200*1000,100);//初始化PWM,使用FTM0 PWM3
  2.                                           //频率为200KHz,占空比为100/FTM0_PRECISON
  3.                                           //FTM0_PRECISON配置为100,即占空比为100%
  4.                                           //port_cfg_.h里面配置FTM0_CH3对应为PTA6
为什么PWM的频率可以直接写呢?跟bus时钟没有关系么?


新手不懂,望大家给讲解一下,谢谢
回复

使用道具 举报

发表于 2014-12-1 19:55:58 | 显示全部楼层
这个就是山外哥代码的厉害之处,内部自动计算相关的分频系数,然后按我们指定频率来运作,不需要我们自己再去算频率。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-12-1 20:00:04 | 显示全部楼层
sestpqwnkm 发表于 2014-12-1 19:55
这个就是山外哥代码的厉害之处,内部自动计算相关的分频系数,然后按我们指定频率来运作,不需要我们自己再 ...

可是我还是不太明白,既然这样那设置了bus时钟和其他时钟周期还有什么用呢?

山外哥是根据什么设置的PWM频率呢?是直接通过外部参考时钟设置的么?
回复 支持 反对

使用道具 举报

发表于 2014-12-1 20:20:21 | 显示全部楼层
板正的 发表于 2014-12-1 20:00
可是我还是不太明白,既然这样那设置了bus时钟和其他时钟周期还有什么用呢?

山外哥是根据什么设置的P ...

就是用bus频率来分频啊。但分频系数这些会代码自动根据bus频率自动计算。

既然用到bus频率,那当然有用啊!!只不过我们的顶层接口不需要考虑而已,交由山外哥的底层完成。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-12-1 20:22:56 | 显示全部楼层
sestpqwnkm 发表于 2014-12-1 20:20
就是用bus频率来分频啊。但分频系数这些会代码自动根据bus频率自动计算。

既然用到bus频率,那当然有 ...

就是说无论我们设置的BUS时钟是怎么样的,系统都会根据我们的bus时钟自动调节参数,从而输出我们在PWM中设置的频率??
回复 支持 反对

使用道具 举报

发表于 2014-12-1 20:27:35 | 显示全部楼层
板正的 发表于 1417436576
就是说无论我们设置的BUS时钟是怎么样的,系统都会根据我们的bus时钟自动调节参数,从而输出我们在PWM中设置的频率??
是。当然,里面会有断言检查你的配置是否超过寄存器配置范围。

超过了,就断言失败,表示不可以配置这样的频率。可以调整bus频率来配置相应频率。
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-12-1 20:38:21 | 显示全部楼层
山外メ雲ジ 发表于 2014-12-1 20:27
是。当然,里面会有断言检查你的配置是否超过寄存器配置范围。

超过了,就断言失败,表示不可以配置这样 ...

哦哦  明白点了  山外哥,帮忙看看我是不是理解错了啊、、、
http://www.vcan123.com/forum.php ... amp;page=1#pid52590
回复 支持 反对

使用道具 举报

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

本版积分规则

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