Re: TI-H: I2C


[Prev][Next][Index][Thread]

Re: TI-H: I2C





On Mon, 19 Jan 1998, Jon Olson wrote:

> Ok, for a while in there i saw a lot of posts on the list about i2c. I think
> that this bus could be a very good way to communicate between calcs, but i
> see a big problem...What if someone sends a start when our calc isn't
> looking?...or for that matter, what if someone starts sending data to us,
> but we're too busy processing. The FAQ i read doesn't seem to mention that.
> Anyone know how (or if) this is handled?
> Of course, we could always use grant's method of having smart hubs with
> AVR's, but that ain't cheep...(we could use Z80's too i guess...)

In my routines, I've simply used a long enough delay that the sender can
be (almost) certain that the receivers have seen the start condition. The
receiving is handled by an interrupt routine, and interrupts on the TI-85
have a frequency of about 185 Hz (I measured that on mine), so that makes
the minimum delay length about 1/185 seconds. I admit this is a long time
if you need fast transmissions, but it's the easiest way to do this. The
I2C specification allows a transmission to stop anytime and continue
later, so that isn't a problem. I know the start byte exists for
situations like these, but using it wouldn't solve the problem because
sending a single byte doesn't take even close to 1/185 second.

The routines I referred to are now called the MBus system and the latest
version (currently v0.99 final beta) can be found at
www.clinet.fi/~ozone/mbus . The multiuser chat program MChat can also be
found there.

-Ozone

*** Osma Suominen *** ozone@clinet.fi *** http://www.clinet.fi/~ozone ***



References: