Error de compilación de Modbus Arduino

0

Tengo el código para la biblioteca de bus Mod como se muestra a continuación. Me he ido a través de un montón de foros. Cómo asignar la ID del dispositivo, la dirección del esclavo, la longitud utilizando la función de biblioteca que se muestra a continuación:

#include <SimpleModbusSlave.h>
#define  LED 9  
enum 
{     

  ADC_VAL,     
  PWM_VAL,        
  HOLDING_REGS_SIZE // leave this one
};

unsigned int holdingRegs[HOLDING_REGS_SIZE]; 
void setup()
{
  modbus_configure(&Serial, 9600, SERIAL_8N2, 1, 2, HOLDING_REGS_SIZE, holdingRegs);    
  pinMode(LED, OUTPUT);
}

void loop()
{
  modbus_update();
  holdingRegs[ADC_VAL] = analogRead(A0); // update data to be read by the master to adjust the PWM
  analogWrite(LED, holdingRegs[PWM_VAL]>>2); // constrain adc value from the arduino master to 255
}

Estoy obteniendo un error.

SimpleModbusSlaveArduino.cpp: In function 'void setup()':
SimpleModbusSlaveArduino:79: error: 'SERIAL_8N2' was not declared in this scope

Déjame saber cómo resolver el problema.

    
pregunta AMPS

1 respuesta

1

Abre SimpleModbusSlave.c. Compruebe que el formato de modbus_configure () coincida con el que tiene.

Abre SimpleModbusSlave.h. Compruebe que existe la definición para SERIAL_8N2.

Supongo que debería ser

modbus_configure (9600, 1, 2, HOLDING_REGS_SIZE);

    
respondido por el geometrikal

Lea otras preguntas en las etiquetas