注册 登录
查看: 4202|回复: 23

[K60] 山外K60 修改PWM 精度(KL26也是同理)

[复制链接]
发表于 2013-5-2 11:17:59 | 显示全部楼层 |阅读模式
山外库(即原先野火库),可以修改 PWM 的精度 ,
FTM_PRECISON  改为 100,则 duty 传递进去的值就编程 0~100,精度为 1%
FTM_PRECISON  改为 1000,则 duty 传递进去的值就编程 0~1000 ,精度为0.1%
FTM_PRECISON  改为 10000,则 duty 传递进去的值就编程 0~10000 ,精度为 0.01%


PRECISON 就是分母,duty 就是分子。

KL26 只需要把 FTM 改成 TPM 即可

代码默认:
  1. #define FTM_PRECISON 100u  //定义占空比精度,100 即精度为 1%,1000u 则精度为 0.1%。用于占空比 duty  形参传入,即占空比为  duty / FTM_PRECISON


新版的在 MK60_FTM.h 文件夹里,名字改成 FTM0_PRECISON、FTM1_PRECISON。。。如此类推

本帖被以下淘专辑推荐:

回复

使用道具 举报

发表于 2014-4-29 00:02:56 | 显示全部楼层
倾城 发表于 2014-4-29 00:01
敢问山外哥,为什么我给PWM精度设置成3000后,程序总是跑飞,这是什么情况

参考山外哥的K60里面的IAR视频,里面有讲这类情况如何调试的。
回复 支持 0 反对 1

使用道具 举报

发表于 2015-5-14 12:23:09 | 显示全部楼层
Near 发表于 2015-5-14 11:28
山外哥,我把pwm的精度有100改到1000,改了之后电机转的好慢,而且有个方向他不转了(直立车),100的时 ...

你没改好,要函数调用也要改。
回复 支持 1 反对 0

使用道具 举报

发表于 2013-5-5 18:34:36 | 显示全部楼层
代码里都注释得很清楚啦
回复 支持 反对

使用道具 举报

发表于 2013-5-10 12:32:17 | 显示全部楼层
我想知道最小精度??????
回复 支持 反对

使用道具 举报

发表于 2013-5-10 13:50:14 | 显示全部楼层
feeling_kill 发表于 2013-5-10 12:32
我想知道最小精度??????

1/(2^16)
FTM 是16位计数的
回复 支持 反对

使用道具 举报

发表于 2013-5-10 15:03:39 | 显示全部楼层
山外メ雲ジ 发表于 2013-5-10 13:50
1/(2^16)
FTM 是16位计数的

哦,谢了   
回复 支持 反对

使用道具 举报

发表于 2013-5-10 22:52:50 | 显示全部楼层
feeling_kill 发表于 2013-5-10 15:03
哦,谢了

敢问 君是常熟理工人士?
回复 支持 反对

使用道具 举报

发表于 2013-5-11 11:13:48 | 显示全部楼层
哥不是常熟滴,拿个大神来装B而已,吓到你呢
回复 支持 反对

使用道具 举报

发表于 2014-2-21 15:47:55 | 显示全部楼层
请问修改精度影响运行速率吗?
回复 支持 反对

使用道具 举报

发表于 2014-2-21 15:48:51 | 显示全部楼层
yxz8 发表于 2014-2-21 15:47
请问修改精度影响运行速率吗?

不影响,这个是FTM模块干的活,跟CPU是 独立的
回复 支持 反对

使用道具 举报

发表于 2014-3-15 12:57:30 | 显示全部楼层
我需要占空比在6%到7%之间,按照FTM0_PRECISON 100u的时候,duty就设置为6或者7,可是当我把FTM0_PRECISON 100u改为FTM0_PRECISON 1000u,把duyu设置为60到70之间,舵机也没什么反应,这是为什么
回复 支持 反对

使用道具 举报

发表于 2014-3-15 12:59:44 | 显示全部楼层
我和世界不一样 发表于 2014-3-15 12:57
我需要占空比在6%到7%之间,按照FTM0_PRECISON 100u的时候,duty就设置为6或者7,可是当我把FTM0_PRECISON  ...

用示波器测测PWM正不正常。
回复 支持 反对

使用道具 举报

发表于 2014-4-13 02:18:23 | 显示全部楼层
KL26的芯片,精度只能达到1000么?我实验室的用的芯片都能达到100000,问问山外哥,我们KL26的也能达到这个精度么?
回复 支持 反对

使用道具 举报

发表于 2014-4-13 08:45:59 | 显示全部楼层
孤独的守望者 发表于 2014-4-13 02:18
KL26的芯片,精度只能达到1000么?我实验室的用的芯片都能达到100000,问问山外哥,我们KL26的也能达到这个精 ...

这个看bus频率。精度最大不能超过 bus的 二分之一。
没有说非要限定在 1000 啊,举例说明一下而已
回复 支持 反对

使用道具 举报

发表于 2014-4-29 00:01:30 | 显示全部楼层
山外メ雲ジ 发表于 2014-4-13 08:45
这个看bus频率。精度最大不能超过 bus的 二分之一。
没有说非要限定在 1000 啊,举例说明一下而已

敢问山外哥,为什么我给PWM精度设置成3000后,程序总是跑飞,这是什么情况
回复 支持 反对

使用道具 举报

发表于 2015-3-2 15:02:25 | 显示全部楼层
FX的性能更好(标准频率150M),flash更大(1M),RAM更大(128K+16K),而且多了一个FTM模块(4个FTM模块,这个比较重要。2个用在正交解码,2个PWM输出)。
    DN的价格相对便宜(标准频率100M,flash 512K ,RAM 128K),老版本的库也可以使用。
    山外K60DN和K60FX仅仅主控IC不同,其他硬件外围完全一样。
这个第四个ftm怎么/**********************************  FTM    ***************************************/

//      模块通道    端口          可选范围              建议
#define FTM0_CH0    PTC1        //PTC1、PTA3            PTA3不要用(与Jtag、SWD冲突)
#define FTM0_CH1    PTA4        //PTC2、PTA4
#define FTM0_CH2    PTA5        //PTC3、PTA5
#define FTM0_CH3    PTA6        //PTC4、PTA6
#define FTM0_CH4    PTA7        //PTD4、PTA7
#define FTM0_CH5    PTD5        //PTD5、PTA0            PTA0不要用(与Jtag、SWD冲突)
#define FTM0_CH6    PTD6        //PTD6、PTA1            PTA1不要用(与Jtag冲突)
#define FTM0_CH7    PTD7        //PTD7、PTA2            PTA2不要用(与Jtag冲突)


//      模块通道    端口          可选范围              建议
#define FTM1_CH0    PTA12       //PTA8、PTA12、PTB0
#define FTM1_CH1    PTA13       //PTA9、PTA13、PTB1

//      模块通道    端口          可选范围              建议
#define FTM2_CH0    PTA10       //PTA10、PTB18
#define FTM2_CH1    PTA11       //PTA11、PTB19


//正交解码模块通道  端口          可选范围              建议
#define FTM1_QDPHA  PTA12       //PTA8、PTA12、PTB0
#define FTM1_QDPHB  PTA13       //PTA9、PTA13、PTB1

#define FTM2_QDPHA  PTA10       //PTA10、PTB18
#define FTM2_QDPHB  PTA11       //PTA11、PTB19
这里只有三个
回复 支持 反对

使用道具 举报

发表于 2015-4-17 15:51:31 | 显示全部楼层
1109242278 发表于 2015-3-2 15:02
FX的性能更好(标准频率150M),flash更大(1M),RAM更大(128K+16K),而且多了一个FTM模块(4个FTM模块 ...

你的库版本不是最新的吧,是5.2的才有写FTM3

回复 支持 反对

使用道具 举报

发表于 2015-5-14 11:28:58 | 显示全部楼层
山外メ雲ジ 发表于 2014-3-15 12:59
用示波器测测PWM正不正常。

山外哥,我把pwm的精度有100改到1000,改了之后电机转的好慢,而且有个方向他不转了(直立车),100的时候没事的
回复 支持 反对

使用道具 举报

发表于 2015-5-14 13:46:59 | 显示全部楼层
pitceixbuj 发表于 2015-5-14 12:23
你没改好,要函数调用也要改。

ftm初始化还是调节pwm占空比函数
回复 支持 反对

使用道具 举报

发表于 2015-11-5 23:41:37 | 显示全部楼层
学习了
回复 支持 反对

使用道具 举报

发表于 2016-3-30 13:31:29 | 显示全部楼层
淡淡的
回复 支持 反对

使用道具 举报

发表于 2016-5-29 09:47:46 来自手机 | 显示全部楼层
山外哥,我的PWM在200HZ时候,输出波形类似于个脉冲,但是频率到了20000HZ,他就是方波了,我是kl26,怎么办呀,用的山外库
回复 支持 反对

使用道具 举报

发表于 2016-6-17 18:57:05 | 显示全部楼层
本帖最后由 孤行5201314 于 2016-6-17 19:13 编辑

有时候会出现pwm超出100%的断言,有时候不会。同一个程序。这是什么情况啊

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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