Кнопки: короткое и долгое нажатие. Наиболее удобный алгоритм
- Prolog
- Вымогатель припоя
- Сообщения: 623
- Зарегистрирован: Вт окт 06, 2009 18:35:13
- Откуда: Молдавия, Кишинев
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Я обычно делаю так: При нажатии кнопки запускается таймер-счётчик, отсчитываем антидребезг, далее в зависимости от значения счетчика выбираем нужную функцию (переход на следующую функцию отмечается BEEP-ом или визуально), при отпускании опять отсчитываем антидребезг, обнуляем счётчик и выполняем выбранную функцию.
- Реклама
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
На один тык кнопки 2 обработчика, так что ли?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Я в принципе опрашиваю кнопки раз в 20-50мс. Антидребезг получается автоматически. И таки да - нажатие кнопки -> событие, отпускание кнопки -> событие.
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Как-то не хватало кнопок, пришлось использовать штатный компаратор контролера. (на 1пин повесил 5кнопок.)
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
блин, я не понимаю одного: меня интересует удобство пользователя, а не техническая реализация! какая разница, сколько событий - удобно пользователю, если реакция на нажатие или на отпускание? - вот что меня интересует!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- Реклама
- GoldenAndy
- Поставщик валерьянки для Кота
- Сообщения: 1925
- Зарегистрирован: Чт июл 28, 2016 07:58:37
- Откуда: Kyiv, UA
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
ARV, так уже ж порешали.
Если короткое и длинное нажатия - разные действия, то короткое - по отпусканию, длинное - по превышению периода для длинного.
Если действие по длинному нажатию есть продолжение/развитие действия по короткому (как клик и даблклик в винде) - то можно короткое по нажатию отлавливать.
Если короткое и длинное нажатия - разные действия, то короткое - по отпусканию, длинное - по превышению периода для длинного.
Если действие по длинному нажатию есть продолжение/развитие действия по короткому (как клик и даблклик в винде) - то можно короткое по нажатию отлавливать.
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
так и я, вроде как, об этом. но граждане продолжают рассказывать о том, как технически реализовывали свои проекты...GoldenAndy писал(а):так уже ж порешали
по отпусканию есть один нюансик: в часах сброс секунд в 0 по отпусканию - надо привыкать. имхо, инстинктивноинтуитивно это действие рассчитано на момент нажатия.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- Ivanoff-iv
- Друг Кота
- Сообщения: 7077
- Зарегистрирован: Пт ноя 11, 2016 05:48:09
- Откуда: Сердце Пармы
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
нормально: пока держишь часы стоят на 0.000 сек, как отпустил - побежали миллисекунды набираться, и секунды за ними...
Добавлено after 43 seconds:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алгоритм
или я не о том?
Добавлено after 43 seconds:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алгоритм
или я не о том?
Для тех, кто не учил магию мир полон физики 
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
о том, о том 
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- GoldenAndy
- Поставщик валерьянки для Кота
- Сообщения: 1925
- Зарегистрирован: Чт июл 28, 2016 07:58:37
- Откуда: Kyiv, UA
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Вот не знаю. Для меня сброс секунд по отпусканию - тоже неочевидное действие.в часах сброс секунд в 0 по отпусканию
Я обычно в своих часах делаю отдельный режим установки времени и секунды обнуляю в момент нажатия "Ок" и сохранения установленных часов-минут в DS3231.
Даже с китайскими DS-ками это нужно очень редко....
И стараюсь интерфейс сделать без длинных нажатий. С точки зрения UI короткое/длинное нажатие - это менее очевидное решение, нежели две кнопки.
И стараюсь короткое+длинное применять только в случае, если конструктив/идеология/корпус требуют ограниченное число кнопок - тогда уже да.
Ну или штатно длинное нажатие можно применять только как защиту от случайного нажатия при входе в какой то супер-режим или включение/выключение (но тогда короткого не должно быть).
"Нажмите для входа в режим А. Нажмите и держите 2 секунды для входа в режим Б. Нажмите и держите 5 секунд для входа в режим В. В течении 2 секунд нажмите кнопку 4 раза - для входа в режим Г. Для самоуничтожения устройства нажмите кнопку 10 раз за три секунды."
- Борисович
- Поставщик валерьянки для Кота
- Сообщения: 1966
- Зарегистрирован: Ср май 10, 2017 16:03:11
- Откуда: Тверская область
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Вопрос,а что в часах на микрокроконтроллере нельзя реализовать элементарное управление,как в часах на логике.1-я кнопка - установка 0 в последнем разряде по отпусканию,для коррекции,2-я кнопка - счёт начиная со второго разряда по нажатию, и всё.Имхо,будильник -это лишнее,всё равно вряд ли будет использоваться,коррекция требуется редко и хитрые алгоритмы забываются
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Реализовать можно все, что угодно, вопрос лишь в удобстве.
Например, если вспомнить часы "7 мелодий", которые в конце 80-ых годов прошлого века были просто суперпопулярны, то управление там велось всего 3-я кнопками, причем алгоритм управления "вычислялся" методом тыка элементарно (то есть был очень прост, но логичен), а функций было просто куча: часы с 24 и 12 форматом и "вечным" календарем, будильник, секундомер, таймер обратного счета, выбор мелодий и ежечасного сигнала...
то есть если управление удобное, то количество функций не становится преградой даже без инструкции
Например, если вспомнить часы "7 мелодий", которые в конце 80-ых годов прошлого века были просто суперпопулярны, то управление там велось всего 3-я кнопками, причем алгоритм управления "вычислялся" методом тыка элементарно (то есть был очень прост, но логичен), а функций было просто куча: часы с 24 и 12 форматом и "вечным" календарем, будильник, секундомер, таймер обратного счета, выбор мелодий и ежечасного сигнала...
то есть если управление удобное, то количество функций не становится преградой даже без инструкции
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- GoldenAndy
- Поставщик валерьянки для Кота
- Сообщения: 1925
- Зарегистрирован: Чт июл 28, 2016 07:58:37
- Откуда: Kyiv, UA
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
ARV, Если речь про "Монтану", то дааааа.... 
Но там длинное нажатие вроде бы было только для запуска установки времени. Хотя я могу и ошибаться - более 30 лет прошло с того момента как я их в руках держал.
Ну и, соответственно - ответ на ваш изначальный вопрос
Всё зависит от ожидаемого функционала. См. выше "Уже порешали" 
Но там длинное нажатие вроде бы было только для запуска установки времени. Хотя я могу и ошибаться - более 30 лет прошло с того момента как я их в руках держал.
Ну и, соответственно - ответ на ваш изначальный вопрос
- Ivanoff-iv
- Друг Кота
- Сообщения: 7077
- Зарегистрирован: Пт ноя 11, 2016 05:48:09
- Откуда: Сердце Пармы
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
нет, у монтаны не было вечного календаря (день недели ставился отдельно), длинные нажатия не использовались вовсе (вроде использовалось только удержание для удерживания секунд на нуле при подстройке... но это не точно, а батарейку покупать и вставлять лень) зато использовались комбинации ALT+MODE=вкл/откл будильника, DATE+MODE=вкл/откл почасового пиканья.
и мелодий у неё 8 в старой версии и 16 в более новой.
но, так-да, управление интуитивно понятное.
Добавлено after 2 minutes 21 second:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алгоритм
т.ч. скорее всего речь про советские типа электроники...
и мелодий у неё 8 в старой версии и 16 в более новой.
но, так-да, управление интуитивно понятное.
Добавлено after 2 minutes 21 second:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алгоритм
т.ч. скорее всего речь про советские типа электроники...
Для тех, кто не учил магию мир полон физики 
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
- Борисович
- Поставщик валерьянки для Кота
- Сообщения: 1966
- Зарегистрирован: Ср май 10, 2017 16:03:11
- Откуда: Тверская область
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Вот и я про удобство,часы делаются,устанавливается время,а дальше на них типа время смотрят.Иногда производят коррекцию времени и всё.Все другие функции часов не востребованы,имхо,часы как бы не игровая приставка
- GoldenAndy
- Поставщик валерьянки для Кота
- Сообщения: 1925
- Зарегистрирован: Чт июл 28, 2016 07:58:37
- Откуда: Kyiv, UA
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Ivanoff-iv, тема скатывается в ретровоспоминания 
У меня Монтаны не было никогда, была простая Электроника-5. С одним тупым будильником, который пищит 30 сек. И с установкой дня недели вручную.
Потом была белорусская Электроника-53 с 3 мелодиями. Но там тоже день недели надо было выставлять руками.
Борисович, Речь не только про часы, а общий вопрос, как в интерфейсе с пользователем при наличии кнопок обрабатывать короткое и длинное нажатие.
К консенсусу пришли вроде. Заодно народ умных мыслей накидал, как опрашивать кнопки. Хотя речь изначально шла про UI.
У меня Монтаны не было никогда, была простая Электроника-5. С одним тупым будильником, который пищит 30 сек. И с установкой дня недели вручную.
Потом была белорусская Электроника-53 с 3 мелодиями. Но там тоже день недели надо было выставлять руками.
Борисович, Речь не только про часы, а общий вопрос, как в интерфейсе с пользователем при наличии кнопок обрабатывать короткое и длинное нажатие.
К консенсусу пришли вроде. Заодно народ умных мыслей накидал, как опрашивать кнопки. Хотя речь изначально шла про UI.
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
По-моему на вопрос ТС уже ответили и дискутирующие стороны пришли к консенсусу, и уже начались отклонения от темы. Продолжая эту линию, спросил себя зачем вообще нужно различать длинные/короткие/многократные/одновременные нажатия на кнопки и выбирать реакцию по нажатию или отпусканию? Могу представить пару сценариев, связанных с минимизацией числа кнопок в устройстве или реализации сложного интерфейса на ограниченном числе кнопок, или что-то подобное. Однако, усложнение кнопочного интерфейса приводит к нежелательным последствиям, таким как неестественность (большинство людей ожидают реакции устройства сразу по нажатию кнопок) или незнанием как пользоваться устройством без инструкции. Да и сам разработчик может легко забыть как пользоваться своим устройством, если какие-то функции используются редко. У меня такое происходит с незавидной периодичностью даже при общении с промышленными изделиями, а инструкции имеют свойство теряться или отсутствовать под рукой когда требуется.
В частности, касательно обсуждаемого здесь интерфейса установки времени в часах, я вообще не вижу смысла в кнопках в современных конструкциях. На сайте есть несколько примеров часов с автоматической установкой времени по WiFi, я в своих последних проектах часов (пример, и обкатываемый на монтажке прототип новых) использую Bluetooth и смартфон для этой цели. В обоих случаях время/дата устанавливается за 0-2 клика. Используя беспроводные настройки гораздо проще реализовать интуитивно понятный всем и несравненно более дружественный интерфейс по сравнению с кнопками на передней панели. Не понимаю почему этот подход до сих пор не стал массовым по крайней мере в любительских проектах часов.
В частности, касательно обсуждаемого здесь интерфейса установки времени в часах, я вообще не вижу смысла в кнопках в современных конструкциях. На сайте есть несколько примеров часов с автоматической установкой времени по WiFi, я в своих последних проектах часов (пример, и обкатываемый на монтажке прототип новых) использую Bluetooth и смартфон для этой цели. В обоих случаях время/дата устанавливается за 0-2 клика. Используя беспроводные настройки гораздо проще реализовать интуитивно понятный всем и несравненно более дружественный интерфейс по сравнению с кнопками на передней панели. Не понимаю почему этот подход до сих пор не стал массовым по крайней мере в любительских проектах часов.
- musor
- Друг Кота
- Сообщения: 39197
- Зарегистрирован: Сб сен 13, 2014 16:27:32
- Откуда: СпиртоГонск созвездия Омега
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
не быдет в этом консенцусоф ибо это нонсенс скока людей стока мнений
поэтому либо делайте ка вам кажется удобным или повторяйте китайский стандарт вввода
поэтому либо делайте ка вам кажется удобным или повторяйте китайский стандарт вввода
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
чего ж тут непонятного?! есть вещи, которые от современных модных фишек становятся только хуже. это, кстати, объясняет, почему за малым не 80% аппаратных фич смартфонов никогда не задействуются большинством владельцев. аналогичная ситуация с компьютерами, телевизорами и т.п. это примерно как 45-я скорость на проигрывателях виниловых дисков: вроде круто, что есть, а дисков-то нет...Ser60 писал(а):Не понимаю почему этот подход до сих пор не стал массовым по крайней мере в любительских проектах часов.
имхо, при наличии смартфона с WiFi/Bluetooth необходимость в отдельных часах следует аргументировать куда сильнее, чем наличие в часах WiFi/Bluetooth... лучше часов, чем уже есть в смартфоне, радиолюбитель не сделает никогда.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: Кнопки: короткое и долгое нажатие. Наиболее удобный алго
Находясь вне дома практически все носят сегодня с собой смартфон, который для многих уже заменил наручные часы. В этом я согласен. Однако, дома почти все наряду со смартфоном имеют и стационарные часы (и не одни), читать время на которых более удобно и оперативно. Не все-же носят смартфоны дома в кармане, скорее всего он лежит где-то на тумбочке (на зарядке) как обычный телефон и подходить к нему каждый раз посмотреть время неудобно. Но дело даже не в этом. Несмотря на смартфоны, любители и промышленность создают всё новые проекты часов, или повторяют старые, и это массово. Многие даже на Nixie делают и это полулярно, но лишь единицы отказываются от кнопок в часах. Про стационарные часы я и писал выше, и по-моему удобство синхронизации времени и даты на них с мобильником за 2 клика по экрану неоспоримо гораздо удобнее, чем с кнопок. Я уже писал здесь в статье про ночные часы с акселерометром, управляющим подсветкой экрана. Многим мешает постоянный свет от часов в спальне. Даже при наличии мобильника на прикроватной тумбочке стукнуть по ней ночью для чтения времени более удобно чем шарить рукой и искать на ней мобильник, нажимать его кнопку, и приподниматься или ориентировать мобильник экраном к себе. Там управление было кнопками, но после того как я показываю людям как устанавливать время мобильником, абсолютно все говорят "и я такую-жу хочу". После моего первого проекта таких часов, я получил уже массу заказов от знакомых и их знакомых, прямо хоть бизнес открывай, так что я здесь озвучил не только своё мнение.





