微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > CCP1模块产生分辨率为10位的PWM波形的程序

CCP1模块产生分辨率为10位的PWM波形的程序

时间:12-31 来源:互联网 点击:

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

#include"p18f458.h"

/*CCP1模块的PWM工作方式初始化子程序*/
/* http://www.51hei.com提供此单片机程序*/
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波形的产生*/
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top