野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 21149|回复: 5

怎么才能得出需要的PWM频率?

[复制链接]
发表于 2013-8-18 15:55:27 | 显示全部楼层 |阅读模式
比如我要输出50Hz的频率,我需要修改例程中哪些参数?
  TIM_TimeBaseStructure.TIM_Period = 999;       //当定时器从0计数到999,即为1000次,为一个定时周期
  TIM_TimeBaseStructure.TIM_Prescaler = 0;            //设置预分频:不预分频,即为72MHz
  TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1 ;        //设置时钟分频系数:不分频
  TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;  //向上计数模式
  TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);//根据TIM_TimeBaseStructure里的值初始化TIM  
  TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;            //设定TIM的OC模式,配置为PWM模式1

是用72MHz/50Hz=1440000,TIM_Period=1000,TIM_Prescaler=1440000/TIM_Period =1440吗?如果不是该怎么算?
回复

使用道具 举报

发表于 2013-8-18 16:37:21 | 显示全部楼层
本帖最后由 ck1994 于 2013-8-18 16:42 编辑

你这个肯定不行,算是没错,但还有要配置通道,
  1.         TIM_OCInitStructure.TIM_OCMode          = TIM_OCMode_PWM1;                        
  2.         TIM_OCInitStructure.TIM_OutputState     = TIM_OutputState_Enable;
  3.         TIM_OCInitStructure.TIM_Pulse           = CCR1_Val;              
  4.         TIM_OCInitStructure.TIM_OCPolarity      = TIM_OCPolarity_High;   
  5.         TIM_OC1Init(TIM3,&TIM_OCInitStructure);                          
  6.         TIM_OC1PreloadConfig(TIM3,TIM_OCPreload_Enable);                 
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-18 20:59:22 | 显示全部楼层
ck1994 发表于 2013-8-18 16:37
你这个肯定不行,算是没错,但还有要配置通道,

亲,不要答非所问,我说的是怎么算出PWM而不是怎么配置通道,后面的都配置完整...
回复 支持 反对

使用道具 举报

发表于 2013-8-18 21:54:22 | 显示全部楼层
教程里已经解释啦:

时钟频率

时钟频率



你的理解正确,但在presaler成员里填的值应该是1439而不是1440~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-19 11:58:43 | 显示全部楼层
flyleaf 发表于 2013-8-18 21:54
教程里已经解释啦:

亲,这个是哪里的教程?麻烦发到我邮箱453107882@qq.com吧,零死角玩转stm32-中级篇里面根本没有说到这些东西哦,里面讲的东西太少了。
回复 支持 反对

使用道具 举报

发表于 2013-8-19 20:15:08 | 显示全部楼层
天狼星 发表于 2013-8-19 11:58
亲,这个是哪里的教程?麻烦发到我邮箱吧,零死角玩转stm32-中级篇里面根本没有说到这些东西哦,里面讲的 ...

这是我们《STM32库开发实战指南》的书稿,零死角里的内容都是从这书稿里抽出来的电子版,我忘记公布的零死角有没有介绍定时器这部分了,书稿的完整版出版社不让我们公布电子版,  支持我们,去买一本吧
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-20 17:58 , Processed in 0.030642 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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