智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 7554|回复: 13
打印 上一主题 下一主题

[控制类] 产生20ms周期的PWM波,错误,PWM波的周期如何设定?

  [复制链接]

3

主题

31

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
334
威望
270
贡献
52
兑换币
0
注册时间
2010-1-16
在线时间
6 小时
跳转到指定楼层
1#
发表于 2010-4-18 18:45:57 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
1贡献
我用示波器检测出来我的PWM波的周期是60ms,为什么呀?PWM波的周期如何计算呢?望给出事例......



void PLL_Init(void)      //PLLCLK=2*OSCCLK*(SYNR+1)/(REFDV+1)
{                                 //锁相环时钟=2*16*(2+1)/(1+1)=48MHz
  REFDV=1;                 //总线时钟=48/2=24MHz
  SYNR=2;
  while(!(CRGFLG&0x08));
  CLKSEL=0x80;        //选定锁相环时钟
}
void PWM(void)
{
    PWME=0;
    PWMPRCLK=3;          //24M总线时钟8分频,得3M
    PWMSCLA=150;       //SA=A/2/150=10K
    PWMCLK_PCLK0=1;  //选SA
    PWMPOL_PPOL0=1;
    PWMCAE_CAE0=0;
    PWMPER0=200;       //10k/200=50Hz=20ms
    PWMDTY0=100;
   PWME=1;
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-6-18 03:57 , Processed in 0.239415 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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