Итак, есть резистивная сенсорная панель на дисплее Ampire. Есть контроллер сенсорной панели: AD7843
http://www.analog.com/en/analog-to-digital...ucts/index.htmlКто работал с такими штуковинами или просто знает - подскажите, как расчитать координаты X и Y? Т.к. с этого самого контроллера (он же просто АЦП) получаем нелинейную характеристику. Где-то про это написано?
Выбираю, значит, дифференциальный режим. Т.е. когда на Y+ и Y- подается питание и земля, являющиеся опорными напряжениями, а напряжение снимается с X+. Вроде бы простой делитель, коэффициент деления должен зависеть только от координаты Y.
Но значения, полученные с AD7843 зависят о обеих координат. Это нормально?
Peter Pavlov
Mar 23 2009, 18:52
Расчет координат идет по формулам. Заодно и рачет общего сопротивленя при нажатии. Общее сопротивление необходимо для установки порога усилия нажатия против ложных срабатываний. Почитайте даташит на TSC2046 от TI, там приведены формулы и алгоритм рачета. Алгоритм должен быть тем же для любых резистивных тачскринов.
Вот такое нашел у себя. Взято гдето на фтп altera.
Итак, я нарисовал на дисплее сетку с определенным шагом. Нажимая стилусом в определенных координатах (ориентируясь по сетке), промасштабировав измеренные значения, получаю пока точность в пределах +-3..5 при общем разрешении 720х576/
Это пока без корректировки ошибок. Для реализации клавиатуры волне неплохо.
Теорию и коды смотрю...
Цитата
А в свободный доступ выложить можно или по мылу, например? Буду благодарен.
А что выкладывать... Господа vetal, Peter Pavlov, acex2 выдали всю необходимую информацию.
Ну вот есть примитивнейшая реализация расчета координат.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.