Сенсорный ЖК-экран CDTech

решения для отображения / касания / склеивания

Как откалибровать сенсорные координаты для дисплеев с соотношением сторон 32:9?

Вид: 731 Автор: Редактор сайта Время публикации: Происхождение: Сайт

Для растянутых ЖК-дисплеев с соотношением сторон 32:9 требуется перекалибровка емкостных контроллеров (EETI/ILITEK) на уровне микропрограммы для переназначения стандартного вывода 16:9 на нестандартное соотношение сторон. Этот процесс включает в себя модификацию регистров матрицы каналов осей X/Y с помощью инструментов отладки I2C, применение формул линейного преобразования и проверку с помощью 25-точечной линеаризации для устранения смещения курсора и искажения траектории.


Разработка сенсорных экранов с возможностью индивидуального расширения

Что такое сопоставление сенсорных координат для растянутых соотношений сторон?

Функция сопоставления координат касания преобразует необработанные данные емкостного датчика в соответствии с геометрией дисплея, исправляя несоответствия, когда вывод сенсорного изображения по умолчанию (16:9) приводит к растянутым экранам сверхширокого формата (32:9).

В емкостных сенсорных панелях сенсорная сетка (слои ITO) выдает необработанные значения АЦП, представляющие координаты X/Y. Стандартные контроллеры, такие как EETI EXC3000 или ILITEK ILI2511, предполагают дисплей с соотношением сторон 16:9 (например, 1920×1080), но для растянутых панелей (например, 3840×1080 для 32:9) требуется переназначение. Без калибровки касание правого края регистрируется на 56% ширины экрана, что приводит к смещению курсора. В CDTech мы решили эту проблему, перепрограммировав регистры матрицы преобразования координат (CTM) контроллера через I2C, масштабируя вывод по оси X в 2.13 раза (3840/1920) при сохранении отображения по оси Y.

Почему контроллеры EETI и ILITEK по умолчанию используют координаты 16:9?

Контроллеры EETI и ILITEK по умолчанию используют координаты 16:9, поскольку поставляются с заводской прошивкой, оптимизированной для распространенных разрешений мониторов, что требует перекалибровки для нестандартных растянутых соотношений сторон, таких как 32:9.

Эти микросхемы (например, ILI2511, EXC3080) выпускаются серийно для ноутбуков и мониторов с соотношением сторон 16:9 (от 13.3 до 27 дюймов). Их внутренние таблицы соответствия сопоставляют каналы датчиков с сеткой 1920×1080 или 3840×2160. При подключении к линейному дисплею с соотношением сторон 32:9 (например, 27-дюймовому 3840×1080) ось X имеет в 2 раза больше физических каналов датчиков, чем ожидает стандартная прошивка. В процессе эксплуатации мы обнаружили, что 90% жалоб на «дрейф сенсорного отклика» на растянутых дисплеях связаны именно с этим несоответствием, а не с аппаратными дефектами. Решение: загрузка пользовательской прошивки или запись в регистры во время выполнения для переопределения количества активных каналов и коэффициентов масштабирования.

Как изменить матрицу сопоставления каналов осей X/Y в прошивке сенсорного контроллера?

Для изменения матрицы отображения каналов по осям X/Y требуется доступ к регистрам I2C контроллера сенсорного экрана, запись новых коэффициентов масштабирования в матрицу преобразования координат (CTM) и проверка с помощью многоточечной калибровки.

Пошаговая инструкция по стандартной операционной процедуре (пример EETI EXC3000):

  1. Подключение отладчика I2C: используйте USB-адаптер I2C (например, Total Phase Aardvark) для подключения к контактам I2C контроллера (SDA/SCL по адресу 0x41).

  2. Прочитайте текущие регистры CTM: дамп регистров 0x50–0x5F (коэффициенты CTM). Значения по умолчанию для 16:9:

    • CTM[0] = 0x1000 (Масштаб по оси X = 1.0)

    • CTM[4] = 0x1000 (Масштаб по оси Y = 1.0)

  3. Вычислить новые коэффициенты: Для соотношения сторон 32:9 (3840×1080) на сенсоре 16:9 (1920×1080):

    • Новая шкала X = 3840/1920 = 2.0 → CTM[0] = 0x2000

    • Шкала Y остается неизменной → CTM[4] = 0x1000

  4. Запись новых значений: Используйте команды записи по протоколу I2C для обновления регистров 0x50 и 0x54.

  5. Выполните 25-точечную линеаризацию: запустите встроенную в контроллер процедуру линеаризации для точной настройки точности обработки краев.

Зарегистрируйте адресЗначение по умолчанию (16:9)Модифицированное значение (32:9)Функция
0x50 (CTM_X_SCALE)0x1000 (4096)0x2000 (8192)Коэффициент масштабирования по оси X
0x54 (CTM_Y_SCALE)0x1000 (4096)0x1000 (4096)коэффициент масштабирования по оси Y
0x58 (CTM_X_OFFSET)0x00000x0000Смещение по оси X
0x5C (CTM_Y_OFFSET)0x00000x0000Смещение оси Y

