微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > PIC16F877A例程---PWM(2)

PIC16F877A例程---PWM(2)

时间:11-24 来源:互联网 点击:
#include

//------------------------------------------------------------
//使用PIC16F887芯片,输出50khz占空比50%的方波
//------------------------------------------------------------
//系统配置
//__CONFIG(HS&PWRTEN&BOREN&PROTECT&WDTDIS);
__CONFIG(INTIO & WDTDIS & PWRTEN & MCLRDIS & UNPROTECT & BORDIS & LVPDIS & IESODIS & FCMDIS);

//-------------中断服务程序------------------------------------
void interrupt isr()
{
if(TMR2IE==1&&TMR2IF==1)
{

TMR2IF=0;
}
}

void SpwmInit()
{
OSCCON=0x7f;//using inner 8M osc
TRISC1=1;
TRISC2=1;
//TRISD = 0;
PR2=0x27;
CCP1CON=0x0f|0x00;
CCPR1L=0x14;
TMR2IF=0;
T2CON=0;
GIE=0;
TMR2IE=1;
PEIE=1;
TMR2ON=1;
}

main()
{

SpwmInit();
TRISC1=0;
TRISC2=0;
while(1)
{;}
}

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

网站地图

Top