codeFlowType:
codeWrite
codeFlowLang:
C++
Напиши код на Arduino Uno, который при нажатии кнопки порт 2 к которой подключен резистор в 10 кОм включается светодиод порт 13 и поворачивается сервопривод порт 9 на 200 градусов и возвращается в начальную позицию
Вот пример кода на языке C++, который можно использовать на Arduino Uno. Этот код включает светодиод на порту 13 и поворачивает сервопривод на 200 градусов при нажатии кнопки, подключенной к порту 2. После этого сервопривод возвращается в начальную позицию.
#include <Servo.h>
const int buttonPin = 2; // Пин кнопки
const int ledPin = 13; // Пин светодиода
const int servoPin = 9; // Пин сервопривода
Servo myServo; // Создаем объект сервопривода
void setup() {
pinMode(buttonPin, INPUT); // Устанавливаем пин кнопки как вход
pinMode(ledPin, OUTPUT); // Устанавливаем пин светодиода как выход
myServo.attach(servoPin); // Подключаем сервопривод
myServo.write(0); // Устанавливаем начальную позицию сервопривода на 0 градусов
}
void loop() {
// Проверяем, нажата ли кнопка
if (digitalRead(buttonPin) == HIGH) {
digitalWrite(ledPin, HIGH); // Включаем светодиод
myServo.write(200); // Поворачиваем сервопривод на 200 градусов
// Задержка, чтобы сервопривод успел повернуться
delay(1000); // Задержка 1 секунда (настраиваемая)
myServo.write(0); // Возвращаем сервопривод в начальную позицию
delay(1000); // Задержка 1 секунда (настраиваемая)
digitalWrite(ledPin, LOW); // Выключаем светодиод
}
}
Подключения:
Логика работы:
setup()
устанавливаются режимы работы пинов.loop()
происходит бесконечная проверка состояния кнопки. Если кнопка нажата, включается светодиод, сервопривод поворачивается на 200 градусов, после чего возвращается в начальное положение.