| Ваш IP: 3.239.7.207 | Online(33) - гости: 14, боты: 19 | Загрузка сервера: 2.15 ::::::::::::

TFT-дисплей SPI 320×240 (Arduino)

Цветной TFT-дисплей SPI 320×240 используется для отображения текста и графических элементов: иконок, картинок, графиков, кадров анимации.

Основные характеристики дисплея:

  • Наименование: TFT01-22SP
  • Контроллер: ILI9341C
  • Диагональ: 3,2 дюйма
  • Напряжение питание: 5 В
  • Напряжение сигналов: 3,3 В
  • Разрешение: 240 x 320 (RGB)

Для работы с данными дисплеями отлично подойдет библиотека UTFT. Библиотека достаточно простая и удобная для использования. Библиотека содержит несколько готовых примеров.

Базовые функции библиотеки:

  • InitLCD([положение]); – Инициирует начало работы с дисплеем. Необязательный параметр может принимать одно из двух значений: PORTRAIT (вертикальная ориентация) или LANDSCAPE (горизонтальная ориентация — по умолчанию).
  • clrScr(); – Очищает дисплей, стирая всю отображаемую на дисплее информацию и заливая дисплей черным цветом.
  • fillScr(color); – Очищает дисплей, стирая всю отображаемую на дисплее информацию и заливая его указанным в качестве параметра цветом фона.
  • getDisplayXSize(); – Возвращает количество пикселей дисплея по горизонтали, число типа int.
  • getDisplayYSize(); – Возвращает количество пикселей дисплея по вертикали, число типа int.
  • setColor(color); – Выбор цвета для текста и фигур, выводимых после данной функции.
  • getColor(); – Возвращает установленный цвет для текста и фигур в формате RGB565, число типа word.
  • setBackColor(color); – Выбор цвета для фона текста, выводимого после данной функции.
  • getBackColor(); – Возвращает установленный цвет для фона текста в формате RGB565, число типа word.
  • setFont(fontName); – Выбор шрифта для текста выводимого после данной функции.
  • getFont(); – Возвращает указатель на выбранный шрифт.
  • getFontXsize(); – Возвращает количество пикселей в одном символе шрифта, по ширине.
  • getFontYsize(); – Возвращает количество пикселей в одном символе шрифта, по высоте.
  • print(str,x,y[,r]); – Вывод на дисплей строк или содержимого строковых переменных.
  • printNumI(int,x,y[,len[,sym]]); – Вывод на дисплей целого числа или содержимого целочисленной переменной.
  • printNumF(float,dec,x,y[,sym1[,len[,sym2]]]); – Вывод на дисплей вещественного числа или содержимого переменной вещественного типа
  • drawPixel(x,y); – Вывод на дисплей точки. Цвет точки определяется текущим значением цвета, устанавливаемым командой setColor().
  • drawLine(x1,y1,x2,y2); – Вывод на дисплей линии, заданной координатами двух точек.
  • drawRect(x1,y1,x2,y2); – Вывод на дисплей прямоугольника, противоположные углы которого заданы координатами двух точек.
  • drawRoundRect(x1,y1,x2,y2); – Вывод на дисплей прямоугольника со скругленными углами.
  • fillRect(x1,y1,x2,y2); – Вывод на дисплей закрашенного прямоугольника.
  • drawCircle(x,y,R); – Вывод на дисплей окружности, определяемую координатами центра и радиусом.
  • fillCircle(x,y,R); – Вывод на дисплей закрашенной окружности.
  • drawBitmap(x1,y1,x2,y2,data[,scale]); – Вывод на дисплей картинки из массива.

Так как работа логики имеет напряжение 3,3 В, то подключение дисплея к плате Arduino имеет свои особенности, выводы дисплея SDI (MOSI), SCK, CS, RESET, DC необходимо подключать к плате Arduino через делители напряжения на резисторах.

Arduino TFT-дисплей SPI 320×240
+5V VCC
GND GND
D8 через делитель SDI (MOSI)
D9 через делитель SCK
D12 через делитель CS
D11 через делитель RESET
D10 через делитель DC
+3.3V LED

Библиотека:

Тестовый скетч — вывод текста

