微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > DSP学习交流 > 28335的中断函数里面如何用输入电压控制pwm占空比

28335的中断函数里面如何用输入电压控制pwm占空比

时间:10-02 整理:3721RD 点击:
新人在做一个ad采集电压并用pwm波输出的一个程序,现已将ad模块和pwm模块设置好了,想在ad中断函数里面写入采集的电压来控制pwm波的占空比,但总是写的不合适,想请大神们给点建议。

你可以把你写的不合适的代码上传上来给其他工程师看一下,好让别人找到你的问题出在哪。

__interrupt void  adc_isr(void)
{
  Vi[ii] =(((float)AdcRegs.ADCRESULT0)*3/65520);
if(ii == 10)
    {
         ii = 0;
         Vaverage=0;
         for(jj=0;jj =300)uk=300;
                           if(uk<=0)uk=0;
                          uk1=uk;
                           D1=uk;
                  //EPwm4Regs.CMPA.half.CMPA=D1;//逆变桥是低有效,D的值越大,

    }
ii++;
  // Reinitialize for next ADC sequence
  AdcRegs.ADCTRL2.bit.RST_SEQ1 = 1;         // Reset SEQ1
  AdcRegs.ADCST.bit.INT_SEQ1_CLR = 1;       // Clear INT SEQ1 bit
  PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;   // Acknowledge interrupt to PIE
  return;
}
这是adc的中断函数处
   kk=ii=0;
   Uinput=8;
   kp1=0.1;ki1=0.3;
   kp2=0.1;ki2=0.3;
   ek=ek1=0;
   uk=0;
   uk1=250;
   Iinput=0.5;
这是参数
但是我不想用pi控制
有没有什么方法能把电压和占空比联系起来的

AD采样电路,根据AD值计算PWM时间

这个有想过,但是不知道怎么把这个值跟pwm的时间,频率或者占空比联系起来

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top