打印

讨论:单片能否实现遥控控制3路独立渐亮渐暗LED

[复制链接]
5857|36
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
anuni|  楼主 | 2011-7-5 17:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 anuni 于 2011-7-6 11:09 编辑

公司接了一个这样的项目,要求无线遥控器可控制3路独立的LED输出,
3路LED可分别实现频闪、渐变等功能,一个单片机能实现吗?
     我想了好久都觉得实现不了,难点在于LED功能输出的同时要解来自遥控器的命令,而且3路是独立的,
     特别是有个功能太变态了,是三路LED分别渐亮后渐暗,比如:LED1->LED2->LED3->LED1+LED2->LED1+LED3
->LED2+LED3->LED1+LED2+LED3然后循环,但是要求在上一输出最亮状况下同时下一状态的LED开始渐亮。
    这个功能要实现,相当于解无线信号的同时要求控制3路PWM,我觉得这个单片机应该无法做到,不知道各位怎么认为?
    大家讨论一下。

为什么大家都是简单?

功能大概: 按键1(开/关),按键2(功能切换,11个功能),按键3(频闪及渐变速度切换,5级速度),按键4(功能内状态步进,7种状态)
实现下面的功能:LED1->LED2->LED3->LED1+LED2->LED1+LED3
->LED2+LED3->LED1+LED2+LED3,即LED1从最暗变到最亮,再从最亮变回最暗;在LED1最亮的同时,LED2开始从暗变亮,再从亮变暗;在LED2最亮的时候,LED3开始从最暗变亮,再从亮变暗;依次往下~~~
遥控器按键1按下后,调光器开始输出,并且按照之前关闭时的功能、速度及状态;
遥控器2键,去到下一个功能(不叙述了)
遥控器3键,改变渐变的速度
遥控器4键,跳过下一状态,比如现在正在执行LED1亮度渐变,当LED1亮度渐变完成后,跳过LED2渐变,直接进入LED3亮度渐变

这样的程序如果没用3路PWM能实现?能不能给个思路

相关帖子

沙发
joyme| | 2011-7-6 09:18 | 只看该作者
LED的状态(亮度调节或闪烁)变化不需要很快的,太快了人眼就分辨不出来了,基本上以100ms为基数变化就可以,闪烁可能用200ms-500ms,具体看实际要求。至于无线信号解码,用中断最好

应该是随便找个单片机都能实现

使用特权

评论回复
板凳
lyjian| | 2011-7-6 10:08 | 只看该作者
普通的单片机就能做到

使用特权

评论回复
地板
anuni|  楼主 | 2011-7-6 10:20 | 只看该作者
3# lyjian
打击好大!虽然是菜鸟,可也写了些程序了,也许写过遥控器控制LED的程序,
但是这个程序我还是认为有它的特殊之处,不好处理,不知道各位大侠有没有细读我的描述,还是说我的描述不清楚,但是一句话就说能做到,我觉得不严谨。

使用特权

评论回复
5
趴趴熊| | 2011-7-6 10:20 | 只看该作者
这个功能的要求非常之低。

使用特权

评论回复
6
anuni|  楼主 | 2011-7-6 10:45 | 只看该作者
功能大概: 按键1(开/关),按键2(功能切换,11个功能),按键3(频闪及渐变速度切换,5级速度),按键4(功能内状态步进,7种状态)

使用特权

评论回复
7
lyjian| | 2011-7-6 10:46 | 只看该作者

都说了,随便一个MCU都能实现

使用特权

评论回复
8
anuni|  楼主 | 2011-7-6 10:47 | 只看该作者
被大家说得无地自容了

使用特权

评论回复
9
fkepynn| | 2011-7-6 10:50 | 只看该作者
非常普通单片机都可以呢!不必要PWM口、、、

使用特权

评论回复
10
anuni|  楼主 | 2011-7-6 11:01 | 只看该作者
那麻烦说下大家的想法
功能大概: 按键1(开/关),按键2(功能切换,11个功能),按键3(频闪及渐变速度切换,5级速度),按键4(功能内状态步进,7种状态)
实现下面的功能:LED1->LED2->LED3->LED1+LED2->LED1+LED3
->LED2+LED3->LED1+LED2+LED3,即LED1从最暗变到最亮,再从最亮变回最暗;在LED1最亮的同时,LED2开始从暗变亮,再从亮变暗;在LED2最亮的时候,LED3开始从最暗变亮,再从亮变暗;依次往下~~~
遥控器按键1按下后,调光器开始输出,并且按照之前关闭时的功能、速度及状态;
遥控器2键,去到下一个功能(不叙述了)
遥控器3键,改变渐变的速度
遥控器4键,跳过下一状态,比如现在正在执行LED1亮度渐变,当LED1亮度渐变完成后,跳过LED2渐变,直接进入LED3亮度渐变

使用特权

评论回复
11
anuni|  楼主 | 2011-7-6 11:03 | 只看该作者
为什么大家都是简单?我想这个程序如果要是有3路PWM可能还能实现
要是没有的话,用定时/计时器根本没法做

使用特权

评论回复
12
coody| | 2011-7-6 11:33 | 只看该作者
11楼

用很多MCU都可以做得到啊,经常做12路的LED驱动,每路独立8bit PWM。
另外,用HC595都可以做到,只要3个IO,控制8路或16路,每路独立8bit PWM。

使用特权

评论回复
13
hwwyhy| | 2011-7-6 11:41 | 只看该作者
无线信号用中断不好处理吧,有很多杂波的啊。 2# joyme

使用特权

评论回复
14
SmartEnergy| | 2011-7-6 12:03 | 只看该作者
这个我做过,随意给LZ提几个关键点参考:
1. 变色弱光不要有可视闪烁,LED的反应真实快成缺点了。
2. 如果RF无线遥控的话,干扰比较大。
3. 如果要整合无线遥控解码到单一MCU,不要丢码太多非常重要。
每种功能都不难,难的是将他们合并在一个MCU中,并且用户觉得性能还可以。

原理结构的话:
RF Decoder  -> Application  -> LED Dimmer

使用特权

评论回复
15
delin17| | 2011-7-6 12:45 | 只看该作者
定时器也可以做PWM啊

使用特权

评论回复
16
anuni|  楼主 | 2011-7-6 12:55 | 只看该作者
15# delin17 [/
定时器是可以做PWM,但是难在如何用定时器控制3路PWM

使用特权

评论回复
17
anuni|  楼主 | 2011-7-6 12:57 | 只看该作者
14# SmartEnergy
谢谢建议,你提到的我都知道
可是还是没能解决我的问题

使用特权

评论回复
18
anuni|  楼主 | 2011-7-6 12:59 | 只看该作者
13# hwwyhy
我也是从来不用中断解码的,我觉得这样一个是浪费资源,另外也不理想

使用特权

评论回复
19
eydj2008| | 2011-7-6 13:00 | 只看该作者
16路都可以做到 一个MCU  多个可以做N路的

使用特权

评论回复
20
eydj2008| | 2011-7-6 13:00 | 只看该作者
或是用FPGA做多路

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

56

帖子

1

粉丝