// библиотека для работы с дисплеем
#include <UTFT.h>
// создаём объект класса UTFT
// и передаём идентификатор модели дисплея и номера пинов
UTFT myGLCD(TFT01_22SP, 8, 9, 12, 11, 10); // SDI (MOSI), SCK, CS, RESET, DC
// объявления встроенного шрифта
extern uint8_t BigFont[];
void setup()
{
  // инициализируем дисплей с вертикальной ориентацией
  myGLCD.InitLCD(0);
  // очищаем экран
  myGLCD.clrScr();
  // выбираем большой шрифт
  myGLCD.setFont(BigFont);
  // устанавливаем красный цвет «чернил» для печати и рисования
  myGLCD.setColor(VGA_RED);
  // печатаем строку в указанной строке позиции
  myGLCD.print("Hello, World!", CENTER, 0);
  // устанавливаем синий цвет «чернил» для печати и рисования
  myGLCD.setColor(VGA_BLUE);
  // печатаем строку в указанной строке позиции
  myGLCD.print("Hello, World!", CENTER, 36);
  // устанавливаем зелёный цвет «чернил» для печати и рисования
  myGLCD.setColor(VGA_GREEN);
  // печатаем строку в указанной строке позиции
  myGLCD.print("Hello, World!", CENTER, 72);
  // устанавливаем серебряный цвет «чернил» для печати и рисования
  myGLCD.setColor(VGA_SILVER);
  // печатаем строку в указанной строке позиции
  myGLCD.print("Hello, World!", CENTER, 108);
}
void loop()
{
}

Добавить комментарий

Войти с помощью: 

Случайные статьи

  • Регулятор громкости на полевом транзисторе

    Регулятор громкости на полевом транзисторе

    На рисунке показана схема простого регулятора громкости на полевом транзисторе. Регулировка громкости осуществляется подачей отрицательного напряжения от 0 до -3 В на затвор полевого транзистора. Напряжение 0 В на затворе транзистора соответствует минимальному уровню громкости, а напряжение -3 В — максимальной громкости. Источник — https://freecircuitdiagram.com/4656-voltage-controlled-attenuator-volume-control-using-fet/Подробнее...
  • Выходной каскад (ламповые усилители)

    Однотактовый выходной каскад лампового усилителя содержит минимум деталей и прост в сборке и регулировке. Пентоды в выходном каскаде могут использоваться только ультралинейном включении, триодном или обычном режимах. При триодном включении экранирующая сетка соединяется с анодом через резистор 100…1000Ом. В ультралинейном включении каскад охвачен ОС по экранирующей сетке, что дает снижение …Подробнее...
  • ТЕРМОСТАБИЛЬНЫЙ УСИЛИТЕЛЬ МОЩНОСТИ

    ТЕРМОСТАБИЛЬНЫЙ УСИЛИТЕЛЬ МОЩНОСТИ

    С целью уменьшения нелинейных искажений при малой гром­кости режим работы транзисторов выходного каскада усилителя мощности обычно выбирают таким, чтобы в отсутствие сигнала через них протекал довольно большой ток (нередко до сотен миллиампер). Во избежание теплового пробоя, обусловленного нагреванием переходов из-за большой рассеиваемой на них мощ­ности, транзисторы выходного каскада приходится устанавливать …Подробнее...
  • Светодиодная мигалка

    Светодиодная мигалка

    Светодиодная мигалка состоит из 20 диодов в два ряда. Основа уст-ва — мультивибратор, который поочередно зажигает светодиоды. Схема очень простая, регулировка сводится к подбору С3 и С4 которые входят во время-задающую цепь мультивибратора. Усто-во работает от бестрансформаторного источника питания, который состоит из балластного конденсатора С1, резистора R2, который разряжает конденсатор С1 …Подробнее...
  • Электронный термометр (от 0 до 100°С)

    На рис. приведена принципиальная схема, предлагаемого электронного термометра. Он способен измерять температуру от 0 до 100°С, от 0 до 50°С или от — 50 до +50°С — все зависит от стрелочного индикатора РА1, используемого в приборе. Так, с показанным на схеме микроамперметром на 100 мкА термометр рассчитан на работу в …Подробнее...