14#if !defined(ARDUINO_ARCH_AVR) || !defined(USE_NEOSERIAL)
20#ifndef _LIN_SLAVE_HW_SERIAL_H_
21#define _LIN_SLAVE_HW_SERIAL_H_
62 inline uint8_t
_serialPeek(
void) {
return this->pSerial->peek(); }
65 inline uint8_t
_serialRead(
void) {
return this->pSerial->read(); }
68 inline void _serialWrite(uint8_t buf[], uint8_t num) { this->pSerial->write(buf, num); }
79 void begin(uint16_t Baudrate = 19200);
85 inline bool available(
void) {
return this->pSerial->available(); }
Base class for LIN slave emulation (non-functional)
LIN slave emulation library using a NeoHWSerial interface of AVR.
LIN slave node base class.
version_t
LIN protocol version.
@ LIN_V2
LIN protocol version 2.x.
LIN slave node class via generic HardwareSerial.
uint8_t _serialRead(void)
read next byte from Rx buffer
HardwareSerial * pSerial
pointer to serial interface used for LIN
bool flagBreak
a break was detected, is set in handle
void _serialWrite(uint8_t buf[], uint8_t num)
write bytes to Tx buffer
void _resetBreakFlag(void)
Clear break detection flag.
virtual void handler(void)
Handle LIN protocol and call user-defined frame handlers.
void begin(uint16_t Baudrate=19200)
Open serial interface.
void end(void)
Close serial interface.
virtual bool _getBreakFlag(void)
Get break detection flag.
uint8_t _serialPeek(void)
peek next byte from Rx buffer
uint16_t minFramePause
min. inter-frame pause [us] to start new frame (not standard compliant!)
bool available(void)
check if a byte is available in Rx buffer