探讨下设计思路

[复制链接]
2908|18
 楼主| zaq9999 发表于 2008-7-2 15:57 | 显示全部楼层 |阅读模式
有4个LED

LED1.从亮到暗的渐变过程
LED2.从暗到亮的渐变过程
LED3.常亮
LED4.常亮

4个LED是同时工作的,都可用电位器调节最亮值,单片机带4路AD,带1路PWM,如何设计最合理
ayb_ice 发表于 2008-7-2 17:10 | 显示全部楼层

这就是PWM输出

只不过是占空比用AD来读电位器控制而已。
 楼主| zaq9999 发表于 2008-7-2 18:03 | 显示全部楼层

只有一路PWM哦。四个LED都要分别控制的呢

只有一路PWM哦。四个LED都要分别控制的呢
sodwell 发表于 2008-7-2 18:37 | 显示全部楼层

re

呵呵  一路PWM都可以不要,但是你得有定时器!
谈的元 发表于 2008-7-2 18:51 | 显示全部楼层

如果任务不多,定时器也可以不要

 楼主| zaq9999 发表于 2008-7-2 19:27 | 显示全部楼层

定时器

因为要实时检测电位器AD,但是时间又都耗在了渐变的延时过程中
渐变用while循环在做,没用定时器。渐变用定时器该怎么做?用定时器去检测AD
上面的兄弟说,定时器也可以不用,我不知道该怎么处理,任务没多少。就4个LED
NE5532 发表于 2008-7-2 20:12 | 显示全部楼层

直接写到超级循环里就可以了。

用时标的概念来写,几个事情串在一起做。
ayb_ice 发表于 2008-7-2 21:01 | 显示全部楼层

一个定时器可以轻松搞定几路PWM

不过频率一般不能太快,当然点亮LED是没有任何问题的。
 楼主| zaq9999 发表于 2008-7-2 22:04 | 显示全部楼层

7楼可以具体讲讲么

7楼可以具体讲讲么
平常人 发表于 2008-7-2 22:18 | 显示全部楼层

非常简单:把这个PWM的输出再接回单片机的某个输入端做为时

然后按照有定时器的方式去做就好了。
xwj 发表于 2008-7-2 22:26 | 显示全部楼层

笨,不要他的PWM,自己用定时器做软PWM

才4个LED,速度绝对不成问题
 楼主| zaq9999 发表于 2008-7-2 22:30 | 显示全部楼层

渐变效果

我听了楼上的越听越迷糊,我要做渐变效果,一个从亮到暗,一个从暗到亮。其他两个就常亮。但是最亮点,要有电位器来调节
谈的元 发表于 2008-7-3 18:15 | 显示全部楼层

呵呵,把你的要求写详细,给你写个思路

 楼主| zaq9999 发表于 2008-7-3 22:00 | 显示全部楼层

详细描述

4个LED
一个从亮到暗
一个从暗到亮
其他两个就常亮
但是4个LED亮度,要有电位器来调节
4个LED同时工作
ocon 发表于 2008-7-4 00:50 | 显示全部楼层

只要是个单片机,其他的定时器、AD、PWM什么的都可以不要~

ocon 发表于 2008-7-4 00:52 | 显示全部楼层

其实,单片机都可以不要的。。。

gyt 发表于 2008-7-4 10:20 | 显示全部楼层

自己做吧

锻炼锻炼也好
php139 发表于 2008-7-4 15:00 | 显示全部楼层

平凡老师的方法可以参考

占空比决定电流 电流决定亮度 
1-3
2-4
1+2=0
呵呵
谈的元 发表于 2008-7-7 08:13 | 显示全部楼层

补充:是不是这样?

4个灯有两个一直亮,另一个从某个亮度到灭,再从亮到灭。
                   另一个从灭到某个亮度,再从灭到某个亮度。


当我们旋转一下电位器的时候,4个灯的最高亮度变化。
是这样吗?

    问:从亮到灭的时间有什么特别要求?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

57

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部