見出し画像

観覧車をつくる②

こんにちは。文理融合系女子のすしこ🍣とお茶子🍵です。
前回の記事はこちら⇒観覧車をつくる①

今回は、観覧車を光らせる装置の中身、コードの内容に触れていきたいと思います。

#include "ChainableLED.h"

int potPin = A0; // ポテンションメーターのピン(アナログ)
ChainableLED leds(4, 5, 8); // 接続ピン, 接続ピン+1, LED数
void setup()
{
  Serial.begin(9600);
  pinMode(potPin, INPUT);
}

void loop(){
  int val = analogRead(potPin);
  int led = map(val, 0, 1023, 0, 255);
  Serial.println(led);
  leds.setColorRGB(0,led,20,0);
  leds.setColorRGB(1,50,10,led);  // LED番号, R, G, B(LED番号はLEDが1個なら0)
  leds.setColorRGB(2,20,led,20);
  leds.setColorRGB(3,led,led,20);
  leds.setColorRGB(4,led,255-led/2,led);
  leds.setColorRGB(5,30,led,led);
  leds.setColorRGB(6,255-led,led,0);
  leds.setColorRGB(7,255-led,led,255-led);
  delay(100);
}

よくわからない文字が並んで嫌になるかもしれませんが、ざっくりと解説していきたいと思います!!私たちの説明で、なんとなく「ここの文がこういう指令を出してるんだ」くらいの理解をしてもらえたら嬉しいと思います。

前半部分(初期設定の指令)

(//以降の文が説明文です。実際のコードではありません)

#include "ChainableLED.h" //3色LEDを使う宣言

int potPin = A0; // ポテンションメーターのピン(アナログ)
ChainableLED leds(4, 5, 8); // 接続ピン, 接続ピン+1, LED数
void setup()
{
  Serial.begin(9600);
  pinMode(potPin, INPUT);
}

ポテンショメーターのピンが捻って色を変えるものです。A0に挿して繋げるという意味。接続ピンも同じ意味です。

ChainableLED leds(4, 5, 8); // 接続ピン, 接続ピン+1, LED数

3色LED(ChainableLED)は4番に刺さってて、LEDが8個つながってることを伝えています。

void setup(){この中に設定の内容} //これが初期設定しますよという宣言。

後半部分(こっちが具体的な指令)

void loop(){
  int val = analogRead(potPin);
  int led = map(val, 0, 1023, 0, 255);
  Serial.println(led);
  leds.setColorRGB(0,led,20,0);
  leds.setColorRGB(1,50,10,led);  // LED番号, R, G, B(LED番号はLEDが1個なら0)
  leds.setColorRGB(2,20,led,20);
  leds.setColorRGB(3,led,led,20);
  leds.setColorRGB(4,led,255-led/2,led);
  leds.setColorRGB(5,30,led,led);
  leds.setColorRGB(6,255-led,led,0);
  leds.setColorRGB(7,255-led,led,255-led);
  delay(100);
}

void loop(){動作したい内容} //ずっと繰り返し動作したいことを書く宣言

int val = analogRead(potPin);
// valっていう変数(入れ物)にポテンショメーターをどれだけ回したか0から1023の数字を入れる。変数というのは入れ物で仮の名だと思ってください。例えば、valではなくcatやdogにしても動きます🐈🐶

int led = map(val, 0, 1023, 0, 255);
// ledっていう変数(入れ物)に
さっきvalに入れた数を0から1023の割合を0から255に変換する
このledを後のLEDの色を決めるのに使います。

あとは3色LEDの色を一個ずつ決めていきます!!
1個目は→0番、2個目は→1番となります。ややこしい。
ここでは0番のLEDに赤をled(このledは上記の変数の入れ物のこと)の数字、緑を0、青を0にしています。

RGBというのは、Red・Blue・Greenの3つを使って色を変えていきます。色の設定は0-255まであって数が大きくなるほど明るい色になっていきます。


本当にざっくりですが、どの部分でどんなことをしているのかが、ふわっと理解してもらえたら嬉しいです。以上!!!!!!


すしこ🍣&お茶子☕