在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      89C52 PWM輸出程序

      作者: 時間:2012-10-30 來源:網(wǎng)絡(luò) 收藏

      #include reg52.h> //Keil header file name
      #include "use.h"
      #include "Ver.h"

      //extern void LedOut(unsigned char *pLed);
      #define Pmax 55000 //55000 //42666(18.4320)
      #define Ki 2.2 //i=2

      //----------------------------
      sbit PwinPin=P3^5;
      //----------------------------

      typedef union
      {
      unsigned int Pwm; //pwm的數(shù)據(jù)
      unsigned char PwmUse[2]; //[0]=H;[1]=L
      };

      //----------------------------
      PwmData;
      unsigned int PwmBak;
      //----------------------------
      unsigned char PwmF=0; //輸出的1,0的標(biāo)志
      /*****************************************
      計算,輸出
      t0=T50ms(b0/[fs-fo]+Sgn(U)*20%+a1
      ;T50ms=Pwm50+Ah
      ;B0fo=>0V;Must Bo In(Fo-Fs)
      *******************************************/
      void PwmOut(void)
      {
      float Pwm,i,k,j;
      k=Pmax+(Mp1.AH+OminH)*Ki;
      i=(PminL+Mp1.AL)*Ki;

      //----------------------------
      //LedOut(LedBuf); //LED顯示輸出
      //----------------------------
      j=(LedMenu.B-Mp1.Fo)/(Mp1.Fs-Mp1.Fo);
      if(j0) j=0;
      if(j>1) j=1;
      Pwm=j*k; //Bo/(Fs-Fo)*Pk
      j=Pwm*0.8+k*0.2+i; //先計算
      if(Mp1.U==1) {Pwm=j;}
      else Pwm=Pwm+i;
      TR0=0;
      PwmBak=(unsigned int)Pwm; //更新數(shù)據(jù)
      TR0=1;
      }
      //-------------------------------
      void Init_Pwm(void)
      {
      PwmData.Pwm=0;
      PwmPin=0; //輸出0 (地點(diǎn)平)
      // PwmOut();
      }
      //定時器0 中斷處理 pwmout()
      void T0_Do(void) interrupt 1{
      TR0=0;
      if(PwmF==0) //輸出高電平
      {
      PwmData.Pwm=-PwmBak;
      TH0=PwmData.PwmUse[0];
      TL0=PwmData.PwmUse[1];
      PwmPin=1; //0 輸出
      PwmF=1;
      }else{
      PwmData.Pwm=-PwmData.Pwm;
      TH0=PwmData.PwmUse[0];
      TL0=PwmData.PwmUse[1];
      PwmPin=0; //1 輸出
      PwmF=0;
      }
      TR0=1;
      }

      pwm相關(guān)文章:pwm原理




      關(guān)鍵詞: 89C52 PWM 輸出程序

      評論


      技術(shù)專區(qū)

      關(guān)閉