Jump to main content

##

# 1.5 I2C Driver Asynchronous - I2C EEPROM

This example application shows how to use the I2C driver in asynchronous mode to perform operations on the EEPROM.

## Description

This example uses the I2C driver in asynchronous mode to communicate with the EEPROM to perform write and read operations in Bare-Metal environment. This application uses I2C driver to read and write data from an AT24CM02 EEPROM device.

## Downloading and Building the Application

To clone or download this application from Github, go to the main page of this repository and then click Clone button to clone this repository or download as zip file.

Path of the application within the repository is apps/driver/i2c/async/i2c_eeprom.

To build the application, refer to the following table and open the project using its IDE.

Project Name | Description
--- | ---
pic32wm_bw1_curiosity.X | MPLAB X project for PIC32WM-BW1 Curiosity board

## Setting Up the Hardware

The following table shows the target hardware for the application projects.

Project Name | Description
--- | ---
pic32wm_bw1_curiosity.X | PIC32WM-BW1 Curiosity board

### Setting Up PIC32WM-BW1 Curiosity Board

- To run the demo, the following additional hardware are required:
  - One EEPROM 3 Click Board
- Plug the EEPROM 3 Click Board into the mikroBUS™ socket of the curiosity board
- Connect the USB port on the board to the computer using a USB Type-C cable

## Running the Application

1. Build and program the application using its IDE.
2. LED indicates success or failure:
   - The LED is turned ON when the value read from the EEPROM matched with the written value

Refer to the following table for LED name:

Board | LED Name
--- | ---
PIC32WM-BW1 Curiosity board | Green LED