2,8TFT ARDUINO DUE SD карта

Использование дисплеев и обсуждение пользовательских блоков к ним
Ответить
M_A_R_A_T
Рядовой
Сообщения: 85
Зарегистрирован: 03.07.2016{, 13:56}
Репутация: 1
Откуда: астана

2,8TFT ARDUINO DUE SD карта

#1

Сообщение M_A_R_A_T » 30.01.2018{, 20:44}

Приветствую! проблема такая, нужно считать картинку с сд карты и вывести ее на тфт дисплей. по отдельности все работает, дисплей показывает, карта читается. а вместе никак. карту подключил через аппаратный spi, дисплей через программный. что делаю не так, и как с этим бороться?
СпойлерПоказать
#include <SPI.h> // подключаем библиотеку SPI для общения с SD-картой по шине SPI
#include <SdFat.h> // подключаем библиотеку SdFat для работы с SD-картой
#include <UTFT.h> // подключаем библиотеку UTFT для работы с дисплеем
#include <UTFT_SdRaw.h> // подключаем библиотеку UTFT_SdRaw для вывода изображений с SD-карты на дисплей
#define SD_CHIP_SELECT SS // определяем константу SD_CHIP_SELECT которой присваиваем номер вывода Arduino подключённого к линии выбора CS шины SPI SD-карты (номер используемый по умолчанию хранится в константе SS)
// UTFT myGLCD(TFT395UNO, A2,A1,A3,A4,A0); // тип дисплея 3,95 UNO (480x320 chip ILI9327)
// UTFT myGLCD(TFT32MEGA, 38,39,40,41); // тип дисплея 3,2 MEGA (480x320 chip ILI9481)
// UTFT myGLCD(TFT32MEGA_2, 38,39,40,41); // тип дисплея 3,2 MEGA (480x320 chip HX8357C)
UTFT myGLCD(TFT28UNO, A2,A1,A3,A4,A0); // тип дисплея 2,8 UNO (320x240 chip ILI9341)
// UTFT myGLCD(TFT01_24SP, 5,4,8,7,6); // тип дисплея 2,4 TFT (240×320 chip ILI9341)
// UTFT myGLCD(TFT01_22SP, 5,4,8,7,6); // тип дисплея 2,2 TFT (320×240 chip ILI9340)
// UTFT myGLCD(TFT18SHLD, 5,4,8,7,6); // тип дисплея 1,8 TFT (128x160 chip ST7735S)
SdFat mySD; // объявляем объект mySD класса библиотеки SdFat для работы с его функциями и методами
UTFT_SdRaw myFiles(&myGLCD); // объявляем объект myFiles класса библиотеки UTFT_tinyFAT с передачей ссылки на объект myGLCD класса библиотеки UTFT
//
void setup(){ //
myGLCD.InitLCD(); // инициируем дисплей
myGLCD.clrScr(); // стираем всю информацию с дисплея
while(!mySD.begin(SD_CHIP_SELECT)){} // инициируем работу с SD картой, ожидая завершения инициализации в цикле while (не даём войти в loop пока нет карты)
} //
//
void loop(){ //
// ВНИМАНИЕ!!! // файлы картинок лежат в папке image библиотеки UTFT,
// их необходимо записать в корень SD карты и установить её в слот на плате дисплея
myFiles.load(0,0,320,240,"image_320x240_a.raw"); // выводим на дисплей картинку начиная с координаты 0,0 размером 320,240 из файла image_320x240_a.raw
delay(2000); // ждём 2 секунды
myFiles.load(0,0,320,240,"image_320x240_b.raw"); // выводим на дисплей картинку начиная с координаты 0,0 размером 320,240 из файла image_320x240_b.raw
delay(2000); // ждём 2 секунды
} //

Ответить

Вернуться в «Дисплеи и индикаторы»