#1【Arduino】3色LEDをボタンで制御

《目次》

《プログラム》

int redPin = 11;
int greenPin = 10;
int bluePin = 9;
int red_bt = 3;
int green_bt = 6;
int blue_bt = 5;
int r_st = 0;
int g_st = 0;
int b_st = 0;
int r = 0;
int g = 0;
int b = 0;
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  pinMode(redPin,OUTPUT);
  pinMode(greenPin,OUTPUT);
  pinMode(bluePin,OUTPUT);
  pinMode(red_bt, INPUT);
  pinMode(green_bt, INPUT);
  pinMode(blue_bt, INPUT);
}

void loop() {
  r_st = digitalRead(red_bt);
  if (r_st == HIGH){
    r = r + 10;
    Serial.println(r,DEC);
    if (r > 255) {
      r = 0;
    }
    delay(100);
  }
  g_st = digitalRead(green_bt);
  if (g_st == HIGH){
    g = g + 10;
    Serial.println(g, DEC);
    if (g > 255) {
      g = 0;
    }
    delay(100);
  }
  b_st = digitalRead(blue_bt);
  if (b_st == HIGH){
    b = b + 10;
    Serial.println(b, DEC);
    if (b > 255) {
      b = 0;
    }
    delay(100);
  }
  setColor(r,g,b);
}
void setColor(int red, int green, int blue) // This is the function that we build.
{
  analogWrite(redPin, red);
  analogWrite(greenPin, green);
  analogWrite(bluePin, blue);
}

《配線図》

後日掲載予定

《配線写真》

f:id:tqdm8192:20200301105251j:plain

《解説》

  • pinMode(PinNUM,STATUS);

pinMode設定:PinNUMに使用するピン番号、STATUSにOUTPUT(出力)または、INPUT(入力)を記述。

  • setColor(r,g,b);:LEDの色をセットする。