#1 Re: Програмування Arduino » Допоможіть військовому(( » 2024-03-25 23:17:49

#include <SoftwareSerial.h>
#include "EBYTE22.h"

#define PIN_TX 2
#define PIN_RX 3
#define PIN_M0 4
#define PIN_M1 5
#define PIN_AX 6
#define PIN_RELAY 9 // Пін, на якому ви хочете керувати напругою

#define YOUR_DESIRED_MESSAGE "TURN_ON_RELAY" // Повідомлення для включення реле

SoftwareSerial E22Serial(PIN_TX, PIN_RX, false);
EBYTE22 E22(&E22Serial, PIN_M0, PIN_M1, PIN_AX);
bool relayOn = false; // Флаг, що вказує, чи вже було включено реле

void setup() {
  Serial.begin(9600);
  E22Serial.begin(9600);
  pinMode(PIN_RELAY, OUTPUT); // Встановлюємо пін як вихід
  digitalWrite(PIN_RELAY, LOW); // Початковий стан (може бути LOW або HIGH, в залежності від потреби)
  delay(5000);
 
  if (E22.init()) {
    Serial.println("init OK");
  } else {
    Serial.println("init Error");
  }
}

void loop() {
  sendMessage(YOUR_DESIRED_MESSAGE); // Відправляємо повідомлення приймачу
  delay(5000); // Затримка перед наступним відправленням
}

void sendMessage(String message) {
  E22Serial.print(message);
  Serial.println("Sent message: " + message);
 
  // Очікуємо відповідь протягом 1 секунди
  unsigned long startTime = millis();
  while (millis() - startTime < 1000) {
    if (E22Serial.available()) {
      // Якщо отримане повідомлення співпадає з бажаним, увімкнемо реле на 2 секунди
      if (E22Serial.read() == YOUR_DESIRED_MESSAGE[0] && !relayOn) {
        digitalWrite(PIN_RELAY, HIGH);
        Serial.println("Relay turned ON for 2 seconds");
        delay(2000); // Вмикаємо реле на 2 секунди
        digitalWrite(PIN_RELAY, LOW);
        Serial.println("Relay turned OFF");
        relayOn = true; // Встановлюємо флаг, що реле вже було включено
      }
      return;
    }
  }
  Serial.println("No response received. Relay remains OFF");
}

#2 Програмування Arduino » Допоможіть військовому(( » 2024-03-25 23:14:50

P0TR0H
відповідей: 5

Бажаю здоровья, шановні ардуінщики)) Хочу зробити саморобну підривну машинку на базі ардуіно, але шось не виходить. Маю АРдуіно нано - 2шт, радіомодуль Е220-900Т22D, пишу код, шоб якщо передавач буде в мережі, то на приймач піде повідомлення, і на 9 піну буде напруга (яка буде ініціювати ЕДП). Повідомлення йде, воно приходить, але перевіраючи мультиметром пін 9 та землю напруги немає(((. Допоможіть!!!!

Підвал форуму