arduino-emulator
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
arduino::RemoteI2C Class Reference

Remote I2C implementation that operates over a communication stream. More...

#include <RemoteI2C.h>

Inheritance diagram for arduino::RemoteI2C:
arduino::HardwareI2C arduino::Stream arduino::Print

Public Member Functions

 RemoteI2C (Stream *stream)
 
int available ()
 
virtual void begin ()
 
virtual void begin (uint8_t address)
 
virtual void beginTransmission (uint8_t address)
 
virtual void end ()
 
virtual uint8_t endTransmission (bool stopBit)
 
virtual uint8_t endTransmission (void)
 
virtual void onReceive (void(*)(int))
 
virtual void onRequest (void(*)(void))
 
 operator boolean ()
 
int peek ()
 
int read ()
 
virtual size_t requestFrom (uint8_t address, size_t len)
 
virtual size_t requestFrom (uint8_t address, size_t len, bool stopBit)
 
virtual void setClock (uint32_t freq)
 
void setStream (Stream *stream)
 
size_t write (uint8_t c)
 
- Public Member Functions inherited from arduino::Stream
bool find (char target)
 
bool find (const char *target)
 
bool find (const char *target, size_t length)
 
bool find (const uint8_t *target)
 
bool find (const uint8_t *target, size_t length)
 
bool findUntil (const char *target, const char *terminator)
 
bool findUntil (const char *target, size_t targetLen, const char *terminate, size_t termLen)
 
bool findUntil (const uint8_t *target, const char *terminator)
 
bool findUntil (const uint8_t *target, size_t targetLen, const char *terminate, size_t termLen)
 
unsigned long getTimeout (void)
 
float parseFloat (LookaheadMode lookahead=SKIP_ALL, char ignore=NO_IGNORE_CHAR)
 
long parseInt (LookaheadMode lookahead=SKIP_ALL, char ignore=NO_IGNORE_CHAR)
 
size_t readBytes (char *buffer, size_t length)
 
size_t readBytes (uint8_t *buffer, size_t length)
 
size_t readBytesUntil (char terminator, char *buffer, size_t length)
 
size_t readBytesUntil (char terminator, uint8_t *buffer, size_t length)
 
String readString ()
 
String readStringUntil (char terminator)
 
void setTimeout (unsigned long timeout)
 
- Public Member Functions inherited from arduino::Print
virtual int availableForWrite ()
 
void clearWriteError ()
 
virtual void flush ()
 
int getWriteError ()
 
size_t print (char)
 
size_t print (const __FlashStringHelper *)
 
size_t print (const char[])
 
size_t print (const Printable &)
 
size_t print (const String &)
 
size_t print (double, int=2)
 
size_t print (int, int=DEC)
 
size_t print (long long, int=DEC)
 
size_t print (long, int=DEC)
 
size_t print (unsigned char, int=DEC)
 
size_t print (unsigned int, int=DEC)
 
size_t print (unsigned long long, int=DEC)
 
size_t print (unsigned long, int=DEC)
 
size_t println (char)
 
size_t println (const __FlashStringHelper *)
 
size_t println (const char[])
 
size_t println (const Printable &)
 
size_t println (const String &s)
 
size_t println (double, int=2)
 
size_t println (int, int=DEC)
 
size_t println (long long, int=DEC)
 
size_t println (long, int=DEC)
 
size_t println (unsigned char, int=DEC)
 
size_t println (unsigned int, int=DEC)
 
size_t println (unsigned long long, int=DEC)
 
size_t println (unsigned long, int=DEC)
 
size_t println (void)
 
size_t write (const char *buffer, size_t size)
 
size_t write (const char *str)
 
virtual size_t write (const uint8_t *buffer, size_t size)
 

Protected Attributes

HardwareService service
 
- Protected Attributes inherited from arduino::Stream
unsigned long _startMillis
 
unsigned long _timeout
 

Additional Inherited Members

- Protected Member Functions inherited from arduino::Stream
int findMulti (struct MultiTarget *targets, int tCount)
 
float parseFloat (char ignore)
 
long parseInt (char ignore)
 
int peekNextDigit (LookaheadMode lookahead, bool detectDecimal)
 
int timedPeek ()
 
int timedRead ()
 
- Protected Member Functions inherited from arduino::Print
void setWriteError (int err=1)
 

Detailed Description

Remote I2C implementation that operates over a communication stream.

RemoteI2C provides I2C functionality by forwarding all operations to a remote I2C controller via a communication stream (serial, network, etc.). This enables I2C operations to be performed on remote hardware while maintaining the standard HardwareI2C interface.

Key features:

The class uses HardwareService for protocol handling and can work with any Stream implementation (Serial, TCP, etc.) for remote connectivity.

See also
HardwareI2C
HardwareService
Stream

Member Function Documentation

◆ available()

int arduino::RemoteI2C::available ( void  )
inlinevirtual

Implements arduino::Stream.

◆ begin() [1/2]

virtual void arduino::RemoteI2C::begin ( )
inlinevirtual

Implements arduino::HardwareI2C.

◆ begin() [2/2]

virtual void arduino::RemoteI2C::begin ( uint8_t  address)
inlinevirtual

Implements arduino::HardwareI2C.

◆ beginTransmission()

virtual void arduino::RemoteI2C::beginTransmission ( uint8_t  address)
inlinevirtual

Implements arduino::HardwareI2C.

◆ end()

virtual void arduino::RemoteI2C::end ( )
inlinevirtual

Implements arduino::HardwareI2C.

◆ endTransmission() [1/2]

virtual uint8_t arduino::RemoteI2C::endTransmission ( bool  stopBit)
inlinevirtual

Implements arduino::HardwareI2C.

◆ endTransmission() [2/2]

virtual uint8_t arduino::RemoteI2C::endTransmission ( void  )
inlinevirtual

Implements arduino::HardwareI2C.

◆ onReceive()

virtual void arduino::RemoteI2C::onReceive ( void(*)(int )
inlinevirtual

Implements arduino::HardwareI2C.

◆ onRequest()

virtual void arduino::RemoteI2C::onRequest ( void(*)(void )
inlinevirtual

Implements arduino::HardwareI2C.

◆ peek()

int arduino::RemoteI2C::peek ( void  )
inlinevirtual

Implements arduino::Stream.

◆ read()

int arduino::RemoteI2C::read ( void  )
inlinevirtual

Implements arduino::Stream.

◆ requestFrom() [1/2]

virtual size_t arduino::RemoteI2C::requestFrom ( uint8_t  address,
size_t  len 
)
inlinevirtual

Implements arduino::HardwareI2C.

◆ requestFrom() [2/2]

virtual size_t arduino::RemoteI2C::requestFrom ( uint8_t  address,
size_t  len,
bool  stopBit 
)
inlinevirtual

Implements arduino::HardwareI2C.

◆ setClock()

virtual void arduino::RemoteI2C::setClock ( uint32_t  freq)
inlinevirtual

Implements arduino::HardwareI2C.

◆ write()

size_t arduino::RemoteI2C::write ( uint8_t  c)
inlinevirtual

Implements arduino::Print.


The documentation for this class was generated from the following file: