Skip to content

Commit c979ee0

Browse files
updated README
1 parent 69c15ac commit c979ee0

File tree

1 file changed

+5
-9
lines changed

1 file changed

+5
-9
lines changed

README.md

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -50,12 +50,12 @@ Other similar designs can be used with this library. Common variations would be:
5050
This library has three general facets: image handling, matrix driver, and animation management.
5151

5252
### Image Handling
53-
All image drawing is handled by the [Adafruit GFX API](https://learn.adafruit.com/adafruit-gfx-graphics-library/). Please refer to its documentation for information on how to draw an image to a matrix.
53+
All image drawing is handled by the [Adafruit GFX API](https://learn.adafruit.com/adafruit-gfx-graphics-library/). Please refer to its documentation for information on how to draw an image to a matrix.
5454

5555
For RGB color matrices, there are two color modes supported: 9 bit and 16 bit color. Color for the image is represented by a `RGBColorType` value. When the preprocessor macro `SIXTEEN_BIT_COLOR` is defined to `1`, `RGBColorType` will use following bit layout (notice green gets 6 bits while red and blue each get 5 bits):
5656

5757
```
58-
Bits 0 4 8 12
58+
Bits 0 4 8 12
5959
|---|---|---|---
6060
RRRRRGGGGGGBBBBB
6161
@@ -124,13 +124,13 @@ In addition to the basic options listed above, when constructing an `RGBLEDMatri
124124
125125
### Animation Management
126126
#### TimerAction
127-
A `TimerAction` object allows you to manage a variably timed action in a manner that does not require the use of a clock interrupt. Since timer interrupts are not used, the timing of action may not be precise, so this class should only be used for actions that are not sensitive to some variability in the action timing. The object has a `loop()` method that should be called in every call to the global `loop()` method.
127+
A `TimerAction` object allows you to manage a variably timed action in a manner that does not require the use of a clock interrupt. Since timer interrupts are not used, the timing of action may not be precise, so this class should only be used for actions that are not sensitive to some variability in the action timing. The object has a `loop()` method that should be called in every call to the global `loop()` method.
128128
129129
## Usage
130130
The basic pattern of usage is:
131131
132132
1. Create a `LEDMatrix` or `RGBLEDMatrix` matrix object passing the appropriate arguments
133-
1. In the global `setup()` method, call the `setup()` method of the matrix object to initialize all fields. Then call `startScanning()` on the matrix object to cause bits to be transmitted to the shift registers in the matrix.
133+
1. In the global `setup()` method, call the `setup()` method of the matrix object to initialize all fields. Then call `startScanning()` on the matrix object to cause bits to be transmitted to the shift registers in the matrix.
134134
1. Draw to the the matrix object using the [Adafruit GFX API](https://learn.adafruit.com/adafruit-gfx-graphics-library/), but do call the `startDrawing()` matrix object method prior to any drawing, and balance the call with a call to `stopDrawing()` on the matrix object. These method prevent the image display on the matrix's LEDs from being altered while you are drawing to to the image buffer.
135135
1. Call the matrix object's `loop()` method in the global `loop()` function.
136136
@@ -139,7 +139,7 @@ The basic pattern of usage is:
139139
## Driver Boards
140140
### Arduino ATmega Boards
141141
142-
The default wiring for connecting the RGB LED Matrix to an Arduino using the ATmega328 micro-controller (e.g., Uno, Nano, etc) is:
142+
The default wiring for connecting the RGB LED Matrix to an Arduino using the ATmega328 micro-controller (e.g., Uno, Nano, etc) is, and the Arduino Uno R4:
143143
144144
| LED Matrix Connection | Arduino Uno/Nano Pin | Mega 2560 Pin | Notes |
145145
|:-:|:-:|:-:|---|
@@ -167,10 +167,6 @@ ESP8266 and ESP32 boards are generally 3.3v logic level boards. The default wiri
167167
| **CLK** | D5 | D5 | 18 | D18 | SPI SCK / HSCLK |
168168
| **LATCH** | D8 | D8 | 5 | D5 | SS / HCS |
169169
170-
### Arduino Uno R4 Boards
171-
172-
The Uno R4 Minima and WiFi variants use Renesas' 48 MHz RA4M1 microcontroller and expose 3.3 V GPIO. The library now ships with a dedicated `FspTimer` backend that keeps the scan cadence identical to the existing AVR implementation, so sketches written for the classic Uno can be recompiled for the Uno R4 without modification. Level-shift the SPI, latch, and optional blanking lines to 5 V when you drive LED matrices that expect the higher voltage, using the same approaches described in the [3.3 V logic level](#33v-logic-level) section.
173-
174170
### 3.3v Logic Level
175171
To use the RGB LED Matrices designed in this project with micro-controller boards that use a 3.3V logic level, you must convert the 3.3V logic signals to 5V levels to work with the shift registers. You can easily use a 74HCT125 buffer/line driver chip to do this transformation. For example, you can wire a Teensy 3.6, which is a 3.3v device, to a 74HCT125 chip in the manner shown in the diagram below to get all power and signal lines required to drive the RGB LED Matrix while the Teensy is connected to USB power:
176172

0 commit comments

Comments
 (0)