02강 아두이노 LED 기본 개념 LED Example1 LED Example2 LED Example3 Kyunghoon Jang (주)Neuromeka jkjang27@gmail.com
전류: 전류는 양(+)에서 음(-)으로 흐름 1. LED 기본 개념 – 전류와 전압 전압: 전류가 흐르기위해서는 전압이 필요 1.5V 전류: 전류는 양(+)에서 음(-)으로 흐름
1. LED 기본 개념 – 저항
1. LED 기본 개념 – LED + -
1. LED 기본 개념 – Bread Board
2. LED Example1 1K 저항
digitalWrite(led1, HIGH); delay(500); diitalWrite(led1, LOW); 2. LED Example1 – Simple LED int led1 = 8; void setup() { pinMode(led1, OUTPUT); } void loop() digitalWrite(led1, HIGH); delay(500); diitalWrite(led1, LOW);
2. LED Example2 – Button LED
int led1 = 7; int key1 = 13; void setup() { pinMode(led1, OUTPUT); 2. LED Example2 – Button LED int led1 = 7; int key1 = 13; void setup() { pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); pinMode(key1, INPUT); pinMode(key2, INPUT); }
if( digitalRead(key1) == HIGH ) digitalWrite(led1, HIGH); else 2. LED Example2 – Button LED void loop() { if( digitalRead(key1) == HIGH ) digitalWrite(led1, HIGH); else digitalWrite(led1, LOW); delay(100); }
2. LED Example3 – Serial LED □ 아두이노에서는 RS232통신으로 데이터가 오기를 기다리고 있다가 데이터가 도착을 하면 도착한 데이터를 곧 바로 PC로 재전송하는 실험 □ 아두이노 입장에서 생각해 보면 PC에서 데이터가 도착하는 것을 RX데이터 □ 아두이노 보드에서 PC로 데이터를 전송하는 것을 TX 데이터라고 한다.
2. LED Example3 – Serial LED
int led1_status = LOW; // For LED 1 STATUS void setup() { 2. LED Example3 – Serial LED int led1 = 7; int led1_status = LOW; // For LED 1 STATUS void setup() { pinMode(led1, OUTPUT); digitalWrite(led1, LOW); Serial.begin(9600); }
2. LED Example3 – Serial LED void loop() { char read_data; if (Serial.available()) read_data = Serial.read(); if( read_data == '1' && led1_status == LOW) digitalWrite(led1, HIGH); led1_status = HIGH; Serial.println("LED1 ON"); } else if( read_data == '1' && led1_status == HIGH ) digitalWrite(led1, LOW); led1_status = LOW; Serial.println("LED1 OFF"); delay(10);
DigitalWrite // DigitalRead Serial.Begin() 3. 정리 LED 연결 방법 DigitalWrite // DigitalRead Serial.Begin()