中易网

请问单片机一个按键怎么控制两个口的PWM输出呢?并且第二个在第一个高电平期间就变成高电平

答案:4  悬赏:40  
解决时间 2021-01-16 05:09
  • 提问者网友:世勋超人
  • 2021-01-15 19:47
请问单片机一个按键怎么控制两个口的PWM输出呢?并且第二个在第一个高电平期间就变成高电平
最佳答案
  • 二级知识专家网友:酒醒三更
  • 2021-01-15 20:56
这是一个 PWM 的仿真实例,输出3个相位不同的 PWM,可以用按键调节PWM的占空比。


全部回答
  • 1楼网友:从此江山别
  • 2021-01-15 22:32
画个时序图什么的吧,不然不清楚你说要达到的效果啊
追问:



追答:if(key)

ena=0;
num++;
if(num>20&&num<60)
in1=0;
else
in1=1;
if(num>40&&num<80)
in2=0;
else
in2=1;
if(num==100)
num=0;

随便写了个,IO口你自己定吧,这个放中断里面,时间你自己定,到底给1有效给0有效我也不知道反正你自己改吧
  • 2楼网友:等灯
  • 2021-01-15 21:32
没看懂你要表达什么意思。
追问:就是单片机连接驱动模块,in1=P1.7,in2=P1.5,ena=P1.6.按键是P3.7,按一下按键,in1和in2发出相同的脉冲,只是in2比in1晚了一点,两个相位交错。就是这样的,该怎么用C写呢?我只是知道用中断,但是具体的写不出来。求指教
追答:说的就是两个输出一直是相反的是吧,这个你设个初始值一个为0,一个为1,在周期内不停取反就可以了,不需要什么按键啊。
  • 3楼网友:低血压的长颈鹿
  • 2021-01-15 21:09
程序控制啊
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息