单片机产生pwm脉冲波频率范围如何计算
2个回答
2018-04-09 · 知道合伙人互联网行家
关注
展开全部
看了下你的控制周期的函数,pwm是周期还是占空比?
只需要一个定时器就可以了
void timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(ZQ)// 周期
{
ZQ--;
if(ZKB)//占空比
{
ZKB--;
IO = 1;//控制占空比的单片机输出口
}
else IO = 0;
}
else
{
ZQ=100;//如果你需要ZQ和ZKB可调可以定义一个变量a,b;ZQ=a;ZKB=b;
ZKB=30;//注意ZKB要小于ZQ
}
}
只需要一个定时器就可以了
void timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(ZQ)// 周期
{
ZQ--;
if(ZKB)//占空比
{
ZKB--;
IO = 1;//控制占空比的单片机输出口
}
else IO = 0;
}
else
{
ZQ=100;//如果你需要ZQ和ZKB可调可以定义一个变量a,b;ZQ=a;ZKB=b;
ZKB=30;//注意ZKB要小于ZQ
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询