一个关于PWM的小程序,用在PIC16F877A上

嵌入式系统 时间:2012-09-11来源:网络

/*该程序用于使CCP1模块产生分辨率为10位的PWM波形,占空比为50%*/

#include p18f458.h

/*CCP1模块的PWM工作方式初始化子程序*/

void CCP1INIT()

{

CCPR1L=0X7F;

CCP1CON=0X3C; /*设置CCP1模块为PWM工作方式,且其工作

循环的低2位为11,高8位为01111111=7F*/

INTCON=0X00; /*禁止总中断和外围中断*/

PR2=0XFF; /*设置PWM的工作周期*/

TRISC=0XFB; /*设置CCP1引脚为输出方式*/

}

/*主程序*/

main()

{

CCP1INIT(); /*CCP1模块的PWM工作方式初始化*/

T2CON=0X04; /*打开TMR2,且使其前分频为0,

*同时开始输出PWM波形*/

do

{

;

}while(1); /*系统开始输出PWM波形。如果系统是

*多任务的,则可以在此执行其它任务,而

*不会影响PWM波形的产生*/

}

关键词: 用在 PIC16F877A 程序 PWM 关于 一个

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章


用户评论

请文明上网,做现代文明人
验证码:
查看电脑版