智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1608|回复: 0
打印 上一主题 下一主题

[编程类] 求助!为什么我的pwm口输出波形的频率老不对》《

[复制链接]

12

主题

41

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
279
威望
162
贡献
55
兑换币
86
注册时间
2013-4-23
在线时间
31 小时
毕业学校
北京交通大学
跳转到指定楼层
1#
发表于 2013-5-12 14:14:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1贡献
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */
void SetBusCLK_40M(void)
{   
    CLKSEL=0X00;                //disengage PLL to system
    PLLCTL_PLLON=1;            //turn on PLL
    SYNR =0xc0 | 0x04;                       
    REFDV=0x80 | 0x01;  
    POSTDIV=0x00;       //pllclock=2*osc*(1+SYNR)/(1+REFDV)=80MHz;
    _asm(nop);          //BUS CLOCK=40M
    _asm(nop);
    while(!(CRGFLG_LOCK==1));      //when pll is steady ,then use it;
    CLKSEL_PLLSEL =1;                //engage PLL to system;  
}
void main(void)
{
   void SetBusCLK_40M();
   PWME_PWME0=0;
   PWMPRCLK=0X77;  /*设置AB时钟为总线时钟/128*/
   PWMSCLB=0X00;   /*设置SB时钟频率为B/512*/
   PWMSCLA=0X00;   /*设置SA时钟频率为A/512*/
/*此时SA或者SB为610HZ   周期为1.6ms*/
   PWMCAE=0Xff;
   PWMPOL=0Xff;
   PWMPER0=0X7A;
   PWMDTY0=0X3D;
   PWME_PWME0=1;
}

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

本版积分规则

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

GMT+8, 2024-12-26 02:18 , Processed in 0.201480 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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