реклама на сайте
подробности

 
 
> Удержание кнопки 6 секунд
decsal
сообщение Apr 3 2009, 07:13
Сообщение #1





Группа: Участник
Сообщений: 4
Регистрация: 25-05-08
Пользователь №: 37 799



Подскажите с алгоримом удержания кнопки 6 секунд.
Опрос кнопок реализован, оталось сделать что бы при нажатии выводилась уставка прибора, а при удержании 6 секунд войти в меню, прибора.
Я пока сделал, что при нажатии сразу в меню попадаю, но требуют вывод уставки и 6 секунд.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
C.S.
сообщение May 7 2009, 09:52
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 52
Регистрация: 6-05-09
Из: Москва
Пользователь №: 48 733



Ребят, а подскажите, как лучше сделать обработку действия кнопки? Я взял за основу алгоритм от MrYuran , http://electronix.ru/forum/index.php?showt...st&p=571913 . У меня пока что три кнопки (учусь на них), без матрицы.
Я хочу, чтобы у меня была процедура опроса кнопок (вызывается, скажем, каждые 10мс). Она отвечает за выставление флагов "Нажато", "Долго нажато" и выдаёт биты того, что нажато.
Но меня смущает, что это чудо занимает уже под 100 байт кода, и 5 регистров. Всего для 3х кнопок.

Направьте на мысль, как бы обойти такую ситуацию в интерфейсе пользователя: скажем, юзер нажал кнопку, уставка увеличилась. А он кнопку отпускает и держит пальцем (естессно, что мы обработали нажатие один раз). Пока что я вручную скидываю бит нажатой кнопки после того, как обработал её нажатие. А при определении "Долго нажата" снова ставлю бит нажатой кнопки и флаг LOCKED.

И ещё вопрос - как лучше оформлять данные, возвращаемые процедурой сканирования клавиатуры? Как умные делают?
В идеале я хочу получать и обрабатывать состояния: Нажата, Долго нажата, Отпущена. Автоповтор пока не нужен.

У меня пока что флаги PRESSED и LOCKED стоят битами (на все кнопки), и ещё есть биты, которые показывают нажатие каждой кнопки.
Может, завести для каждой клавиши свой набор флагов? blink.gif
З.Ы. Пишу на АСМе, на Си мне вообще ни черта не понятно

Сообщение отредактировал C.S. - May 7 2009, 09:53
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- decsal   Удержание кнопки 6 секунд   Apr 3 2009, 07:13
- - Stanislav_S   Цитата(decsal @ Apr 3 2009, 11:13) Подска...   Apr 3 2009, 07:28
- - ukpyr   можно завести счетчик нажатия и запоминать предыду...   Apr 3 2009, 08:55
- - Herz   По-моему, по нажатию кнопки просто следует запуска...   Apr 3 2009, 09:40
- - ukpyr   ЦитатаИ только после отжатия принимать решение о п...   Apr 3 2009, 10:00
|- - Herz   Цитата(ukpyr @ Apr 3 2009, 12:00) и польз...   Apr 3 2009, 10:05
- - MrYuran   да... пора уже коллекцию ФАКов собирать... или ссы...   Apr 3 2009, 10:10
|- - Herz   Цитата(MrYuran @ Apr 3 2009, 12:10) Ага, ...   Apr 3 2009, 10:46
|- - adc   Цитата(Herz @ Apr 3 2009, 13:46) Не знаю ...   Apr 3 2009, 11:18
|- - Stanislav_S   Цитата(adc @ Apr 3 2009, 15:18) По отпуск...   Apr 3 2009, 12:04
|- - _Pasha   Цитата(Stanislav_S @ Apr 3 2009, 15:04) С...   Apr 4 2009, 14:54
|- - Stanislav_S   Цитата(_Pasha @ Apr 4 2009, 18:54) Этот м...   Apr 4 2009, 21:07
- - ukpyr   ЦитатаMrYuranне нужно никаких флагов, состояние кл...   Apr 3 2009, 12:02
- - rezident   Внесу свои 5 копеек. Поскольку как я понял у топик...   Apr 4 2009, 21:02
|- - MrYuran   Цитата(C.S. @ May 7 2009, 13:52) У меня п...   May 7 2009, 10:36
- - C.S.   Значит, я мыслю верно, но туплю насчёт моментов на...   May 7 2009, 11:45
|- - MrYuran   Цитата(C.S. @ May 7 2009, 15:45) В общем ...   May 7 2009, 12:19
- - C.S.   Посмотрите пожалуйста алгоритм, если не сложно, на...   May 7 2009, 12:55
- - Genadi Zawidowski   в аттаче - файл keyboard.c все Ваши проблемы там р...   May 7 2009, 17:49
|- - C.S.   Цитата(Genadi Zawidowski @ May 7 2009, 21...   Jun 7 2009, 18:36
- - C.S.   Спасибо! Сейчас посмотрю, поразбираюсь.   May 7 2009, 17:56
- - C.S.   2Genadi Zawidowsk... А можно один вопросик? У нас ...   May 10 2009, 00:46
|- - Genadi Zawidowski   Цитата(C.S. @ May 10 2009, 04:46) 2Genadi...   May 10 2009, 06:10
|- - Genadi Zawidowski   Цитата(C.S. @ May 10 2009, 04:46) 2Genadi...   May 10 2009, 23:24
- - C.S.   Да, конечно. Интересно это всё на асм переводить %...   May 11 2009, 14:45
|- - Genadi Zawidowski   Цитата(C.S. @ May 11 2009, 18:45) Да, кон...   May 11 2009, 17:49
- - C.S.   *стало стыдно* Я делаю для себя. Знаю, что на проф...   May 12 2009, 07:59
|- - MrYuran   Цитата(C.S. @ May 12 2009, 11:59) думаю, ...   May 12 2009, 12:39
- - Genadi Zawidowski   ЦитатаЯ делаю для себя Если Вы заметили, этот прое...   May 12 2009, 09:24
|- - VladimirYU   Цитата(Genadi Zawidowski @ May 12 2009, 13...   May 12 2009, 09:58
|- - Genadi Zawidowski   Цитата(VladimirYU @ May 12 2009, 13:58) Е...   May 12 2009, 15:06
- - C.S.   Вас понял. В следующих девайсах попробую на СИ. Хо...   May 12 2009, 09:36
- - rezident   Сообщение модератора. Уважаемые, пользователи...   May 12 2009, 16:41
- - ukpyr   ЦитатаПока вожусь на Меге8 (то, что было) - думаю,...   Jun 7 2009, 19:06


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 03:43
Рейтинг@Mail.ru


Страница сгенерированна за 0.01383 секунд с 7
ELECTRONIX ©2004-2016