| ??? 12/16/03 07:50 Read: times |
#60707 - RE: Nibble Data Exchange MCUs Responding to: ???'s previous message |
I have implemented several times a simple data exchange mechanism for sending data back and forth between to processors. The scheme uses a fully interlocked handshake system so that the data transfer is reliable irregardless of the speed of the devices on either end of the cable or the cable length. The transfer protocol is tolerant of latencies caused by interrupts or other processor activity. This scheme can be implemented with a pair of handshake lines between the master and the slave ends of the transfer path and a set of data lines that can be from 1 to N bits wide. The block diagram below shows how a nibble wide scheme could be configured:
![]() You may click on the image above to look at a PDF file that shows timing diagrams and discriptions of how the data transfer process functions. An important requirement of this transfer mechanism is that a master / slave architecture should be devised such that the master always initiates the communications to the slave and then allows the slave to respond according to some type of fixed protocol. I have implemented three basic types of protocol using a system like this. One type is designed that for every byte sent by the master the slave is expected to respond back with a reply. Another scheme is to fix a packet protocol with a fixed number of bytes to transfer in each direction such as master sends 3 bytes and slave always responds with 4 bytes. Lastly I have made systems that used a full up packet protocol wherein the transfer from the master was a complete packet including an ID code, a packet length, packet payload data and a CRC check code with the corresponding reply from the slave formatted in a variable manner according to the type of packet ID from the master. I used this once for a HC11 system design where data was transferred a long distance using differential type drivers. Another of the implementations I used this scheme in was for the XT-Link program (from prior XTree Company days). I used the standard style (SPP) LPT port to send a nibble of data at a time. XT-Link was a very nice PC-to-PC file transfer program that actually worked by letting the disk drives of a slave machine be visible as added disk drive letters on the master machine that could be loaded and unloaded at will from the command line. It worked with a mix of MSDOS, PCDOS or DrDOS versions on either end of the cable. Michael Karas |
| Topic | Author | Date |
| Data Exchange between 3 MCUs | 01/01/70 00:00 | |
| RE: Data Exchange between 3 MCUs | 01/01/70 00:00 | |
| RS485? | 01/01/70 00:00 | |
| RE: RS485? | 01/01/70 00:00 | |
| RE: RS485? | 01/01/70 00:00 | |
| RE: RS485? | 01/01/70 00:00 | |
| Mode-3 = Multiprocessor | 01/01/70 00:00 | |
| RE: Data Exchange between 3 MCUs | 01/01/70 00:00 | |
| RE: Data Exchange between 3 MCUs | 01/01/70 00:00 | |
| RE: Nibble Data Exchange MCUs | 01/01/70 00:00 | |
| RE: Nibble Data Exchange MCUs | 01/01/70 00:00 | |
| RE: Nibble Data Exchange MCUs | 01/01/70 00:00 | |
Data Exchange Approachs | 01/01/70 00:00 |




