[모듈] 19장. 아두이노 WS2812B 네오픽셀 LED 모듈 코딩 페이스북 트위터 카카오톡 
작성자 관리자 등록일 2021-02-26 10:05:43 조회수 115

안녕하세요~ 인투피온입니다.


오늘은  WS2812B 네오픽셀 모듈 사용법에 대해서 알아보겠습니다.




WS2812 네오픽셀 모듈 동작. GIF





먼저 아래 그림에 보이는 검은색 칩은 WS2812으로


 GND, VDC, Data In, Data Out 4개의 핀 만 있으면 사용이 가능해요. 


이 칩은 daisy-chain으로 Data In과 Data Out를 통해 여러 개의 칩을 연결할 수 있어요.





WS2812






뒷면은 저렇게 납땜을 해주셔야 돼요. 케이블이나 핀에 더를 납땜해주시면 됩니다.






회로도





Fritzing 회로도




 네오픽셀 모듈

아두이노

 GND

GND 

 VDC

VCC 

 DI

D6 






코딩 및 동작





코딩하기에 앞서 먼저 라이브러리 추가를 해주셔야 돼요.


'Adafruit_NeoPixel'  를 검색하셔서 설치해주시면 됩니다.










1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <Adafruit_NeoPixel.h>
#define PIN 6  // DI 핀번호
#define N_LEDS 8 // 네오픽셀 LED 갯수
 
Adafruit_NeoPixel strip = Adafruit_NeoPixel(N_LEDS, PIN, NEO_GRB + NEO_KHZ800);   
//NEO_GRB <= 네오픽셀 타입 ,  NEO_KHZ800 <= 클럭 주파수
 
void setup() {
  strip.setBrightness(100);   // 네오픽셀 밝기
  strip.begin();  // 네오픽셀 시작
 
}
 
void loop() {
chase(strip.Color(50,255,50));
delay(150);
chase(strip.Color(50,50,255));
delay(150);
chase(strip.Color(255,50,50));
delay(150);
}
 
