//Первая arduino, отправляющая значение
#include <Wire.h>
void setup()
{
Wire.begin(2); // подключаем шину I2C с адресом #2
Wire.onRequest(requestEvent); // зарегистрированное событие, которое будет возникать в ответ на вопрос
}
void loop()
{
; delay(100);
}
// Эта пользовательская функция будет выполняться всякий раз,
// Она зарегистрирована как событие (см. блок setup).
void requestEvent()
{
Wire.write("qwerty"); // отвечаем сообщением из 6 байтов, как ведущая плата того и ждет
}
Тут вроде все норм, а снизу неочень
//Вторая, которая по задумке должна зажигать светодиод
#include <Wire.h>
void setup()
{
Wire.begin();
Serial.begin(9600);
pinMode(13, OUTPUT);
}
void loop()
{
Wire.requestFrom(2, 6);
while(Wire.available())
{
char c = Wire.read();
Serial.print(c);
}
if (Serial.read() == 'qwerty'){
digitalWrite(13, HIGH);
}
delay(500);
}
Но тут не задачка, if попросту не понимает условия т.е.
if (Serial.read() == 'qwerty')
Из найденного в интернете
Serial.readString()
читает строку с Serial порта. То есть если эта функция работает, то итоговый код должен выглядеть так:
if(Serial.readString() == "qwerty")
{
//Ваши действия
}
P.S. С ардуино давно не игрался, информация чисто из интернета и опыта.
Это же C++, а не Python или Java.
void setup() {
Serial.begin(57600);
}
void loop() {
if (Serial.available() >= 6) {
String str = Serial.readString();
if (str == "qwerty")
Serial.println("true");
else
Serial.println("false");
}
}
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники