|
附一個(gè)PIC單片機(jī)的程序,建議看PIC單片機(jī)datasheet進(jìn)行理解,datasheet有PWM設(shè)置步驟解說(shuō).
/*該程序用于使CCP1 模塊產(chǎn)生分辨率為10 位的PWM 波形,占空比為50%*/
/*CCP1 模塊的PWM 工作方式初始化子程序*/
void CCP1INIT()
{
CCPR1L=0X7F;
CCP1CON=0X3C; /*設(shè)置CCP1 模塊為PWM 工作方式,且其工作
*循環(huán)的低2 位為11,高8 位為01111111=7F*/
INTCON=0X00; /*禁止總中斷和外圍中斷*/
PR2=0XFF; /*設(shè)置PWM 的工作周期*/
TRISC=0XFB; /*設(shè)置CCP1 引腳為輸出方式*/
}
/*主程序*/
main()
{
CCP1INIT(); /*CCP1模塊的PWM 工作方式初始化*/
T2CON=0X04; /*打開(kāi)TMR2,且使其前分頻為0,
*同時(shí)開(kāi)始輸出PWM 波形*/
do
{
單片機(jī)學(xué)習(xí)指南資料提供:上海齊濟(jì)電子有限公司
.8.
;
}while(1); /*系統(tǒng)開(kāi)始輸出PWM 波形。如果系統(tǒng)是
*多任務(wù)的,則可以在此執(zhí)行其它任務(wù),而
*不會(huì)影響PWM 波形的產(chǎn)生*/
} |
|