안녕하세요 공대 박형입니다.
오늘은 아두이노 시리얼 통신을 통해 데이터를 read 해보겠습니다.
코드부터 보시죠.
int g_led = 9; // 초록 led 핀
int b_led = 10; // 파란 led 핀
int r_led = 11; // 빨간 led 핀
void setup()
{
Serial.begin(9600);
pinMode(g_led, OUTPUT);
pinMode(b_led, OUTPUT);
pinMode(r_led, OUTPUT);
}
void loop()
{
char data = Serial.read(); // 시리얼 값 data변수에 저장
if (data == 'g'){
digitalWrite(g_led, HIGH); // 초록 led는 키고 나머지는 off
digitalWrite(b_led, LOW);
digitalWrite(r_led, LOW);
Serial.println("Green LED ON"); // 시리얼 모니터 출력
}
if (data == 'b'){
digitalWrite(g_led, LOW);
digitalWrite(b_led, HIGH);
digitalWrite(r_led, LOW);
Serial.println("Blue LED ON");
}
if (data == 'r'){
digitalWrite(g_led, LOW);
digitalWrite(b_led, LOW);
digitalWrite(r_led, HIGH);
Serial.println("Red LED ON");
}
delay(100);
}
회로도입니다.
3색 RGB LED는 4개의 핀이 있습니다. 하나는 그라운드 핀이며 나머지 3개는 빨간, 파란, 초록색 빛을 발광하는 핀입니다. 빨간 핀에 HIGH 신호를 인가하면 빨간색(255,0,0) 빛을 띄우고 초록색 핀에 신호를 인가하면 초록색(0,255,0) 빛을 냅니다.
PWM 제어를 통해 RGB 값을 조절하여 원하는 색상의 LED를 만들 수 있습니다. 이는 추후 다양한 프로젝트를 통해 실습하도록 하겠습니다.
저는 디지털 9번 핀을 초록색, 10번 핀을 파란색, 11번 핀을 빨간색에 연결했습니다. 그리고 시리얼 통신을 통해 'r'을 아두이노에 보내면 빨간색 led를 켜고 다른 led는 꺼지는 프로그램을 만들었습니다. (g는 초록, b는 파랑)
다음 시간에는 아두이노 조건 제어문( if )를 제어하는 방법에 대해 알아보겠습니다.
궁금한 부분은 질문 해주시면 성심껏 답변해드리겠습니다.
읽어주셔서 감사합니다.
[복사하고 따라하는 아두이노] 아두이노 초음파센서(feat. 3핀 4핀 모두) (0) | 2021.03.26 |
---|---|
[복사하고 따라하는 아두이노] 아두이노 pir 센서 (0) | 2021.03.25 |
[복사하고 따라하는 아두이노] 아두이노 Serial.read 시리얼 통신 (5) | 2021.03.21 |
[복사하고 따라하는 아두이노] 아두이노 가변저항 제어(feat.map 함수) (0) | 2021.03.20 |
[복사하고 따라하는 아두이노] 아두이노 조도센서 제어 (0) | 2021.03.19 |
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.