я вапще пишу, возможно, избыточный, но понятный мне даже через год код. Например, кнопка может быть подтянута к земле или к питанию, я не буду потом помнить чо да как, мне проще написать
uint8_t ActiveLevel = LOW; // кнопка подтянута к плюсу, замыкается на землю
if (digitalRead(pin) == ActiveLevel) BOOM();
и пусь ActiveLevel описана в самом начале, но в 100500 строчке кода
if (digitalRead(pin) == ActiveLevel)
я буду знать, что здесь кнопка именно нажимается.
Дед! Я жеж уже говорил, что у тебя библиотека написана красиво )))
И таки да - меня бесит большое количество букв, люблю лаконизм, вот к примеру ну нахрена было называть библиотеку SomeSerial когда вполне достаточно AlSerial ))) - почувствуй разницу...
Al это все, чего нет в реализации, а some это один любой, почувствуйте разницу. Al вводит в заблуждение.
А кнопка вместо джампера это правильно. После входа в настройки попасть в loop уже никак не получится. Это отдельная подпрограмма в которой предполагается довольно много работы. Тут кнопка очень к месту, т.к. имеет несколько вариантов сигналов- нажатие, длинное нажатие, двойное нажатие и по этим сигналам и енкодеру можно ходить по меню выбора параметров, их изменения, сохранения и выхода в loop. У меня есть несколько кос проводов с кнопками и светодиодами из старых корпусов ПК. Отличное решение для подобного случая - как джампер разъём и кнопка на проводе.
А кнопка вместо джампера это правильно. После входа в настройки попасть в loop уже никак не получится. Это отдельная подпрограмма в которой предполагается довольно много работы.
Почему не получится? Цикл while прервется и setup выполнится до конца. После этого пойдет loop().
Я имел ввиду что после входа в подпрограмму настройки смысл джампера теряется. Если конечно не упираться в то, что при размыкании джампера сохранять и выходить. Но тогда не понятно как переключаться между параметрами? Как подтвердить правильный параметр? Кнопкой можно прыгать по меню, где будет отдельный пункт сохранить и отдельный пункт выйти подтверждение - вращение енкодера. Как это реализовать без кнопки я плохо себе представляю. Разве что енкодер в разные стороны крутить.
В том то и дело, что при удалении джампера - сохраняем параметр и выходим. Нужный параметр выбирается джампером у которого есть два положения (три контакта). Никакого меню и двойных нажатий не надо.
Можно занять четыре контакта и поставить сразу два джампера. Дошли до первого, выставили параметр, удалили первый джампер - попадаем во второй. Выставили второй параметр, удаляем второй джампер и пользуемся устройством сразу.
Если представить сколько кода надо для обрабатывания одинарного и двойного нажатия кнопки - то джампер обработать получается гораздо проще. Но это только для частного случая как у меня, когда есть один-два параметра, которые меняются раз в столетие. В других случаях кнопка конечно рулит.
Можно и без кнопки сделать.
При запуске слушаем полсекунды энкодер.
Если вращался , мигаем чем нибудь пару секунд(индикация перехода в режим настройки).
В зависимости от направления переходим в нужный режим .
Меняем параметр.
Выходим из режима после 2х секунд бездействия.
И тп
Al это все, чего нет в реализации, а some это один любой, почувствуйте разницу. Al вводит в заблуждение.
А кнопка вместо джампера это правильно. После входа в настройки попасть в loop уже никак не получится. Это отдельная подпрограмма в которой предполагается довольно много работы. Тут кнопка очень к месту, т.к. имеет несколько вариантов сигналов- нажатие, длинное нажатие, двойное нажатие и по этим сигналам и енкодеру можно ходить по меню выбора параметров, их изменения, сохранения и выхода в loop. У меня есть несколько кос проводов с кнопками и светодиодами из старых корпусов ПК. Отличное решение для подобного случая - как джампер разъём и кнопка на проводе.
я поправил в меру своего умения, использует CustomSoftwareSerial и, назвал её гордо ALSERIAL.h )))
PS Ал, это вообще-то - высший, алхимия - высшая химия, Алый - цвет в радуге (он там высший), Алмаз, Альдегид, Алибек - высший князь, Алладин... Аллах )))
To Kakmyc: Да, можно и так, как вариант. Только опять же надо понять какой параметр настраивать из двух.
Что там понимать ?
Крутим влево первый параметр, вправо- второй.
Я писал что то подобное, для выбора режима отсечки двигателя.
Там была одна кнопка (отчекрыженная от чипа, кнопка RST Ардуино нано).
Она выполняла кучу функций.
1.вход в режим программирования отсечки.
нужно было нажать кнопку в течении секунды поле включения, когда диод мигал с частотой 10Гц.
2. В режиме программирования, при нажатии на эту же кнопку дурина запоминала обороты при которых запускался отсекатель оборотов
3. В режиме работы менялся режим
Пропуск импульсов или сдвиг зажигания.
эти модули сейчас в Швеции продаются.
Делал для вольвы какой то бешеной двухлитровой
Я вчера был в шоке.
У меня заказчица, девчонка с Владика (молодая и очень симпатичная) самостоятельно по ссылкам на "что почитать" , настроила ESP8266 и ПК(ip и порты), для работы по UDP.
Сама программа опрашивает гироскоп и через wifi по UDP спамит данными с гироскопа 200раз в секунду на сервер обработки.
А тут многие мужики два проводка соединить не в состоянии по схеме.
я вапще пишу, возможно, избыточный, но понятный мне даже через год код. Например, кнопка может быть подтянута к земле или к питанию, я не буду потом помнить чо да как, мне проще написать
и пусь ActiveLevel описана в самом начале, но в 100500 строчке кода
я буду знать, что здесь кнопка именно нажимается.
Дед! Я жеж уже говорил, что у тебя библиотека написана красиво )))
И таки да - меня бесит большое количество букв, люблю лаконизм, вот к примеру ну нахрена было называть библиотеку SomeSerial когда вполне достаточно AlSerial ))) - почувствуй разницу...
Al это все, чего нет в реализации, а some это один любой, почувствуйте разницу. Al вводит в заблуждение.
А кнопка вместо джампера это правильно. После входа в настройки попасть в loop уже никак не получится. Это отдельная подпрограмма в которой предполагается довольно много работы. Тут кнопка очень к месту, т.к. имеет несколько вариантов сигналов- нажатие, длинное нажатие, двойное нажатие и по этим сигналам и енкодеру можно ходить по меню выбора параметров, их изменения, сохранения и выхода в loop. У меня есть несколько кос проводов с кнопками и светодиодами из старых корпусов ПК. Отличное решение для подобного случая - как джампер разъём и кнопка на проводе.
А кнопка вместо джампера это правильно. После входа в настройки попасть в loop уже никак не получится. Это отдельная подпрограмма в которой предполагается довольно много работы.
Почему не получится? Цикл while прервется и setup выполнится до конца. После этого пойдет loop().
Я имел ввиду что после входа в подпрограмму настройки смысл джампера теряется. Если конечно не упираться в то, что при размыкании джампера сохранять и выходить. Но тогда не понятно как переключаться между параметрами? Как подтвердить правильный параметр? Кнопкой можно прыгать по меню, где будет отдельный пункт сохранить и отдельный пункт выйти подтверждение - вращение енкодера. Как это реализовать без кнопки я плохо себе представляю. Разве что енкодер в разные стороны крутить.
В том то и дело, что при удалении джампера - сохраняем параметр и выходим. Нужный параметр выбирается джампером у которого есть два положения (три контакта). Никакого меню и двойных нажатий не надо.
Можно занять четыре контакта и поставить сразу два джампера. Дошли до первого, выставили параметр, удалили первый джампер - попадаем во второй. Выставили второй параметр, удаляем второй джампер и пользуемся устройством сразу.
Если представить сколько кода надо для обрабатывания одинарного и двойного нажатия кнопки - то джампер обработать получается гораздо проще. Но это только для частного случая как у меня, когда есть один-два параметра, которые меняются раз в столетие. В других случаях кнопка конечно рулит.
Проще кнопка и титановый велосипед клапы.
Можно и без кнопки сделать.
При запуске слушаем полсекунды энкодер.
Если вращался , мигаем чем нибудь пару секунд(индикация перехода в режим настройки).
В зависимости от направления переходим в нужный режим .
Меняем параметр.
Выходим из режима после 2х секунд бездействия.
И тп
Al это все, чего нет в реализации, а some это один любой, почувствуйте разницу. Al вводит в заблуждение.
А кнопка вместо джампера это правильно. После входа в настройки попасть в loop уже никак не получится. Это отдельная подпрограмма в которой предполагается довольно много работы. Тут кнопка очень к месту, т.к. имеет несколько вариантов сигналов- нажатие, длинное нажатие, двойное нажатие и по этим сигналам и енкодеру можно ходить по меню выбора параметров, их изменения, сохранения и выхода в loop. У меня есть несколько кос проводов с кнопками и светодиодами из старых корпусов ПК. Отличное решение для подобного случая - как джампер разъём и кнопка на проводе.
я поправил в меру своего умения, использует CustomSoftwareSerial и, назвал её гордо ALSERIAL.h )))
PS Ал, это вообще-то - высший, алхимия - высшая химия, Алый - цвет в радуге (он там высший), Алмаз, Альдегид, Алибек - высший князь, Алладин... Аллах )))
To Kakmyc: Да, можно и так, как вариант. Только опять же надо понять какой параметр настраивать из двух.
Мне приятель категорически кнопку запретил, так как потом двумя руками стики на аппаратуре надо крутить )))
Что там понимать ?
Крутим влево первый параметр, вправо- второй.
Я писал что то подобное, для выбора режима отсечки двигателя.
Там была одна кнопка (отчекрыженная от чипа, кнопка RST Ардуино нано).
Она выполняла кучу функций.
1.вход в режим программирования отсечки.
нужно было нажать кнопку в течении секунды поле включения, когда диод мигал с частотой 10Гц.
2. В режиме программирования, при нажатии на эту же кнопку дурина запоминала обороты при которых запускался отсекатель оборотов
3. В режиме работы менялся режим
Пропуск импульсов или сдвиг зажигания.
эти модули сейчас в Швеции продаются.
Делал для вольвы какой то бешеной двухлитровой
Я вчера был в шоке.
У меня заказчица, девчонка с Владика (молодая и очень симпатичная) самостоятельно по ссылкам на "что почитать" , настроила ESP8266 и ПК(ip и порты), для работы по UDP.
Сама программа опрашивает гироскоп и через wifi по UDP спамит данными с гироскопа 200раз в секунду на сервер обработки.
А тут многие мужики два проводка соединить не в состоянии по схеме.