Arduino/sketch_may14a/sketch_may14a.ino

39 lines
1.1 KiB
C++

#include <ModbusMaster.h>
// Настройки Modbus
#define MAX485_DE_RE_PIN 2 // Пин управления направлением MAX485
#define MODBUS_SLAVE_ID 1 // ID устройства Modbus
// Экземпляр объекта ModbusMaster
ModbusMaster node;
void setup() {
Serial.begin(9600);
// Инициализация объекта ModbusMaster
node.begin(MODBUS_SLAVE_ID, Serial);
// Установка пина управления направлением для модуля MAX485
pinMode(MAX485_DE_RE_PIN, OUTPUT);
digitalWrite(MAX485_DE_RE_PIN, LOW); // Настроить на передачу данных
Serial.println("Modbus communication initialized");
}
void loop() {
// Чтение состояния порта
int portState = digitalRead(MAX485_DE_RE_PIN);
// Отправка состояния порта по Modbus
uint8_t result = node.writeSingleCoil(0, portState);
// Обработка результата записи
if (result == node.ku8MBSuccess) {
Serial.println("Modbus write success");
} else {
Serial.println("Modbus write failed");
}
delay(500);
}