UTFT_tinyFAT + UTouch перестает работать татчпад.

Ro-man
Offline
Зарегистрирован: 16.10.2015

Добрый день.

У меня Mega2560 + экран CTE35IPS.

Столкнулся с проблемой.

По отдельности библиотеки UTFT_tinyFAT и UTouch  работают. 

Но если они вместе, то перестает работать функция опроса татчпада  myTouch.dataAvailable()

Программа компилируется, заливается.  Но татчпад не реагирует на нажатия.

Комментирую строки вызова UTFT_tinyFAT, и начинает работать.

Что за ... ?

Вот так НЕ работает:

#include <UTFT.h>
#include <UTouch.h>
#include <tinyFAT.h>
#include <UTFT_tinyFAT.h>

UTFT myGLCD(CTE35IPS,38,39,40,41);
UTouch  myTouch( 6, 5, 4, 3, 2);
UTFT_tinyFAT myFiles(&myGLCD);

extern uint8_t BigFont[];

void setup()
{
  myGLCD.InitLCD();
  myGLCD.clrScr();
  file.initFAT(); 
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM);
  
  myGLCD.setFont(BigFont);

  myGLCD.setBackColor(0, 0, 255);
  myGLCD.setColor(255, 255, 255);  

  myFiles.loadBitmap (1,1, 116, 25, "spalnya1.raw");  
  myGLCD.print("0", 0, 100);      
}

void loop()
{
  // нажали кнопку ?
  if (myTouch.dataAvailable())
  {
    myGLCD.print("1", 0, 300);      
    myTouch.read();
  }
}

Вот так работает:

#include <UTFT.h>
#include <UTouch.h>
#include <tinyFAT.h>
//#include <UTFT_tinyFAT.h>

UTFT myGLCD(CTE35IPS,38,39,40,41);
UTouch  myTouch( 6, 5, 4, 3, 2);
//UTFT_tinyFAT myFiles(&myGLCD);

extern uint8_t BigFont[];

void setup()
{
  myGLCD.InitLCD();
  myGLCD.clrScr();
//  file.initFAT(); 
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM);
  
  myGLCD.setFont(BigFont);

  myGLCD.setBackColor(0, 0, 255);
  myGLCD.setColor(255, 255, 255);  

//  myFiles.loadBitmap (1,1, 116, 25, "spalnya1.raw");  
  myGLCD.print("0", 0, 100);      
}

void loop()
{
  // нажали кнопку ?
  if (myTouch.dataAvailable())
  {
    myGLCD.print("1", 0, 300);      
    myTouch.read();
  }
}

Другие библиотеки для SD карты не работают. Тип карты определяет, но говоритят что карта не отформатирована.

Может кто сталкивался с таким?

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Вы уверены, что они подрались именно с UTouch?

Давайте так.

1. Вы наоборот комментируете всё связанное с UTFT_tinyFAT, а связанное с UTFT_tinyFAT.h оставьте в покое. Если при этом тоже работает, то считаем, что подрались эти библиотеки. Если нет - ищем какие именно библиотеки дерутся.

2. Вы даёте ссылки на дерущиеся библиотеки (именно на те версии, которые испольуются).

3. Тогда можно будет довольно легко понять в чём именно они подрались и что с этим делать.

Ro-man
Offline
Зарегистрирован: 16.10.2015

Добрый день.

По 1. не понял.  Видимо имелось ввиду комментировать вызов библиотеки UTFT_tinyFAT, но оставить ее подключеной в #include.

Сначала закомментировал // myFiles.loadBitmap (1,1, 116, 25, "spalnya1.raw");  залил, татчпад не заработал.

Потом закомментировал // file.initFAT();  залил, татчпад ЗАРАБОТАЛ.

Менял местами инициализации татчпада и UTFT_tinyFAT. Не помогает.

2. Использую 1.6.5 компилятор. Последнии версии библиотек.

UTFT    2.81    21 May 2015

UTouch   1.30    17 May 2015

UTFT_tinyFAT    2.1    26 Jun 2013    https://github.com/ryo1kato/tinyfat/archive/master.zip

tinyFAT   3.0    03 Jun 2012

Ro-man
Offline
Зарегистрирован: 16.10.2015

Получается что после инициализации tinyFAT перестает работать.