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

PWM初始化,PWM0占空比設(shè)置函數(shù)

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2013年11月05日   【字體:

/*********************************************************************************************
函數(shù)名:PWM初始化函數(shù)
調(diào)  用:PWM_init();
參  數(shù):無
返回值:無
結(jié)  果:將PCA初始化為PWM模式,初始占空比為0
備  注:需要更多路PWM輸出直接插入CCAPnH和CCAPnL即可
/**********************************************************************************************/
void PWM_init (void){
CMOD=0x02; //設(shè)置PCA定時器
  CL=0x00;
  CH=0x00;
 CCAPM0=0x42; //PWM0設(shè)置PCA工作方式為PWM方式(0100 0010)
  CCAP0L=0x00; //設(shè)置PWM0初始值與CCAP0H相同
  CCAP0H=0x00; // PWM0初始時為0

 //CCAPM1=0x42; //PWM1設(shè)置PCA工作方式為PWM方式(使用時刪除//)
 //CCAP1L=0x00; //設(shè)置PWM1初始值與CCAP0H相同
  //CCAP1H=0x00; // PWM1初始時為0

 //CCAPM2=0x42; //PWM2設(shè)置PCA工作方式為PWM方式
 //CCAP2L=0x00; //設(shè)置PWM2初始值與CCAP0H相同
  //CCAP2H=0x00; // PWM2初始時為0

 //CCAPM3=0x42; //PWM3設(shè)置PCA工作方式為PWM方式
 //CCAP3L=0x00; //設(shè)置PWM3初始值與CCAP0H相同
  //CCAP3H=0x00; // PWM3初始時為0

  CR=1; //啟動PCA定時器
}
/**********************************************************************************************/

/*********************************************************************************************
函數(shù)名:PWM0占空比設(shè)置函數(shù)
調(diào)  用:PWM0_set();
參  數(shù):0x00~0xFF(亦可用0~255)
返回值:無
結(jié)  果:設(shè)置PWM模式占空比,為0時全部高電平,為1時全部低電平
備  注:如果需要PWM1的設(shè)置函數(shù),只要把CCAP0L和CCAP0H中的0改為1即可
/**********************************************************************************************/
void PWM0_set (unsigned char a){
 CCAP0L= a; //設(shè)置值直接寫入CCAP0L
  CCAP0H= a; //設(shè)置值直接寫入CCAP0H
}
/**********************************************************************************************/

關(guān)閉窗口

相關(guān)文章