
Даю 100 балів. Cоздайте новый проект в Tinkercad Circuits. Добавьте плату Arduino Uno и подключите
5 или больше светодиодов, кнопку и LCD-дисплей. Запрограммируйте несколько режимов для светодиодов: 1. Светодиоды мигают в случайном порядке; 2. Светодиоды включаются последовательно, один за другим; 3. Светодиоды медленно включаются, а затем гаснут. Запрограммируйте кнопку, чтобы по нажатию на нее менялся режим мигания светодиодов. Придумайте оригинальное название для каждого из режимов и выводите его на LCD-дисплей. То есть пользователь нажимает на кнопку, меняется режим, на LCD дисплее отображается название режима.



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

Відповідь:
Этот код включает 5 светодиодов, одну кнопку и один LCD-дисплей. Есть три режима мигания светодиодов: случайный режим, последовательный режим и режим затухания. По нажатию на кнопку режим меняется, а название режима выводится на LCD-дисплей. Я надеюсь, что этот код поможет вам создать ваш проект в Tinkercad Circ
Пояснення:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int mode = 1;
int led_pins[] = {6, 7, 8, 9, 10};
int num_leds = 5;
int button_pin = A0;
void setup() {
pinMode(button_pin, INPUT_PULLUP);
lcd.begin(16, 2);
lcd.print("LED Modes:");
}
void loop() {
switch (mode) {
case 1:
randomMode();
break;
case 2:
sequentialMode();
break;
case 3:
fadeMode();
break;
}
checkButton();
}
void randomMode() {
for (int i = 0; i < 10; i++) {
int led = random(num_leds);
digitalWrite(led_pins[led], HIGH);
delay(100);
digitalWrite(led_pins[led], LOW);
delay(100);
}
}
void sequentialMode() {
for (int i = 0; i < num_leds; i++) {
digitalWrite(led_pins[i], HIGH);
delay(100);
}
delay(500);
for (int i = 0; i < num_leds; i++) {
digitalWrite(led_pins[i], LOW);
delay(100);
}
delay(500);
}
void fadeMode() {
for (int i = 0; i < 255; i++) {
for (int j = 0; j < num_leds; j++) {
analogWrite(led_pins[j], i);
}
delay(10);
}
for (int i = 255; i >= 0; i--) {
for (int j = 0; j < num_leds; j++) {
analogWrite(led_pins[j], i);
}
delay(10);
}
}
void checkButton() {
if (digitalRead(button_pin) == LOW) {
mode++;
if (mode > 3) {
mode = 1;
}
lcd.clear();
switch (mode) {
case 1:
lcd.print("Random Mode");
break;
case 2:
lcd.print("Sequential Mode");
break;
case 3:
lcd.print("Fade Mode");
break;
}
delay(500);
}
}


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








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili