Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
I2C Class Reference
The I2C interface provides I2C Master functionality. More...
#include <I2C.h>
Inherits CPPToPigpio::CPPToPigpio.
Public Member Functions | |
| I2C (PinName sda, PinName scl) | |
| Create an I2C Master interface, connected to the specified pins. | |
| I2C (int sda, int scl) | |
| Create an I2C Master interface, connected to the specified pins. | |
| void | frequency (int hz) |
| Set the frequency of the I2C clock frequency for bit banging. | |
| int | read (unsigned address, char *buf, int length, bool repeated) |
| Read from an I2C slave. | |
| int | read (int ack) |
| Read a single byte from the I2C bus. | |
| int | write (unsigned address, char *buf, int length, bool repeated) |
| Write to an I2C slave. | |
| int | write (int data) |
| Write single byte out on the I2C bus. | |
| void | start (void) |
| Creates a start condition on the I2C bus. | |
| void | stop (void) |
| Creates a stop condition on the I2C bus. | |
| int | bang (char *inBuf, unsigned inLen, char *outBuf, unsigned outLen, bool cont) |
| Allows construction of arbitrary I2C command. | |
Detailed Description
The I2C interface provides I2C Master functionality.
Definition at line 7 of file I2C.h.
Constructor & Destructor Documentation
| I2C | ( | PinName | sda, |
| PinName | scl | ||
| ) |
| I2C | ( | int | sda, |
| int | scl | ||
| ) |
Member Function Documentation
| int bang | ( | char * | inBuf, |
| unsigned | inLen, | ||
| char * | outBuf, | ||
| unsigned | outLen, | ||
| bool | cont = false |
||
| ) |
Allows construction of arbitrary I2C command.
Basically a wrapper for pigpio's bbi2cZip
- Parameters:
-
data Pointer to the byte-array to read data in to length Number of bytes to read data Pointer to the byte-array data to send length Number of bytes to send repeated Repeated start, true - do not send stop at end
| void frequency | ( | int | hz ) |
| int read | ( | int | ack ) |
Read a single byte from the I2C bus.
- Parameters:
-
ack indicates if the byte is to be acknowledged (1 = acknowledge)
- Returns:
- the byte read
| int read | ( | unsigned | address, |
| char * | buf, | ||
| int | length, | ||
| bool | repeated = false |
||
| ) |
Read from an I2C slave.
Performs a complete read transaction. Read "length" bytes from device at "address" into "buf". The bottom bit of the address is forced to 1 to indicate a read.
- Parameters:
-
address 8-bit I2C slave address [ addr | 1 ] data Pointer to the byte-array to read data in to length Number of bytes to read repeated Repeated start, true - don't send stop at end
- Returns:
- 0 on success (ack), non-0 on failure (nack)
| void start | ( | void | ) |
| int write | ( | unsigned | address, |
| char * | buf, | ||
| int | length, | ||
| bool | repeated = false |
||
| ) |
Write to an I2C slave.
Performs a complete write transaction. Write "length" bytes from buf to device at "address". The bottom bit of the address is forced to 0 to indicate a write.
- Parameters:
-
address 8-bit I2C slave address [ addr | 0 ] data Pointer to the byte-array data to send length Number of bytes to send repeated Repeated start, true - do not send stop at end
- Returns:
- 0 on success (ack), non-0 on failure (nack)
Generated on Tue Jul 12 2022 14:39:23 by
1.7.2