pic单片机pwm模块应用实验程序

pic单片机pwm模块应用实验程序

ID:27681197

大小:61.00 KB

页数:7页

时间:2018-12-05

pic单片机pwm模块应用实验程序_第1页
pic单片机pwm模块应用实验程序_第2页
pic单片机pwm模块应用实验程序_第3页
pic单片机pwm模块应用实验程序_第4页
pic单片机pwm模块应用实验程序_第5页
资源描述:

《pic单片机pwm模块应用实验程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、PIC单片机PWM模块应用实验程序旧期:2009-11-11][来源沐站编辑作者:admin][字体:大中小](投递新闻)PIC单八机PWM模块应川实验程序#include////使用PIC16F887芯片,输出50khz占空比50%的方波////系统配置//_CONFIG(HS&PWRTEN&BOREN&PROTECT&WDTDIS);_CONFIG(INTIO&WDTDIS&PWRTEN&MCLRDIS&UNPROTECT&BORDIS&LVPDIS&IESODIS&FCMDIS);//中断服务程序voidinterr

2、uptisr(){if(TMR2IE==1&&TMR2IF二二1){TMR2IF=0;}}voidSpwmlnit(){OSCCON=Ox7f;//usinginner8MoscTRISC1=1;TRISC2=1;//TRISD=0;PR2=0x27;CCPlCON=OxOflOxOO;CCPRlL=0xl4;TMR2IF=0;T2CON=0;GIE=0;TMR2IE=1;PEIE=1;TMR2ON=1;}main(){SpwmlnitO;TRISC1=O;TRISC2=0;while(l){;}}PIC单片机PWM#in

3、clude__CONFIG(WDTEN&IIS&PWRTEN&BORDIS&PROTECT);//设置配置位//WDTEN:enablewatchdogtimer//HS:highspeedcrystal/resonator//PWRTEN:poweruptimerenable//BORDIS:disablebrownoutreset//PROTECT:allmemorycodeisprotected#dcfincucharunsignedchar#defineuintunsignedintucharN;vo

4、idPWM_int();//PWM初始化函数;定时器2的设置;及PWM工作方式。未使用预分频;//程序说明,输出38KHz方波。占空比大约为50%voidPWM_int(){PR2=78;//设定PWM周期;采用12MHz的晶振;总的周期为(PR2+1)M*Tosc=316氺ToscCCPR1L=0x27;CCP1CON=0x0F;//设定为PWM模式;并设定占空比:DB9—-DB00010011110即为158*Tosc0x9e//TMR2=0;//TMR2赋初值;然后与PR2比较,;T2C0N=0x04;//T2C0N

5、:—T0UTPS3T0UTPS2T0UTPS1T0UTPS0TMR20NT2CKPS1T2CKPS0//0000100//Bit6—Bit3:TMR2输出后分频器选择位;从1:1—1:16;//TMR2ON:TMR2使能位;1:开启T2;0:关闭T2;//T2CKPS1T2CKPS0:TMR2输出前分频器选择位;1:1,1:4,1:16;共3种;//CCP1C0N=OxOF;//也可以改在后面设PWM工作模式;}//======================================================

6、=======voidmain(){PWM_int();while(1)PIC16F877A单片机的PWM功能说明:设置PWM操作通过以下步骤将CCP模块配置为PWM模式:1.写入PR2寄存器以设定PWM周期。2.写入DCxB9:DCxB0位以设置PWM占空比。3.将相应的TRIS位清零以将CCPx引脚设为输山。4.写入T2C0N以设置TMR2预分频比并使能Timer2。5.将CCP模块配置为PWM模式。程序:#include#defineuintunsignedint#defineucharunsigned

7、char_CONFIG(Ox3B31);voidinitPWM();voidDelay1ms(uinttime);/★★★★★★★★★★★★★★★★★★★★★★★★•A:************★*★★****主函数功能:PWM初始化,PWM占空比周期性变化voidmain(){uchari;initPWM();while(1)for(i=0;i<256;i++)CCPR1L=i;TMR20N=1;Delay"!ms(100);TMR2ON=0;}}/**★**★★****★***★*★******************

8、****************★★*******★★**★***函数功能:PWM初始化,设置PWM周期;PWM周期=[(PR2)+1]*4*TOSC*(TMR2预分频比)=(255+1)*4*(1/4000000)*16s=4.096msPWM占空比=(DCxB9:DCxB0)*Tosc*(TMR2预

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。