[技术问答] 请教MS51FB9AE PWM的设定问题

[复制链接]
1652|5
 楼主| bensonsu 发表于 2022-3-31 10:32 | 显示全部楼层 |阅读模式
有个案子准备用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,载入新值
Capture.JPG
 楼主| bensonsu 发表于 2022-3-31 13:16 | 显示全部楼层
jasontu 发表于 2022-3-31 10:41
pwm里面有个lload暂存器要设1,载入新值

set_PWMCON0_LOAD;
谢谢,是的,附了值要重新加载一下
carpsnow 发表于 2022-4-22 17:55 | 显示全部楼层
这是个小细节么
skyred 发表于 2022-4-24 17:41 | 显示全部楼层
jasontu 发表于 2022-3-31 10:41
pwm里面有个lload暂存器要设1,载入新值

nice!!!!
asmine 发表于 2022-6-12 14:13 | 显示全部楼层
不错,学习了~
调试的时候注意一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

9

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部