The seesaw has built in NeoPixel support for up to 63 pixels (RGB pixels, less if RGBW). The output pin as well as the communication protocol frequency are configurable.
The module base register address for the NeoPixel module is 0x0E.
Function Registers
Register Address |
Register Name |
Register Size |
Notes |
0x01 |
PIN |
8 bits |
Write Only |
0x02 |
SPEED |
8 bits |
Write Only |
0x03 |
BUF_LENGTH |
16 bits |
Write Only |
0x04 |
BUF |
32 bytes |
Write Only |
0x05 |
SHOW |
none |
Write Only |
PIN (0x01, 8bits, Write Only)
This register sets the pin number (PORTA) that is used for the NeoPixel output.
SPEED (0x02, 8bits, Write Only)
The protocol speed.
0x00 = 400khz
0x01 = 800khz (default)
BUF_LENGTH (0x03, 16bits, Write Only)
the number of bytes currently used for the pixel array. This is dependent on when the pixels you are using are RGB or RGBW.
BUF (0x04, 32 bytes, Write Only)
The data buffer. The first 2 bytes are the start address, and the data to write follows. Data should be written in blocks of maximum size 30 bytes at a time.
Bytes 0 - 1 |
Bytes 2 - 32 |
Start address |
Data |