欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

stc可調PWM程序

作者:佚名   來源:本站原創   點擊數:  更新時間:2011年01月31日   【字體:

下面這個程序是應用在stc12c2052ad上的pwm程序,測試成功

#include<reg52.h>


sfr CCON =0xD8;    //PCA  control register
sfr CMOD =0xD9;
sfr CL   =0xe9;
sfr CH   =0xF9;
sfr CCAP0L=0xea;
sfr CCAP1L=0xeb;
sfr CCAP0H=0xfa;
sfr CCAP1H=0xfb;
sfr CCAPM0=0xda;
sfr CCAPM1=0xdb;

sbit CR=0xde; //位尋址

void main(void)
{
  CMOD=0x02;  //使用系統時鐘,時鐘輸入源頻率fosc/2。PWM頻率=fosc/2/256
            /************************************
    7      6       5       4       3       2        1      0 
   CIDL    -       -       -      cps2    CPS1     CPS0   ECF
                        
            CIDL: =0時,空閑模式下PCA計數器繼續工作;=1時,空閑模式下PCA計數器停止工作。
            CPS2,CPS1,CPS0:PCA計數脈沖選擇。010,定時器0的溢出,可以實現可調頻率的PWM輸出。
             ECF: =1時,使能寄存器CCON  CF位的中斷;=0時,禁止該功能。
   ***************************************/
  CL=0x00;
  CH=0x00;
  CCAP0L=0xc0; //當CL小于CCAP0L時,輸出為低;大于時,輸出為高。
  CCAP0H=0x7f; //當CL由ff變為00溢出時,CCAP0H裝載到CCAP0L中,實現無干擾的更新PWM。
  CCAP1L=0xc0; //當CL小于CCAP1L時,輸出為低;大于時,輸出為高。
  CCAP1H=0xc0; //當CL由ff變為00溢出時,CCAP1H裝載到CCAP1L中,實現無干擾的更新PWM。
  CCAPM0=0X42; //使能PWM模式,PWM0=1,ECOM0=1
  CCAPM1=0X42; //使能PWM模式,PWM1=1,ECOM1=1
  CR=1;      //啟動PCA計數器
  while(1) 
  {
    CCAP0H=RF4432_TxRxBuf[4];   //此處改變占空比
 CCAP1H=RF4432_TxRxBuf[5];
 CCAP2H=RF4432_TxRxBuf[6]/2.5;
  };
}
關閉窗口

相關文章