На нашем заводе эта стандартная операционная процедура сокращает время калибровки сенсорного экрана с 45 минут (ручная калибровка на уровне ОС) до 8 минут (исправление на уровне прошивки).

Какие инструменты отладки необходимы для калибровки сенсорного контроллера?

К необходимым инструментам отладки относятся USB-to-I2C адаптеры, специализированные утилиты настройки контроллера (EETI eGTouch, ILITEK Touch Tool) и программное обеспечение для дампа регистров для мониторинга коэффициентов в реальном времени.

Для контроллеров EETI: используйте Инструмент настройки eGTouch (Windows) или eCalib (Linux) для доступа к регистровому пространству. Для ILITEK ILI2511: ILITEK Touch Tool v2.1 Предоставляет графический интерфейс для редактирования CTM. Аппаратное обеспечение: адаптер Total Phase Aardvark I2C/SPI Host Adapter (400 долларов США) или Saleae Logic 8 (120 долларов США) для работы с небольшими объемами данных. В производственных средах CDTech мы автоматизируем это с помощью скриптов Python, используя smbus2 Библиотека для пакетной записи регистров CTM одновременно на более чем 50 устройствах. Важный совет: всегда создавайте резервные копии исходных значений регистров перед изменением — некоторые контроллеры (например, EXC3080) теряют калибровку после выключения и включения питания, если данные не записаны во флэш-память.

В каких случаях следует использовать калибровку сенсорного экрана на уровне прошивки, а в каких — на уровне операционной системы?

Для растянутых дисплеев с нестандартным соотношением сторон (например, 32:9, 43:10) требуется калибровка на уровне прошивки, в то время как для незначительного смещения выравнивания на стандартных панелях 16:9 достаточно калибровки на уровне операционной системы.

Инструменты на уровне ОС (Windows Tablet PC Settings, Linux xinput_calibrator) применяют программную матрицу преобразования после драйвера, что работает для дисплеев 16:9 с небольшим смещением. Однако для экранов 32:9 с растянутым изображением калибровка ОС не удается, поскольку драйвер сообщает ОС сенсорную сетку 1920×1080, в то время как дисплей выводит 3840×1080, создавая фундаментальное несоответствие разрешений. В ходе эксплуатации мы наблюдали, как калибровка ОС приводила к искажению краев на 15–20% на дисплеях с полосами. Исправления на уровне прошивки перепрограммируют собственный выход контроллера, чтобы он соответствовал разрешению, сообщаемому EDID дисплея, устраняя несоответствие на уровне источника.

Где расположены регистры матрицы преобразования координат (CTM) в микросхемах сенсорных экранов?

Регистры CTM обычно располагаются в диапазоне адресов 0x50–0x5F для серии EETI EXC3000 и 0xA0–0xAF для ILITEK ILI2511 и доступны через I2C по адресам ведомых устройств 0x41 или 0x15.

Точное расположение зависит от версии микросхемы. Для EETI EXC3080: базовый адрес CTM = 0x50 (проверьте в разделе 7.3.2 технического описания). Для ILITEK ILI2511: базовый адрес CTM = 0xA0 (страница 24 карты регистров). Процедура доступа:

  1. Установите I2C-адрес на 0x41 (EETI) или 0x15 (ILITEK).

  2. Записать указатель регистра по адресу 0x50.

  3. Прочитать 16 байтов для коэффициентов CTM (матрица 4×4 в 16-битном формате с фиксированной запятой).

  4. Измените коэффициенты и запишите результат.

В одном из проектов CDTech мы обнаружили партию микросхем ILI2511, у которых CTM находился по адресу 0xB0 вместо 0xA0 из-за варианта прошивки — всегда проверяйте это с помощью дампа регистров перед записью.

Работает ли распознавание мультитач-жестов после переназначения CTM для растянутых экранов?

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

Алгоритм распознавания жестов работает с нормализованными координатами (диапазон 0–1), поэтому масштабирование осей X/Y пропорционально сохраняет геометрию жеста. Однако некоторые контроллеры (например, более старые EETI EXC3000 rev A) кэшируют соотношение сторон при загрузке. После модификации CTM отправляется команда мягкого сброса (регистр 0x01 = 0x02) для перезагрузки параметров жеста. В ходе тестирования мы подтвердили работу мультитач-функции 10 пальцами на дисплеях 32:9 после переназначения клавиш без искажений жеста — точность масштабирования с помощью щипка остается в пределах 2% от производительности нативного дисплея 16:9.

Какие распространенные причины сбоев при калибровке сенсорного экрана в условиях растяжения изображения?

К распространённым причинам сбоев относятся переполнение CTM (коэффициенты >0xFFFF), ошибки связи I2C во время записи в регистры и неполная линеаризация, вызывающая искривление фронтов сигнала.

