czlwf 发表于 2023-4-26 08:54:58

关于PWM的小白问题

本人刚接触单片机,根据网站的屠龙刀教学视频在学习,在学习PWM时刚好要用到和例程《098-高级PWM定时器-输入捕获-PWM输入信号测量模式-测脉冲高电平宽度(占空比)-MAX7219数码管》中差不多的要求,于是做了修改,具体需求是,读取2路PWM信号的高电平宽度(P1.0,P1.4),做一定比例的计算后直接给2路PWM输出(P2.0,P2.1),使用STC32G8K64-BETA,实际做好后,当不接入外部PWM时,2个PWM直接就输出高电平,不知道怎么改程序,请老师指导一下,程序如下图

梁工 发表于 2023-4-27 15:43:39

没有检测到输入的PWM信号,就将输出PWM占空比设置为0即可。

czlwf 发表于 2023-4-27 16:40:32

梁工 发表于 2023-4-27 15:43
没有检测到输入的PWM信号,就将输出PWM占空比设置为0即可。

感谢梁工的回复,我就是不知道怎么检测PWM有没有输入,我在程序中写的是   if(capa ==0) duty1=0,updateduty=1,但是这么写与if(capa<1500)打架了,量一下输出PWM还是高电平,请您指导一下

梁工 发表于 2023-4-28 11:26:19

czlwf 发表于 2023-4-27 16:40
感谢梁工的回复,我就是不知道怎么检测PWM有没有输入,我在程序中写的是   if(capa ==0) duty1=0,updated ...

简单,设置超时,比如超过2个PWM周期都检测不到边沿,则超时,此时判断输入是高电平(100%占空比)则输出PWM=100%,低电平则PWM=0%
页: [1]
查看完整版本: 关于PWM的小白问题