找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2199|回复: 0
打印 上一主题 下一主题
收起左侧

arduino的关于音律灯的源代码

[复制链接]
跳转到指定楼层
楼主
ID:996739 发表于 2021-12-25 12:21 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
#include <FastLED.h>

int sound_value;  
#define NUM_LEDS 30  //灯珠数
#define LED_PIN 2  
#define ANALOG_READ 35

CRGB leds[NUM_LEDS];

void setup(){
  Serial.begin(9600);
  FastLED.setBrightness(30);
  FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);
}

void loop() {

sound_value = analogRead(ANALOG_READ);         
if(sound_value > 2000 && sound_value < 2200){
   for (int i = 0; i <= 10; i++)
   leds[i] = CRGB(255, 0, 0);  //五分之一的灯珠绿光
   for (int j = 11; j <= NUM_LEDS; j++)
   leds[j] = CRGB(0, 0, 0);
   FastLED.show();
   delay(15);
}

if(sound_value > 2400 && sound_value < 2600){
   for (int i = 0; i <= 18; i++)
   leds[i] = CRGB(0, 0, 255);  //五分之二的灯珠蓝光
   for (int j = 19; j <= NUM_LEDS; j++)
   leds[j] = CRGB(0, 0, 0);
   FastLED.show();
   delay(15);
}

if(sound_value > 2800 && sound_value < 3000){
   for (int i = 0; i <= 26; i++)
   leds[i] = CRGB(0, 125, 125);  //五分之三的灯珠紫光
   for (int j = 27; j <= NUM_LEDS; j++)
   leds[j] = CRGB(0, 0, 0);
   FastLED.show();
   delay(15);
}

if(sound_value > 3200 && sound_value < 3400){
   for (int i = 0; i <= 34; i++)
   leds[i] = CRGB(125, 125, 0);  //五分之四的灯珠黄光
   for (int j = 35; j <= NUM_LEDS; j++)
   leds[j] = CRGB(0, 0, 0);
   FastLED.show();
   delay(15);
}

if(sound_value > 3500){
   for (int i = 0; i <= NUM_LEDS; i++)
   leds[i] = CRGB(0, 255, 0);  //全部红光
   FastLED.show();
   delay(5);
}
}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表