@@ -162,6 +162,31 @@ extern "C" {
162162#define ST77XX_PARAM_IF_PAR
163163#endif
164164
165+ #if MODULE_LCD_PARALLEL_16BIT || DOXYGEN
166+ /** Additional default interface params if MCU 8080 16-bit parallel interface is enabled */
167+ #define ST77XX_PARAM_IF_PAR_16BIT .d8_pin = ST77XX_PARAM_D8, \
168+ .d9_pin = ST77XX_PARAM_D9, \
169+ .d10_pin = ST77XX_PARAM_D10, \
170+ .d11_pin = ST77XX_PARAM_D11, \
171+ .d12_pin = ST77XX_PARAM_D12, \
172+ .d13_pin = ST77XX_PARAM_D13, \
173+ .d14_pin = ST77XX_PARAM_D14, \
174+ .d15_pin = ST77XX_PARAM_D15,
175+ #else
176+ #define ST77XX_PARAM_IF_PAR_16BIT
177+ #endif
178+
179+ #if MODULE_LCD_PARALLEL_16BIT || DOXYGEN
180+ /** Interface mode is MCU 8080 16-bit parallel */
181+ #define ST77XX_PARAM_IF_MODE .mode = LCD_IF_PARALLEL_16BIT,
182+ #elif MODULE_LCD_PARALLEL
183+ /** Interface mode is MCU 8080 8-bit parallel */
184+ #define ST77XX_PARAM_IF_MODE .mode = LCD_IF_PARALLEL_8BIT,
185+ #else
186+ /** Interface mode parameter is not defined */
187+ #define ST77XX_PARAM_IF_MODE
188+ #endif
189+
165190/**
166191 * @brief Default params
167192 *
@@ -174,9 +199,11 @@ extern "C" {
174199 * for displays with MCU 8080 8-/16-bit parallel interfaces.
175200 */
176201#ifndef ST77XX_PARAMS
177- #define ST77XX_PARAMS { .cntrl = ST77XX_PARAM_CNTRL, \
202+ #define ST77XX_PARAMS { ST77XX_PARAM_IF_MODE \
178203 ST77XX_PARAM_IF_SPI \
179204 ST77XX_PARAM_IF_PAR \
205+ ST77XX_PARAM_IF_PAR_16BIT \
206+ .cntrl = ST77XX_PARAM_CNTRL, \
180207 .cs_pin = ST77XX_PARAM_CS, \
181208 .dcx_pin = ST77XX_PARAM_DCX, \
182209 .rst_pin = ST77XX_PARAM_RST, \
0 commit comments