ftdi2232_i2c

(last updated: 2005/09/01)

Purpose: Sample application to demonstrate using the FTDI FT2232 to interface with various I2C devices.

Overview

The FTDI FT2232 is a USB interface chip that can be used to create a PC-to-I2C bridge. FTDI gives you a sample Visual C++ application on their website that demonstrates how to communicate with a 24C64 eeprom. The ftdi2232_i2c project builds on that sample by demonstrating communications with a 24C16 eeprom, a National Semi. LM75 temperature sensor, and a Philips PCF8574 io expander.

Just like the FTDI sample, the application is a Windows console application. Ftdi2232_i2c includes a few menus so that you can select which test to run.

The ftdi2232_i2c application is not really useful except for as a learning guide. There is no additional information beyond the comments in the source code files.

Highlights:

- Demonstrates use of FTDI FT2232 as a I2C bridge (I2C master only)

- Windows console application

- 24C16 eeprom interface example

- National Semiconductor LM75 temperature sensor interface example

- Philips PCF8574(A) io expander interface example

- I2C 100KHz and 400KHz bus speed

- Visual C++ 2003 project.

- Based on FTDI’s Visual C++ sample for interfacing with the 24C64 eeprom.

- Uses the FTDI I2C dll.

- Uses the FTDI D2XX driver.

My Setup:

- PC running Visual C++ 2003 with ftdi2232_i2c project

- DLP Design DLP2232M

- Atmel 24C16 eeprom (DIP)

- National Semiconductor LM75 eval. Board

- Philips PCF8574 (DIP)

- Home-built 8 LED + 8 switch tester board

- Used FTDI's MPROG program to set the DLP2232M's eeprom so that the FT2232 would power up in FIFO mode.

Download (see Attachments)

ftdi2232_i2c - Source code + Visual C++ project files

ftdi2232_i2c_schematic - Schematic

ftdi_i2c_breadboard.jpg

ftdi2232_i2c.ept - ftdi's MPROG utility settings file

ftdi2232_i2c_mprog.jpg - screen capture of MPROG settings file

Terms of Use

Home

Copyright Steven R. Nickels, 2008. All rights reserved.