static void chase(uint32_t c) {
  for(uint16_t i=0; i<strip.numPixels()+4; i++) {
      strip.setPixelColor(i  , c); // i 번째 픽셀에 LED 색상 지정
      strip.setPixelColor(i-30); // i-3 픽셀에 색상 0을 지정하여 지움
      strip.show(); // 
      delay(10);
  }
cs







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <Adafruit_NeoPixel.h>
#define PIN 6  // DI 핀번호
#define N_LEDS 8 // 네오픽셀 LED 갯수
 
Adafruit_NeoPixel strip = Adafruit_NeoPixel(N_LEDS, PIN, NEO_GRB + NEO_KHZ800);   
//NEO_GRB <= 네오픽셀 타입 ,  NEO_KHZ800 <= 클럭 주파수
 
void setup() {
  strip.setBrightness(100);   // 네오픽셀 밝기
  strip.begin();  // 네오픽셀 시작
}
 
void loop() {
  int R = 0;
  int G = 0;
  int B = 0;
 
  R = 255;
  G = 0;
  for (int B = 0; B < 256 ; B+=50) {
    chase(strip.Color(R, G, 0));
    R -= 50;
    G += 50;
  }
 
  G = 255;
  B = 0;
  for (int R = 0; R < 256 ; R+=50) {
    chase(strip.Color(0, G, B));
    G -= 50;
    B += 50;
  }
 
  B = 255;
  R = 0;
  for (int G = 0; G < 256 ; G+=50) {
    chase(strip.Color(R, 0, B));
    B -= 50;
    R += 50;
  } 
 
 
}
 
static void chase(uint32_t c) {
  for (uint16_t i = 0; i < strip.numPixels() + 4; i++) {
    strip.setPixelColor(i  , c); // i 번째 픽셀에 LED 색상 지정
    strip.setPixelColor(i-30); // i-3 픽셀에 색상 0을 지정하여 지움
    strip.show();
    delay(80);
  }
  /*  랜덤 위치 그리기
      uint16_t i=random(0,8);
      uint16_t j=random(0,8);
      strip.setPixelColor(i  , c); // i 번째 픽셀에 LED 색상 지정
      strip.setPixelColor(j  , c); // j 번째 픽셀에 LED 색상 지정
      strip.show();
      strip.setPixelColor(i  , 0); // i 번째 픽셀지움
      strip.setPixelColor(j  , 0); // j 번째 픽셀지움
      delay(100);
   */
}
cs


 


위 소스 구동 결과. GIF




















    




아두이노 arduino 코딩 코딩예제 예제 code coding led 픽셀 네오픽셀 neo pixel ws2812 네오 adafruit 모듈 ws2812b 5050 rgb ged green blue  인투피온 intopion


다음글 20장. 아두이노 DS18B20 사용하기 관리자 2021-02-26 10:21
이전글 18장. 아두이노 도트 매트릭스 모듈(MAX7219) ... 관리자 2021-02-25 16:46
댓글(0)
로그인 또는 댓글권한이 있을 경우 등록하실 수 있습니다.

비밀번호 확인

댓글 등록시에 입력했던 비밀번호를 입력해 주세요.

비밀번호 확인

게시글 등록시에 입력했던 비밀번호를 입력해 주세요.
번호제목조회수
29 [모듈] 28장. 아두이노 조도센서 모듈 사용하기 14
28 [모듈] 27장. 아두이노 SHT20 온습도센서 사용하기 84
27 [모듈] test 0
26 [모듈] 26장. 아두이노 심박 펄스센서 사용하기 147
25 [모듈] 25장. 아두이노 4x4 멤브레인 키패드 응용편 58
24 [모듈] 24장. 아두이노 4X4 멤브레인 키패드 사용하기 73
23 [모듈] 23장. 아두이노와 앱인벤터를 통한 온습도 출력하기 113
22 [모듈] 22장. 아두이노 온습도센서 DHT 11 81
21 [모듈] 21장. 아두이노 앱 인벤터 LED 컨트롤하기 176
20 [모듈] 20장. 아두이노 DS18B20 사용하기 130
>> [모듈] 19장. 아두이노 WS2812B 네오픽셀 LED 모듈 ... 116
18 [모듈] 18장. 아두이노 도트 매트릭스 모듈(MAX7219) ... 79
17 [모듈] 17장. 아두이노 RFID(RC522) NFC 사용하기 116
16 [모듈] 16장. 아두이노 서보모터 사용하기 265
15 [모듈] 15장. 아두이노 스위치 사용하기 80
14 [모듈] 14장. 아두이노 조도센서 사용하기 133
13 [모듈] 13장. 아두이노 HC-SR501 인체 감지 경보기 85
12 [모듈] 12장. 아두이노 초음파 센서 거리측정기 72
11 [모듈] 11장. 초음파 센서를 활용한 접근금지 경보음 울리기 87
10 [모듈] 10장. 아두이노 초음파 센서를 이용한 선풍기 110

비밀번호 확인

게시글 등록시에 입력했던 비밀번호를 입력해 주세요.

비밀번호 확인

댓글/답글 등록시에 입력했던 비밀번호를 입력해 주세요.

CS CENTER

1644 - 4457

CUSTOMER SERVICE

주문/배송문의 쇼핑문의 이용안내 제품문의 1:1문의 자주하는질문

BANK INFO

신한은행 140 011 044291 예금주 (주)인투피온 소영삼
  • 회사소개 개인정보처리방침 이용약관 입점안내 광고안내 아이디/비밀번호찾기
  • 통장사본 파일다운 회사소개서 다운

(주)인투피온

대표:소영삼 사업자등록번호:113-86-29364 [사업자정보확인] 통신판매신고:2015-서울구로-1028

본사 : 서울 구로구 경인로 53길 90 STX W-Tower 1307호

매장 : 서울 구로구 경인로 53길 15 중앙유통단지 가동 3101호

전화번호 :1644-4457 팩스번호: 02-6124-4242 이메일: info@intopion.com / Hosting Provider : ㈜가비아씨엔에

개인정보관리책임자 : 이성민

회원님의 소중한 개인정보 보호를 위해 비밀번호를 주기적으로 변경하시는 것이 좋습니다.
현재 비밀번호
신규 비밀번호
신규 비밀번호 확인
6~20자, 영문 대소문자 또는 숫자 특수문자 중 2가지 이상 조합