A library that maps the functions used with the mbed microcontroller to be used on with the GPIO ports of a Raspberry pi.
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
