Управление двумя кнопками

famoso
Offline
Зарегистрирован: 02.07.2011

 Как реализовать это ==> http://radioded.ru/content/view/146/1/ программно??

nestandart
nestandart аватар
Offline
Зарегистрирован: 15.06.2011

Завтра попробую пример нацарапать (сегодня спапь охота).

Вы пока напишите зачем вам это и зачем вам ИМЕННО это ?

Можно сделать , проще , лучше , умнее. 

Mogalkov
Offline
Зарегистрирован: 23.06.2011

1й кнопкой не удобно. Ставишь все 3 числа по 255, задолбаешься одной кнопкой вводить. Имхо лучше поставить LCD-дисплей, клавиатурку, и пароль в стиле IPv4 (255.255.255.255). Или не мучаться и использовать ключи.

famoso
Offline
Зарегистрирован: 02.07.2011

Мне интересно имено как сделать ввод пароля. Я так понимаю что там что-то с millis() или ошибаюсь? А вообще хотелось бы такое на arduino сделать, а то идей совсем нет...(

Zaliv
Offline
Зарегистрирован: 05.03.2011

 У меня когда-то был совершенно потрясающий номероопределитель (начала 80x) наверно, возможно самопал. Так вот у него управление было все реализовано одной кнопкой. Ей можно было посмотреть, кто звонил, когда звонил, куда ты звонил, выставить время и выставить будильник. Причем настолько интуитивно понятный, что без инструкции удалось довольно быстро разабраться.

А по поводу реализации, нужно на эту кнопку повесить внешнее прерывание. Для трехзначного пароля нужно три переменых для хранения пароля, скажем p1 p2 p3, переменная для хранения времени последнего нажатия (t), и переменная для хранения порядкового номера символа пароля (c). А дальше

- поступило нажатие, смотрим, если последние нажатие было более скажем 10 секунд назад, то начиная с первого символа с=1 , обнуляем симоволы пароля p1 = 0, p2 = 0, p3 = 0 и делаем p1++. Теперь p1 у нас 1

- Поступило следующие нажатие, если оно было меньше, например, 1.5 секунд назад, то смотрим на каком символе (мы на с==1) и делаем p1++. А если времени прошло больше 1.5 секунд, но меньше 10 секунд (если больше 10 то мы сбрасываем), то делаем с++, и попадаем на следующий символ. теперь мы работаем с p2 и делаем p2++. Тут надо еще предусмотреть, когда мы пройдем последний символ p3, тогда например сверяем пароль.

Где-то так. Надеюсь разберешься, если нет пиши, можно конечно и код накидать, но надеюсь разберешься.

famoso
Offline
Зарегистрирован: 02.07.2011

Спасибо за подробное объяснение. Но боюсь без твоего кода не разбирусь(