37#define SBK_MAX72xx_IS_DEFINED
90 return _defaultRowBufferSize;
159 void clear(uint8_t devIdx);
181 void setLed(uint8_t devIdx, uint8_t rowIdx, uint8_t colIdx,
bool state);
203 bool getLed(uint8_t devIdx, uint8_t rowIdx, uint8_t colIdx)
const;
212 void setCol(uint8_t devIdx, uint8_t colIdx, uint8_t value);
235 void show(uint8_t devIdx);
238 void _spiTransfer(uint8_t targetDevice, uint8_t opcode, uint8_t data);
239 void _writeColToAllDevices(uint8_t targetDevice, uint8_t colIdx, uint8_t data);
240 inline uint8_t _bitMaskRow(uint8_t devIdx, uint8_t rowIdx)
const;
241 inline uint8_t _colIndex(uint8_t devIdx, uint8_t colIdx)
const;
243 const uint8_t _dataPin;
244 const uint8_t _clkPin;
245 const uint8_t _csPin;
246 const uint8_t _devsNum = 1;
248 static constexpr uint8_t _defaultRowBufferSize = 8;
249 static constexpr uint8_t _defaultColBufferSize = 8;
253 uint32_t _spiClock = 1000000;
void setLed(uint8_t devIdx, uint8_t rowIdx, uint8_t colIdx, bool state)
Set the state of a specific LED in the device’s internal matrix buffer.
Definition SBK_MAX72xxHard.cpp:126
uint8_t devsNum() const
Return the number of actives driver devices.
Definition SBK_MAX72xxHard.h:152
void clear()
Clear display buffers and hardware for all devices.
Definition SBK_MAX72xxHard.cpp:118
void setShutdown(uint8_t devIdx, bool status)
Enable or disable shutdown mode on a specific device.
Definition SBK_MAX72xxHard.cpp:86
bool getLed(uint8_t devIdx, uint8_t rowIdx, uint8_t colIdx) const
Get the state of a specific LED in the device’s internal matrix buffer.
Definition SBK_MAX72xxHard.cpp:152
void end()
Set SPI clock speed (hardware SPI only).
Definition SBK_MAX72xxHard.cpp:56
void setSPIClock(uint32_t frequency)
Set SPI clock speed (hardware SPI only).
Definition SBK_MAX72xxHard.cpp:51
uint8_t maxSegments(uint8_t devIdx=0) const
Returns the total number of addressable LED segments for this device.
Definition SBK_MAX72xxHard.h:116
uint8_t maxColumns() const
Returns the number of addressable columns (cathode outputs = DIGx).
Definition SBK_MAX72xxHard.h:101
uint8_t maxRows(uint8_t devIdx=0) const
Returns the number of addressable row lines (anode outputs = SEGx).
Definition SBK_MAX72xxHard.h:87
void setScanLimit(uint8_t devIdx, uint8_t limit)
Set the scan limit (number of active digits) for a specific device.
Definition SBK_MAX72xxHard.cpp:91
void begin()
Initialize SPI pins and all MAX72xx chips.
Definition SBK_MAX72xxHard.cpp:68
void setBrightness(uint8_t devIdx, uint8_t brightness)
Set display brightness for a specific device.
Definition SBK_MAX72xxHard.cpp:96
void show()
Push the internal display buffer to all connected devices.
Definition SBK_MAX72xxHard.cpp:172
SBK_MAX72xxHard(uint8_t csPin, uint8_t devsNum=1)
Construct a new hardware SPI SBK_MAX72xxHard driver instance.
Definition SBK_MAX72xxHard.cpp:39
void setCol(uint8_t devIdx, uint8_t colIdx, uint8_t value)
Set the entire col value for a specific device (buffer only).
Definition SBK_MAX72xxHard.cpp:160