134 return writeRegister(
nullptr, 0, (uint8_t *)&data,
sizeof(uint16_t));
163 return writeRegister(
nullptr, 0, (uint8_t *)&data,
sizeof(uint32_t));
203 return writeRegister(&devReg,
sizeof(devReg), &data,
sizeof(uint8_t));
232 uint16_t value = data;
236 return writeRegister(&devReg,
sizeof(devReg), (uint8_t *)&value,
sizeof(value));
266 uint32_t value = data;
271 return writeRegister(&devReg,
sizeof(devReg), (uint8_t *)&value,
sizeof(data));
321 return writeRegister((uint8_t *)&devReg,
sizeof(devReg), data, length);
403 uint32_t value = data;
408 return writeRegister(devReg, (
const uint8_t *)&value,
sizeof(uint32_t));
442 return writeRegister(devReg, (
const uint8_t *)data, length *
sizeof(uint16_t));
445 uint16_t data16[length];
447 for (
size_t i = 0; i < length; i++)
449 return writeRegister(devReg, (
const uint8_t *)data16, length *
sizeof(uint16_t));
469 size_t &readBytes, uint32_t read_delay = 0) = 0;
580 return readRegister(&devReg,
sizeof(devReg), data, numBytes, readBytes);
595 size_t readBytes = 0;
631 size_t readBytes = 0;
671 size_t readBytes = 0;
717 return readRegister((uint8_t *)&devReg,
sizeof(devReg), data, numBytes, readBytes);
738 for (
size_t i = 0; i < length; i++)
Interface that defines the communication bus for the SparkFun Electronics Toolkit.
Definition: sfTkIBus.h:73
sfTkError_t writeRegisterUInt32(uint16_t reg, const uint32_t data)
Writes a 32-bit data value to a specified device register.
Definition: sfTkIBus.h:423
sfTkError_t writeRegisterUInt8(uint16_t reg, const uint8_t data)
Writes a 8-bit data value to a specified device register.
Definition: sfTkIBus.h:353
sfTkError_t readRegisterUInt32(uint8_t devReg, uint32_t &data)
Read a 32 bit value from the given register.
Definition: sfTkIBus.h:562
virtual sfTkError_t writeRegister(uint16_t devReg, const uint32_t data)
Writes a 32-bit data value to a specified device register.
Definition: sfTkIBus.h:401
virtual sfTkError_t writeData(const uint8_t *data, size_t length)
Writes an array.
Definition: sfTkIBus.h:187
sfTkByteOrder byteOrder(void)
Get the current byte order.
Definition: sfTkIBus.h:774
sfTkError_t readRegisterUInt8(uint8_t devReg, uint8_t &data)
Read a single byte from the given register.
Definition: sfTkIBus.h:496
sfTkError_t readRegisterUInt16(uint8_t devReg, uint16_t &data)
Read a single word (16 bit) from the given register.
Definition: sfTkIBus.h:529
virtual sfTkError_t writeRegister(uint8_t *devReg, size_t regLength, const uint8_t *data, size_t length)=0
Writes an array of bytes to a register on the target address. Supports any address size.
virtual sfTkError_t writeRegister(uint16_t devReg, const uint16_t data)
Writes a 16-bit data value to a specified device 16bit register.
Definition: sfTkIBus.h:368
virtual sfTkError_t writeData(uint16_t data)
Send a 16 bit value to the device.
Definition: sfTkIBus.h:128
virtual sfTkError_t writeRegister(uint16_t devReg, const uint8_t data)
Writes a 8-bit data value to a specified device register.
Definition: sfTkIBus.h:336
virtual sfTkError_t readRegister(uint16_t reg, uint32_t &value)
Overloaded function to read a 32-bit value from the given 16-bit register address.
Definition: sfTkIBus.h:669
sfTkIBus()
Constructor.
Definition: sfTkIBus.h:78
sfTkByteOrder _byteOrder
Definition: sfTkIBus.h:783
sfTkError_t writeRegisterUInt16(uint16_t reg, const uint16_t data)
Writes a 16-bit data value to a specified device 16bit register.
Definition: sfTkIBus.h:384
virtual sfTkError_t readRegister(uint16_t reg, uint8_t &value)
Overloaded function to read a 8-bit value from the given 16-bit register address.
Definition: sfTkIBus.h:593
virtual sfTkError_t writeRegister(uint8_t devReg, const uint16_t data)
Write a single word (16 bit) to the given register.
Definition: sfTkIBus.h:229
sfTkError_t readRegisterUInt8(uint16_t devReg, uint8_t &data)
Overloaded function to read a 8-bit value from the given 16-bit register address.
Definition: sfTkIBus.h:614
virtual sfTkError_t writeRegister(uint8_t devReg, const uint32_t data)
Writes a 32-bit data value to a specified device register.
Definition: sfTkIBus.h:264
sfTkError_t readRegisterUInt32(uint16_t devReg, uint32_t &data)
Overloaded function to read a 32-bit value from the given 16-bit register address.
Definition: sfTkIBus.h:694
virtual sfTkError_t readRegister(uint16_t reg, uint16_t &value)
Overloaded function to read a 16-bit value from the given 16-bit register address.
Definition: sfTkIBus.h:629
virtual sfTkError_t writeData(uint8_t data)
Writes a 8-bit data value.
Definition: sfTkIBus.h:103
virtual sfTkError_t readRegister(uint8_t devReg, uint32_t &data)
Read a 32 bit value from the given register.
Definition: sfTkIBus.h:542
sfTkError_t writeRegisterUInt8(uint8_t reg, uint8_t data)
Write a single byte (8 bit) to the given register.
Definition: sfTkIBus.h:215
sfTkError_t writeRegister(uint8_t devReg, uint8_t data)
Write a single byte (8 bit) to the given register.
Definition: sfTkIBus.h:201
virtual sfTkError_t readRegister(uint8_t devReg, uint16_t &data)
Read a single word (16 bit) from the given register.
Definition: sfTkIBus.h:509
sfTkError_t writeUInt16(uint16_t data)
Send a 16 bit value to the device.
Definition: sfTkIBus.h:144
virtual sfTkError_t writeRegister(uint8_t devReg, const uint8_t *data, size_t length)
Writes a number of bytes starting at the given register's address.
Definition: sfTkIBus.h:300
sfTkError_t readRegister(uint16_t devReg, uint8_t *data, size_t numBytes, size_t &readBytes)
Reads a specified number of bytes from a given register with a 16bit address.
Definition: sfTkIBus.h:711
virtual sfTkError_t writeRegister(uint16_t devReg, const uint16_t *data, size_t length)
Writes a number of uint16's starting at the given register's 16-bit address.
Definition: sfTkIBus.h:438
virtual uint8_t type(void)
Get the type of the object.
Definition: sfTkIBus.h:754
sfTkError_t writeUInt32(uint32_t data)
Writes a 32-bit data value.
Definition: sfTkIBus.h:174
sfTkError_t writeRegisterUInt16(uint8_t reg, uint16_t data)
Write a single word (16 bit) to the given register.
Definition: sfTkIBus.h:248
virtual sfTkError_t readRegister(uint8_t *devReg, size_t regLength, uint8_t *data, size_t numBytes, size_t &readBytes, uint32_t read_delay=0)=0
Reads an array of bytes to a register on the target address. Supports any address size.
sfTkError_t writeUInt8(uint8_t data)
Writes a 8-bit data value.
Definition: sfTkIBus.h:116
virtual sfTkError_t readRegister(uint8_t devReg, uint8_t *data, size_t numBytes, size_t &readBytes)
Reads data from a specified register.
Definition: sfTkIBus.h:578
virtual sfTkError_t writeRegister(uint16_t devReg, const uint8_t *data, size_t length)
Writes a number of bytes starting at the given register's 16-bit address.
Definition: sfTkIBus.h:316
sfTkError_t readRegisterUInt16(uint16_t devReg, uint16_t &data)
Overloaded function to read a 16-bit value from the given 16-bit register address.
Definition: sfTkIBus.h:654
void setByteOrder(sfTkByteOrder order)
Set the byte order for multi-byte data transfers.
Definition: sfTkIBus.h:764
virtual sfTkError_t writeData(uint32_t data)
Writes a 32-bit data value.
Definition: sfTkIBus.h:157
sfTkError_t writeRegisterUInt32(uint8_t reg, uint32_t data)
Writes a 32-bit data value to a specified device register.
Definition: sfTkIBus.h:285
virtual sfTkError_t readRegister(uint16_t reg, uint16_t *data, size_t length, size_t &read16)
Reads a 16-bit block of data from the given 16-bit register address.
Definition: sfTkIBus.h:731
virtual sfTkError_t readRegister(uint8_t devReg, uint8_t &data)
Read a single byte from the given register.
Definition: sfTkIBus.h:479
const sfTkError_t ksfTkErrBaseBus
A base value for bus errors. All bus errors are greater than this value, in the 1000 range.
Definition: sfTkError.h:56
const sfTkError_t ksfTkErrOk
The error code value for success. This is always 0.
Definition: sfTkError.h:46
int32_t sfTkError_t
Definition: sfTkError.h:35
const sfTkError_t ksfTkErrFail
General error code for a failure. Note all errors are negative.
Definition: sfTkError.h:42
const sfTkError_t ksfTkErrBusTimeout
Returned when a bus system times out.
Definition: sfTkIBus.h:33
const sfTkError_t ksfTkErrBusUnderRead
Returned when the bus is under read. Warning.
Definition: sfTkIBus.h:58
const sfTkError_t ksfTkErrBusNotEnabled
Returned when the bus is not enabled. Warning.
Definition: sfTkIBus.h:63
const sfTkError_t ksfTkErrBusNullSettings
Returned when the bus settings are null, invalid or on set/initialised.
Definition: sfTkIBus.h:48
const sfTkError_t ksfTkErrBusNullBuffer
Returned when the buffer is null or invalid.
Definition: sfTkIBus.h:53
const sfTkError_t ksfTkErrBusNoResponse
Returned when a bus system does not respond.
Definition: sfTkIBus.h:38
const sfTkError_t ksfTkErrBusDataTooLong
Returned when the data to be sent is too long or received is too short.
Definition: sfTkIBus.h:43
const sfTkError_t ksfTkErrBusNotInit
Define our error codes for the bus. Note Errors are negative, warnings/info positive,...
Definition: sfTkIBus.h:28