Создайте новый проект в Tinkercad Circuits и добавьте плату Arduino Uno. После этого подключите 5 светодиодов

  • 5
Создайте новый проект в Tinkercad Circuits и добавьте плату Arduino Uno. После этого подключите 5 светодиодов или больше, кнопку и LCD-дисплей. Напишите программу для режимов работы светодиодов: 1. Светодиоды должны мигать в случайном порядке; 2. Светодиоды должны включаться последовательно, один за другим; 3. Светодиоды должны медленно включаться, а затем гаснуть. Программируйте кнопку таким образом, чтобы при нажатии на нее менялся режим работы светодиодов. Придумайте уникальные названия для каждого из режимов и выводите их на LCD-дисплей. То есть, когда пользователь нажимает на кнопку, меняется режим работы и название режима отображается на LCD-дисплее.
Moroznyy_Voin
55
Хорошо, давайте пошагово решим вашу задачу по созданию проекта в Tinkercad Circuits с платой Arduino Uno, светодиодами, кнопкой и LCD-дисплеем, а также напишем программу для работы с ними.

1. Перейдите на сайт Tinkercad Circuits (https://www.tinkercad.com) и создайте новый проект.
2. В верхней панели выберите "Circuits" и найдите плату Arduino Uno. Перетащите ее на рабочую область.
3. Добавьте 5 светодиодов, кнопку и LCD-дисплей на вашу схему, подключив их к соответствующим пинам Arduino Uno. Убедитесь, что все компоненты правильно подключены и светодиоды имеют соответствующие резисторы.
4. Когда ваша схема готова, перейдите к программированию. Нажмите на плату Arduino Uno и выберите вкладку "Code".
5. Ниже представлен пример программы, который вы можете использовать для работы с указанными режимами светодиодов и кнопкой:

cpp
// Подключение библиотек для работы с LCD-дисплеем и кнопкой
#include

// Пины для светодиодов
int ledPins[] = {2, 3, 4, 5, 6};

// Пины для кнопки
int buttonPin = 7;

// Объект для работы с LCD-дисплеем
LiquidCrystal lcd(8, 9, 10, 11, 12, 13);

// Переменные для хранения текущего режима и количества светодиодов
int mode = 1;
int numLEDs = 5;

// Функция для мигания светодиодов в случайном порядке
void randomMode() {
for (int i = 0; i < numLEDs; i++) {
digitalWrite(ledPins[i], HIGH);
delay(200);
digitalWrite(ledPins[i], LOW);
}
}

// Функция для последовательного включения светодиодов
void sequentialMode() {
for (int i = 0; i < numLEDs; i++) {
digitalWrite(ledPins[i], HIGH);
delay(200);
}
for (int i = 0; i < numLEDs; i++) {
digitalWrite(ledPins[i], LOW);
delay(200);
}
}

// Функция для плавного включения и выключения светодиодов
void fadeMode() {
for (int i = 0; i < numLEDs; i++) {
for (int brightness = 0; brightness <= 255; brightness += 5) {
analogWrite(ledPins[i], brightness);
delay(20);
}
for (int brightness = 255; brightness >= 0; brightness -= 5) {
analogWrite(ledPins[i], brightness);
delay(20);
}
}
}

void setup() {
// Настройка пинов светодиодов
for (int i = 0; i < numLEDs; i++) {
pinMode(ledPins[i], OUTPUT);
}

// Настройка пина кнопки
pinMode(buttonPin, INPUT_PULLUP);

// Настройка LCD-дисплея
lcd.begin(16, 2);

// Включение подсветки LCD-дисплея
lcd.backlight();
}

void loop() {
// Считывание состояния кнопки
int buttonState = digitalRead(buttonPin);

// Изменение режима работы светодиодов при нажатии на кнопку
if (buttonState == LOW) {
mode++;
if (mode > 3) {
mode = 1;
}
}

// Вывод названия текущего режима на LCD-дисплей
lcd.setCursor(0, 0);
lcd.print("Режим: ");
switch (mode) {
case 1:
lcd.print("Случайный");
break;
case 2:
lcd.print("Последовательный");
break;
case 3:
lcd.print("Плавный");
break;
}

// Вызов соответствующей функции в зависимости от режима работы
switch (mode) {
case 1:
randomMode();
break;
case 2:
sequentialMode();
break;
case 3:
fadeMode();
break;
}
}


6. Скопируйте этот код и вставьте его в окно редактора кода Tinkercad Circuits.
7. Нажмите кнопку "Start Simulation", чтобы запустить симуляцию своего проекта. Вы должны увидеть, как светодиоды мигают в соответствии с выбранными режимами. Названия режимов также будут отображаться на LCD-дисплее.

Теперь ваш проект готов! Вы можете экспериментировать с кодом, добавлять новые режимы или изменять параметры светодиодов и кнопок, чтобы настроить его под свои требования. Удачи!