Archive of the former Yahoo!Groups mailing list: ComputerVoltageSources
Subject: I2C bus for expansion
From: "djbrow54" <davebr@...>
Date: 2006-03-28
I've been thinking about my speakjet and whether I want to change the
interface. It is interfaced using P6 and P7 for serial output and
buffer half full. The issue with using serial output is that it is
implemented in software so interrupts have to be disabled. It's a
real pain to program and use with timer interrupts or MIDI.
I bought the TTS256 chip to put in front of it so I can send words,
not allophones. I got to thinking about the I2C bus and whether this
would make a better interface. I started looking at the Atmel AVR
capability and found some ap notes to implement the I2C bus in
software, and a combination software and hardware. The next processor
up is the ATMEGA8 which implements a full I2C interface in hardware.
I've used this chip before and it is available in a narrow 28 pin DIP.
With 1K bytes of RAM, I wouldn't even have to implement flagging.
I called BasicMicro to find out about their I2C implementation. The
Hitachi H8 has an I2C interface implemented in hardware.
Unfortunately BasicMicro implemented the command in software.
However, since it is synchronous, it will work fine with interrupts.
This may be a path in the future to design some I2C to 'whatever' in
the Atmel parts. Philips has over 150 I2C parts and one that looked
interesting to me was an I2C to 8 bit parallel port. Another
alternative might be to try and use the H8 hardware via basic but this
may be more complex than it is worth. By the time one does this, it
may be no more performance than the software implementation.
Anyone out there experienced in I2C interfacing?
Dave