Учебники

Arduino — Соединительный выключатель

Кнопки или переключатели соединяют две открытые клеммы в цепи. В этом примере включается светодиод на контакте 2 при нажатии кнопки, подключенной к контакту 8.

Подключение коммутатора

Резистор понижающий

Понижающие резисторы используются в электронных логических схемах для обеспечения того, чтобы входы в Arduino устанавливались на ожидаемых логических уровнях, если внешние устройства отключены или находятся под высоким импедансом. Поскольку к входному выводу ничего не подключено, это не означает, что это логический ноль. Понижающие резисторы подключены между землей и соответствующим контактом на устройстве.

Пример понижающего резистора в цифровой цепи показан на следующем рисунке. Кнопочный переключатель подключен между напряжением питания и выводом микроконтроллера. В такой схеме, когда переключатель замкнут, вход микроконтроллера имеет логическое высокое значение, но когда переключатель разомкнут, понижающий резистор понижает входное напряжение до земли (логическое нулевое значение), предотвращая неопределенное состояние на входе.

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

Резистор понижающий

Необходимые компоненты

Вам понадобятся следующие компоненты —

  • 1 × Arduino UNO доска
  • Резистор 1 × 330 Ом
  • Резистор 1 × 4,7 кОм (опускается)
  • 1 × светодиод

Процедура

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

Соединения принципиальной схемы

эскиз

Откройте программное обеспечение Arduino IDE на своем компьютере. Кодирование на языке Arduino будет контролировать вашу схему. Откройте новый файл эскиза, нажав Новый.

эскиз

Arduino Code

// constants won't change. They're used here to
// set pin numbers:
const int buttonPin = 8; // the number of the pushbutton pin
const int ledPin = 2; // the number of the LED pin
// variables will change:
int buttonState = 0; // variable for reading the pushbutton status

void setup() {
   // initialize the LED pin as an output:
   pinMode(ledPin, OUTPUT);
   // initialize the pushbutton pin as an input:
   pinMode(buttonPin, INPUT);
}

void loop() {
   // read the state of the pushbutton value:
   buttonState = digitalRead(buttonPin);
   // check if the pushbutton is pressed.
   // if it is, the buttonState is HIGH:
   if (buttonState == HIGH) {
      // turn LED on:
      digitalWrite(ledPin, HIGH);
   } else {
      // turn LED off:
      digitalWrite(ledPin, LOW);
   }
}

Код для заметки

Когда переключатель разомкнут (кнопка не нажата), между двумя контактами кнопки нет соединения, поэтому контакт подключен к земле (через резистор понижающего напряжения), и мы читаем НИЗКИЙ. Когда переключатель замкнут (кнопка нажата), он устанавливает соединение между двумя своими клеммами, соединяя штырь на 5 В, так что мы читаем ВЫСОКОЕ.

Результат

Светодиод включается при нажатии кнопки и выключается при отпускании.