#include "include/log.h" #include "src/leddriver/rpi_leddriver.h" #include "src/common.h" #define CHAN_MAXLEDS 60 // Maximum number of LEDs per channel #define LED_NCHANS 8 // Number of LED channels (8 or 16) #define TX_TEST 0 // If non-zero, use dummy Tx data #define LED_NBITS 24 // Number of data bits per LED #define LED_PREBITS 4 // Number of zero bits before LED data #define LED_POSTBITS 4 // Number of zero bits after LED data #define BIT_NPULSES 3 // Number of O/P pulses per LED bit // Length of data for 1 row (1 LED on each channel) #define LED_DLEN (LED_NBITS * BIT_NPULSES) // Transmit data type, 8 or 16 bits #if LED_NCHANS > 8 typedef uint16_t TXDATA_T; #else typedef uint8_t TXDATA_T; #endif // Ofset into Tx data buffer, given LED number in chan #define LED_TX_OSET(n) (LED_PREBITS + (LED_DLEN * (n))) // Size of data buffers & NV memory, given number of LEDs per chan #define TX_BUFF_LEN(n) (LED_TX_OSET(n) + LED_POSTBITS) #define TX_BUFF_SIZE(n) (TX_BUFF_LEN(n) * sizeof(TXDATA_T)) #define VC_MEM_SIZE (PAGE_SIZE + TX_BUFF_SIZE(CHAN_MAXLEDS)) extern TXDATA_T tx_buffer[TX_BUFF_LEN(CHAN_MAXLEDS)]; extern TXDATA_T *txdata; extern MEM_MAP vc_mem;