Xwire: Introduction
Xwire is an easy to use, low cost serial data bus scheme for connecting together several compliant SPLat controllers and/or peripheral boards and exchanging data between them. Xwire was released in August 2007.
The above diagram shows the logic of an Xwire one-on-one master/slave connection. The basic idea is simply that a small block of RAM in the master gets replicated in RAM in the slave, and visa versa. If the master program writes some data to its "Tx RAM", the same data will appear some time later in the slave's "Rx RAM". If the slave writes some data to its "Tx RAM", it will appear in the master's "Rx RAM" some time later. The mechanics of transferring data between boards is taken care of automatically by the Xwire system.
What the data means is entirely up to the two programs.
The diagram shows one master and one slave. A system may contain several slaves, though only one master. The slaves can be other controllers or special purpose Xwire peripheral boards. The Master would generally contain a separate Tx RAM block per slave, and must contain a separate Rx RAM block per slave.
Xwire has two aspects to it: The Xwire electrical interface and the Xwire data protocol. The protocol is the "language" that is used to exchange data between boards. You don't have to know either of these. What you may want to know about is that the Xwire protocol can optionally be used with the industry standard RS485 electrical interface. RS485 does not have a protocol but can be used with any one of a large number of protocols such as Xwire or ModBus. To use "Xwire over RS485" you will usually need additional converter hardware, but it will allow you to go much further between boards.