При нажатии любых кнопок, кроме Reset, ничего не происходит, постоянно выдает значение 1023. Прозвонил кнопки, залипаний нет, пин A0 звонится с первой кнопкой. Для проверки залил скетч AnalogReadSerial (из стандартных примеров IDE). В монитор порта при подключенном шилде тоже постоянно выдает значение 1023, при нажатии кнопок значение не меняется.
Можно ли как-то решить проблему с опросом кнопок, или это брак шилда?
Спасибо за ответ. Пин рабочий, подключал к нему потенциометр, при вращении значения в мониторе порта значения изменяются. Тогда скорее всего проблема в шилде. Жаль конечно…
Зачем же сразу выпивать? Судя по схеме https://arduinolab.pw/wp-content/uploads/2017/06/LCDKeypad_Shield_SCH.png все резисторы контачат с кнопками, а кнопки вполне доступны. Достаточно тестером потыкать в выводы кнопок, что бы локализовать проблему и исправить припаяв прямо к кнопкам детальки или проводки.
Потыкал тестером, сопротивления плюс/минус (небольшие погрешности, видимо сам мультиметр привирает) совпадают с номиналами на схеме. Тем более тогда не понятно, в чем проблема. А0 на Uno рабочий - проверено. Дурным делом думал, что металлический экран дисплея замыкает резисторы, но как смог рассмотреть, то нет. По сути шилд простой, нет ничего в нем такого особенного, но проблема то есть, а где - хз.
Для первого шага следовало бы сопротивление между A0 и VCC проверить. А так же между A0 и GND при нажимании кнопок.
На шилде может быть коротыш или неправильный номинал резистора.
Натягивайте на Уно и снова измеряйте сопротивления. Потом включайте и меряйте напряжение на пине при нажатии кнопок. Что-то тянет вверх и нужно выяснить на каком этапе это всё проявляется.
С точки зрения физики 3К не может перетянуть 0.3К
Ну и, действительно, воткните в сетуп pinMode(A0, INPUT); - хуже не будет, а уверенность появится.
Уж не знаю, что и сказать…
Отдельно подключил шилд к Uno через “дюпонты” только блок кнопок. На Uno использовал A1. Залил скетч AnalogReadSerial. И значения, при нажатии кнопок начали изменяться, т.е. опрос идет.
Но потом решил снова подключить в A0, таким же способом (через провода). И… значения также при нажатии меняются.
Напряжения замерял: (при прямом подключении к UNO)
Select - 3.02В
Left - 1.94В
Up - 0.47В
Down - 1.21В
Right - 0В
Интересно то, что при прямом подключении все задействованные пины шилда и Uno звонятся между собой нормально, т.е. контакт (как по мне) нормальный.