Подключение к Raspberry Pi сенсорного TFT ЖК дисплея 3,5 дюйма


Raspberry Pi представляет собой наладонный компьютер с достаточно большой вычислительной мощностью. Он находит широкое применение в различных приложениях интернета вещей (IOT) и робототехнике.

Raspberry Pi имеет HDMI порт, через который к ней можно подключать обычные компьютерные мониторы/дисплеи/телевизоры. Но когда пространство для работы ограничено, то неплохо было бы иметь дисплей меньшего размера. Поэтому в данной статье мы рассмотрим подключение к плате Raspberry Pi популярного в современной электронике сенсорного TFT ЖК дисплея диагональю 3,5 дюйма (3.5 inch Touch Screen TFT LCD screen).

Внешний вид подключения к Raspberry Pi сенсорного TFT ЖК дисплея 3,5 дюйма

Спецификация данного дисплея представлена в следующей таблице:

Тип ЖК дисплея TFT
Диагональ 3,5 дюйма
Разрешение 320х480 пикселов
Интерфейс SPI
Контроллер дисплея XPT2046
Тип сенсора резистивный
Фоновая подсветка светодиодная
Соотношение сторон 8:5
Количество цветов 65536
Поддержка камера, мышка и клавиатура

Как видим, вполне функциональный по современным меркам дисплей.

Необходимые компоненты

  1. Плата Raspberry Pi (купить на AliExpress).
  2. 3.5” TFT LCD (сенсорный TFT ЖК дисплей диагональю 3,5 дюйма) (купить на AliExpress).
  3. Подключение к сети Интернет.

В данном проекте мы будем подключаться к плате Raspberry Pi по SSH протоколу с использованием программы Putty. Вы можете использовать любой другой способ взаимодействия с платой Raspberry Pi, однако у вас должна быть возможность запуска окна терминала платы.

Подключение TFT ЖК дисплея к Raspberry Pi

Подключить сенсорный TFT ЖК дисплей диагональю 3,5 дюйма к плате Raspberry Pi достаточно просто. TFT ЖК дисплей содержит ленту контактов с коннекторами типа "мама", которые отлично стыкуются с контактами Raspberry Pi типа "папа". Поэтому все, что вам нужно сделать в данном случае, это расположить TFT ЖК дисплей сверху платы Raspberry Pi, выровнять их относительно друг друга (чтобы контакты были напротив друга), после чего немного нажать на дисплей чтобы осуществить соединение. Соединенные таким образом TFT ЖК дисплей и плата Raspberry Pi будут выглядеть следующим образом:

Соединенные вместе TFT ЖК дисплей и плата Raspberry Pi

Осуществлять обмен данными между TFT ЖК дисплеем и платой Raspberry Pi мы будем по интерфейсу SPI. Получать питание дисплей будет от контактов 5V и 3.3V платы. Всего у TFT ЖК дисплея 26 контактов, их обозначение и описание представлено в следующей таблице.

Номер контакта Обозначение Описание
1, 17 3.3V питание 3.3V
2,4 5V питание 5V
3,5,7,8,10,12,13,15,16 NC Не подключается, используется для поддержки
6,9,14,20,25 GND земля
11 TP_IRQ Контакт прерывания по уровню логического нуля
18 LCD_RS Контакт выбора регистра для контроллера дисплея
19 LCD_SI Вход данных SPI интерфейса
21 TP_SO Выход данных SPI интерфейса
22 RST Сброс
23 LCD_SCK Контакт синхронизации SPI интерфейса
24 LCD_CS Контакт выбора чипа SPI интерфейса ЖК дисплея
26 TP_CS Контакт выбора чипа SPI интерфейса сенсорного экрана

Как видим, непосредственно для подключения к плате Raspberry Pi  используется сравнительно небольшое число контактов дисплея.

Подготовка Raspberry Pi к подключению TFT ЖК дисплея

Когда вы подключите TFT ЖК дисплей к плате Raspberry Pi как описано в предыдущем пункте вы увидите на экране дисплея только пустой белый экран. Это вызвано тем, что у вас в плате не установлено никаких драйверов для работы с ЖК дисплеем. Поэтому откройте окно термина на плате Raspberry Pi и выполните следующую последовательность шагов.

Шаг 1. Зайдите в панель настроек платы.

Это можно сделать с помощью команды:

Команда для входа в панель настроек

Главная страница настроек платы Raspberry Pi

Шаг 2. В настройках выберите пункт Boot Options -> Desktop/CLI (настройки загрузки платы) и выберите там опцию B4 Desktop Autologin Desktop GUI – это позволит вашей плате при загрузке выполнять автоматический вход в операционную систему без ввода пароля.

Выбор опции B4 Desktop Autologin Desktop GUI

Шаг 3. Снова перейдите в основное меню настроек и включите в них использование интерфейса SPI (с помощью данного интерфейса мы будем взаимодействовать с ЖК дисплеем) как показано на следующем рисунке.

Включение интерфейса SPI

Шаг 4. Перейдите по ссылке для скачивания драйвера (waveshare driver) чтобы скачать драйвер в виде ZIP архива. Затем перенесите этот ZIP архив на вашу плату Raspberry Pi. Мы это сделали с помощью Filezilla, но вы можете использовать любой другой удобный способ. Мы поместили этот архив в каталог /home/pi.

Шаг 5. После того, как ZIP архив будет в необходимом для нас месте, установите этот драйвер с помощью команды:

Примечание: перед выполнением данной команды убедитесь в том, что ваша плата Raspberry Pi подключена к сети интернет.

Установка драйвера для работы с TFT ЖК дисплеем

Шаг 6. После установки драйвера вы можете включить использование (enable) дисплея в плате с помощью команды:

Активания дисплея в плате Raspberry Pi

Шаг 7. После этого перезагрузите плату.

В результате выполнения этой команды автоматически закроется окно терминала. Затем в процессе загрузки платы вы должны заметить что на ЖК дисплее также будет отображаться информация о загрузке и в конце завершения этого процесса вы должны увидеть на экране ЖК дисплея рабочий стол операционной системы как показано на следующем рисунке.

Тестирование работы проекта

Более подробно все описанные в статье процессы вы можете посмотреть на видео, приведенном в конце статьи. В нашем случае мы были полностью удовлетворены настройками дисплея по умолчанию и не производили никакой калибровки дисплея. Но если вы хотите заняться этим, то посетите официальную вики страницу от компании waveshare, на которой описано как производить калибровку дисплея и как подключить трансляцию с камеры на экран дисплея.

Видео, демонстрирующее работу проекта

(Проголосуй первым!)
Загрузка...
5 010 просмотров

Комментарии

Подключение к Raspberry Pi сенсорного TFT ЖК дисплея 3,5 дюйма — 4 комментария

  1. Приветствую. Хочу добавить его в volumio, но система крашится. Как быть?

    • Добрый вечер. К сожалению, не работал с данным инструментом, поэтому не могу подсказать вам ничего дельного по этому вопросу

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *