24#include "st7735_params.h"
41#ifdef ST7735_PARAM_SPI
42#define ST77XX_PARAM_SPI ST7735_PARAM_SPI
44#ifdef ST7735_PARAM_SPI_CLK
45#define ST77XX_PARAM_SPI_CLK ST7735_PARAM_SPI_CLK
48#define ST77XX_PARAM_CS ST7735_PARAM_CS
50#ifdef ST7735_PARAM_DCX
51#define ST77XX_PARAM_DCX ST7735_PARAM_DCX
53#ifdef ST7735_PARAM_RST
54#define ST77XX_PARAM_RST ST7735_PARAM_RST
56#ifdef ST7735_PARAM_SPI_MODE
57#define ST77XX_PARAM_SPI_MODE ST7735_PARAM_SPI_MODE
59#ifdef ST7735_PARAM_RGB
60#define ST77XX_PARAM_RGB ST7735_PARAM_RGB
62#ifdef ST7735_PARAM_INVERTED
63#define ST77XX_PARAM_INVERTED ST7735_PARAM_INVERTED
65#ifdef ST7735_PARAM_NUM_LINES
66#define ST77XX_PARAM_NUM_LINES ST7735_PARAM_NUM_LINES
68#ifdef ST7735_PARAM_RGB_CHANNELS
69#define ST77XX_PARAM_RGB_CHANNELS ST7735_PARAM_RGB_CHANNELS
71#ifdef ST7735_PARAM_ROTATION
72#define ST77XX_PARAM_ROTATION ST7735_PARAM_ROTATION
74#ifdef ST7735_PARAM_OFFSET_X
75#define ST77XX_PARAM_OFFSET_X ST7735_PARAM_OFFSET_X
77#ifdef ST7735_PARAM_OFFSET_Y
78#define ST77XX_PARAM_OFFSET_Y ST7735_PARAM_OFFSET_Y
81#define ST77XX_PARAMS ST7735_PARAMS
83#ifdef ST7735_PARAM_SCREEN_IDS
84#define ST77XX_PARAM_SCREEN_IDS ST7735_PARAM_SCREEN_IDS
93#ifndef ST77XX_PARAM_CNTRL
94#define ST77XX_PARAM_CNTRL ST77XX_CNTRL_ST7735
96#ifndef ST77XX_PARAM_SPI
97#define ST77XX_PARAM_SPI SPI_DEV(0)
99#ifndef ST77XX_PARAM_SPI_CLK
100#define ST77XX_PARAM_SPI_CLK SPI_CLK_5MHZ
102#ifndef ST77XX_PARAM_CS
103#define ST77XX_PARAM_CS GPIO_PIN(2, 2)
105#ifndef ST77XX_PARAM_DCX
106#define ST77XX_PARAM_DCX GPIO_PIN(3, 13)
108#ifndef ST77XX_PARAM_RST
109#define ST77XX_PARAM_RST GPIO_UNDEF
111#ifndef ST77XX_PARAM_SPI_MODE
112#define ST77XX_PARAM_SPI_MODE SPI_MODE_0
114#ifndef ST77XX_PARAM_RGB
115#define ST77XX_PARAM_RGB 0
117#ifndef ST77XX_PARAM_INVERTED
118#define ST77XX_PARAM_INVERTED 0
120#ifndef ST77XX_PARAM_NUM_LINES
121#define ST77XX_PARAM_NUM_LINES 160U
123#ifndef ST77XX_PARAM_RGB_CHANNELS
124#define ST77XX_PARAM_RGB_CHANNELS 128U
126#ifndef ST77XX_PARAM_ROTATION
127#define ST77XX_PARAM_ROTATION ST77XX_ROTATION_HORZ
129#ifndef ST77XX_PARAM_OFFSET_X
130#define ST77XX_PARAM_OFFSET_X 0
132#ifndef ST77XX_PARAM_OFFSET_Y
133#define ST77XX_PARAM_OFFSET_Y 0
136#if MODULE_LCD_SPI || DOXYGEN
138#define ST77XX_PARAM_IF_SPI .spi = ST77XX_PARAM_SPI, \
139 .spi_clk = ST77XX_PARAM_SPI_CLK, \
140 .spi_mode = ST77XX_PARAM_SPI_MODE,
142#define ST77XX_PARAM_IF_SPI
145#if MODULE_LCD_PARALLEL || DOXYGEN
147#define ST77XX_PARAM_IF_PAR .d0_pin = ST77XX_PARAM_D0, \
148 .d1_pin = ST77XX_PARAM_D1, \
149 .d2_pin = ST77XX_PARAM_D2, \
150 .d3_pin = ST77XX_PARAM_D3, \
151 .d4_pin = ST77XX_PARAM_D4, \
152 .d5_pin = ST77XX_PARAM_D5, \
153 .d6_pin = ST77XX_PARAM_D6, \
154 .d7_pin = ST77XX_PARAM_D7, \
155 .wrx_pin = ST77XX_PARAM_WRX, \
156 .rdx_pin = ST77XX_PARAM_RDX,
158#define ST77XX_PARAM_IF_PAR
161#if MODULE_LCD_PARALLEL_16BIT || DOXYGEN
163#define ST77XX_PARAM_IF_PAR_16BIT .d8_pin = ST77XX_PARAM_D8, \
164 .d9_pin = ST77XX_PARAM_D9, \
165 .d10_pin = ST77XX_PARAM_D10, \
166 .d11_pin = ST77XX_PARAM_D11, \
167 .d12_pin = ST77XX_PARAM_D12, \
168 .d13_pin = ST77XX_PARAM_D13, \
169 .d14_pin = ST77XX_PARAM_D14, \
170 .d15_pin = ST77XX_PARAM_D15,
172#define ST77XX_PARAM_IF_PAR_16BIT
175#if MODULE_LCD_PARALLEL_16BIT || DOXYGEN
177#define ST77XX_PARAM_IF_MODE .mode = LCD_IF_PARALLEL_16BIT,
178#elif MODULE_LCD_PARALLEL
180#define ST77XX_PARAM_IF_MODE .mode = LCD_IF_PARALLEL_8BIT,
183#define ST77XX_PARAM_IF_MODE
198#define ST77XX_PARAMS { ST77XX_PARAM_IF_MODE \
199 ST77XX_PARAM_IF_SPI \
200 ST77XX_PARAM_IF_PAR \
201 ST77XX_PARAM_IF_PAR_16BIT \
202 .cs_pin = ST77XX_PARAM_CS, \
203 .dcx_pin = ST77XX_PARAM_DCX, \
204 .rst_pin = ST77XX_PARAM_RST, \
205 .rgb = ST77XX_PARAM_RGB, \
206 .inverted = ST77XX_PARAM_INVERTED, \
207 .lines = ST77XX_PARAM_NUM_LINES, \
208 .rgb_channels = ST77XX_PARAM_RGB_CHANNELS, \
209 .rotation = ST77XX_PARAM_ROTATION, \
210 .offset_x = ST77XX_PARAM_OFFSET_X, \
211 .offset_y = ST77XX_PARAM_OFFSET_Y, \
212 .cntrl = ST77XX_PARAM_CNTRL, \
220#ifndef ST77XX_PARAM_SCREEN_IDS
221#define ST77XX_PARAM_SCREEN_IDS 0
243#define ST77XX_NUMOF ARRAY_SIZE(st77xx_params)
247#define ST77XX_SCREEN_NUMOF ARRAY_SIZE(st77xx_screen_ids)
static const lcd_params_t st77xx_params[]
Configure LCD.
static const uint8_t st77xx_screen_ids[]
Configure screen identifiers.
#define ST77XX_PARAM_SCREEN_IDS
Default screen identifiers.
#define ST77XX_PARAMS
Default params.
Device initialization parameters.