Металл2024 Реклама
Метобр2024 Реклама

Прошивка BigTreetech Touchscreen для MKS TFT32 V4, V3, V2, V1

uz45
Идет загрузка
Загрузка
22.03.2020
5397
6
Личные дневники

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

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

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

5

Поддержка экранов от MKS TFT32L V4.0 теперь официально включена в основную ветку BigTreetech Touchscreen.

Я лишь добавил поддержку версий V1.0 , V2.0 ,V3,0 и доделал режим эмуляции 12864 под эти экранчики.

Выложил это в отдельной ветке.

  Эмуляция 12864 работает с любым из трех SPI на борту. Но надо учитывать то что SPI1 уже используется для работы с SD и флэш памятью.

  Использовать SPI1 можно если пользоваться экраном исключительно в режиме эмуляции, не выводить текстовые сообщения и графику. Единственный плюс при использовании SPI1 не требуется ничего паять, все нужные сигналы уже выведены на разъем SD. Для загрузки прошивки с подключенной платой управления, на последней необходимо нажать reset на все время загрузки прошивки.

  По умолчанию прошивка работает с SPI2, для его использования требуется припаять пару проводов к процессору, выводы PB12 и PB13 . Часть выводов SPI2 уже используется в схеме для вывода на дисплей PB14-LCD_WR. Поэтому на практике интересен только вариант использования SPI3.

Для подключения требуется припаять один провод к выводу PB3 на STM32.

  Паять надо мягким проводом и после пайки провод рекомендую закрепить, иначе одно неловкое движение и LQFP100 превращается в LQFP99. У меня так и произошло, в процессе тестов экран шлепнулся на стол из вертикального положения и я попрощался с выводом PA15.

  Я использовал следующую схему подключения:

MKS TFT32 MKS Gen L V1.0 (Marlin pins)

 LCD_ENCA_PIN PA13 //JTAG DIO => exp2 D31-pin (BTN_EN1)

 LCD_ENCB_PIN PA14 //JTAG CLK => exp2 D33-pin (BTN_EN2)

 LCD_BTN_PIN PB0 //PB0 => exp1 D35-pin (BTN_ENC)

 SPISIM_CS_PIN PB1 //PB1 => exp1 D16-pin (LCD_PINS_RS)

 SPI3_SCK_PIN PB3 //PB3 => exp1 D23-pin (LCD_PINS_D4)

 SPI3_MOSI_PIN PB5 //PB5 => exp1 D17-pin (LCD_PINS_ENABLE)

Ни кто не запрещает использовать другие пины не относящиеся к SPI3 и не занятые в схеме. Менять нельзя только SPI3_SCK_PIN PB3 и SPI3_MOSI_PIN PB5. При желании можно поменять и SPISIM_CS_PIN PB1, но это потребует редактирования кода обработчика прерываний в spi_slave.c.

Для работы с SPI3 обязательно нужно отключить JTAG, это освободит выводы PB3/PB4.

  SPI3

 ST7920_SPI _SPI3

 SPISIM_CS_PIN PB1

 SPI3_SCK_PIN PB3

  SPI3_MOSI_PIN PB5

  Подключать энкодер к MKS TFT не обязательно, можно использовать тач для эмуляции энкодера. 

  В прошивке уже используется управление с тача, свайпами вверх вниз. Но с резистивным тачем это работает очень не стабильно, на практике не работает ни как. Поэтому я просто добавил три кнопки внизу экрана.

  Выводы для LCD_ENCA_PIN, LCD_ENCB_PIN и LCD_BTN_PIN используются для передачи программно сгенерированных сигналов энкодера на плату управления. Конечно ни кто не запрещает подключить реальный энкодер напрямую к плате управления. Но он будет работать даже в то время когда эмуляция 12864 выключена и накрутить вслепую можно что угодно. Хотя это надо проверять, какой уровень устанавливается на выводах энкодера в тач режиме я не смотрел. Для проверки я использовал MKS Gen L V1.0. и в схеме подключения выше я указал пины именно для этой платы.

  Я старался по максимуму использовать уже разведенные на разъемы выводы поэтому отключил и SWDIO тоже. Это позволило использовать разъем JTAG пины DIO=PA13 и CLK =PA14, на них я повесил выводы ENCA и ENCB энкодера.

  Настройки марлина.

Тип контроллера LCD выбираем

#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER

  Из особых настроек мне понадобилась только одна

#define ENCODER_STEPS_PER_MENU_ITEM 5

 Без нее курсор перескакивал через 2-4 строки не предсказуемо.

Прошивка BigTreetech Touchscreen для MKS TFT32 V4, V3, V2, V1

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

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

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

5
Комментарии к статье
Кремень КБ Реклама
Кремень КМ Реклама