Кремень КД Реклама
Кремень КМ Реклама

Подключение экрана TFT 2.8 к плате SKR V1.3 (MARLIN)

bmk74
Идет загрузка
Загрузка
06.06.2021
9384
49
Техничка

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

28

Здравствуйте уважаемое сообщество. Хочу поделиться с вами информацией как подключить Подключение экрана TFT 2.8 к плате SKR V1.3 (MARLIN)Вот такой дисплей к плате SKR V1.3 с прошивкой Marlin. При этом если взять дисплей с тачем то и управлять принтером тоже вполне получиться.

Особо сложного в подключении такого дисплея нету, нужно будет подредактировать конфиг самой платы и два файла с конфигурацией.

Для начала идем в файл Configuration.h 

и ищем вот такие строки

//=============================================================================

//=============================== Graphical TFTs ==============================

//=============================================================================

/**

 * TFT Type - Select your Display type

 *

 * Available options are:

 * MKS_TS35_V2_0,

 * MKS_ROBIN_TFT24, MKS_ROBIN_TFT28, MKS_ROBIN_TFT32, MKS_ROBIN_TFT35,

 * MKS_ROBIN_TFT43, MKS_ROBIN_TFT_V1_1R

 * TFT_TRONXY_X5SA, ANYCUBIC_TFT35, LONGER_LK_TFT28

 * TFT_GENERIC

 *

 * For TFT_GENERIC, you need to configure these 3 options:

 * Driver: TFT_DRIVER

 * Current Drivers are: AUTO, ST7735, ST7789, ST7796, R61505, ILI9328, ILI9341, ILI9488

 * Resolution: TFT_WIDTH and TFT_HEIGHT

 * Interface: TFT_INTERFACE_FSMC or TFT_INTERFACE_SPI

 */

И добавляем 

#define TFT_GENERIC

#define TFT_DRIVER ILI9341

#define TFT_WIDTH 320

#define TFT_HEIGHT 240

#define TFT_INTERFACE_SPI

#define TFT_COLOR_UI

чуть пониже расскоментируем строку

#define TOUCH_SCREEN 

убираем два слэша перед ней

Все сохраняем и закрываем его

Далее открываем файл pins_BTT_SKR_V1_3.h

И ищем строки

#elif IS_TFTGLCD_PANEL

    #if ENABLED(TFTGLCD_PANEL_SPI)

      #define TFTGLCD_CS EXPA2_08_PIN

    #endif

    #define SD_DETECT_PIN EXPA2_04_PIN

после них добавляем строки

#elif HAS_SPI_TFT // Config for Classic UI (emulated DOGM) and Color UI

    #define TFT_CS_PIN P1_22

    #define TFT_A0_PIN P1_23

    #define TFT_DC_PIN P1_23

    #define TFT_MISO_PIN P0_17

    #define TFT_BACKLIGHT_PIN P1_18

    #define TFT_RESET_PIN P1_19

    #define LCD_USE_DMA_SPI

    #define TOUCH_INT_PIN P1_21

    #define TOUCH_CS_PIN P1_20

    #define TOUCH_BUTTONS_HW_SPI

    #define TOUCH_BUTTONS_HW_SPI_DEVICE 1

    #ifndef GRAPHICAL_TFT_UPSCALE

      #define GRAPHICAL_TFT_UPSCALE 3

    #endif

    // SPI 1

    //#define SCK_PIN P0_07

    //#define MISO_PIN P0_08

    //#define MOSI_PIN P0_09

    // Disable any LCD related PINs config

    #define LCD_PINS_ENABLE -1

    #define LCD_PINS_RS -1

    // XPT2046 Touch Screen calibration

    #if ENABLED(TFT_CLASSIC_UI)

      #ifndef XPT2046_X_CALIBRATION

        #define XPT2046_X_CALIBRATION -11245

      #endif

      #ifndef XPT2046_Y_CALIBRATION

        #define XPT2046_Y_CALIBRATION 8629

      #endif

      #ifndef XPT2046_X_OFFSET

        #define XPT2046_X_OFFSET 685

      #endif

      #ifndef XPT2046_Y_OFFSET

        #define XPT2046_Y_OFFSET -285

      #endif

    #elif ENABLED(TFT_480x320_SPI)

      #ifndef XPT2046_X_CALIBRATION

        #define XPT2046_X_CALIBRATION -17232

      #endif

      #ifndef XPT2046_Y_CALIBRATION

        #define XPT2046_Y_CALIBRATION 11196

      #endif

      #ifndef XPT2046_X_OFFSET

        #define XPT2046_X_OFFSET 1047

      #endif

      #ifndef XPT2046_Y_OFFSET

        #define XPT2046_Y_OFFSET -358

      #endif

      #define TFT_BUFFER_SIZE 2400

    #endif

  #else

Сохраняем и закрываем, можно попытаться скомпилировать ошибку, но при таких настройка в конце должно будет выдать ошибку о нехватке память в микроконтроллере, так как по умолчанию буфер TFT прописан 8Кб, нужно его будет уменьшить до 2 тогда прошивка влезет.. для этого ищем файл tft.h и в самом начале его будут строки

#ifndef TFT_BUFFER_SIZE

  #ifdef STM32F103xB

    #define TFT_BUFFER_SIZE 1024

  #elif defined(STM32F103xE)

    #define TFT_BUFFER_SIZE 19200 // 320 * 60

  #elif defined(STM32F1)

    #define TFT_BUFFER_SIZE 8192

  #else

    #define TFT_BUFFER_SIZE 2048 // 320 * 60

  #endif

#endif

Меняем выделенное жирным на 2Кб.. как тут и приведено( не помню сколько там было вначале...

Экран можно подсоединить и проводками обычными , но я на макетке сделал себе переходник

Подключение экрана TFT 2.8 к плате SKR V1.3 (MARLIN)ниже схема соединения

Подключение экрана TFT 2.8 к плате SKR V1.3 (MARLIN) ну и напоследок фотки работающего дисплея. главный экран

Подключение экрана TFT 2.8 к плате SKR V1.3 (MARLIN)Подключение экрана TFT 2.8 к плате SKR V1.3 (MARLIN)меню

Подключение экрана TFT 2.8 к плате SKR V1.3 (MARLIN) Купить такой дисплей можно например тут

Спасибо за внимание. надеюсь кому то данная статья поможет...

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

28
Комментарии к статье