📄 pwm.c
字号:
/*********************************************
example program for PIC download board
16F877A @3.6864MHz
test ccp1 pwm
www.mcufan.com
*********************************************/
#include <pic.h>
#include <pic1687x.h>
/*该程序用于使CCP1模块产生分辨率为10位的PWM波形,占空比为50%*/
__CONFIG(WDTDIS & HS & LVPDIS & DEBUGDIS);
/*CCP1模块的PWM工作方式初始化子程序*/
void CCP1INIT()
{
CCPR1L=0X3F;
CCP1CON=0X3C; /*设置CCP1模块为PWM工作方式,且其工作
*循环的低2位为11,高8位为01111111=7F*/
INTCON=0X00; /*禁止总中断和外围中断*/
PR2=0XFF; /*设置PWM的工作周期*/
TRISC=0XFB; /*设置CCP1引脚为输出方式*/
}
/*主程序*/
main()
{
CCP1INIT(); /*CCP1模块的PWM工作方式初始化*/
T2CON=0X04; /*打开TMR2,且使其前分频为1,
*同时开始输出PWM波形*/
do
{
;
}while(1); /*系统开始输出PWM波形。如果系统是
*多任务的,则可以在此执行其它任务,而
*不会影响PWM波形的产生*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -