#include <Arduino.h>
#include <HardwareSerial.h>
#include "dlmsdata.h"
#include "dlmsdataTP.h"
#include "dlmsBase.h"
DLMSData singlePhaseData;
DLMSDataTP threePhaseData;
registerData data1;
registerData data2;
dlmsBase* dlms1;
dlmsBase* dlms2;
void setup() {
Serial.begin(9600);
Serial.println("Select meter_choice (1 for single phase, 2 for three phase, 3 for mixed):");
while (!Serial.available()) {
}
int meter_choice = Serial.parseInt();
if (meter_choice == 1) {
dlms1 = new dlmsdata(&Serial1, &data1, &singlePhaseData);
dlms2 = new dlmsdata(&Serial2, &data2, &singlePhaseData);
} else if (meter_choice == 2) {
dlms1 = new dlmsdataTP(&Serial1, &data1, &threePhaseData);
dlms2 = new dlmsdataTP(&Serial2, &data2, &threePhaseData);
} else if (meter_choice == 3) {
dlms1 = new dlmsdata(&Serial1, &data1, &singlePhaseData);
dlms2 = new dlmsdataTP(&Serial2, &data2, &threePhaseData);
}
}
void loop() {
dlms1->com_readSerialPort(0);
dlms2->com_readSerialPort(0);
delay(5000);
}