Arduino Nano + 2.2TFT + SD

checka
Offline
Зарегистрирован: 16.06.2016

Здравствуйте, подключил такой дисплей (http://wiki.amperka.ru/продукты:tft-lcd-240x320) через резисторный делитель, все нормально, прочитал что уровни на sd 5 вольт, так как есть r1, r2, r3 сопротивления на плате, подключил напрямую, но скетч не выполняется, зависает так понял на инициализации sd (удалял строчку в скетче). Подскажите как заставить его работать? Флэшка FAT32 изображение в raw, строчки неудачи инициализации и тд не показывает, просто белый экран после заливки черным. удаляю инициализацию, выводит строчку соответственно об удачной инициализации. пины использую

SCK 8

MISO 13

MOSI 9

RESET 11

DC 10

CSTFT 12

CSSD 7

на пинах из вики для SPI на ARDUINO NANO дисплей не хочет работать, пины в библиотеке SdFatConfig.h прописал соответственно


#include <SPI.h>
// расширенная библиотека для работы с SD-картой
#include <SdFat.h>
#include <SdSpi.h>
// библиотека для работы с дисплеем
#include <UTFT.h>
// библиотека для вывода изображений на дисплей с SD-карты
#include <UTFT_SdRaw.h>

// пин ChipSelect к которому подключена SD-карта
#define SD_CHIP_SELECT  7

// создаём объект работы с SD-картой
SdFat sd;

// создаём объект класса UTFT
// и передаём идентификатор модели дисплея и номера управляющих пинов
UTFT myGLCD(TFT01_22SP, 9, 8, 12, 11, 10);

// объявления встроенного шрифта
extern uint8_t BigFont[];

// создаём объект для работы и вывода изображений на дисплей
UTFT_SdRaw myFiles(&myGLCD);

void setup()
{
  // инициализируем дисплей с вертикальной ориентацией
  myGLCD.InitLCD();
  // очищаем экран
  myGLCD.clrScr();
  // выбираем большой шрифт
  myGLCD.setFont(BigFont);

  // ждём успешной инициализации SD-карты
  while (!sd.begin(SD_CHIP_SELECT)) {
    // устанавливаем красный цвет «чернил» для печати и рисования
    myGLCD.setColor(VGA_RED);
    // печатаем строку в указанной строке позиции
    myGLCD.print("SD Card failed!", CENTER, 100);
    delay(1000);
  }

  // устанавливаем зелёный цвет «чернил» для печати и рисования
  myGLCD.setColor(VGA_GREEN);
  // печатаем строку в указанной строке позиции
  myGLCD.print("SD Card initialised", CENTER, 100);
  // ждём 1 секунду
  delay(1000);

  // выводим изображение с SD-карты на дисплей
  myFiles.load(0, 0, 320, 240, "Arduino.raw");
}

void loop()
{
}

 

checka
Offline
Зарегистрирован: 16.06.2016
Установка конфигурации на 2 тоже не решает проблему? эту строку (#define SD_SPI_CONFIGURATION 2)надо я так понял добавить в скетч, а не редактировать в файле библиотеки
 
 
#define SD_SPI_CONFIGURATION 0
//------------------------------------------------------------------------------
/**
 * If SD_SPI_CONFIGURATION is defined to be two, these definitions
 * will define the pins used for software SPI.
 *
 * The default definition allows Uno shields to be used on other boards.
 */
/** Software SPI Master Out Slave In pin */
uint8_t const SOFT_SPI_MOSI_PIN = 9;
/** Software SPI Master In Slave Out pin */
uint8_t const SOFT_SPI_MISO_PIN = 13;
/** Software SPI Clock pin */
uint8_t const SOFT_SPI_SCK_PIN = 8;
checka
Offline
Зарегистрирован: 16.06.2016

все исправился, надо было менять в библиотеке значение, теперь останавливается на SD card initialised изображение не выводит, менял карты памяти пока безрезультатно