打印
[新唐博主]

请教MS51FB9AE PWM的设定问题

[复制链接]
1300|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
有个案子准备用MS51FB9AE来开发,目前在调试PWM,但是我自动调节它调不了,送固定值是可以的,非常诡异的事情!请教大神,不知是哪里出的问题?

以下是PWM的初始化,
void SysInti(void)
{  P12_PUSHPULL_MODE;  PWM2_P10_OUTPUT_ENABLE;
/**********************************************************************
  PWM frequency = Fpwm/((PWMPH,PWMPL) + 1) <Fpwm = Fsys/PWM_CLOCK_DIV>
                = (16MHz/8)/(0x7CF + 1)
                = 1KHz (1ms)
***********************************************************************/       
        PWM_IMDEPENDENT_MODE;
        PWM_CLOCK_DIV_8;
        PWMPH = 0x07;
        PWMPL = 0xCf;  //1Khz
        /*-------- PWM start run--------------*/
        set_PWMCON0_LOAD;
        set_PWMCON0_PWMRUN;
}



void main(void)
{

        SysInti();
  while(1){
                Delay(200);
                if(PWMData<2000)PWMData+=100; else PWMData=100;
                PWM2H=PWMData/256;
                PWM2L=PWMData;
        }

}


void Delay(uint16_t x)
{
        uint16_t i,j;       
        for(i=0;i<x;i++){
         for(j=0;j<1000;j++){;}
}



使用特权

评论回复
沙发
jasontu| | 2022-3-31 10:41 | 只看该作者
pwm里面有个lload暂存器要设1,载入新值

使用特权

评论回复
板凳
bensonsu|  楼主 | 2022-3-31 13:16 | 只看该作者
jasontu 发表于 2022-3-31 10:41
pwm里面有个lload暂存器要设1,载入新值

set_PWMCON0_LOAD;
谢谢,是的,附了值要重新加载一下

使用特权

评论回复
地板
carpsnow| | 2022-4-22 17:55 | 只看该作者
这是个小细节么

使用特权

评论回复
5
skyred| | 2022-4-24 17:41 | 只看该作者
jasontu 发表于 2022-3-31 10:41
pwm里面有个lload暂存器要设1,载入新值

nice!!!!

使用特权

评论回复
6
asmine| | 2022-6-12 14:13 | 只看该作者
不错,学习了~
调试的时候注意一下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

9

帖子

0

粉丝