Skip to content

Commit 9692cbc

Browse files
rseidtRobert Seidt
and
Robert Seidt
authored
dynamic type for serialconfig (#1)
Co-authored-by: Robert Seidt <[email protected]>
1 parent 1993679 commit 9692cbc

File tree

2 files changed

+15
-5
lines changed

2 files changed

+15
-5
lines changed

src/RS485.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,12 +50,12 @@ void RS485Class::begin(unsigned long baudrate, int predelay, int postdelay)
5050
begin(baudrate, SERIAL_8N1, predelay, postdelay);
5151
}
5252

53-
void RS485Class::begin(unsigned long baudrate, uint16_t config)
53+
void RS485Class::begin(unsigned long baudrate, RS485_SER_CONF_TYPE config)
5454
{
5555
begin(baudrate, config, RS485_DEFAULT_PRE_DELAY, RS485_DEFAULT_POST_DELAY);
5656
}
5757

58-
void RS485Class::begin(unsigned long baudrate, uint16_t config, int predelay, int postdelay)
58+
void RS485Class::begin(unsigned long baudrate, RS485_SER_CONF_TYPE config, int predelay, int postdelay)
5959
{
6060
_baudrate = baudrate;
6161
_config = config;

src/RS485.h

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@
4343
#define SERIAL_PORT_HARDWARE Serial1
4444
#define RS485_DEFAULT_DE_PIN 8
4545
#define RS485_DEFAULT_RE_PIN 7
46+
#elif defined(ESP32) || defined(ESP8266)
47+
#define RS485_DEFAULT_DE_PIN 12
48+
#define RS485_DEFAULT_RE_PIN 13
49+
4650
#else
4751
#ifndef RS485_DEFAULT_DE_PIN
4852
#define RS485_DEFAULT_DE_PIN A6
@@ -61,6 +65,12 @@
6165
#define RS485_DEFAULT_PRE_DELAY 50
6266
#define RS485_DEFAULT_POST_DELAY 50
6367

68+
#if defined(ESP32) || defined(ESP8266)
69+
#define RS485_SER_CONF_TYPE SerialConfig
70+
#else
71+
#define RS485_SER_CONF_TYPE uint16_t
72+
#endif
73+
6474
class RS485Class : public Stream {
6575
public:
6676
#ifdef __MBED__
@@ -69,9 +79,9 @@ class RS485Class : public Stream {
6979
RS485Class(HardwareSerial& hwSerial, int txPin, int dePin, int rePin);
7080

7181
virtual void begin(unsigned long baudrate);
72-
virtual void begin(unsigned long baudrate, uint16_t config);
82+
virtual void begin(unsigned long baudrate, RS485_SER_CONF_TYPE config);
7383
virtual void begin(unsigned long baudrate, int predelay, int postdelay);
74-
virtual void begin(unsigned long baudrate, uint16_t config, int predelay, int postdelay);
84+
virtual void begin(unsigned long baudrate, RS485_SER_CONF_TYPE config, int predelay, int postdelay);
7585
virtual void end();
7686
virtual int available();
7787
virtual int peek();
@@ -103,7 +113,7 @@ class RS485Class : public Stream {
103113

104114
bool _transmisionBegun;
105115
unsigned long _baudrate;
106-
uint16_t _config;
116+
RS485_SER_CONF_TYPE _config;
107117
};
108118

109119
extern RS485Class RS485;

0 commit comments

Comments
 (0)