3주차 3D 액자 조명제어하기: 두 판 사이의 차이

아두위키 : Arduwiki
잔글편집 요약 없음
잔글편집 요약 없음
17번째 줄: 17번째 줄:
GND, 5V는 아두이노에 바로 바로 연결하고 DI를 디지털 핀 5번에 연결해 봅시다.
GND, 5V는 아두이노에 바로 바로 연결하고 DI를 디지털 핀 5번에 연결해 봅시다.


먼저 네오픽셀 링의 '''0번 LED를 "빨간색"'''으로 켜봅시다.<syntaxhighlight lang="arduino" line="1">
 
 
먼저 네오픽셀 링의 '''0번 LED를 "빨간색"'''으로 켜봅시다.
 
==== 2-1) LED 0번 빨간색으로 나타내기 ====
<syntaxhighlight lang="arduino" line="1">
#include <Adafruit_NeoPixel.h>
#include <Adafruit_NeoPixel.h>


24번째 줄: 29번째 줄:


Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);
Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);


void setup() {
void setup() {
43번째 줄: 47번째 줄:


(LED번호, R, G, B)의 값을 변경하여 다른 LED에 원하는 색깔의 빛을 나타내 확인해보세요.
(LED번호, R, G, B)의 값을 변경하여 다른 LED에 원하는 색깔의 빛을 나타내 확인해보세요.
LED의 R, G, B 값은 '''0부터 255까지'''의 값으로 나타낼 수 있습니다.
너무 눈이 부시다면 값을 조금 줄여보세요!!
==== 2-2) LED 0번의 빛 세기를 조절해보기 ====
이번에는 LED 0번의 빛 세기를 조정하여 천천히 밝아지도록 만들어 봅시다.
[[파일:네오픽셀 실습2 gif.gif|테두리|가운데|프레임없음]]


==== 2-1. 실습1) LED에 R, G, B 색깔로 나타내기 ====
==== 2-1. 실습1) LED에 R, G, B 색깔로 나타내기 ====
반복문을 이용해 24개의 LED 모두에 빨강, 초록, 파랑으로 빛이 나타날 수 있도록 코딩해봅시다.
반복문을 이용해 24개의 LED 모두에 빨강, 초록, 파랑으로 빛이 나타날 수 있도록 코딩해봅시다.
[[파일:네오픽셀 실습1.png|테두리|가운데|프레임없음]]
[[파일:네오픽셀 실습1.png|테두리|가운데|프레임없음]]




=== 실습 코드 참고하기 ===
=== 실습 코드 참고하기 ===


==== 1) 실습1) LED에 R, G, B 색깔로 나타내기 ====
==== 실습1) LED에 R, G, B 색깔로 나타내기 ====
<syntaxhighlight lang="arduino" line="1">
<syntaxhighlight lang="arduino" line="1">
#include <Adafruit_NeoPixel.h>
#include <Adafruit_NeoPixel.h>

2024년 6월 2일 (일) 11:43 판

3D 액자 조명을 만들어봅시다.


1. 네오픽셀 링 사용하기

먼저 아두이노 IDE 에서 네오픽셀 링을 사용하기 위해 라이브러리를 설치합니다.

[스케치] - [라이브러리 포함] - [라이브러리 관리] 에서 "NeoPixel"을 검색합니다. [Adafruit NeoPixel by Adafruit] 를 찾아 설치해주세요.

2. 네오픽셀 링 LED 제어

네오픽셀 링의 LED를 제어해봅시다.

네오픽셀 링의 GND, 5V, DI를 아두이노에 연결합니다.

GND, 5V는 아두이노에 바로 바로 연결하고 DI를 디지털 핀 5번에 연결해 봅시다.


먼저 네오픽셀 링의 0번 LED를 "빨간색"으로 켜봅시다.

2-1) LED 0번 빨간색으로 나타내기

#include <Adafruit_NeoPixel.h>

int PIN = 5;
int NUM_LEDS = 24;

Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  strip.begin();
}

int index = 0;
void loop() {
  //            LED번호,  R   G   B
  strip.setPixelColor(0, 255, 0, 0);
  strip.show();
}

setPixelColor() 함수를 이용해 LED에 원하는 색깔의 빛을 나타낼 수 있습니다.

함수를 이용해 LED 색깔을 지정했다면 show() 함수를 이용해서 LED에 세팅해둔 값을 확인할 수 있습니다.

show() 함수를 사용하지 않으면 LED가 켜지지 않을 수 있으니 주의하세요!

(LED번호, R, G, B)의 값을 변경하여 다른 LED에 원하는 색깔의 빛을 나타내 확인해보세요.


LED의 R, G, B 값은 0부터 255까지의 값으로 나타낼 수 있습니다.

너무 눈이 부시다면 값을 조금 줄여보세요!!

2-2) LED 0번의 빛 세기를 조절해보기

이번에는 LED 0번의 빛 세기를 조정하여 천천히 밝아지도록 만들어 봅시다.


2-1. 실습1) LED에 R, G, B 색깔로 나타내기

반복문을 이용해 24개의 LED 모두에 빨강, 초록, 파랑으로 빛이 나타날 수 있도록 코딩해봅시다.


실습 코드 참고하기

실습1) LED에 R, G, B 색깔로 나타내기

#include <Adafruit_NeoPixel.h>

int PIN = 5;
int NUM_LEDS = 24;

Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);


void setup() {
  strip.begin();
}

int index = 0;
void loop() {
  for(int i=0; i<24; i+=3) {
    strip.setPixelColor(i, 255, 0, 0);
    strip.setPixelColor(i+1, 0, 255, 0);
    strip.setPixelColor(i+2, 0, 0, 255);
  }
  strip.show();
}