不韋 呂 / Mbed 2 deprecated Demo_WS2812B_SPI

Dependencies:   UIT_WS2812B mbed

Committer:
MikamiUitOpen
Date:
Mon Sep 26 02:06:16 2016 +0000
Revision:
3:221db7d7ad6b
Parent:
2:dd3a46973368
Child:
4:3e09f47b3c42
4

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:09d17442936b 1 //----------------------------------------------------
MikamiUitOpen 0:09d17442936b 2 // WS2812B クラスの使用例
MikamiUitOpen 0:09d17442936b 3 //
MikamiUitOpen 3:221db7d7ad6b 4 // 2016/09/26, Copyright (c) 2016 MIKAMI, Naoki
MikamiUitOpen 0:09d17442936b 5 //----------------------------------------------------
MikamiUitOpen 0:09d17442936b 6
MikamiUitOpen 0:09d17442936b 7 #include "mbed.h"
MikamiUitOpen 0:09d17442936b 8
MikamiUitOpen 0:09d17442936b 9 #include "ws2812B.hpp"
MikamiUitOpen 0:09d17442936b 10 using namespace Mikami;
MikamiUitOpen 0:09d17442936b 11
MikamiUitOpen 0:09d17442936b 12 //WS2812B myLed_(D11); // SPI1
MikamiUitOpen 0:09d17442936b 13 //WS2812B myLed_(A4); // F446RE: SPI2
MikamiUitOpen 2:dd3a46973368 14 //WS2812B myLed_(PB_15); // SPI2
MikamiUitOpen 2:dd3a46973368 15 WS2812B myLed_(D4); // F401RE: SPI1, F446RE: SPI3
MikamiUitOpen 0:09d17442936b 16 //WS2812B myLed_(D4, true); // SPI3
MikamiUitOpen 0:09d17442936b 17
MikamiUitOpen 0:09d17442936b 18 int main()
MikamiUitOpen 0:09d17442936b 19 {
MikamiUitOpen 0:09d17442936b 20 myLed_.Clear(8);
MikamiUitOpen 0:09d17442936b 21 wait(0.5f);
MikamiUitOpen 0:09d17442936b 22 myLed_.Write(0x0F0F0F); // G + R + B,強度小
MikamiUitOpen 3:221db7d7ad6b 23 myLed_.Write(0xFF0000); // G
MikamiUitOpen 0:09d17442936b 24 myLed_.Write(0x00FF00); // R
MikamiUitOpen 0:09d17442936b 25 myLed_.Write(0x0000FF); // B
MikamiUitOpen 0:09d17442936b 26 myLed_.Write(0x00FFFF); // R + B
MikamiUitOpen 0:09d17442936b 27 myLed_.Write(0xFFFF00); // G + R
MikamiUitOpen 0:09d17442936b 28 myLed_.Write(0xFF00FF); // G + B
MikamiUitOpen 0:09d17442936b 29 myLed_.Write(0xFFFFFF); // G + R + B
MikamiUitOpen 3:221db7d7ad6b 30 wait(0.5f);
MikamiUitOpen 3:221db7d7ad6b 31
MikamiUitOpen 3:221db7d7ad6b 32 // 全部を R + B に
MikamiUitOpen 3:221db7d7ad6b 33 myLed_.Write(0x00FFFF, 8); // R + B
MikamiUitOpen 3:221db7d7ad6b 34 wait(0.5f);
MikamiUitOpen 0:09d17442936b 35
MikamiUitOpen 3:221db7d7ad6b 36 // 点灯色を順に変化させる
MikamiUitOpen 3:221db7d7ad6b 37 uint32_t data[] = { 0x0F0F0F, 0xFF0000, 0x00FF00, 0x0000FF,
MikamiUitOpen 3:221db7d7ad6b 38 0x00FFFF, 0xFFFF00, 0xFF00FF, 0xFFFFFF};
MikamiUitOpen 3:221db7d7ad6b 39 int k = 0;
MikamiUitOpen 3:221db7d7ad6b 40 while (true)
MikamiUitOpen 3:221db7d7ad6b 41 {
MikamiUitOpen 3:221db7d7ad6b 42 for (int n=0; n<8; n++)
MikamiUitOpen 3:221db7d7ad6b 43 myLed_.Write(data[(k+n) & 0x7]);
MikamiUitOpen 3:221db7d7ad6b 44 k = ++k & 0x07;
MikamiUitOpen 3:221db7d7ad6b 45 wait(0.5f);
MikamiUitOpen 3:221db7d7ad6b 46 }
MikamiUitOpen 0:09d17442936b 47 }