프라모델

LED 제어 관련 아두이노 문법 #1 (기본 예제)

여우래비 2019. 8. 16. 23:16
반응형

필수적인 LED 제어 아두이노 문법을 정리해 본다. 

(* 실수로 Fritzing 의 LED 극성이 바뀌었다. 참고)

▣ 단순 LED On/Off (예로 디지털 13번 Pin에 LED 장착)

// the setup function runs once when you press reset or power the board

void setup() {

  // initialize digital pin LED_BUILTIN as an output.

  int LED_BUILTIN = 13;

  pinMode(LED_BUILTIN, OUTPUT);

}

// the loop function runs over and over again forever

void loop() {

  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)

  delay(1000);                       // wait for a second

  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW

  delay(1000);                       // wait for a second

}


 

▣ LED 서서히 켜기

PWM 출력 핀: 3, 5, 6, 9, 10, 11 (아두이노 보드에 물결표시 있는 Pin 사용)

loop()이 아닌 setup() 에 입력하여 전원 On 시에 천천히 켜지게 함

// the setup function runs once when you press reset or power the board

void setup() {

  // initialize digital pin LED_BUILTIN as an output.

  int LED_BUILTIN = 11;

  int i = 0;

 

  pinMode(LED_BUILTIN, OUTPUT);

  for (i=0; i<=255; i++) {

      analogWrite(LED_BUILTIN, i);

      delay(10);

  }

}

// the loop function runs over and over again forever

void loop() {

}

 


 

▣ 블루투스로 LED On/Off

#include SoftwareSerial hc06(2,3); //Tx, Rx

void setup() {

  Serial.begin(9600);

  pinMode (13, OUTPUT);

  hc06.begin(9600);

}

void loop() {

if(hc06.available()){ // 만약 hc06에 데이터의 입력이 있으면 

 

 int  a = hc06.read(); // int형 a에 입력값을 저장한다

 

  if(a == '1') // 만약 입력값이 1이면

    {

    digitalWrite(13,HIGH); //LED를 켠다

    }

  if(a == '2') // 만약 입력값이 2이면 

    {

    digitalWrite(13,LOW);// LED를 끈다

    } 

  }

}

 

편의상 저항 없이 LED 연결하였음

안드로이드 아두이노 블루투스 앱 설치: PlayStore 에서 "Bluetooth Serial Controller" 설치 후 Command 에서 "1", "2" 정의

 

반응형