컬러 LED바 명령어
5-1 컬러 LED바 연결하기 5-2 컬러 LED바 명령어 5-3 순차로 켜지는 신호등
5-4 어두워 지면 켜지는 후레쉬 등 5-5 밝기가 조절되는 후레쉬
5-6 이동 점멸 및 막대 그래프 5-7 경광등 만들기
5-8 이퀄라이저 만들기 5-9 스마트 무드등 만들기
05
컬러 LED바 명령어
05 - 1 컬러 LED바 연결하기
1. 컬러 LED바 연결하기
05
컬러 LED바
3핀 케이블
컬러 LED바 명령어
05 - 1 컬러 LED바 연결하기
2. 디지털 2번 핀에 연결
05
컬러 LED바 명령어
05 - 2 컬러 LED바 명령어
1. LED 컬러바 명령어 구성
05
• 컬러 LED바는 5개의 명령어로 구성됩니다.
• NSBegin -> LED바를 시작합니다.
• NSClear -> LED바를 모두 끕니다.
• NSSetColor -> LED바의 색상을 지정합니다.
• NSSetAllColor -> 전체 LED바의 색상을 지정합니다.
• NSShow -> LED바의 색상을 표시합니다.
컬러 LED바 명령어
05 - 2 컬러 LED바 명령어
2. LED 컬러바 명령어
05
NSSetColor(위치, Red, Green, Blue)
위치는 0 ~ 7
각 색상은 0 ~ 255
컬러 LED바 명령어
05 - 2 컬러 LED바 명령어
3. 첫번째 LED 셀을 빨간색으로 켜는 예제
05
• 스크립트 예입니다. LED바를 디지털 2번에 연결합니다.
void setup()
{ NSBegin(8, 2) }
void loop()
{ NSClear()
NSSetColor(0, 255, 0, 0) NSShow()
Delay(100) }
컬러 LED바 명령어
05 - 2 컬러 LED바 명령어
4. 7개의 LED셀에 무지개 색상을 만들어 봅니다.
05
컬러 LED바 명령어
05 - 3 순차로 켜지는 신호등
1. 순차로 켜지는 신호등
05
다음의 순서로 1초씩 LED가 켜지도록 합니다.
첫번째 LED 초록 1초 두번째 LED 주황 1초 세번째 LED 빨강 1초
컬러 LED바 명령어
05 - 3 순차로 켜지는 신호등
1. 순차로 켜지는 신호등
05
다음의 순서로 1초씩 LED가 켜지도록 합니다.
첫번째 LED 빨강 3초 두번째 LED 초록 3초 세번째 LED 주황 1초
컬러 LED바 명령어
05 - 3 순차로 켜지는 신호등
05
void setup()
{ NSBegin(8, 2)
}
void loop()
{ NSClear()
NSSetColor(0, 255, 0, 0) NSShow()
Delay(3000) NSClear()
NSSetColor(1, 0, 255, 0) NSShow()
Delay(3000) NSClear()
NSSetColor(2, 255, 127, 0) NSShow()
Delay(1000)
컬러 LED바 명령어
05 - 4 어두워지면 켜지는 후레쉬
1. 전체 LED 색상을 한 번에 제어하기
05
NSSetAllColor(Red, Green, Blue)
각 색상은 0 ~ 255
컬러 LED바 명령어
05 - 4 어두워지면 켜지는 후레쉬
1. 전체 LED 색상을 한 번에 제어하기
05
void setup()
{ NSBegin(8, 2) }
void loop()
{ NSSetAllColor(255, 0, 0) NSShow()
Delay(1000) NSClear() NSShow() Delay(1000) }
컬러 LED바 명령어
05 - 4 어두워지면 켜지는 후레쉬
2. 빨강 -> 초록 -> 파랑색을 1초 간격으로 켜기
05
void setup()
{ NSBegin(8, 2)
}
void loop()
{ NSSetAllColor(255, 0, 0) NSShow()
Delay(1000)
NSSetAllColor(0, 255, 0) NSShow()
Delay(1000)
NSSetAllColor(0, 0, 255) NSShow()
Delay(1000) }
컬러 LED바 명령어
05 - 4 어두워지면 켜지는 후레쉬
3. 조도센서를 활용하여 어두워지면 저절로 켜지는 장치를 구현하시오
05
void setup()
{ NSBegin(8, 2) }
void loop()
{ a = analogRead(0) if (a < 500)
{ }else {
}delay(100) }
컬러 LED바 명령어
05 - 4 어두워지면 켜지는 후레쉬
3. 조도센서를 활용하여 어두워지면 저절로 켜지는 장치를 구현하시오
05
void setup()
{ NSBegin(8, 2) }
void loop()
{ a = analogRead(0) if (a < 500)
{ NSSetAllColor(255, 255, 255) NSShow()
}else
{ NSSetAllColor(0, 0, 0) NSShow()
}delay(100)
컬러 LED바 명령어
05 - 5 밝기가 조절되는 후레쉬
1. 버튼으로 밝기를 3단계로 조절하는 장치를 구현하시오
05
처음에는 꺼져 있음
버튼을 한번 누르면 가장 밝음 (3단계)
다시 한번 누르면 2단계 밝음 (조금 어두워짐)
다시 한번 누르면 1단계 밝음 (많이 어두워짐)
다시 한번 누르면 꺼짐
컬러 LED바 명령어
05 - 5 밝기가 조절되는 후레쉬
2. 기능 개발시 유의사항
05
디지털 버튼의 중복 감지 기능이 반영될 것
컬러 LED바 명령어
05 - 5 밝기가 조절되는 후레쉬
3. LED 밝기 설정
05
3단계: 255, 255, 255
2단계: 150, 150, 150
1단계: 50, 50, 50
꺼짐: 0, 0, 0
컬러 LED바 명령어
05 - 5 밝기가 조절되는 후레쉬
4. 기본 템플릿 코드
05
count = 0 pressed = 0 void loop() {
d = DigitalRead(2) if (d == HIGH) {
if (pressed == 0) {
count = (count + 1) % 4 PrintLine(count)
}
pressed = 1 }
else
pressed = 0 Delay(100)
}
컬러 LED바 명령어
05 - 5 밝기가 조절되는 후레쉬
4. 기본 템플릿 코드
05
count = 0 pressed = 0 void loop() {
d = DigitalRead(2) if (d == HIGH) {
if (pressed == 0) {
count = (count + 1) % 4
<이곳에 기능을 추가하시오>
}
pressed = 1 }
else
pressed = 0 Delay(100)
컬러 LED바 명령어
05 - 5 밝기가 조절되는 후레쉬
05
count = 0 pressed = 0 void setup()
{ NSBegin(8, 2)
NSSetAllColor(0, 0, 0) NSShow()
}
void loop() {
d = DigitalRead(2) if (d == HIGH) {
if (pressed == 0) {
count = (count + 1) % 4 if (count == 0)
NSSetAllColor(0, 0, 0) else if (count == 1)
NSSetAllColor(255, 255, 255) else if (count == 2)
NSSetAllColor(150, 150, 150) else if (count == 3)
NSSetAllColor(50, 50, 50) }
pressed = 1 }
else
pressed = 0 Delay(100)
}
컬러 LED바 명령어
05 - 6 이동 점멸 및 막대그래프
1. 반복문으로 하나의 LED 빛을 이동시켜 켜지도록 합니다.
05
컬러 LED바 명령어
05 - 6 이동 점멸 및 막대그래프
1. 반복문으로 하나의 LED 빛을 이동시켜 켜지도록 합니다.
05
void setup()
{ NSBegin(8, 2) }
void loop()
{ for (i = 0; i < 8; i++) { NSClear()
NSSetColor(i, 255, 0, 0) NSShow()
Delay(100) } }
컬러 LED바 명령어
05 - 6 이동 점멸 및 막대그래프
2. 반복문으로 두개의 LED 빛이 끝에서 가운데로 이동하도록 구현해 봅니다.
05
컬러 LED바 명령어
05 - 6 이동 점멸 및 막대그래프
2. 반복문으로 두개의 LED 빛이 끝에서 가운데로 이동하도록 구현해 봅니다.
05
void setup()
{ NSBegin(8, 2) }
void loop()
{ for (i = 0; i < 4; i++) { NSClear()
NSSetColor(i, 255, 0, 0) NSSetColor(7-i, 255, 0, 0) NSShow()
Delay(100) } }
컬러 LED바 명령어
05 - 6 이동 점멸 및 막대그래프
3. 켜지는 LED가 계속 증가하도록 합니다.
05
컬러 LED바 명령어
05 - 6 이동 점멸 및 막대그래프
3. 켜지는 LED가 계속 증가하도록 합니다.
05
void setup()
{ NSBegin(8, 2) }
void loop()
{ NSClear()
for (i = 0; i < 8; i++)
{ NSSetColor(i, 255, 0, 0) NSShow()
Delay(100) } }
컬러 LED바 명령어
05 - 7 경광등 장치 만들기
1. 경광등 장치 설계하기
05
처음 4개의 LED 셀을 빨간색으로 2번 점멸
뒤쪽 4개의 LED 셀을 파간색으로 2번 점멸
컬러 LED바 명령어
05 - 7 경광등 장치 만들기
2. 기본 템플릿
05
void loop()
{ NSClear()
for (i = 0; i < 4; i++)
NSSetColor(i, 255, 0, 0) NSShow()
Delay(100) NSClear() NSShow() Delay(100) }
컬러 LED바 명령어
05 - 7 경광등 장치 만들기
3. 함수 만들어서 사용하기
05
void BlinkLight(int s, int r, int g, int b)
{ NSClear()
for (int i = 0; i < 4; i++)
NSSetColor(i + s, r, g, b) NSShow()
Delay(100) NSClear() NSShow() Delay(100) }
컬러 LED바 명령어
05 - 7 경광등 장치 만들기
3. 함수 만들어서 사용하기
05
void loop()
{ BlinkLight(0, 255, 0, 0)
BlinkLight(0, 255, 0, 0) BlinkLight(4, 0, 0, 255) BlinkLight(4, 0, 0, 255) }
컬러 LED바 명령어
05 - 8 이퀄라이저 만들기
1. random 함수
05
random() 함수를 이용하여 임의의 값을 생성합니다.
• random(a) 는 0부터 a보다 작은 정수중에서 임의의 한 수를 넘겨줍니다.
• random(a, b) 는 a부터 b보다 작은 정수중에서 임의의 한 수를 넘겨줍니다.
컬러 LED바 명령어
05 - 8 이퀄라이저 만들기
1. random 함수
05
int a = random( 크기 )
• 0 ~ (크기 – 1) 사이의 임의의 값을 생성함
int a = random( 256 )
• 0 ~ 255 사이의 임의의 값을 생성함
int a = random( 100, 256 )
• 100 ~ 255 사이의 임의의 값을 생성함
컬러 LED바 명령어
05 - 8 이퀄라이저 만들기
2. 임의의 위치에 있는 LED 셀 켜기
05
void setup()
{ NSBegin(8, 2) }
void loop()
{ p = random(8)
NSClear()
NSSetColor(p, 255, 0, 0) NSShow()
Delay(100) }
컬러 LED바 명령어
05 - 8 이퀄라이저 만들기
3. 임의의 위치에 있는 LED 셀을 임의의 색상으로 켜기
05
void setup()
{ NSBegin(8, 2) }
void loop()
{ p = random(8) r = random(256) g = random(256) b = random(256) NSClear()
NSSetColor(p, r, g, b) NSShow()
Delay(100) }
컬러 LED바 명령어
05 - 8 이퀄라이저 만들기
4. 임의의 길이만큼 LED 셀 켜기
05
void loop()
{ p = random(8) r = random(256) g = random(256) b = random(256) NSClear()
for (int i = 0 i <= p; i++) NSSetColor(i, r, g, b) NSShow()
Delay(100) }
컬러 LED바 명령어
05 - 8 이퀄라이저 만들기
5. 전체 LED를 임의의 색상으로 켜기
05
void loop()
{ r = random(256) g = random(256) b = random(256)
NSSetAllColor(r, g, b) NSShow()
Delay(100) }
컬러 LED바 명령어
05 - 9 스마트 무드등 만들기
1. 임의의 색상 구간 생성하기
05
0 255
r1 r2
임의의 색상 구간을 random 함수를 이용해 생성함
컬러 LED바 명령어
05 - 9 스마트 무드등 만들기
2. 임의의 색상 구간에서 빨간색이 서서히 변하는 기능
05
void loop()
{ r1 = random(256)
r2 = random(r1, 256) for (i = 0; i < 256; i++)
{ r = map(i, 0, 255, r1, r2)
NSSetAllColor(r, 0, 0) NSShow()
Delay(10) } }
컬러 LED바 명령어
05 - 9 스마트 무드등 만들기
3. 임의의 색상 구간에서 초록 및 파랑이 서서히 변하는 기능 추가
05
void loop()
{ r1 = random(256)
r2 = random(r1, 256) g1 = random(256) g2 = random(g1, 256) b1 = random(256) b2 = random(b1, 256) for (i = 0; i < 256; i++)
{ r = map(i, 0, 255, r1, r2) g = map(i, 0, 255, g1, g2) b = map(i, 0, 255, b1, b2) NSSetAllColor(r, g, b) NSShow()
컬러 LED바 명령어
05 - 9 스마트 무드등 만들기