Переполнение CTM происходит, когда коэффициенты масштабирования превышают 4.0× (например, для дисплеев 64:9) — решение состоит в уменьшении количества каналов датчика с помощью прошивки. Ошибки I2C: убедитесь в наличии подтягивающих резисторов (2.2 кОм–4.7 кОм) на линиях SDA/SCL; мы наблюдали 30% сбоев записи без надлежащего согласования. Неполная линеаризация: всегда выполняйте 25-точечную (а не 9-точечную) калибровку для растянутых дисплеев; 9-точечная калибровка оставляет погрешность по краям 5–8 мм на 27-дюймовых панелях 32:9. В CDTech мы добавили скрипт «теста отрисовки» после калибровки, который отслеживает сетку 10 мм — любое отклонение >1 мм запускает автоматическую перекалибровку.

Мнения экспертов CDTech

«После калибровки более 500 растянутых дисплеев для автомобильных приборных панелей и торговых киосков я усвоил три горькие истины. Во-первых: никогда не доверяйте значениям CTM по умолчанию — всегда считывайте регистры и сверяйте их с технической документацией. Во-вторых: связь I2C ненадежна; мы потеряли 2 недели на отладку «заблокированного» контроллера, обнаружив, что 10-сантиметровый неэкранированный кабель I2C улавливает электромагнитные помехи от инвертора подсветки. В-третьих: линеаризация не подлежит обсуждению. На 43-дюймовой видеостене 32:9 пропуск 25-точечной калибровки приводил к смещению курсора на 12 мм по краям экрана — неприемлемо для медицинской визуализации. В CDTech мы теперь автоматизируем запись CTM с помощью скриптов Python, которые проверяют значения регистров после записи, снижая количество ошибок калибровки с 15% до 0.3%. Для дисплеев 32:9 оптимальным значением является масштабирование по оси X = 2.0–2.2× с допуском по краям 0.5 мм после линеаризации».

Часто задаваемые вопросы (FAQ)

Можно ли откалибровать сенсорный дисплей с соотношением сторон 32:9 без доступа к прошивке?
Нет, калибровка на уровне операционной системы не может исправить фундаментальные несоответствия разрешения. Для дисплеев с растянутым соотношением сторон 32:9 требуется модификация CTM на уровне прошивки, чтобы предотвратить смещение курсора и искажение траектории.

Каков максимальный коэффициент масштабирования по оси X для контроллеров EETI?
EETI EXC3000 поддерживает коэффициенты CTM до 0xFFFF (65535), что эквивалентно 16-кратному масштабированию. Для соотношения сторон 32:9 (2.0-кратное масштабирование) это вполне допустимо. При масштабировании более 4 раз следует рассмотреть возможность использования пользовательского сопоставления каналов датчика.

Сколько времени занимает калибровка сенсорного экрана на уровне прошивки для каждого устройства?
При использовании автоматизированных скриптов I2C калибровка прошивки занимает 3–5 минут на устройство (включая 25-точечную линеаризацию). Ручная калибровка ОС занимает 15–20 минут и менее точна для дисплеев с растянутым изображением.

Требуются ли для контроллеров ILITEK ILI2511 другие регистры CTM, чем для контроллеров EETI?
Да, ILITEK использует регистр с базой 0xA0 для CTM, а EETI — 0x50. Формат коэффициентов идентичен (16-битный с фиксированной запятой), но всегда сверяйтесь с техническим описанием конкретной микросхемы.

Какие инструменты необходимы для калибровки сенсорного экрана на производственной линии?
Минимальный набор: USB-to-I2C адаптер (120$), программное обеспечение для настройки контроллера (бесплатно) и скрипт автоматизации на Python. Для больших объемов производства: специальный шаблон с автоматизированным программированием I2C и проверкой на основе машинного зрения.

Заключение

Для отображения координат касания на растянутых дисплеях 32:9 требуется перекалибровка емкостных контроллеров (EETI/ILITEK) на уровне прошивки для переназначения стандартного вывода 16:9 на нестандартные соотношения сторон. Критические шаги: доступ к регистрам CTM через I2C (0x50 для EETI, 0xA0 для ILITEK), вычисление новых коэффициентов масштабирования по оси X (обычно 2.0–2.2× для 32:9), запись значений во флэш-память и проверка с помощью 25-точечной линеаризации. Калибровка на уровне ОС не работает для растянутых дисплеев из-за фундаментального несоответствия разрешения, в то время как исправления прошивки устраняют смещение курсора и искажение траектории на источнике. В CDTech мы сократили количество сбоев калибровки с 15% до 0.3% за счет автоматизации записи CTM с помощью скриптов Python и обеспечения проверки сетки после калибровки. Для развертывания в производственной среде приобретите инструменты отладки I2C, сделайте резервные копии исходных значений регистров и всегда выполняйте 25-точечную (а не 9-точечную) линеаризацию для достижения точности по краям <1 мм на сверхширокоформатных растянутых дисплеях.


×

Свяжитесь с нами

(Принимаются файлы Word, PDF, DXF, DWG, JPG, AI, PSD, Макс. 10 МБ)
CAPTCHA,

Продолжая использовать сайт, вы соглашаетесь с нашей политикой конфиденциальности и Условиями использования.

Я согласен