Страница 5 из 5

Помощь новичку. Меню и энкодер.

Добавлено: 17 янв 2018, 15:22
bester
Поменял счетчик на включение подсветки(добавил SP) и вроде заработало так, как надо

Помощь новичку. Меню и энкодер.

Добавлено: 09 май 2018, 20:40
Shurik2975
Добрый вечер ув. форумчане. Помогите пожалуйста с многоуровневым меню под энкодер, не могу понять как оно должно работать ? Если получается переключать пункты не меняются значения или наоборот или что другое. Так как новичок в FLprog да и вообще в ардуино своего не чего не своял пытался понять другие доступные проекты но в тех что нарыл или ничего не могу понять потому как очень много всего там или помимо энкодера есть еще доп. кнопки. Вообщем ничего не выходит вот и решил обратиться к вам. Если можно выложите пример многоуровневого меню с энкодером.
Моё железо Ардуино УНО, дисплей 1602, энкодер шилд KY-040.

Помощь новичку. Меню и энкодер.

Добавлено: 09 май 2018, 20:42
Golan
Shurik2975 писал(а): 09 май 2018, 20:40Помогите пожалуйста с многоуровневым меню под энкодер
Я помню как мне сказали, Вы начните делать, а мы поможем и точно, главное начать, потом все образуется.

Помощь новичку. Меню и энкодер.

Добавлено: 09 май 2018, 21:00
Shurik2975
Вот
Доработанный.flp
но это не мой здесь же на форуме нарыл, но у меня не изменяются значения делаю как написано в описании к блоку но не меняет. Точнее так как написано в описании он не работает. Иногда получается кое что изменить из значений но как это получилось не пойму.

Помощь новичку. Меню и энкодер.

Добавлено: 09 май 2018, 22:20
pan
[ref]Shurik2975[/ref], пример смотрели? http://forum.flprog.ru/viewtopic.php?p=37867#p37867

Помощь новичку. Меню и энкодер.

Добавлено: 09 май 2018, 23:26
Shurik2975
Именно этот пропустил но вообще эту ветку читал и примеры скачивал тот что я выложил кажется из этой ветки. Спасибо буду изучать.

Отправлено спустя 41 минуту 9 секунд:
Не работает. Открывает меню настройки, затем при нажатии переходит в пункт 1.1 с True и всё и дальше на кнопку не реагирует. На вращение не реагирует вообще ни в начале ни в конце. Пины энкодера 234.
1,6.flp

Помощь новичку. Меню и энкодер.

Добавлено: 10 май 2018, 08:19
pan
[ref]Shurik2975[/ref], ну во первых это просто для примера. (хотя всё это проверено и работает.)
а во вторых там блок энкодера который требует определенной схемы включения http://forum.flprog.ru/viewtopic.php?f=19&t=2578 этого самого энкодера.

Отправлено спустя 3 минуты 20 секунд:
посмотрел ваш проект. опять 25.
вы описание настроек читали или просто так цифры забили туда?

вот этот блок, почитайте. ну или можете использовать другой как вам удобнее.

Помощь новичку. Меню и энкодер.

Добавлено: 10 май 2018, 09:17
Shurik2975
1. Я же написал что у меня шилд готовый распаянный на плате энкодер со всеми резисторами и конденсаторами.
2. Описание я читал но из него я понял тлько то что для УНО нужно подключить к пину 2 и 3 и указать их потому как что такое номер прерывания я и сейчас не знаю хота в поиске на форуме за него твердят но что это за зверь ни кто не объясняет. Это с ваших высот всё сразу понятно. Вот если бы там (в описании) было такое описание как вы вот здесь привели (за что вам большое спасибо потому как во многих блоках описание рассчитано явно не на новичков ) возможно я и вопросов бы не задавал.
Спасибо за помощь буду пробовать дальше.

Отправлено спустя 16 минут 19 секунд:
Большое спасибо всё заработало. Значения меняются при нажатой кнопке? А в описании этого нет.

Помощь новичку. Меню и энкодер.

Добавлено: 10 май 2018, 09:33
Golan
[ref]Shurik2975[/ref], а вот так? Жаль что проверить мне не на чем.

Помощь новичку. Меню и энкодер.

Добавлено: 10 май 2018, 10:16
pan
Shurik2975 писал(а): 10 май 2018, 09:01 понял тлько то что для УНО нужно подключить к пину 2 и 3 и указать
не важно, УНО или еще что. в первой настройке вообще ни слова про пин нет.
нужен пин который поддерживает прерывания. второй вывод на любой пин.
Shurik2975 писал(а): 10 май 2018, 09:01рерывания я и сейчас не знаю хота в поиске на форуме за него твердят но что это за зверь ни кто не объясняет.
а поискать кто мешает?
например http://arduino.ru/Reference/AttachInterrupt

Отправлено спустя 2 минуты 45 секунд:
Shurik2975 писал(а): 10 май 2018, 09:17 Значения меняются при нажатой кнопке? А в описании этого нет.
в описании чего? блока или примера?
это я выдрал кусок из своего проекта, для примера, показать один из вариантов как можно реализовать управление с помощью энкодера. могут быть и другие варианты.

мне показалось вариант с нажатой кнопкой самый удобный, так как избавляет от кучи блоков и заморочек с отслеживанием.

Помощь новичку. Меню и энкодер.

Добавлено: 10 май 2018, 13:40
Shurik2975
pan писал(а): 10 май 2018, 10:16а поискать кто мешает?
например http://arduino.ru/Reference/AttachInterrupt
Прочел но понимания не добавило. Что такое прерывание это 1 0 1 0 1 0 1 0 (есть сигнал на входе нет сигнала на входе) или что?
pan писал(а): 10 май 2018, 10:16мне показалось вариант с нажатой кнопкой самый удобный, так как избавляет от кучи блоков и заморочек с отслеживанием.
Вариант действительно хороший тут вопросов нет. Просто мне сначала и в голову не пришло что так может работать. Это уже после в какой то теме прочел что и так возможно и попробовал.
И спасибо вам еще раз за помощь.

Помощь новичку. Меню и энкодер.

Добавлено: 10 май 2018, 14:09
pan
Shurik2975 писал(а): 10 май 2018, 13:40Прочел но понимания не добавило
самая первая строка
Задает функцию обработки внешнего прерывания, то есть функция, которая будет вызвана по внешнему прерыванию
по внешнему сигналу сигналу если так понятнее будет.

для тех кто не может (или не хочет) поискать.
[spoiler=немного о прерываниях]
Итак, что такое прерывание?
Прерывание — способ сигнализации микропроцессору, что что-то произошло. Однако вы можете сказать, что тоже самое происходит при использовании цифровых входов, но это не совсем так. При подаче сигнала на цифровой вход, микропроцессор считывает код и затем действует в соответствии с ним, т.е. выполняет тот участок программы, который соответствует сигналу на цифровом входе.

В зависимости от сложности подпрограмм и продолжительности изменения состояния цифрового входа вполне возможна ситуация, что контроллер не заметит изменения состояния входа.

При использовании прерывания, выполняемая программа буквально прерывается, и контроллер переключается на выполнение иного участка кода программы, а после выполнения его вновь возвращается к тому месту программы, на котором остановился. Изменение состояния на входе не «пропускается».

\\инфа взята с просторов интернета.\\
[/spoiler]