We are making progress...
On 3/27/19 11:16 AM, Chris Albertson wrote:
What makes SPI nice is not it's speed. On the Pi it can go up to 250 MHz,
so Ethernet beats it for speed and Ethernet cables can be 100 meters long.
SPI wins because it is fast enough for most things and is very simple,
just connect the wires. But it only works over a short distance. But it
is SIMPLE, conceptually no unlike TTL level serial.
Let's see what one of my former employers, an IC manufacturer has to say
about SPI:
https://www.maximintegrated.com/en/app-notes/index.mvp/id/6208
"The maximum distance of an I2C bus depends on the capacitive loading.
In typical applications, the length is limited to a few meters in
standard mode. This is because a system has to be built to accommodate a
maximum bus capacitance of 400pF to meet rise time requirements listed
in the I2C bus specification (Rev. 6 – 4 April 2014)."
Still want to use parallel port? ;-)
Ethernet needs some support hardware, a small transformer at least.
Not necessarily. There is plenty of boxes connected with fiber cable.
Seen that done that.
Unlike simply using GPIO pins, SPI does not need much CPU time to send data.
But if writing software you should not have to decide of lock in a certain
communications method. I like whatht ehauthors is ros-serial did, that
w=said "Use any communications method that has these four fuctions: open,
close, read, write. THat pretty much means anything from a network socket
to an RS232 cable.
All protocols have some kind of handshake. If designed properly then
dedicated circuits to handle interrupts take care of it. That beats
anything that I've seen years ago in one over 40 years old CNC machine
where transistors and other discrete components were in such odd shape I
wasn't sure what they were in most cases.
You could extend SPI connection with optical drivers and fiber optic
cables also. 1km distance would not be impossible. Granted, this would
be theoretical more than a practical solution not sensitive to electric
noise or atmospheric electric discharge that killed a lot of RS-232
circuits which I ended up replacing with 60mA loops in my career.
--
Rafael Skodlar
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users