Electronic Components Datasheet Search
  English  ▼

X  

WS2812 Datasheet(PDF) 71 Page - Raspberry Pi Holdings PLC

Part # WS2812
Description  Created by Phillip Burgess
PDF  98 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  RASPBERRY-PI [Raspberry Pi Holdings PLC]
Direct Link  https://www.raspberrypi.com/
Logo RASPBERRY-PI - Raspberry Pi Holdings PLC

WS2812 Datasheet(HTML) 71 Page - Raspberry Pi Holdings PLC

Back Button WS2812 Datasheet HTML 67Page - Raspberry Pi Holdings PLC WS2812 Datasheet HTML 68Page - Raspberry Pi Holdings PLC WS2812 Datasheet HTML 69Page - Raspberry Pi Holdings PLC WS2812 Datasheet HTML 70Page - Raspberry Pi Holdings PLC WS2812 Datasheet HTML 71Page - Raspberry Pi Holdings PLC WS2812 Datasheet HTML 72Page - Raspberry Pi Holdings PLC WS2812 Datasheet HTML 73Page - Raspberry Pi Holdings PLC WS2812 Datasheet HTML 74Page - Raspberry Pi Holdings PLC WS2812 Datasheet HTML 75Page - Raspberry Pi Holdings PLC Next Button
Zoom Inzoom in Zoom Outzoom out
 71 / 98 page
background image
Tiles don’t need to be square! The above is just one possible layout. The display shown at the top of this page is three
10x8 tiles assembled from NeoPixel strip.
Once the matrix is defined, the remainder of the project is similar to Adafruit_NeoPixel. Remember to use
matrix.begin() in the setup() function and matrix.show() to update the display after drawing. The setBrightness() function
is also available. The library includes a couple of example sketches for reference.
Other Layouts
For any other cases that are not uniformly tiled, you can provide your own function to remap X/Y coordinates to
NeoPixel strip indices. This function should accept two unsigned 16-bit arguments (pixel X, Y coordinates) and return an
unsigned 16-bit value (corresponding strip index). The simplest row-major progressive function might resemble this:
uint16_t myRemapFn(uint16_t x, uint16_t y) {
return WIDTH * y + x;
}
That’s a crude example. Yours might be designed for pixels arranged in a spiral (easy wiring), or a Hilbert curve.
The function is then enabled using setRemapFunction():
matrix.setRemapFunction(myRemapFn);
RAM Again
On a per-pixel basis, Adafruit_NeoMatrix is no more memory-hungry than Adafruit_NeoPixel, requiring 3 bytes of RAM
per pixel. But the number of pixels in a two-dimensional display takes off exponentially…a 16x16 display requires
four
times the memory of an 8x8 display, or about 768 bytes of RAM (nearly half the available space on an Arduino Uno). It
can be anywhere from
tricky to impossible to combine large displays with memory-hungry libraries such as SD or ffft.
Gamma Correction
Because the Adafruit_GFX library was originally designed for LCDs (having limited color fidelity), it handles colors as
16-bit values (rather than the full 24 bits that NeoPixels are capable of). This is not the big loss it might seem. A quirk of
human vision makes bright colors less discernible than dim ones. The Adafruit_NeoMatrix library uses
gamma
correction to select brightness levels that are visually (though not numerically) equidistant. There are 32 levels for red
and blue, 64 levels for green.
© Adafruit Industries
https://learn.adafruit.com/adafruit-neopixel-uberguide
Page 74 of 101



Html Pages

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 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98


Datasheet Download

Go To PDF Page


Link URL



Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Contact us   |   Privacy Policy   |   Link to Datasheet    |   Link Exchange   |   Manufacturer List
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com