sbit PWM=P1^0 //定义P1^0为输出端口
unsigned int pwm_h=2430,pwm //定义pwm信号中的高电平时间
范围 535< pwm_h <2430
bit fa
void Init_Timer0() //定时器初始化子程序
{
TMOD = 0x01
TH0 = 0x0FF
TL0 = 0x0F6
EA = 1
ET0 = 1
TR0 = 1 //定时器开唯码关打开
}
void main() //主函数猜山雀
{
Init_Timer0() //定时器初始化
PWM=0
while(1)
{
if(fa)
{
fa=0
pwm_h=20000-pwm_h
}
}
}
void Timer0() interrupt 1 using 1
{
TH0 =(-pwm_h)/256
// (65535-200) /256=0xff
TL0 =(-pwm_h)%256 //0.1ms一穗早个记时器周期
236 % 256 = 236
fa=1
PWM=~PWM
}
STC单片机程序怎么调整PWM的空占比,在初始化函数中 对 PWM 进行初始化后 就会有按照初始化世镇巧的 占空比输出了,需要调整占空比只要 PWM0 改变 CCAP0H 的值,PWM1 改变 CCAP1H 的值,就搜键可以了,如果不断地旅迟 改变 CCAPxH 的数字 PWMx 的输出 也会不断地 改变。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)