mcufriend 2.4 tft мега 2560

Пожалуйста, помогите мне с моим TFT-дисплеем mcufriend 2,4 на моем Mega2560.

Я выполнил все инструкции, которые смог найти, в том числе:

2.4" TFT LCD Shield не работает на Arduino Mega

У меня все еще отображается белый экран. Интересно, у меня TFT другой или сломан? Моя выглядит так:

TFT-изображение

Я запустил пример кода из SWtft. Я получил этот вывод по последовательному каналу:

TFT LCD test

LCD driver chip: 6TFT LCD test
LCD driver chip: 6767
Benchmark                Time (microseconds)
Screen fill              1786024
Text                     413024
Lines                    2569212
Horiz/Vert Lines         226196
Rectangles (outline)     176972
Rectangles (filled)      4682244
Circles (filled)         2703104
Circles (outline)        1119540
Triangles (outline)      815028
Triangles (filled)       2867288
Rounded rects (outline)  469268
Rounded rects (filled)   5733992
Done!

, 👍0

Обсуждение

Какой TFT на плате носителя? Какой чип он использует?, @Majenko

В этом и проблема.. шилд пришел без какого-либо документа.. я пытался прочитать чип, но тоже неясно., @rudi rahmadi

Вы не прочтете чип, о котором я говорю, — «Чип на стекле», встроенный в TFT-экран. Вам нужно знать, что это такое, чтобы найти правильный драйвер. Продавец должен знать. Если они этого не делают, то они бесполезны., @Majenko

По словам продавца, драйвер - HX8347G LCD, им удалось запустить его на Uno, а на Mega 2560 мне не повезло., @rudi rahmadi

@rudirahmadi проверьте различия в совместимости контактов между UNO и MEGA. Убедитесь, что каждый вывод, которому требуется ШИМ, имеет ШИМ., @Paul


4 ответа


1

У меня есть один из этих TFT LCD shields, но мой — ILI9335. Мне потребовалось около 2 недель, чтобы найти работающую библиотеку и код для моего драйвера 9335, и теперь я приступаю к созданию скетчей на основе моей рабочей библиотеки. Библиотека - TFTLCD с использованием контроллера st7783 К сожалению, большинство продавцов этих щитов (за исключением компаний с хорошей репутацией) не сообщают, какой драйвер установлен на щите, и становится сложно найти рабочую библиотеку для драйвера приобретенного щита.

ТАКЖЕ проверьте, что библиотеки, которые у вас есть, работают для вашей версии Arduino IDE. Некоторые из моих библиотек не компилируются в v1.0.5, но компилируются в v1.6.3 (и наоборот) Если для вашего драйвера 6767 нет библиотеки (и я должен сказать, что не видел ни одной в своих поисках драйвера 9335), то вам, возможно, придется загрузить как можно больше различных библиотек, чтобы найти скетч, который подойдет именно вам. Как только у вас появится рабочая библиотека, останется только модифицировать ее в соответствии с вашими целями.

Удачи в поиске рабочего решения для вашего щита.

Лэнс..

,

Спасибо за ваш личный опыт, интересно, он похож на мой? Удалось ли вам запустить его на mega2560?, @rudi rahmadi

Здравствуйте, у меня тоже есть 9335, но я не смог заставить его работать. Не могли бы вы поделиться библиотеками и примерами, которые вы используете? Спасибо, @MondKin


0

В продаже имеется несколько таких плат (в основном из Китая).

Следующие идентификаторы различных чипов взяты из файла с именем mcufriend_kbv_2_8.txt из архива с именем Mcufriend_kbv_2.8.zip, который предоставляет целую библиотеку (предположительно, ответвление UTFT), поддерживающую эти печатные платы. Здесь, на форуме Arduino.cc, находится одна из ссылок для загрузки.

----- HX8347-A 240x320  ID=0x8347 new Untested
ILI9320  240x320  ID=0x9320
ILI9325  240x320  ID=0x9325
ILI9327  240x400  ID=0x9327
ILI9329  240x320  ID=0x9329 
ILI9335  240x320  ID=0x9335 
ILI9341  240x320  ID=0x9341 
ILI9481  320x480  ID=0x9481  
ILI9486  320x480  ID=0x9486
ILI9488  320x480  ID=0x9488
LGDP4535 240x320  ID=0x4535
RM68090  240x320  ID=0x6809
R61505V  240x320  ID=0xB505
R61505W  240x320  ID=0xC505 new Untested
R61509V  240x400  ID=0xB509
----- S6D0139  240x320  ID=0x0139 removed due to lack of tester
S6D0154  240x320  ID=0x0154
SPFD5408 240x320  ID=0x5408
----- SSD1963  800x480  ID=0x1963 new Untested
SSD1289  240x320  ID=0x1289 
ST7781   240x320  ID=0x7783
ST7789V  240x320  ID=0x7789

Белый экран — результат выбора неправильного чипа. Выберите правильный (по ID) и он заработает.

,

0
  1. Вам необходимо изменить эти параметры #define TouchScreen() из

    #define YP A3
    #define XM A2
    #define YM 9
    #define XP 8
    

    к

    #define YP A2    
    #define XM A1
    #define YM 6
    #define XP 7
    
  2. Вставьте только 4-ю строку, если (идентификатор == 0x6767) идентификатор = 0x7575; в setup(), как показано ниже

............

  tft.reset();

  uint16_t identifier = tft.readID();

  if(identifier==0x0101)
      identifier=0x9341;

  if (identifier == 0x6767)
      identifier = 0x7575;

  if(identifier == 0x9325) {

    Serial.println("Found ILI9325 LCD driver");

  } else if(identifier == 0x4535) {

    Serial.println("Found LGDP4535 LCD driver");

  }else if(identifier == 0x9328) {

    Serial.println("Found ILI9328 LCD driver");

  } else if(identifier == 0x7575) {

    Serial.println("Found HX8347G LCD driver");

  } else if(identifier == 0x9341) {

    Serial.println("Found ILI9341 LCD driver");

  } else if(identifier == 0x8357) {

    Serial.println("Found HX8357D LCD driver");

  } else {

    Serial.print("Unknown LCD driver chip: ");

    Serial.println(identifier, HEX);

    Serial.println("If using the Adafruit 2.4\" TFT Arduino shield, the line:");

    Serial.println("  #define USE_ADAFRUIT_SHIELD_PINOUT");

    Serial.println("should appear in the library header (Adafruit_TFT.h).");

    Serial.println("If using the breakout board, it should NOT be #defined!");

    Serial.println("Also if using the breakout, double-check that all wiring");

    Serial.println("matches the tutorial.");

    return;

  }
  1. Попробуйте.
,

0

Скорее всего, контроллер не поддерживается или отключен в файле .cpp. Сначала узнайте свой идентификатор, например ID=0x6767. Затем посмотрите в папке библиотеки MCUFRIEND_kvb "extras" чтобы включить поддержку, например, в нашем случае 0x6767 — это 8347D. Наконец, перейдите в корень библиотеки, отредактируйте MCUFRIEND_kvd.cpp и раскомментируйте его, как в примере: #define SUPPORT_8347D. Сохраните измененный файл .cpp, а затем загрузите пример графического теста.

,

Привет и добро пожаловать. раскомментировать, как в вашем примере - вы имеете в виду раскомментировать, как в вашем примере? Пожалуйста, [отредактируйте] и исправьте все опечатки. Спасибо., @Greenonline