10#if defined(ARDUINO_ARCH_AVR) || defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
15#ifndef _LIN_MASTER_SW_SERIAL_H_
16#define _LIN_MASTER_SW_SERIAL_H_
25#include <SoftwareSerial.h>
41 SoftwareSerial SWSerial;
45 uint32_t durationBreak;
65 LIN_Master_SoftwareSerial(uint8_t PinRx, uint8_t PinTx,
bool InverseLogic =
false,
const char NameLIN[] =
"Master",
const int8_t PinTxEN = INT8_MIN);
69 void begin(uint16_t Baudrate = 19200);
Base class for LIN master emulation (non-functional)
LIN master node base class.
state_t
state of LIN master state machine. Use bitmasks for fast checking multiple states
LIN master node class via SoftwareSerial.
void begin(uint16_t Baudrate=19200)
Open serial interface.
LIN_Master_Base::state_t _sendBreak(void)
Send LIN break.
void end(void)
Close serial interface.
LIN_Master_Base::state_t _receiveFrame(void)
Read and check LIN frame.
LIN_Master_Base::state_t _sendFrame(void)
Send LIN bytes (request frame: SYNC+ID+DATA[]+CHK; response frame: SYNC+ID)