Intelligent I2C Controller Project

— by


The Hamster man, Mike Field has a new project up that is an intelligent I2C controller. It is a small programmable controller that makes it quick and easy to talk to I2C devices. The controller has a single I2C bus, 16 binary inputs, 16 binary outputs and writes I2C data to 32 8-bit registers.

The project is up over at Mike’s site Hamsterworks (there are a wealth of other Papilio-related projects and tutorials at the site too, if you’ve never checked it out). Let’s look at a quick overview, as excerpted from Mike’s project page:

My Intelligent I2C controller is not a full micro-controller, but a simple programmable state machine, using about the same FPGA resources as a Picoblaze processor. It has a simple assembler-like language of 15 instructions, and the page includes a single file ‘c’ assembler written using only the standard C library (avoiding trying to find flex and yacc for Windows). Advantages over more generic controllers such as a Picoblaze is that is is designed especially for configuring and accessing I2C devices, where as the Picoblaze will need either a software I2C implementation or an added I2C peripheral.
On the Hamsterworks project page, there’s a great example using the I2C Intelligent Controller to read data from a 3d compass sensor, complete with code.

Intilligent I2C Controller project resources:

(via Hamsterworks)

Newsletter

Our latest updates in your e-mail.


Leave a Reply