33问答网
所有问题
怎么用单片机做出8个LED同时亮,但亮度不同的流水灯?
单片机控制流水灯,8个LED同时亮,但亮度不一样。
举报该问题
推荐答案 推荐于2017-10-02
假如说,第一个灯肯定比第二个灯亮的话,可以直接把8个LED灯的限流电阻弄成不同阻值的。就像楼上说的那样。
但如果想随便变换不同的灯都能有不同的亮度话,硬件电路可以不变,限流电阻都一样。可以在程序里这样写:
首先,例如你要最亮的灯先点亮,隔几十微秒后点亮第二个灯,再相隔同样时间点亮第三个灯……依次类推间隔一定时间点亮八个灯。但间隔时间不要太大,超过十几毫秒就不行了。
然后再间隔相同的时间一次性把灯全关了,再间隔几十微秒回到上面的状态依次点亮灯。……一直这样循环。
这样的话因为人的视力有一定的滞回效果,只要间隔时间不大,你就能看到八个灯不是闪的,而是同时亮,但亮度又不一样。 这是单片机设计中,PWM控制的思路。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://33.wendadaohang.com/zd/R4R0WB40B.html
其他回答
第1个回答 2010-01-02
c_char的方法不容易实现流水灯
micropower的pwm方法可取,pwm频率大于三十,估计就看不到闪了,再调节脉宽,可以实现不同亮度吧
第2个回答 2010-01-02
先选8个端口与8个LED相连(LED的负极与端口相连),再选8个不同大小的电阻,分别接在8个LED的正极,并接上适当的电压源(若分接的话,8个电压源大小要相等)。当8个端口同时置0时,8个LED同时亮,且亮度不同。在此设计过程中,要注意电阻和电压源的选用,否者电阻太大,电压源太小,LED有可能不亮。
第3个回答 2013-01-04
文库里面有:
http://wenku.baidu.com/view/7037dc0876c66137ee0619ce.html
相似回答
单片机流水灯怎么
实现
的?
答:
在这个
单片机流水灯
代码中,假设
使用的
是8051单片机。需要定义
8个LED
灯,分别连接到P1端口的不同引脚上。然后使用一个循环结构来控制这8个LED灯按照一定的顺序逐个亮起,形成流水灯的效果。具体来说
,使用
for循环来控制LED
灯的
亮灭顺序。在每次循环中,通过给P1端口赋值来控制LED灯的亮灭状态。例如,给P...
用单片机
控制4094点亮
8个LED
灯,C语言程序怎么做
,怎么
实现
流水灯?
在线等...
答:
include <reg51.h>#include <intrins.h>sbit DAT=P1^2;sbit CLK=P1^1;sbit STB=P1^0;void Delay500ms();void OUT_4094(unsigned char n);void main(){unsigned char i;for(i=0;;i++){OUT_4094(i);Delay500ms();}}void Delay500ms()//@12.000MHz{unsigned char i, j, k;_no...
怎么利用单片机
控制
八个led灯?
答:
1:首先设定一个变量i,可以是从0到3循环的变化,2:再检测一个经过消抖处理的按键,按一下,即i+1 3:当i值为各个值时,执行相应的变换花样。
流水灯
参考程序 include include define uchar unsigned char uchar j,tmp;void deay(unsigned int ms){ uchar t;while(ms--)for(t=0;t<12;t++...
大家正在搜
写单片机程序是八个LED灯亮
单片机让LED灯定时亮灭
单片机控制LED灯亮
单片机8个led灯亮灭循环
用单片机点亮led灯
51单片机点亮多个led灯
单片机51点亮一个led灯
51单片机点亮一个led灯程序
51单片机八灯亮灭亮灭
相关问题
怎么用单片机做出8个LED同时亮,但亮度不同的流水灯?
单片机C语言如何实现8个LED流水灯来回流动?
如何用C51写出8个LED同时亮,但亮度不同的流水灯程序?
单片机开发板上的8个led同时点亮和1个led点亮时的亮度为...
单片机流水灯程序,烧到单片机里,8个灯全亮,是怎么回事,下面...
用单片机设计8个led灯同时闪烁的程序!!
51单片机怎么编写程序同时点亮8个LED灯?
用单片机控制4094点亮8个LED灯,C语言程序怎么做,怎么...