Archive of the former Yahoo!Groups mailing list: ComputerVoltageSources
Subject: I2C article - good timing?
From: "Larry T." <larry@...>
Date: 2006-04-02
The April 2006 issue of "Nuts and Volts" has an article on serial
buses called "Short-Range Networking", starting on page 12. I found
it very interesting as it covers I2C and the issues with pull-up
resistors and related items. I also find, based on the article, that
some programming languages have a very strange idea of 'optional' data
items in their commands. If you stop and think about it, I2C supports
127 different devices, so how could you have a command to send or
receive data that does NOT include the device id? So, of course, if
you don't supply an ID, the command is not going to assemble the
proper data stream for the bus. With normal data rates from 10kbps to
100kbps, and fast rates from 400kbps to 3.5Mbps, I suspect that there
is a lot we can do using the I2C bus if we make it available on the
CVS board. Please note that I do not see any use to this on the front
panel, as it really is designed around expansion types of devices, and
we want all of our front panel space for the end use connectors. It's
no big deal to run a cable between panels when you are installing them
(do it all the time with the power cables right?).
BTW the article also discusses the SPI bus. SPI is potentially
faster, but seems more limited as the 'addressing' is handled
externally to the data bus and requires individual device selects, and
the associated I/O pins to drive them. (I know, I know, you can use
binary select lines and de-multiplex them, but for 3 devices, you need
2 pins, 3 pins gets you up to 7 devices, and so on and so on. A lot
of extra lines above the 3 used for the actual communications.)
Larry T.