Вопрос задан 25.07.2026 в 07:49. Предмет Информатика. Спрашивает Чернышова Алина.

Задание 1. Синхронизировать между собой фоторезистор и сервомотор. Нужно прокручивать вал сервомотора по мере увеличения освещения. Соответственно, при уменьшении освещения нужно прокручивать вал сервомотора в обратную сторону (в сторону нулевого положения). Задание 2. Подключить сервомотор к Arduino. К макетной плате подключить две кнопки. При нажатии на кнопку 1 вал сервомотора должен повернуться на 180 градусов. При нажатии на кнопку 2 вал должен вернуться в исходное положение.

Перейти к ответам

Ответы на вопрос

Отвечает Килийский Константин.

Для задания 1 (фоторезистор и сервомотор):

Подключите фоторезистор к аналоговому пину A0 через делитель напряжения. Сервомотор подключите к пину 9.

Код:

#include <Servo.h>
Servo myservo;
int photopin = A0;
int val;
void setup() {
myservo.attach(9);
}
void loop() {
val = analogRead(photopin);
val = map(val, 0, 1023, 0, 180);
myservo.write(val);
delay(15);
}

Для задания 2 (две кнопки):

Подключите кнопки к пинам 2 и 3 с подтяжкой к земле (INPUT_PULLUP). Сервомотор на пин 9.

Код:

#include <Servo.h>
Servo myservo;
const int button1 = 2;
const int button2 = 3;
int pos = 0;
void setup() {
myservo.attach(9);
pinMode(button1, INPUT_PULLUP);
pinMode(button2, INPUT_PULLUP);
myservo.write(0);
}
void loop() {
if (digitalRead(button1) == LOW) {
myservo.write(180);
delay(500);
}
if (digitalRead(button2) == LOW) {
myservo.write(0);
delay(500);
}
}

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос