mirror of
https://github.com/Makuna/NeoPixelBus.git
synced 2025-08-07 12:54:26 +02:00
Updated NeoPixelBus object (markdown)
@@ -8,7 +8,7 @@ Below is an example to create one for the all platforms. It will manage 16 pixe
|
||||
```
|
||||
NeoPixelBus<NeoGrbFeature, Neo800KbpsMethod> strip(16, 2);
|
||||
```
|
||||
And this will create one that is compatible with an ESP-01. It will manage 32 pixels, but due to the method being hardware limited, the pin value passed in is ignored.
|
||||
And this will create one that is compatible with an ESP-01. It will manage 32 pixels, but due to the method being hardware limited, the pin value passed in is ignored. For more details, see NeoEsp8266Uart800KbpsMethod below.
|
||||
```
|
||||
NeoPixelBus<NeoGrbFeature, NeoEsp8266Uart800KbpsMethod> strip(32, 2);
|
||||
```
|
||||
@@ -19,10 +19,10 @@ Currently there are only a few sizes and color formats.
|
||||
If there is demand, support for others can easily be requested by creating an issue on GitHub.
|
||||
|
||||
## NeoGrbFeature
|
||||
A three element color in the order of Green, Red, and then Blue. The most common three element format.
|
||||
A three element color in the order of Green, Red, and then Blue. The most common three element format. This is used for SK6812(grb), WS2811, and WS2812.
|
||||
|
||||
## NeoRgbwFeature
|
||||
A four element color in the order of Red, Green, Blue, and then White. The most common four element format.
|
||||
A four element color in the order of Red, Green, Blue, and then White. The most common four element format. This is used for SK6812rgbw pixels that have the separate white led in them.
|
||||
|
||||
## NeoRgbFeature
|
||||
A three element color in the order of Red, Green, and then Blue. Some older pixels used this.
|
||||
@@ -35,7 +35,8 @@ These platform methods will define "how" the pixels are updated. While primaril
|
||||
|
||||
## Neo800KbpsMethod
|
||||
The Neo800KbpsMethod is the standard one to use with most Arduino boards.
|
||||
It will automatically pick board specific defaults and this should be the one used unless otherwise needed.
|
||||
It will automatically pick board specific defaults and this should be the one used unless otherwise needed.
|
||||
For Esp8266, this has a Pin restriction, so please see NeoEsp8266Dma800KbpsMethod below.
|
||||
|
||||
## Neo400KbpsMethod
|
||||
Same as Neo800KbpsMethod but running at the older and slower data rate.
|
||||
@@ -43,9 +44,8 @@ Same as Neo800KbpsMethod but running at the older and slower data rate.
|
||||
## NeoEsp8266Dma800KbpsMethod
|
||||
The NeoEsp8266Dma800KbpsMethod is the underlying method that gets used if you use Neo800KbpsMethod on Esp8266 platforms. There should be no need to use it directly.
|
||||
The NeoEsp8266Dma800KbpsMethod only supports the RDX0/GPIO3 pin. The Pin value passed into the constructor is ignored.
|
||||
This method uses very little CPU for actually sending the data to NeoPixels but it requires an extra buffer for the DMA to read from.
|
||||
Thus there is a trade off of CPU use versus memory use. The extra buffer needed is four times the size of the primary pixel buffer.
|
||||
It also requires the use of the RDX0/GPIO3 pin which is not exposed on the ESP-01.
|
||||
This method uses very little CPU for actually sending the data to NeoPixels but it requires an extra buffer for the DMA to read from. Thus there is a trade off of CPU use versus memory use. The extra buffer needed is four times the size of the primary pixel buffer.
|
||||
It also requires the use of the RDX0/GPIO3 pin which is not exposed on the ESP-01. See other esp8266 methods below if you don't have this pin available.
|
||||
Thanks to g3gg0.de for porting the initial DMA support from the original. The original was located at https://github.com/cnlohr/esp8266ws2812i2s. It has been modified dramatically since those originals but credit is due.
|
||||
|
||||
## NeoEsp8266Dma400KbpsMethod
|
||||
|
Reference in New Issue
Block a user