Управление двумя кнопками
- Войдите на сайт для отправки комментариев
Чт, 22/09/2011 - 19:26
Как реализовать это ==> http://radioded.ru/content/view/146/1/ программно??
Как реализовать это ==> http://radioded.ru/content/view/146/1/ программно??
Завтра попробую пример нацарапать (сегодня спапь охота).
Вы пока напишите зачем вам это и зачем вам ИМЕННО это ?
Можно сделать , проще , лучше , умнее.
1й кнопкой не удобно. Ставишь все 3 числа по 255, задолбаешься одной кнопкой вводить. Имхо лучше поставить LCD-дисплей, клавиатурку, и пароль в стиле IPv4 (255.255.255.255). Или не мучаться и использовать ключи.
Мне интересно имено как сделать ввод пароля. Я так понимаю что там что-то с millis() или ошибаюсь? А вообще хотелось бы такое на arduino сделать, а то идей совсем нет...(
У меня когда-то был совершенно потрясающий номероопределитель (начала 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, тогда например сверяем пароль.
Где-то так. Надеюсь разберешься, если нет пиши, можно конечно и код накидать, но надеюсь разберешься.
Спасибо за подробное объяснение. Но боюсь без твоего кода не разбирусь(