Аналоговые кнопки на одном пине.

Вопросы по подключению кнопок и клавиатур
Ответить
Аватара пользователя
Ghost
Рядовой
Сообщения: 24
Зарегистрирован: 24 янв 2016, 05:38
Откуда: Рязань

Аналоговые кнопки на одном пине.

Сообщение Ghost »

Задача
Подключить кнопки на аналоговый вход ардуины.
Понять, как это в FLProg вообще должно выглядеть.
Условия
Вот так кнопки подключены к ардуине физически:
1206511.jpg
Схема дана для образца. Тут отображен просто тип подключения кнопок.
На RESET внимания ноль.

Как, эту не сложную схему, перенести в FLProg?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
support
Супермодератор
Сообщения: 1917
Зарегистрирован: 03 янв 2018, 11:45
Откуда: Астрахань
Имя: Сергей
Поблагодарили: 23 раза
Контактная информация:

Аналоговые кнопки на одном пине.

Сообщение support »

Почитай тут http://flprog.ru/publ....-1-0-19
Автор программы FLProg.
Аватара пользователя
Ghost
Рядовой
Сообщения: 24
Зарегистрирован: 24 янв 2016, 05:38
Откуда: Рязань

Аналоговые кнопки на одном пине.

Сообщение Ghost »

Только хотел написать, нашел проект с LCD, а мне уже ссылку на него.)) Приятна такая оперативность.
Вот только почему то этот проект Жутко тормозит программу. Я в целом понял за что зацепиться в нем, но как то серьезно разобраться не получится, отклик на нажатия мышки или колесика секунд по 7-10... жуть.
Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13 окт 2015, 16:47
Контактная информация:

Аналоговые кнопки на одном пине.

Сообщение Олег »

На некоторых операционных системах тормоза есть. Чтобы их уменьшить надо держать платы свернутыми, открыта только та с которой работаете на данный момент.
У меня на Windows XP SP2 все идет без тормозов и с открытыми платами. Поставил на Висту вообще работать невозможно. Разработчик об этом в курсе и когда-нибудь поправит.
DWD
Лейтенант
Сообщения: 353
Зарегистрирован: 18 окт 2015, 13:51
Откуда: Кривой Рог

Аналоговые кнопки на одном пине.

Сообщение DWD »

На счёт тормозов.
Видимо нужно все рекомендации по пунктам вынести куда-то на самое видное место.
Тем более, что два основных действия - приоритет программы и работа на одном ядре - полностью решают проблему.
Изображение
Аватара пользователя
Сергей
Лейтенант
Сообщения: 578
Зарегистрирован: 31 авг 2015, 15:06
Имя: Сергей
Контактная информация:

Аналоговые кнопки на одном пине.

Сообщение Сергей »

Ghost, вот блок по Вашей просьбе.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Ghost
Рядовой
Сообщения: 24
Зарегистрирован: 24 янв 2016, 05:38
Откуда: Рязань

Аналоговые кнопки на одном пине.

Сообщение Ghost »

Сергей писал(а):Ghost, вот блок по Вашей просьбе.Прикрепления: __LCDKeypadShie.ubi(172Kb)
чем открывать файлы с таким расширением?
Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13 окт 2015, 16:47
Контактная информация:

Аналоговые кнопки на одном пине.

Сообщение Олег »

Это пользовательский блок, в программе в правом окне, где выбираются блоки выбираете вкладку Пользовательские, нажимаете кнопку Загрузить (папочка) и загружаете.
Аватара пользователя
Ghost
Рядовой
Сообщения: 24
Зарегистрирован: 24 янв 2016, 05:38
Откуда: Рязань

Аналоговые кнопки на одном пине.

Сообщение Ghost »

DWD писал(а):На счёт тормозов.Видимо нужно все рекомендации по пунктам вынести куда-то на самое видное место.
Тем более, что два основных действия - приоритет программы и работа на одном ядре - полностью решают проблему.
Полностью проблему не решило, но на одном ядре сильно лучше стало, теперь хоть движутся ползунки. Сразу, а не когда мышку уже положил.)))

Добавлено (24.01.2016, 17:09)
---------------------------------------------
Олег писал(а):Это пользовательский блок, в программе в правом окне, где выбираются блоки выбираете вкладку Пользовательские, нажимаете кнопку Загрузить (папочка) и загружаете.
Спасибо, получилось.
Но мне немного не нравится, какой она скетч выдает.
    Я написал библиотеку, пальчиками, без этой программы. И столкнулся с кучей проблем. Такие как самовозбуждение генераций на АЦП, это когда кнопку ни кто не трогает, а она сама нажимается и отпускается с частотой опроса кнопок. Выдача значений, которые вообще ни где не фигурируют, выдача соседних кнопок из за не четко нажатой кнопки без отжатия. Тоесть не 1 потом 0, а сразу 1 потом без нуля соседняя и только потом 0.
вообще выдача соседней кнопки, косвенная причина дребезг, но не только в нем дело... Все не вспомню, что то еще было...
Короче надеялся пролентяйничать, думал что эта чудо программа рашает все эти детские проблемы.)) А она выдала почти тоже самое, что я написал, еще до внесения всех исправлений, возникающих проблем.))
Радикальное решение - сдвиговые регистры.
А пока они они едут из Китая, балуемся аналоговыми кнопочками. Изображение
Аватара пользователя
Сергей
Лейтенант
Сообщения: 578
Зарегистрирован: 31 авг 2015, 15:06
Имя: Сергей
Контактная информация:

