给之前那个OSU专用键盘加一个呼吸灯。
硬件:Arduino pro mini
要使用支持PWM的引脚,查一下引脚图即可。
代码:
示例1:
int pins[] = {9};
int length = sizeof(pins) / sizeof(int);
//想实现呼吸灯效果 需用到支持PWM的引脚
void setup() {
}
void loop() {
int flag = 0; //渐亮渐暗状态切换
int sped = 5; //步长
for (int fadeValue = 0 ; fadeValue <= 255; ) {
for(int i=0;i<length;i++){
analogWrite(pins[i], fadeValue); //analogWrite PWM输出0~255
}
delay(60);
if(fadeValue >= 255){
flag = 1;
}
if(fadeValue <= 0){
flag = 0;
}
if(flag == 1){
fadeValue -= sped;
}else{
fadeValue += sped;
}
}
}
void setup ()
{
pinMode(9,OUTPUT);
}
void loop()
{
for (int a=0; a<=255;a++) //循环语句,控制PWM亮度的增加
{
analogWrite(9,a);
delay(8); //当前亮度级别维持的时间,单位毫秒
}
for (int a=255; a>=0;a--) //循环语句,控制PWM亮度减小
{
analogWrite(9,a);
delay(8); //当前亮度的维持的时间,单位毫秒
}
delay(8); //完成一个循环后等待的时间,单位毫秒
}
参考文章:
http://www.jianshu.com/p/65d5ccbfca82
http://www.geek-workshop.com/forum.php?mod=viewthread&tid=1126