Merge pull request #38 from mirzafahad/master
Buffer arguments of I2CDevice write functions are changed to const so that the …
This commit is contained in:
commit
efa3bed342
|
|
@ -58,16 +58,19 @@ bool Adafruit_I2CDevice::detected(void) {
|
||||||
/*!
|
/*!
|
||||||
* @brief Write a buffer or two to the I2C device. Cannot be more than
|
* @brief Write a buffer or two to the I2C device. Cannot be more than
|
||||||
* maxBufferSize() bytes.
|
* maxBufferSize() bytes.
|
||||||
* @param buffer Pointer to buffer of data to write
|
* @param buffer Pointer to buffer of data to write. This is const to
|
||||||
|
* ensure the content of this buffer doesn't change.
|
||||||
* @param len Number of bytes from buffer to write
|
* @param len Number of bytes from buffer to write
|
||||||
* @param prefix_buffer Pointer to optional array of data to write before
|
* @param prefix_buffer Pointer to optional array of data to write before
|
||||||
* buffer. Cannot be more than maxBufferSize() bytes.
|
* buffer. Cannot be more than maxBufferSize() bytes. This is const to
|
||||||
|
* ensure the content of this buffer doesn't change.
|
||||||
* @param prefix_len Number of bytes from prefix buffer to write
|
* @param prefix_len Number of bytes from prefix buffer to write
|
||||||
* @param stop Whether to send an I2C STOP signal on write
|
* @param stop Whether to send an I2C STOP signal on write
|
||||||
* @return True if write was successful, otherwise false.
|
* @return True if write was successful, otherwise false.
|
||||||
*/
|
*/
|
||||||
bool Adafruit_I2CDevice::write(uint8_t *buffer, size_t len, bool stop,
|
bool Adafruit_I2CDevice::write(const uint8_t *buffer, size_t len, bool stop,
|
||||||
uint8_t *prefix_buffer, size_t prefix_len) {
|
const uint8_t *prefix_buffer,
|
||||||
|
size_t prefix_len) {
|
||||||
if ((len + prefix_len) > maxBufferSize()) {
|
if ((len + prefix_len) > maxBufferSize()) {
|
||||||
// currently not guaranteed to work if more than 32 bytes!
|
// currently not guaranteed to work if more than 32 bytes!
|
||||||
// we will need to find out if some platforms have larger
|
// we will need to find out if some platforms have larger
|
||||||
|
|
@ -200,7 +203,7 @@ bool Adafruit_I2CDevice::read(uint8_t *buffer, size_t len, bool stop) {
|
||||||
* @param stop Whether to send an I2C STOP signal between the write and read
|
* @param stop Whether to send an I2C STOP signal between the write and read
|
||||||
* @return True if write & read was successful, otherwise false.
|
* @return True if write & read was successful, otherwise false.
|
||||||
*/
|
*/
|
||||||
bool Adafruit_I2CDevice::write_then_read(uint8_t *write_buffer,
|
bool Adafruit_I2CDevice::write_then_read(const uint8_t *write_buffer,
|
||||||
size_t write_len, uint8_t *read_buffer,
|
size_t write_len, uint8_t *read_buffer,
|
||||||
size_t read_len, bool stop) {
|
size_t read_len, bool stop) {
|
||||||
if (!write(write_buffer, write_len, stop)) {
|
if (!write(write_buffer, write_len, stop)) {
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@ public:
|
||||||
bool detected(void);
|
bool detected(void);
|
||||||
|
|
||||||
bool read(uint8_t *buffer, size_t len, bool stop = true);
|
bool read(uint8_t *buffer, size_t len, bool stop = true);
|
||||||
bool write(uint8_t *buffer, size_t len, bool stop = true,
|
bool write(const uint8_t *buffer, size_t len, bool stop = true,
|
||||||
uint8_t *prefix_buffer = NULL, size_t prefix_len = 0);
|
const uint8_t *prefix_buffer = NULL, size_t prefix_len = 0);
|
||||||
bool write_then_read(uint8_t *write_buffer, size_t write_len,
|
bool write_then_read(const uint8_t *write_buffer, size_t write_len,
|
||||||
uint8_t *read_buffer, size_t read_len,
|
uint8_t *read_buffer, size_t read_len,
|
||||||
bool stop = false);
|
bool stop = false);
|
||||||
bool setSpeed(uint32_t desiredclk);
|
bool setSpeed(uint32_t desiredclk);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue