Оглавление:

Поворот дисплея и сенсорного экрана Raspberry Pi: 4 шага
Поворот дисплея и сенсорного экрана Raspberry Pi: 4 шага

Видео: Поворот дисплея и сенсорного экрана Raspberry Pi: 4 шага

Видео: Поворот дисплея и сенсорного экрана Raspberry Pi: 4 шага
Видео: Raspberry Pi - подключаем дисплей (7 inch, 3.5 inch) 2024, Декабрь
Anonim
Поворот дисплея и сенсорного экрана Raspberry Pi
Поворот дисплея и сенсорного экрана Raspberry Pi
Поворот дисплея и сенсорного экрана Raspberry Pi
Поворот дисплея и сенсорного экрана Raspberry Pi

Это базовая инструкция, чтобы показать вам, как повернуть дисплей и сенсорный экран ввода для любого Raspberry Pi, работающего под управлением операционной системы Buster Raspbian, но я использовал этот метод с тех пор, как Джесси. Используемые здесь изображения взяты из Raspberry Pi 3 B +, работающего под управлением Raspbian Buster с 3,5-дюймовым сенсорным ЖК-дисплеем TFT.

Используемый сенсорный экран просто фантастический, если он вам нужен, вы можете найти его по этой ссылке на Amazon:

www.amazon.com/Raspberry-320x480-Monitor-Raspbian-RetroPie/dp/B07N38B86S/ref=asc_df_B07N38B86S/?tag=hyprod-20&linkCode=df0&hvadid=312824707815&hvadid=31282470815&hvad=31282470815&hvadid=31282470815&hvad=31282470815&hvad=31282470815&hvp06&hvs05 = c & hvdvcmdl = & hvlocint = & hvlocphy = 9027898 & hvtargid = pla-667157280173 & psc = 1

Шаг 1: поворот дисплея

Поворот дисплея
Поворот дисплея
Поворот дисплея
Поворот дисплея
Поворот дисплея
Поворот дисплея

Дисплей Raspberry Pi очень легко поворачивать, потому что есть опция, которую вы можете поместить в /boot/config.txt, которая позволяет вам вращать экран с одной линией.

Чтобы повернуть, просто откройте свой терминал (ctrl + alt + t) и введите «sudo nano /boot/config.txt»

Перейдите в конец файла и введите то, что вам нужно, чтобы повернуть экран так, как вы хотите:

# Ориентация по умолчанию

display_rotate = 0

# Повернуть на 90 ° по часовой стрелке

display_rotate = 3

# Повернуть на 180 °

display_rotate = 2

# Повернуть на 270 ° по часовой стрелке

display_rotate = 1

Шаг 2. Почему сенсорный экран должен вращаться

Почему сенсорный экран нужно вращать
Почему сенсорный экран нужно вращать
Почему сенсорный экран нужно вращать
Почему сенсорный экран нужно вращать

Сенсорный экран немного сложнее, он полагается на матрицу, которая принимает входные данные и отображает их в новое положение. Это делается с помощью трехмерной матрицы преобразования, которая очень распространена в робототехнике и космической физике для описания движения объекта в трехмерном пространстве. Вы можете подумать, зачем моему 2D-курсору 3D-матрица? Но на самом деле у вашего курсора есть неиспользуемое третье измерение. См. Математику ниже:

По умолчанию матрица установлена на единичную матрицу, что означает взаимно однозначное сопоставление: (Точки - это заполнители, которые помогают выровнять материал, представьте, что их там нет, Inscrutables удаляет пробелы)

……| 1 0 0 |

I = | 0 1 0 |

……| 0 0 1 |

Когда эта матрица умножается на вектор ввода, заданный вашим сенсорным экраном, происходит следующее:

| 1 0 0 |….| 300 |…..| 300 |

| 0 1 0 | * | 200 | = | 200 |

| 0 0 1 |…….| 1 |……….| 1 |

Как вы видите выше, единичная матрица не влияет на результат. Цель этого руководства не в том, чтобы научить вас умножению матриц, но если вам интересно, в Интернете есть множество учебных пособий. Я покажу математическую сторону этого, чтобы вы могли увидеть доказательство того, как и почему это происходит.

Если бы мы хотели повернуть туш-экран на 90 ° (по часовой стрелке), мы бы использовали эту матрицу:

| 0 -1 1 |…| 300 |….|-200 |

| 1 0 0 | * | 200 | = | 300 |

| 0 0 1 |……..| 1 |………| 1 |

Итак, как вы видите, значения x и y теперь поменялись местами, но новое значение x также отрицательное. Это немного сложно визуализировать, поэтому посмотрите мой пример на картинках. Линия прослеживается от центра вправо, теперь, когда она повернута на 90 ° (по часовой стрелке), вы заметите, что начерченная линия идет от центра -> вправо (+ x) к центру -> вниз (-y), и именно поэтому входной вектор необходимо изменить как таковой. Остальные матрицы вращения перечислены на следующем шаге, но теперь вы знаете немного больше о том, что происходит!

Шаг 3: поворот сенсорного экрана

Поворот сенсорного экрана
Поворот сенсорного экрана
Поворот сенсорного экрана
Поворот сенсорного экрана
Поворот сенсорного экрана
Поворот сенсорного экрана
Поворот сенсорного экрана
Поворот сенсорного экрана

Снова зайдите в свой терминал и введите «cd /usr/share/X11/xorg.conf.d/», если ваш сенсорный экран хотя бы обнаруживает касания, то файл конфигурации должен быть здесь.

Введите «ls», чтобы вывести список текущих файлов, ваш файл калибровки должен быть там, если вы не знаете, какой из них ваш, откройте каждый (используя «nano your_file_name») и найдите тот, в котором есть раздел с «Идентификатором… сенсорный экран . Скорее всего, это будет тот, в названии которого есть «evdev» или «libinput». Как только вы его нашли, выполните команду «sudo nano your_file_name», чтобы получить доступ на запись и отредактировать файл.

Перейдите в свой раздел и добавьте правильный «Вариант» внизу «Раздела».

Все с перспективой по часовой стрелке:

90 ° = Вариант «Матрица трансформации» «0-1 1 1 0 0 0 0 1»

180 ° = Вариант «Матрица трансформации» «-1 0 1 0 -1 1 0 0 1»

270 ° = Вариант «Матрица трансформации» «0 1 0 -1 0 1 0 0 1»

Шаг 4: Вот и все

Надеюсь, это поможет многим начинающим энтузиастам Raspberry Pi! Я вижу, что люди все время борются с этой проблемой, поэтому, если вы случайно встретите на форуме кого-то, кому нужна помощь, просто отправьте ему ссылку здесь. Приятных изобретений, друзья мои!

Рекомендуемые: