Кому надо будет вывести большой шрифт на данном дисплее, можно воспользоваться данным примером
https://github.com/Floyd-Fish/ST7789-ST ... 9/st7789.c
Только я добавил шрифты и совсем немного изменил функцию их вывода
Код: Выделить всё
#define BG_COLOR 0x1234
#define TEXT_COLOR 0x5678
#define NUM_COLOR 0x5678
#define BLK_Pin GPIO_PIN_11
#define BLK_GPIO_Port GPIOA
//#define DC_Pin GPIO_PIN_3
//#define DC_GPIO_Port GPIOA
//#define RES_Pin GPIO_PIN_2
//#define RES_GPIO_Port GPIOA
Код: Выделить всё
// START DELAY
HAL_Delay(250);
// LCD BACKLIGHT RESET
HAL_GPIO_WritePin(BLK_GPIO_Port, BLK_Pin, GPIO_PIN_RESET);
// LCD START
ST7789_Init();
ST7789_Fill_Color(BG_COLOR);
ST7789_WriteChar_64_96(15, 15, '0', Font_64x96, NUM_COLOR, BG_COLOR);
ST7789_WriteChar_64_96(75, 15, '0', Font_64x96, NUM_COLOR, BG_COLOR);
ST7789_WriteChar_32_48(150, 20, '0', Font_32x48, NUM_COLOR, BG_COLOR);
ST7789_WriteChar_32_48(185, 20, '0', Font_32x48, NUM_COLOR, BG_COLOR);
ST7789_WriteChar_24_32(175, 70, '0', Font_24x32, TEXT_COLOR, BG_COLOR);
ST7789_WriteChar_24_32(150, 70, '0', Font_24x32, TEXT_COLOR, BG_COLOR);
ST7789_WriteChar_24_32(195, 70, '0', Font_24x32, TEXT_COLOR, BG_COLOR);
// LCD BACKLIGHT SET
HAL_GPIO_WritePin(BLK_GPIO_Port, BLK_Pin, GPIO_PIN_SET);
Для генерации шрифтов использовал matrixFont-x64-Portable, для правильного вывода шрифта надо подобрать настройки генерации.
Была некая проблема, дисплей не всегда запускался, уменьшение скорости SPI и увеличение задержек при запуске результатов не дало. Помогло дублирование функции инициализации ST7789_Init(); через задержку. Как это можно исправить не знаю.
С SPI тоже есть неоднозначность, настройки из большинства примеров не подошли, их тоже надо подбирать под дисплей. По-моему какая-то одна, вроде на какой фронт клока считывать байты