• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

51单片机pwm怎么设置用按键 进行调节占空比

120fcfd46fb9900c 2019-07-24 浏览量:4053

51单片机pwm怎么设置用按键 进行调节占空比

定时器的的pwm我看啦一下还行;但是在进行按键调节我就搞蒙啦

有没有大佬解答一下,小白:谢谢

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 51 输出PWM,不知具体是应用一个定时器还是2个定时器?对于一个定时器的话,其输出PWM的原理是:应用定时器产生一个时间基准t,并假设你所需要的PWM的周期和占空比分别是T和D,这里某个引脚输出高电平持续时间是n个t则有n*t=D*T在定时器中断中有个变量time(0<n<T/t)对时间基准进行计数,当time》n引脚输出低电平,当time<n时输出高电平,通过按键控制全局变量的值即可以控制占空比。

    对于2个定时器,T0控制周期频率,T1控制占空比,在T0 的中断处理函数中让IO口输出高电平同时启动T1,在T1的中断处理函数中让该IO口输出低电平,这样通过按键改变T1的初值即可以控制占空比,注意中断优先级。

    • 发布于 2019-07-25
    • 举报
    • 评论 0
    • 1
    • 0

其他答案 数量:9
  • 按你说的,你用的应该是硬件PWM定时器,肯定有 周期寄存器和占空比寄存器。 周期寄存器确定PWM周期,调节占空比直接修改 占空比寄存器的值就可以。 占空比的范围是 最大为 周期值,就是满输出。
    • 发布于2019-07-25
    • 举报
    • 评论 0
    • 0
    • 0

  • pwm占空比调节实质是调整某个变量的值(计数值),从而实现计数范围内置位,再和固定的计数周期一起就完成占空比调节。

    所以按钮调节其实就是增减这个变量而已。

    这样就简化了处理。

    • 发布于2019-07-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 按键后处理PWM的值 比如按一下按键PWM等于10 按两下按键PWM等于20 以此类推
    • 发布于2019-07-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 检测到按键按下时,改变一个全局变量。定时器里用过这个全局变量输出占空比。
    • 发布于2019-07-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个是有一个寄存器了,我忘了,改变寄存器的值就可以的,你在按键处理程序里改变寄存器的值就可以的,可以调节的范围是0-255,你可以设定其中的任意值,但是最高和最低会输出恒定值,这个需要你注意下,详细可以参照stc的手册
    • 发布于2019-07-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 像这些调节的动作,最好放在主循环里面进行,然后用一个变量来记录当前的占空比,每次调节的时候,先停止当前的PWM输出,然后改占空比,然后再重新设置定时器
    • 发布于2019-07-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 51单片机好多没有片内的PWM模块,因此想要实现PWM调整必须使用定时器,通过按键改变定时器的预装初值改变频率,改变计数值来改变占空比
    • 发布于2019-07-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 按键调节最好先接个串口看下数据对不就是数值的变化
    • 发布于2019-07-31
    • 举报
    • 评论 0
    • 0
    • 0

  • 这种可以用按键修改你的定时器重置值,这样的话达到修改占空比的效果
    • 发布于2019-08-10
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

51单片机pwm怎么设置用按键 进行调节占空比