#1 Re: Програмування Arduino » Обрабатываем нажатие кнопки на примере зажигания светодиода » 2024-01-18 19:50:33

Благодарю тебя Г0сть, за скорые ответы и помощь в учебе и в понимании, буду учиться.

#2 Re: Програмування Arduino » Обрабатываем нажатие кнопки на примере зажигания светодиода » 2024-01-18 18:58:48

Благодарю - тебя  Г0сть (с Большой буквы) за помощь. Исправил – теперь первое нажатие кнопки включает светодиод и он постоянно светит, повторное нажатие кнопки отключает светодиод.
 
Так же, должно быть?
  if (tekButton == HIGH&&prevButton == LOW)
    ; что этот символ означает в программировании? Может есть источник где их можно научиться?

Ибо думал нажму на кнопку и пока кнопка нажата светодиод светится как отпускаю гаснет. Так как применял скетч из библиотеки, только при нажатии кнопки светодиод светился, при отпускании гас.
 
Я только вхожу в изучение программирования Arduino и не имею представления о знаках и символах, которые играют важную роль в программировании. Так как скетчи можно было бы скачивать через библиотеку, но тогда мало чему научусь, бывает что надо и в них искать ошибки.
  А это то, что мне было нужно, благодарю тебя Г0сть и удачи!
Однако есть продолжение скетча на эту тему, но еще не проверял, если что-то будет не ок, отпишусь!

#3 Re: Програмування Arduino » Обрабатываем нажатие кнопки на примере зажигания светодиода » 2024-01-18 14:52:16

С переменной разобралась ошибка исчезла благодаря Вам, участникам форума!
Но при компиляции скетча кнопка не реагирует на включение и выключение светодиода, что здесь нужно сделать, ошибка не появляется. Проверил более 5-ти различных вариантов компилируя в самое железо Arduino UNO R3 уже нет идей. Это самый простой вариант скетча с изменениями:

const int LED=10;//Контакт 10 для подключения светодиода
const int BUTTON=2;//Контакт 2 для подключения кнопки
int tekButton = HIGH;//Переменная для сохранение текущего состояния кнопки
int prevButton = LOW;//Переменная для сохранения предыдущего состояния кнопки

boolean LedOn = false;//Текущее состояние светодиода(включен/выключен)
int ledOn;//Переменная для сохранения состояния светодиода
void setup()
  {
    //Сконфигурирувать контакт светодиода как выход
    pinMode(LED, OUTPUT);
    //Сконфигурирувать контакт кнопки как вход
    pinMode (BUTTON, INPUT);
  }
void loop()
{
  // поместите сюда свой основной код для многократного запуска:
tekButton=digitalRead(BUTTON);
if (tekButton == HIGH&&prevButton == LOW);
{
  //нажатие кнопки - изменить состояние светодиода
  ledOn=!ledOn;// инвертирувать значение состояния светодиода
digitalWrite(LED,ledOn);//изменить статус состояния светодиода
}
prevButton=tekButton;
}

#4 Програмування Arduino » Обрабатываем нажатие кнопки на примере зажигания светодиода » 2024-01-18 01:35:25

Assduinshik
відповідей: 9

Доброго времени суток ардуинщики! Тема arduino для меня новая. Вопрос - ошибка в компиляции этого скетча:

const int LED=10;//Контакт 10 для подключения светодиода
const int BUTTON=2;//Контакт 2 для подключения кнопки
int tekButton = HIGH;//Переменная для сохранение текущего состояния кнопки
int prevButton = LOW;//Переменная для сохранения предыдущего состояния кнопки

boolean LedOn = false;//Текущее состояние светодиода(включен/выключен)
void setup()
  {
    //Сконфигурирувать контакт светодиода как выход
    pinMode(LED, OUTPUT);
    //Сконфигурирувать контакт кнопки как вход
    pinMode (BUTTON, INPUT);
  }
void loop()
{
  // поместите сюда свой основной код для многократного запуска:
tekButton=digitalRead(BUTTON);
if (tekButton == HIGH&&prevButton == LOW);
{
  //нажатие кнопки - изменить состояние светодиода
  ledOn=!ledOn;// инвертирувать значение состояния светодиода
digitalWrite(LED,ledOn);//изменить статус состояния светодиода
}
prevButton=tekButton;
}

Меня интересует не готовый ответ, а грамотное объяснение, в направлении понять, потому что хочется научиться. Потратил несколько дней на поправку данного скетча, менял знаки, слова - местами и не получилось исправить.
  Хочу разобраться с данным скетчем, помогите.

Підвал форуму