Modification of Mbed-dev library for LQFP48 package microcontrollers: STM32F103C8 (STM32F103C8T6) and STM32F103CB (STM32F103CBT6) (Bluepill boards, Maple mini etc. )

Fork of mbed-STM32F103C8_org by Nothing Special

Embed: (wiki syntax)

« Back to documentation index

I2C Class Reference

I2C Class Reference
[Drivers]

An I2C Master, used for communicating with I2C slave devices. More...

#include <I2C.h>

Public Member Functions

 I2C (PinName sda, PinName scl)
 Create an I2C Master interface, connected to the specified pins.
void frequency (int hz)
 Set the frequency of the I2C interface.
int read (int address, char *data, int length, bool repeated=false)
 Read from an I2C slave.
int read (int ack)
 Read a single byte from the I2C bus.
int write (int address, const char *data, int length, bool repeated=false)
 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.
virtual void lock (void)
 Acquire exclusive access to this I2C bus.
virtual void unlock (void)
 Release exclusive access to this I2C bus.
int transfer (int address, const char *tx_buffer, int tx_length, char *rx_buffer, int rx_length, const event_callback_t &callback, int event=I2C_EVENT_TRANSFER_COMPLETE, bool repeated=false)
 Start non-blocking I2C transfer.
void abort_transfer ()
 Abort the on-going I2C transfer.

Detailed Description

An I2C Master, used for communicating with I2C slave devices.

Synchronization level: Thread safe

Example:

 // Read from I2C slave at address 0x62

 #include "mbed.h"

 I2C i2c(p28, p27);

 int main() {
     int address = 0x62;
     char data[2];
     i2c.read(address, data, 2);
 }

Definition at line 56 of file I2C.h.