Аналоговые кнопки на одном пине.

Сообщение Сергей »

Ghost, выведите на экран значение с пина А0 и посмотрите какие значения по каждой кнопке. Потом отредактируйте в самом блоке константы. Должно все работать проверенно не однократно, и на разных шилдах.
DWD
Лейтенант
Сообщения: 353
Зарегистрирован: 18 окт 2015, 13:51
Откуда: Кривой Рог

Аналоговые кнопки на одном пине.

Сообщение DWD »

Ghost писал(а):Полностью проблему не решило, но на одном ядре сильно лучше стало,
Забыл - ещё нужно поставить совместимость с Win98.
У меня проблемы теперь не существует. Да и не только у меня...
Изображение
Аватара пользователя
Ghost
Рядовой
Сообщения: 24
Зарегистрирован: 24 янв 2016, 05:38
Откуда: Рязань

Аналоговые кнопки на одном пине.

Сообщение Ghost »

Сергей писал(а):Ghost, выведите на экран значение с пина А0 и посмотрите какие значения по каждой кнопке. Потом отредактируйте в самом блоке константы. Должно все работать проверенно не однократно, и на разных шилдах.
Сергей, я копнул на много глубже. С вашего совета я начал писать библиотеку. Первое, что я сделал, это вывел в сериал порт значения АЦП и уже от этих значений, начал писать. В блокноте! Я в FLProg писать, еще не умею. Только понимаю уже кем то написанное.))
Но это пол беды. Решить проблему не точности некоторых нажатий, программно вообще не получится.
Причина в изменении сопротивления самого контакта, при не четком нажатии. АЦП ардуины четко отрабатывает свои показания. Причина именно в самих кнопках.
Допустим резистерный делитель дает 2.5в. АЦП, 511 покажет, при идеальном контакте. И все сработает как было задумано. А вот когда контакт у нас плохой и на АЦП приходит не 2.5в, а 1.5в, а 1в теряется в виде тепла на этом самом контакте. Что тогда?
А я скажу, тогда АЦП покажет контроллеру не 511 как должен был бы по задумке автора, а 307, что соответствует значению с погрешностью, соседней кнопке...
Таким образом программа отработает четко на другую кнопку! Так как именно такое значение выдаст АЦП.
DWD писал(а):Забыл - ещё нужно поставить совместимость с Win98.
У меня проблемы теперь не существует. Да и не только у меня...
Спасибо, попробую. :)
Попробовал, в режиме совместимости вообще не запускается. Ни xp, ни 98, куча ошибок и до свидания...
Последний раз редактировалось Ghost 25 янв 2016, 02:47, всего редактировалось 1 раз.
Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13 окт 2015, 16:47
Контактная информация:

Аналоговые кнопки на одном пине.

Сообщение Олег »

Теоретически такое может быть, практически пока не замечал.
Аватара пользователя
Сергей
Лейтенант
Сообщения: 578
Зарегистрирован: 31 авг 2015, 15:06
Имя: Сергей
Контактная информация:

Аналоговые кнопки на одном пине.

Сообщение Сергей »

Ghost
Ghost писал(а):Причина в изменении сопротивления самого контакта
проверьте тогда пинцетом. Шунтируя каждую кнопку. Если от замыкания кнопки пинцетом все будет работать, то поменяйте кнопки. Если не поможет, то в резисторах проблема.
Аватара пользователя
Ghost
Рядовой
Сообщения: 24
Зарегистрирован: 24 янв 2016, 05:38
Откуда: Рязань

Аналоговые кнопки на одном пине.

Сообщение Ghost »

Сергей писал(а):проверьте тогда пинцетом. Шунтируя каждую кнопку. Если от замыкания кнопки пинцетом все будет работать, то поменяйте кнопки. Если не поможет, то в резисторах проблема.
Как бы так объяснить.... Если не бестолковится, то они нормально работают, а когда ищешь до чего бы до***ться
то как правило находишь, и потом это глаза мозолит...
такая фигня происходит, когда кнопку не точно нажимаешь, чуток на излом чтоли... 
Короче, это не проблема. 
Я же уже писал, вопрос поднимался на другую тему.
но чудес не случилось.
Попозже могу выложить библиотеку посмотреть. Если кому интересно.
DWD
Лейтенант
Сообщения: 353
Зарегистрирован: 18 окт 2015, 13:51
Откуда: Кривой Рог

Аналоговые кнопки на одном пине.

Сообщение DWD »

У кнопок сопротивление маленькое. Но со временем из-за окисления оно увеличивается и может достигать 300Ом.

Выйти из положения можно, увеличив сопротивление резистора смещения (R1 на схеме в первом посту) и пропорционально увеличив остальные резисторы делителя.
В этом случае повышенное сопротивление кнопки будет очень слабо влиять на уровни, так как доля сопротивления кнопки в общем сопротивлении делителя будет незначительна.
Изображение
Ответить

Вернуться в «Кнопки и клавиатуры»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя