Модуль является бескорпусным цветным ЖКИ монитором QVGA с сенсорным экраном, имеющим диагональ 2,4 дюйма. Он предназначен для работы совместно с микроконтроллерами разных типов и процессорными системами. Несмотря на возможность отображения полноцветных фотографий, основное применение – отображение простой графики и символьных данных с использованием 16 цветов. На экран можно выводить анимацию:
Графических возможностей монитора достаточно для создания изображения клавиатуры работающей благодаря сенсорным поверхностям. Одновременно с обработкой нажатий дисплей 2.4 TFT 240х320 сенсорный + MicroSD отображает результаты выполнения команд оператора и индицирует значения контролируемых параметров. Применение значительно упрощает устройства ввода-вывода прибора. ЖКИ индикатор имеет постоянно включенную подсветку. Есть одна кнопка. На плате расположен контейнер для SD карты.
Характеристики 2.4 TFT 240х320
Питание Напряжение 5 В Ток 300 мА Напряжение входных сигналов 5 или 3,3 В Диагональ 2,4 дюйма Разрешающая способность 320 X 240 точек с индивидуальным контролем Максимальное количество оттенков 262144 Подсветка белая Интерфейс 8080 Максимальный объем microSD карты 32 Гб Размеры 71 x 52 x 7 мм
Контакты
ЖКИ индикатор использует 8 контактов модуля для передачи данных и 4 контакта для сигналов управления. Сенсорная часть дисплея использует 4 контакта совместно с ЖКИ. Работа с Micro SD картой требует 4 контакта.
LCD_RD управление ЖКИ, чтение LCD_WR TOUCH_YP управление ЖКИ, запись или данные сенсорной поверхности LCD_RS TOUCH_XM управление ЖКИ, команда/данные или данные сенсорной поверхности LCD_CS управление ЖКИ, выбор устройства LCD_RST сброс LCD_D2 данные ЖКИ LCD_D3 данные ЖКИ LCD_D4 данные ЖКИ LCD_D5 данные ЖКИ LCD_D6 / TOUCH XP данные ЖКИ / данные сенсорной поверхности LCD_D7 / TOUCH YM данные ЖКИ / данные сенсорной поверхности LCD_D0 данные ЖКИ LCD_D1 данные ЖКИ
Micro SD
SD_CS выбор SD_DI SD вход данных SD_DO выход данных SD_SCK тактирование данных
Дисплей 2.4 TFT 240х320 сенсорный + MicroSD может устанавливаться в соединители Arduino.
Подключение к Arduino UNO:
Контакты модуля
Arduino
LCD_CS
A3
LCD_RS
A2
LCD_WR
A1
LCD_RD
A0
LCD_ RST
A4, можно присоединить LCD_RESET к линии RESET Arduino UNO как описано ниже.
LCD_D0
DIO 8
LCD_D1
DIO 9
LCD_D2
DIO 2
LCD_D3
DIO 3
LCD_D4
DIO 4
LCD_D5
DIO 5
LCD_D6
DIO 6
LCD_D7
DIO 7
SD SS
DIO 10
SD DI
DIO 11
SD DO
DIO 12
SD SСK
DIO 13
3.3V
3.3V
5V
5V
GND
GND
При установке в контакты Arduino UNO перед включением следует проверить отсутствие касания контактами платы разъема USB и при необходимости на плату приклеить изолятор.
Схема
Дисплей 2.4 TFT 240х320 сенсорный + MicroSD.
Питание 5 вольт поступает на цепи схемы и микросхему U1 стабилизатор напряжения 3,3 вольта. Информационные сигналы проходят через микросхемы 74xx541 – буферы шин данных. IC1 микросхема ADS7843 – контроллер сенсорных экранов. Это 12 битный АЦП с устройством выборки-хранения, синхронным последовательным интерфейсом и низкоомными ключами управления сенсорными контактами. Основной компонент модуля – TFT1 совмещенный со специализированным контроллером жидкокристаллический экран. Ссылки на описание ЖКИ и различных типов контроллеров в конце страницы.
Кнопка
На краю платы модуля расположена кнопка. Кроме сенсорной клавиатуры дисплей 2.4 TFT 240х320 сенсорный + MicroSD имеет механическую кнопку. Ее контакты соединяют с общим проводом контакт 1 соединителя J4. Это расположенный с краю соединителя J4 возле контакта 3V3 неподписанный контакт. Кнопка может использоваться для нужд компонуемого прибора. При работе совместно с Arduino контакт 1 соединителя J4 подключается к линии сброс. Нажатие кнопки вызывает сброс Arduino.
Начало работы
Большая часть обеспечения работы модуля принадлежит программе микроконтроллера. Для этого удобно использовать опубликованные в интернете существующие программные решения. За основу берут написанные для Arduino программы и модифицируют их под аппаратные средства разрабатываемого прибора. Когда мы пытаемся обуздать дисплей 2.4 TFT 240х320 сенсорный + MicroSD можно получить неожиданные результаты: белый экран, весь экран с шумом, сенсорные функции не работают или инвертируется позиция по координате Y, инвертируются цвета. Дело в том, что в дисплей различные производители устанавливают различные типы основного контроллера ЖКИ: ST7781, Spfd5408, IL9341, Sitronix ST7783262K, S6D0154 и другие. Их описания в конце страницы. Прежде всего нужно определить какой тип контроллера дисплея применен в вашем модуле. Микросхема и ЖКИ экран это одно устройство. Установить тип можно только программным путем. Для этого используют микроконтроллерный модуль Arduino UNO и программу LCD_ID_Reader Version 1.2, которая читает идентификатор микросхемы. LCD_ID_Reader не требует установки дополнительных библиотек. Также есть программа определения типа контроллера в библиотеке самурай, речь о ней пойдет далее.
Программное обеспечение Arduino
Для различных контроллеров ЖКИ разработаны различные библиотеки.
Для контроллера SPFD5408 используется библиотека JoaoLopesF. По сути это доработанная для SPFD5408 библиотека от Adafruit. В ней есть возможность калибровки сенсорного экрана.
Для контроллеров S6D0154 диагональ 2,8 дюйма ILI9488 диагональ 3,95 дюйма 320 x 480 точек ILI9327 диагональ 3,6 дюйма ILI9341 NT35702, совместим с ILI9327 Библиотека самурай По умолчанию эта библиотека предназначена для экранов с диагональю 2,8 дюйма. На меньших пропадает часть изображения. Для диагонали 2,4 дюйма в файле TFTLCD-Library/Adafruit_TFTLCD.cpp надо нейтрализовать строки:
//#define TFTWIDTH 320 //#define TFTHEIGHT 480
и убрать символы комментария в строках:
#define TFTWIDTH 240 #define TFTHEIGHT 320
Программа определения типа контроллера ЖКИ – graphicstest. В монитор последовательного порта будет выведен тип контроллера ЖКИ. Для работы сенсорного экрана измените #define YP A1 #define XM A2 #define YM 7 #define XP 6
Для контроллеров ILI9325 ILI9328 И для контроллера с кодом идентификации 0xC505 Библиотека adafruit/TFTLCD-Library
Установка библиотеки, тестирование, описание библиотеки, шрифты, определение координат нажатия, работа с микроSD картой, конвертирование из формата 24-bit в 16-bit здесь
Сенсорная поверхность
Дисплей 2.4 TFT 240х320 сенсорный + MicroSD передает программе три величины: координаты нажатия (X и Y) и давление Z. Используется резистивная технология сенсорного экрана.
Поверхность состоит из двух полимерных слоев, покрытых резистивным материалом, выступающим в качестве электродов. Слои склеиваются по краям. Под управлением программы данные поступают из микросхемы IC1 для обнаружения нажатия. Микроконтроллер прибора получает 10-битное число (0..1023) для каждой оси. Программно эта величина масштабируется в соответствии с размерами экрана.
Пять проводов сенсорной поверхности (четыре сигнальных и один общий) подключены через тонкий шлейф к контроллеру ЖКИ.
Для контроллера SPFD5408 используется библиотека 4-wire resistive touchscreens . Скопируйте разархивированные и переименованные папки:
Попробуйте пример graphictest в библиотеке adafruit/TFTLCD. На экране должно быть изображение как показано выше. Если дисплей 2.4 TFT 240х320 сенсорный + MicroSD ничего не отображает или показывает только статическую картинку, то можно попробовать изменить программу graphictest. Модификация программы заключается в жесткой установке типа контроллера дисплея. Строку 60 замените на:
uint16_t identifier = 0x9341; //Need hardcode here (IC)
Для контроллера ЖКИ SPFD5408.
Создайте два графических файла формата BMP со следующими параметрами: 320 точек ширина картинки, цвет 24 бит и объем не превышающий 250 Кбайт. Имя файла должно состоять из восьми латинских букв. Скопируйте файл в корневой каталог карты microSD. Если эксперимент пройдет удачно, то на карту можно записать много картинок. Тест будет выводить их на экран поочередно.
Скачать следующие библиотеки : TFT-Shield-Example-Code Распакуйте и скопируйте в папку SWTFT-Shield в библиотеки Arduino.
Adafruit GFX graphics Переименуйте распакованные папки в Adafruit_GFX. Они должны содержать .cpp и .h файлы. Если имя папки отличается, то Arduino не распознает ключевые слова из библиотеки.
Подключите USB-кабель к ПК и откройте Arduino IDE. Далее откройте Under File—>Examples –> SWTFT-Shield.
Результаты работы программных примеров.
Graphicstest
Graphicstest
Rotationtest. Откройте последовательный монитор Arduino IDE и выберите скорость 9600 и New Line в нижней части окна. При нажатии на кнопку Send будут появляться различные изображения.
Ttfbmp. Файлы BMP записанные на micro SD карту будут выводится на экран.
Ttfpaint. Можете выбрать любой цвет чтобы рисовать или писать на сенсорном экране.