2 ВЫПОЛНЕНИЕ
2.1 Тема 1
При загрузке скетча в плату, нужно помнить, что необходимо выбрать плату и порт подключения. Для этого проводим следующие манипуляции:
1) Нажмём на вкладку “Инструменты”, как на рисунке 2.1.
Рисунок 2.1 – Вкладки
2) Нажмём на “Плата” и выберем название “esp32”, как на рисунке 2.2.
Рисунок 2.2 – Инструменты
3) В этой же вкладке найдём “Порт” и нажмите на тот, возле которого есть название платы, как на рисунке 2.3.
13
Рисунок 2.3 – Выбора порта для нашей платы
4) Нажмём на кнопку загрузки, как на рисунке 2.4.
Рисунок 2.4 – Кнопка для загрузки
На рисунке 2.5 представлен скетч программы в Arduino IDE по умолчанию. На рисунке 2.6 её реализицаия в TinkerCad.
14
Рисунок 2.5 – Шаблон программы в Arduino IDE
Рисунок 2.6 – Монитор программы «Hello, world!» и сама программа в среде симуляции Adobe TinkerCAD
15
2.2 Тема 2
В листинге 1 представлена программа работы встроенного светодиода с подтягивающим и стягивающими резисторами для Tinker CAD.
Листинг 1 – Программа для работы встроенного светодиода по кнопке
//C++ code
//Задаём номера выводов: const int buttonPin = 2; const int ledPin = 13;
void setup()
{
pinMode(ledPin, OUTPUT); // Подключаем встроенный светодиод на
плате Arduino pinMode(buttonPin, INPUT);
}
void loop()
{
// Считываем состояние кнопки
int buttonState = digitalRead(buttonPin); if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH); // Зажигаем светодиод при нажа-
тии кнопки
}
else {
digitalWrite(ledPin, LOW); // Гасим светодиод при опускании кнопки
}
}
В листинге 2 представлена программа для работы встроенного светодиода со стягивающим и подтягивающим резисторами на реальной плате ESP32. На рисунке 2.9 представлена реализация для подтягивающего резистора. На рисунке 2.12 представлена реализация для стягивающего резистора.
Листинг 2 – Программа для работы встроенного светодиода по кнопке на реальном примере с ESP32 WROOM DA
const int buttonPin = 4; // Перенесли кнопку на D4, чтобы не ме-
шать загрузке, как было с пином 2 на Aruino в TinkerCAD const int ledPin = 2;
void setup() { pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
16
}
void loop() {
if (digitalRead(buttonPin) == LOW) {
digitalWrite(ledPin, LOW); // Гасим светодиод при опускании кнопки
} else {
digitalWrite(ledPin, HIGH); // Зажигаем светодиод при нажа-
тии кнопки
}
}
Рисунок 2.7 – Подключение кнопки к Arduino по схеме с подтягивающим резистором
Рисунок 2.8 – Горящая лампочка без (слева) и с (справа) включённой кнопки/ой по схеме с подтягивающим резистором
17
Рисунок 2.9 – Горящая лампочка без (слева) и с (справа) включённой кнопки/ой по схеме с подтягивающим резистором на ESP32
Рисунок 2.10 – Подключение кнопки к Arduino по схеме со стягивающим резистором
Рисунок 2.11 – Горящая лампочка без (слева) и с (справа) включённой кнопкой по схеме со стягивающим резистором
18
