From d50d66743f6e02c171aa5236ae73a8cc3360004a Mon Sep 17 00:00:00 2001 From: chschloetel Date: Fri, 1 Nov 2024 23:19:38 +0100 Subject: [PATCH] MAX_MODBUS_ID_ADDRESS 255 und SetModbusID(22); Standardwert gesetzt --- include/ModbusSlaveConfigToEEPROM.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/include/ModbusSlaveConfigToEEPROM.h b/include/ModbusSlaveConfigToEEPROM.h index 92d6e30..87a1c4b 100644 --- a/include/ModbusSlaveConfigToEEPROM.h +++ b/include/ModbusSlaveConfigToEEPROM.h @@ -25,6 +25,7 @@ private: static const int MODBUS_ID_ADDRESS = 0; // Speicheradresse für Modbus-ID static const int BAUD_RATE_ADDRESS = 1; // Speicheradresse für Baudrate static const int MAX_BAUD_RATE = 115200; // Maximal unterstützte Baudrate + static const int MAX_MODBUS_ID_ADDRESS = 254; // Maximal unterstützte Baudrate }; /* Konstruktor: Der Konstruktor initialisiert die Modbus-ID und die Baudrate auf Standardwerte (1 und 9600), @@ -33,7 +34,7 @@ private: ModBusConfig::ModBusConfig() { // Optional: Initialisieren Sie die EEPROM-Werte, falls erforderlich if (EEPROM.read(MODBUS_ID_ADDRESS) == 0xFF) { - SetModbusID(1); // Setze Standard ID + SetModbusID(22); // Setze Standard ID } if (EEPROM.read(BAUD_RATE_ADDRESS) == 0xFF) { SetBaudRate(9600); // Setze Standard Baudrate @@ -41,7 +42,7 @@ ModBusConfig::ModBusConfig() { } void ModBusConfig::SetModbusID(int ID) { - if (ID >= 0 && ID <= 255) { // Überprüfung, dass ID im gültigen Bereich liegt + if (ID >= 0 && ID <= MAX_MODBUS_ID_ADDRESS) { // Überprüfung, dass ID im gültigen Bereich liegt EEPROM.write(MODBUS_ID_ADDRESS, ID); } else { Serial.println("Ungültige Modbus-ID. ID muss zwischen 0 und 255 liegen.");