32 lines
724 B
C++
32 lines
724 B
C++
# include <ModbusRTUSlave.h>
|
|
|
|
const uint8_t coilPins[2] = {4, 5};
|
|
const uint8_t discreteInputPins[2] = {2, 3};
|
|
|
|
ModbusRTUSlave modbus(Serial);
|
|
|
|
bool coils[5];
|
|
bool discreteInputs[5];
|
|
|
|
void setup() {
|
|
pinMode(coilPins[0], OUTPUT);
|
|
pinMode(coilPins[1], OUTPUT);
|
|
pinMode(discreteInputPins[0], INPUT);
|
|
pinMode(discreteInputPins[1], INPUT);
|
|
|
|
modbus.configureCoils(coils, 5);
|
|
modbus.configureDiscreteInputs(discreteInputs, 5);
|
|
modbus.begin(1, 9600);
|
|
}
|
|
|
|
void loop() {
|
|
discreteInputs[0] = digitalRead(discreteInputPins[0]);
|
|
discreteInputs[1] = digitalRead(discreteInputPins[1]);
|
|
//Serial.print(discreteInputs[0]);
|
|
|
|
modbus.poll();
|
|
|
|
digitalWrite(coilPins[0], coils[0]);
|
|
digitalWrite(coilPins[1], coils[1]);
|
|
}
|