我用共阳极接法,共接了五个灯,用FOR循环,娘的为啥最后一个灯,由亮变暗正常,反过来直接跳到最亮,但是我看了论坛里“弘毅”大哥的贴子里直接加值,然后反转的,确五个灯都正常亮暗!吐血中!
swfzz 发表于 2013-9-7 13:36 static/image/common/back.gif
我用共阳极接法,共接了五个灯,用FOR循环,娘的为啥最后一个灯,由亮变暗正常,反过来直接跳到最亮,但是我 ...
额....
感谢楼主分享,尝试成功了
Youth 发表于 2013-1-8 18:47 static/image/common/back.gif
你好,请问怎么修改PWM的周期呢?
http://www.diy-robots.com/?p=814
这个网页上有具体介绍
如果要使用595进行扩展时那呼吸效果又该如何设置呢
arduino_ykk 发表于 2013-4-27 23:19 static/image/common/back.gif
我的实现内容:
int n = 0; // n 从 1 至 255,控制led亮度
高人,这就是C语言的魅力.
远古天空 发表于 2012-8-19 12:11 static/image/common/back.gif
请问强哥,我把这个实验和模拟变阻器实验结合起来,但是程序写在同一个loop里,等呼吸灯循环一次模拟控制灯 ...
用中断函数
使用绿灯效果更佳
基础,好东西,顶啊!!!!
做的真好,学习下
强哥,这是我从别人那学到的用三角函数来做呼吸灯的程序。但是灯的变化不均匀要怎么修改呢。(改了半天没成功。。。。。。)
unsigned char t=0;
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
t++;
digitalWrite(13, HIGH);
delay(25*sin(t*3.14)/180);
//if(t=70)
{
//t=110;
}
digitalWrite(13, LOW);
delay(25*(1-sin((t*3.14)/180)));
if(t>=180)
{
t=0;
}
}
请问,图是用什么软件画的
云卷云舒 发表于 2015-1-24 12:12 static/image/common/back.gif
请问,图是用什么软件画的
画图软件是Fritzing
本帖最后由 一瞬の空 于 2015-2-4 16:34 编辑
顺着这玩意儿我也写了一个灯{:soso_e113:}
连接
波形图
程序
/*
作品:RGB共阳LED颜色渐变
注释:LED共阳,4脚接正极,其他接RGB颜色
时间:2015.02.03
作者:一瞬の空
*/
const int LED1=3;
const int VCC=4;
const int LED2=5;
const int LED3=6;//定义引脚
float a=0;//计数用,提供函数x轴
int time=5;//延迟时间,单位毫秒,调整变化快慢
int r=0;
int g=0;
int b=0;//三个颜色设定
void setup()
{
pinMode(LED1,OUTPUT);
pinMode(LED2,OUTPUT);
pinMode(LED3,OUTPUT);
pinMode(VCC,OUTPUT);//定义引脚输入输出模式
digitalWrite(VCC,HIGH);//3,5,6引脚输出pwm,为了方便,设置4为高电平
}
void loop()
{
for(a=0;a<6.28;a=a+0.01)//for循环,格式“for(初始化;条件;运算),此循环用于提供变化的数
{
r=(127.5*(sin(a)+1));
g=(127.5*(sin(a-2.09)+1));
b=(127.5*(sin(a+2.09)+1));//r,g,b运算表达式,X轴错开2.09以达到同一时间不同亮度
/*
此处用了三相电公式
V1 = Asin(2πft)=Asin(wt)
V2 = Asin(2πft - 2π/3)=Asin(wt-2π/3)
V3 = Asin(2πft + 2π/3)=Asin(wt+2π/3)
*/
analogWrite(LED1,r);
analogWrite(LED2,g);
analogWrite(LED3,b);//输出亮度pwm调制波,范围0~255
delay(time);//延时毫秒,防止运算太快变化不明显
}
}
视频
http://v.youku.com/v_show/id_XODg2Mzc0MzY0.html
真心不错ff