FastArduino v1.10
C++ library to build fast but small Arduino/AVR projects
Loading...
Searching...
No Matches
i2c::debug Namespace Reference

Defines API to ease I2C devices debugging. More...

Classes

class  I2CDebugLiveLogger
 Class tracing I2C debug notifications live to out. More...
 
class  I2CDebugRecorder
 Class recording I2C debug notifications for later output. More...
 
class  I2CDebugStatusLiveLogger
 Class tracing I2C status and debug notifications live to out. More...
 
class  I2CDebugStatusRecorder
 Class recording I2C debug and status notifications for later output. More...
 

Enumerations

enum class  DEBUG : uint8_t {
  DEBUG_STEPS = 0x01 ,
  DEBUG_SEND_OK = 0x02 ,
  DEBUG_SEND_ERR = 0x04 ,
  DEBUG_RECV_OK = 0x08 ,
  DEBUG_RECV_ERR = 0x10 ,
  DEBUG_ALL = 0xFF
}
 Indicate what in I2C protocol shall be debugged. More...
 

Detailed Description

Defines API to ease I2C devices debugging.

You would normally not use API in this namespace unless you develop specific support for I2C devices.

Enumeration Type Documentation

◆ DEBUG

enum class i2c::debug::DEBUG : uint8_t
strong

Indicate what in I2C protocol shall be debugged.

Values can or'ed together, e.g. DEBUG::DEBUG_SEND_OK | DEBUG::DEBUG_SEND_ERR.

See also
I2CDebugRecorder
I2CDebugLiveLogger
Enumerator
DEBUG_STEPS 

Debug all individual steps of I2C protocol:

  • START condition
  • REPEAT START condition
  • SLAW slave address for writing
  • SLAR slave address for reading
  • SEND send byte to slave
  • RECV receive byte from slave
  • RECV_LAST receive last byte from slave
  • STOP condition
DEBUG_SEND_OK 

Debug successfully written bytes.

DEBUG_SEND_ERR 

Debug written bytes not acknowledged by slave.

DEBUG_RECV_OK 

Debug successfully received bytes.

DEBUG_RECV_ERR 

Debug error during receiving bytes.

DEBUG_ALL 

Debug everything.

Definition at line 101 of file i2c_debug.h.