找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 350|回复: 5
打印 上一主题 下一主题
收起左侧

求程序 控制51单片机LED的亮暗渐变

[复制链接]
跳转到指定楼层
楼主
ID:1104828 发表于 2023-12-18 10:32 来自手机 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
由于本论坛禁止直接求程序,禁止伸手党,所以向大家请教一下大致的实现方法与思路,理清头绪后我自己来写程序去实现,谢谢大家

按一下独立按键之后,p2口的LED灯亮度减半,再按下一次亮度再减半,依次减半直至熄灭
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1104828 发表于 2023-12-18 10:36 来自手机 | 只看该作者
可不可以把代码写一下
回复

使用道具 举报

板凳
ID:1057978 发表于 2023-12-19 08:26 | 只看该作者
实现你这个想法得用PWM吧,按键控制占空比,初始占空比100%,按一次变为50%,再按一次变为25%。
不过应该根据实际效果调整占空比,100-50-25-12.5估计不太行,得实测
回复

使用道具 举报

地板
ID:1102147 发表于 2023-12-19 09:08 | 只看该作者
利用100HZ无闪烁的视觉暂留原理,10ms为一个点亮周期,1ms为一个周期内点亮的次数。通过控制一个周期内的十次点亮选择来控制亮度
回复

使用道具 举报

5#
ID:739610 发表于 2023-12-19 10:00 | 只看该作者
调整数码管的刷新频率 100为上限 按比例调整 多试验一下
回复

使用道具 举报

6#
ID:1104828 发表于 2023-12-19 10:20 来自手机 | 只看该作者
wangxiangtan 发表于 2023-12-19 08:26
实现你这个想法得用PWM吧,按键控制占空比,初始占空比100%,按一次变为50%,再按一次变为25%。
不过应该 ...

对,我就差这一步了,我设了一个time函数
LED=0
Delay(time)
LED=1
Delay(100-time)
if(P3_0==0){time-=10}
但是放在while循环里面,它就会变成呼吸灯,我想让他每按下一次独立按键,亮度就会减小,可以观察用独立按键观察这个过程,而不是自主完成的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表