新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > stc單片機(jī)可調(diào)PWM程序

stc單片機(jī)可調(diào)PWM程序

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

下面這個程序是應(yīng)用在stc12c2052ad上的pwm程序,測試成功

#includereg52.h>sfr CCON =0xD8;    //PCA  control registersfr 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;  //使用系統(tǒng)時鐘,時鐘輸入源頻率fosc/2。PWM頻率=fosc/2/256/************************************7      6       5       4       3       2        1      0 CIDL    -       -       -      cps2    CPS1     CPS0   ECFCIDL: =0時,空閑模式下PCA計數(shù)器繼續(xù)工作;=1時,空閑模式下PCA計數(shù)器停止工作。CPS2,CPS1,CPS0:PCA計數(shù)脈沖選擇。010,定時器0的溢出,可以實(shí)現(xiàn)可調(diào)頻率的PWM輸出。ECF: =1時,使能寄存器CCON  CF位的中斷;=0時,禁止該功能。***************************************/CL=0x00;CH=0x00;CCAP0L=0xc0; //當(dāng)CL小于CCAP0L時,輸出為低;大于時,輸出為高。CCAP0H=0x7f; //當(dāng)CL由ff變?yōu)?0溢出時,CCAP0H裝載到CCAP0L中,實(shí)現(xiàn)無干擾的更新PWM。CCAP1L=0xc0; //當(dāng)CL小于CCAP1L時,輸出為低;大于時,輸出為高。CCAP1H=0xc0; //當(dāng)CL由ff變?yōu)?0溢出時,CCAP1H裝載到CCAP1L中,實(shí)現(xiàn)無干擾的更新PWM。CCAPM0=0X42; //使能PWM模式,PWM0=1,ECOM0=1CCAPM1=0X42; //使能PWM模式,PWM1=1,ECOM1=1CR=1;      //啟動PCA計數(shù)器while(1) {CCAP0H=RF4432_TxRxBuf[4];   //此處改變CCAP1H=RF4432_TxRxBuf[5];CCAP2H=RF4432_TxRxBuf[6]/2.5;};}

pwm相關(guān)文章:pwm是什么


單片機(jī)相關(guān)文章:單片機(jī)教程


單片機(jī)相關(guān)文章:單片機(jī)視頻教程


單片機(jī)相關(guān)文章:單片機(jī)工作原理


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


塵埃粒子計數(shù)器相關(guān)文章:塵埃粒子計數(shù)器原理


關(guān)鍵詞: stc單片 可調(diào)PWM 占空比

評論


相關(guān)推薦

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

關(guān)閉