Цитата:
Сообщение от Bersenev
переменная res_key_count должна быть равна 0 при загрузке скетча. Потом ей будет присвоено значение из EEPROM.
Твоя проблема скорее всего связана с низким качеством самих кнопок. Я вначале поставил тактовые кнопки и запарился с ними, они всё время возвращали разные значения. Заменил их на микроконтакты и всё сразу исправилось.
В твоём случае думаю стоит увеличить шаг сопротивлений, то есть использовать не 100 Ом, а 200 или 300. И увеличить переменную unsigned int res_key_delta = 3; с 3-х, до 5-ти, а может и до 6-ти или 7-ми.
Но прежде чем заливать новый скетч поменяй это значение
#define RES_KEY_FLAG_ 0x76 // Флаг первого запуска скетча
с 0x76 на другое значение, допустим 0x77. Тогда скетч будет считать что это его первый запуск и сотрёт из EEPROM все ранее запомненые значения
|
Заменил резисторы на 200 Ом. Кнопок у меня 18 шт. Чем ближе к концу цепочки тем хуже стабильность распознования. Или всетаки придется поставить микроконтакты, кнопки вообще-то японские.....