详细注解的PWM c程序初学者适用
void zhankongbi()
{
pulse_width=pulse_width_MIN;
while(1)
{
st();
if(state==0)
{
pulse_width+=step;
}
if(state==1)
{
pulse_width-=step;
}
CCAP0H=pulse_width; // 模块0站空比的比较值
CCAP1H=pulse_width; // 模块1站空比的比较值
delay1ms(1000);
}
}
void delay1ms(unsigned int TIME)
{
for(i=0;i
for(j=0;j400;j++)
{;}
}
void st()
{
if(pulse_width==pulse_width_MIN)
state=0;
if(pulse_width==pulse_width_MAX)
state=1;
}
程序功能说明程序在P3.7和P3.5都输出3.9k的PWM信号其脉冲宽度从6.25% 慢慢递增到93.75%然后在从93.75%递减到6.25%程序完全由本人自己写的,非网摘。这也是本人自己写的第一个比较完善的程序,现分享给大家,希望给有心学习的初学者!~
pwm相关文章:pwm原理
评论