A base class for classes that control MAX7219 LED drivers.  
 More...
#include <AH/Hardware/LEDs/MAX7219_Base.hpp>
 | 
|   | MAX7219_Base (pin_t loadPin, uint8_t chainlength=1) | 
|   | Create a MAX7219_Base object.  More...
  | 
|   | 
| void  | init () | 
|   | Initialize the Arduino pins, SPI, and the MAX7219.  More...
  | 
|   | 
| void  | clear () | 
|   | Turn off all LEDs.  More...
  | 
|   | 
| void  | send (uint8_t digit, uint8_t value, uint8_t chip=0) | 
|   | Send the value to the given digit or row.  More...
  | 
|   | 
| void  | sendRowAll (uint8_t digit, const uint8_t *values, uint8_t leading_dim=1) | 
|   | Send values to the given digit or row, sending a different value for each chip.  More...
  | 
|   | 
| void  | sendAll (const uint8_t *values) | 
|   | Send different values to all digits/rows of all chips.  More...
  | 
|   | 
| void  | sendRawAll (uint8_t opcode, uint8_t value) | 
|   | Send the same raw opcode and value to all chips in the chain.  More...
  | 
|   | 
| void  | sendRaw (uint8_t opcode, uint8_t value, uint8_t chip=0) | 
|   | Send a raw opcode and value to the given MAX7219.  More...
  | 
|   | 
| void  | setIntensity (uint8_t intensity) | 
|   | Set the intensity of the LEDs of all chips.  More...
  | 
|   | 
| void  | setIntensity (uint8_t intensity, uint8_t chip) | 
|   | Set the intensity of the LEDs of a specific chip.  More...
  | 
|   | 
| uint8_t  | getChainLength () const | 
|   | Get the number of daisy-chained chips.  More...
  | 
|   | 
A base class for classes that control MAX7219 LED drivers. 
The SPI interface is used.
- Todo:
 - Wiring diagram for SPI connection. 
 
Definition at line 23 of file MAX7219_Base.hpp.
 
◆ MAX7219_Base()
◆ init()
◆ clear()
◆ send()
  
  
      
        
          | void send  | 
          ( | 
          uint8_t  | 
          digit,  | 
         
        
           | 
           | 
          uint8_t  | 
          value,  | 
         
        
           | 
           | 
          uint8_t  | 
          chip = 0  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Send the value to the given digit or row. 
- Parameters
 - 
  
    | digit | The digit or row to set [0, 7].  | 
    | value | The value to set the row to.  | 
    | chip | The chip to send the digit to.  | 
  
   
Definition at line 76 of file MAX7219_Base.hpp.
 
 
◆ sendRowAll()
  
  
      
        
          | void sendRowAll  | 
          ( | 
          uint8_t  | 
          digit,  | 
         
        
           | 
           | 
          const uint8_t *  | 
          values,  | 
         
        
           | 
           | 
          uint8_t  | 
          leading_dim = 1  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Send values to the given digit or row, sending a different value for each chip. 
The array is often a matrix containing the values for all rows of all chips in this chain. In that case, the leading dimension is 8, because each chip has 8 rows. 
[0] chip 0, row 0  ┐
[1] chip 0, row 1  │
[ ] ...            │ 8 elements between two chips
[7] chip 0, row 7  │
[8] chip 1, row 0  ┘
[9] chip 1, row 1
[ ] ...
If you just want to specify a single row for all chips, the leading dimension of the array is 1. 
[0] chip 0, row 0  ┐
[1] chip 1, row 0  ┘ 1 element between two chips
[2] chip 2, row 0
[ ] ...
- Parameters
 - 
  
    | digit | The digit or row to set [0, 7].  | 
    | values | The array of values to send.  | 
    | leading_dim | The leading dimension of the array of values.  | 
  
   
Definition at line 111 of file MAX7219_Base.hpp.
 
 
◆ sendAll()
  
  
      
        
          | void sendAll  | 
          ( | 
          const uint8_t *  | 
          values | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
Send different values to all digits/rows of all chips. 
The array layout should be as follows: 
[0] chip 0, row 0  ┐
[1] chip 0, row 1  │
[ ] ...            │ 8 elements between two chips
[7] chip 0, row 7  │
[8] chip 1, row 0  ┘
[9] chip 1, row 1
[ ] ...
The array has 8 * chainlength elements in total.
- Parameters
 - 
  
    | values | The array of values to send.  | 
  
   
Definition at line 142 of file MAX7219_Base.hpp.
 
 
◆ sendRawAll()
  
  
      
        
          | void sendRawAll  | 
          ( | 
          uint8_t  | 
          opcode,  | 
         
        
           | 
           | 
          uint8_t  | 
          value  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Send the same raw opcode and value to all chips in the chain. 
- Parameters
 - 
  
    | opcode | The opcode to send.  | 
    | value | The value to send.  | 
  
   
Definition at line 155 of file MAX7219_Base.hpp.
 
 
◆ sendRaw()
  
  
      
        
          | void sendRaw  | 
          ( | 
          uint8_t  | 
          opcode,  | 
         
        
           | 
           | 
          uint8_t  | 
          value,  | 
         
        
           | 
           | 
          uint8_t  | 
          chip = 0  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Send a raw opcode and value to the given MAX7219. 
- Parameters
 - 
  
    | opcode | The opcode to send.  | 
    | value | The value to send.  | 
    | chip | The chip to send the command to.  | 
  
   
Definition at line 176 of file MAX7219_Base.hpp.
 
 
◆ setIntensity() [1/2]
  
  
      
        
          | void setIntensity  | 
          ( | 
          uint8_t  | 
          intensity | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
Set the intensity of the LEDs of all chips. 
- Parameters
 - 
  
    | intensity | The intensity [0, 15].  | 
  
   
Definition at line 202 of file MAX7219_Base.hpp.
 
 
◆ setIntensity() [2/2]
  
  
      
        
          | void setIntensity  | 
          ( | 
          uint8_t  | 
          intensity,  | 
         
        
           | 
           | 
          uint8_t  | 
          chip  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Set the intensity of the LEDs of a specific chip. 
- Parameters
 - 
  
    | intensity | The intensity [0, 15].  | 
    | chip | The chip to set the intensity of.  | 
  
   
Definition at line 214 of file MAX7219_Base.hpp.
 
 
◆ getChainLength()
  
  
      
        
          | uint8_t getChainLength  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
◆ DECODEMODE
  
  
      
        
          | constexpr uint8_t DECODEMODE = 9 | 
         
       
   | 
  
staticconstexpr   | 
  
 
 
◆ INTENSITY
  
  
      
        
          | constexpr uint8_t INTENSITY = 10 | 
         
       
   | 
  
staticconstexpr   | 
  
 
 
◆ SCANLIMIT
  
  
      
        
          | constexpr uint8_t SCANLIMIT = 11 | 
         
       
   | 
  
staticconstexpr   | 
  
 
 
◆ SHUTDOWN
  
  
      
        
          | constexpr uint8_t SHUTDOWN = 12 | 
         
       
   | 
  
staticconstexpr   | 
  
 
 
◆ DISPLAYTEST
  
  
      
        
          | constexpr uint8_t DISPLAYTEST = 15 | 
         
       
   | 
  
staticconstexpr   | 
  
 
 
◆ loadPin
◆ chainlength
◆ settings
The documentation for this class was generated from the following file: