Главная » Статьи » Как подключить

подключение резистивной сенсорной панели к микроконтроллеру
  В последнее время вырос огромный интерес к девайсам имеющим сенсорное управление, посредством тачскринов, сенсорных панелей и кнопок. Вот и я поддался моде и решил испробовать сенсорное управление как замену стандартным тактовым кнопкам. Самым простым вариантом, оказалось, использовать готовые сенсорные экраны, которые применяются в мобильных девайсах. Речь пойдет о сенсорных экранах, выполненных по резистивной технологии, так как они достаточно дешевы и с ними просто работать. Для опытов приобрел здесь сенсорный экран от телефона Samsung I710.

Как это работает
  Экраны, выполненные по резистивной технологии, в основном состоят из двух частей — гибкого верхнего и жесткого нижнего слоев. В качестве гибкого слоя применяются различные пластиковые или полиэфирные пленки, а второй изготавливается из стекла. На внутренние стороны обеих слоев нанесено токопроводящее покрытие, обладающее определенным сопротивлением. Пространство между ними заполнено микроскопическим изолятором, который равномерно распределен по поверхности слоев разделяет два слоя друг от друга, не давая им замыкаться.





 
 При прикосновении, проводящие пленочки замыкаются и образуют между собой контакт, при этом точка прикосновения образует простой резистивный делитель:



 Благодаря этому координаты прикосновения можно легко вычислить, с помощью АЦП, проведя 2 измерения (сперва для одной координаты, затем для другой). Для этого на заднюю пленку подаем постоянное напряжение, например наши +5В (на вывод X+ подаем 5В, а на вывод Х- подключаем к земле). При этом, на каждом горизонтальном участке заднего слоя, ток создает падение напряжение, пропорционально длине участка, которое и нужно нам считать. Щупом послужит передний резистивный слой, один из электродов которого присоединен к АЦП. Это будет координата Х. Аналогично считывается и Y координата.


Код для определения координат
 Фрагмент кода в Bascom-AVR работы с тачскрином ниже; один слой использует подключение к 0 и 2 каналам АЦП, другой к 1 и 3 каналам.



Touchscreen:

Config Pina.= Output                'ставим порты на выход
Config Pina.= Output                'к ним подключены электроды с первой пленки
Reset Porta.1                         'садим электрод на землю
Set Porta.3                           'устанавливаем на электроде напряжение питания
Ddra.= 0                            'делаем порты как вход
Ddra.= 0                            'отсюда будем считывать показания с АЦП

Waitms 100                           'ждем утихания переходных процессов

 X = Getadc(2)                        'читаем координату X
 X = 1023 - X                         'приводим в удобный вид

Xstr = Str(x)                         'готовим переменные для вывода на дисплей

'повторяем для координаты Y

Config Pina.= Output
Config Pina.= Output
Reset Porta.0
Set Porta.2
Ddra.= 0
Ddra.= 0

Waitms 100

 Y = Getadc(3)
 Y = 1023 - Y

Ystr = Str(y)

Return                               'возвращаемся в основной цикл программы




 тачскрин, который я использовал, для подключения имеет 4х проводной шлейф вполне паябельных размеров (существуют еще пяти проводные резистивные экраны, но принципом определения координат они не отличаются)



 Считанные координаты я просто вывел на дисплей, использовав модуль на atmega32 с дисплеем nokia3310. 






 Теперь можно привязать координаты на выполнение любых действий, все зависит только от фантазии =)

 Полный листинг программы можно скачать по этой ссылке.

Категория: Как подключить | Добавлено: 29.08.2011
Просмотров: 26878 | Комментарии: 17 | Теги: touchscreen, модуль, sensor | Рейтинг: 5.0/6
Всего комментариев: 17
17 telefonist   (25.01.2015 02:52)
Оказалось - это наводка от самого ЖКИ. Повесил на ноги тача кондёры и резисторы к земле, наводки пропали.
А за ответ - спасибо :)

16 GSV   (22.01.2015 17:42)
- telefonist -
В документации к мк есть рисунок как нужно подключать питание АЦП.Там питание заводят на ножку AVCC(мега8) через индуктивность 10мкГн и эту ножку шунтируют керамическим конденсатором на 100нан.Если у вас не так,попробуйте сделать по ДШ.

15 telefonist   (20.01.2015 22:38)
А у меня пока нет нажатия на тачскрин - АЦП ловит наводки и помехи. Пытаюсь подтягивать к земле резистором, но есть же другой выход?

14 exersizze   (04.05.2013 22:23)
Да, вот хекс  avrproject.ru/touchscreen/touchscreen.hex частота 16МГц

13 MONIKYS   (04.05.2013 16:02)
Вы можете выложить Хекс файл. Сделал модель тача для Протеуса, надо проверить. В АВР-ах не понимаю.

12 exersizze   (16.09.2011 20:51)
к сожалению ни того ни другого у меня нет, и работать с этим типом дисплея не приходилось.
Зато у mcselectr есть апнот, как раз для вашего случая wink
AN#148

11 AleksanderG   (16.09.2011 17:48)
Автор пожалуста,если можно поправтье код для тачскрин-а 128*64 и соответственно для панелки ВИНСТАР 128*64. Спасибо.

10 tenevikus   (09.09.2011 16:01)
да уж... согласен... изиэлектрик тяжеловат немного... но у них и впрямь много интересного..

9 exersizze   (05.09.2011 18:18)
tenevikus изиэлектроникс такой изиэлектроникс, с этой статьи я и решился на пробу тачскрина smile
ya-zp да, тач соединял проводками напрямую к мк, а модельку отдельно нарисовал в паинте =)
я выбирал тачскрин самый дешевый; можно посмотреть какие есть в наличии у вас и загуглить описания на телефоны к которым они идут, там должно быть написано о типе сенсора wink

8 ya-zp   (05.09.2011 16:45)
Интересная идейка!
Одно смущает - цена ( у нас за Самсунговский 710 тачик с меня запросили 150 грн, эт де-то 70-750 рублей). Но попробывать хочется!
И еще вопросик: схемка приведена с протеуса (верно?). Подскажите, вы использовали модель тачскрина в протеусе или это дорисовано позже? smile

7 tenevikus   (05.09.2011 16:37)
неплохая статья про основы этого дела тут
http://easyelectronics.ru/rabota-s-rezistivnym-sensornym-ekranom.html
biggrin

6 exersizze   (30.08.2011 19:16)
Заметил одну особенность, работая с этим сенсором.. Примерно 30% площади тачскрина остается не задействованной, думаю что из-за резисторов подтяжки внутри мк. Так что либо их отключать и ловить мусор когда нет нажатия, либо повесить два внешних резистора, которые будут компенсировать внутренние. Если кто попробует на своем таче отпишитесь обязательно, как у вас будет работать.

5 exersizze   (30.08.2011 19:04)
Дисплеи конструктивно выполнены отдельно, а тачскрин - прозрачная стекляшка, ее встраивают поверх дисплеев.

+1   Спам
4 amv2000   (30.08.2011 16:24)
Автор выше в начале статьи приводил ссылку где брал...
Для опытов приобрел здесь сенсорный экран от телефона Samsung I710.
А настройки LCD в полном листинге самый нижний текст или Вы не читаете...

3 cudi   (30.08.2011 10:08)
наконец, пример на бейсике))
1) Где ты купил данный тачскрин, и сколько он выходит по деньгам.
2) Странно, а почему ты не конфигурируешь в программе настройки своего LCD (только что заметил)?

2 amv2000   (30.08.2011 08:03)
А использовать и как дисплей Samsung I710 не получится, или только как сенсорную панель?

+1   Спам
1 Skyline   (29.08.2011 20:25)
Да, проекты становятся все сложнее и интереснее!

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]






   EasyEDA:  бесплатный редактор схем

   ✓ Создание схем
   ✓ Возможность симуляции
   ✓ Быстрое создание печатных плат
   ✓ Интуитивно понятный интерфейс

   Нарисуй свою схему прямо сейчас!
   Изготовление печатных плат   https://easyeda.com/order
авторизация
Логин:
Пароль:
Комментарии
Когда не хватает ног. Часть 2. Сдвиговый регистр 74HC595
08.12.2016 - exersizze:
yorx выдалось немного свободного времени, проверил в симуляторе. Проблема...
Логгер температуры 2.0
05.12.2016 - Evgeny6873:
Хотел повторить схему и долго ждал дисплей, два раза заказывал с Китая, пришел. ...
Когда не хватает ног. Часть 2. Сдвиговый регистр 74HC595
01.12.2016 - yorx:
Доброго времени суток, exersizze попробовал Ваш код все равно не работает как на...
Помни об усадке!
30.11.2016 - pchela5:
Автомобильные никакие не лезут?
Помни об усадке!
29.11.2016 - AlekS:
Виктор, спасибо.
С заменой транса в зиму, перестройка не комельфо) Валяет...
Управляем микроконтроллером с ПК по UART
29.11.2016 - exersizze:
Михаил, для работы с инфракрасными датчиками и диодами есть команды RC5SE...
Управляем микроконтроллером с ПК по UART
29.11.2016 - Михаил:
Всем привет.
Подскажите как переменную S передать по инфракрасному каналу...
Помни об усадке!
29.11.2016 - pchela5:
> Если ленту светодиодную порезать и соединить последовательно
Только ...
Когда не хватает ног. Часть 2. Сдвиговый регистр 74HC595
29.11.2016 - exersizze:
yorx, вывод Q7 ' первой микросхемы соединен с DS второй микросхемы? С...


Лучшие цены на 3D принтеры
успей сделать себе подарок к Новому Году! ;)


Prusa i3

Prusa i3 от 12500 р.



Rostoсk

Rostock от 15000 р.