一個關(guān)于PWM的小程序,用在PIC16F877A上
/*該程序用于使CCP1模塊產(chǎn)生分辨率為10位的PWM波形,占空比為50%*/
本文引用地址:http://2s4d.com/article/148414.htm#include p18f458.h
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; /*打開TMR2,且使其前分頻為0,
*同時開始輸出PWM波形*/
do
{
;
}while(1); /*系統(tǒng)開始輸出PWM波形。如果系統(tǒng)是
*多任務(wù)的,則可以在此執(zhí)行其它任務(wù),而
*不會影響PWM波形的產(chǎn)生*/
}
pwm相關(guān)文章:pwm是什么
pwm相關(guān)文章:pwm原理
評論