README.txt Driver File Contents (esccp_2009_02_26.zip)

The difficulty in using extended transparent mode without a data sync signal,
is that you have no idea where valid receive data starts and stops.  You must 
shift through the bit stream until you find valid data.  Once you have found 
valid data and noted the correct bit alignment, if the data reception remains 
constant, you should be able to shift all incoming data by the correct number 
of bits and you will then have correct data.

-------------------------Begin LSB to LSB------------------------------------

This example is sending out of a device that does LSB first and receiving with an ESCC.

Lets start by sending the following message: 0x515253 this is in binary (MSB):
01010001 01010010 01010011

and will get sent out the card as (the LSB is transmitted first):
10001010 01001010 11001010 

now the idle is 1's so the message will be received (depending on how many 1's are 
clocked in prior to the actual data) the possibilities are:

11111111 10001010 01001010 11001010 11111111
1111111 10001010 01001010 11001010 111111111
111111 10001010 01001010 11001010 1111111111
11111 10001010 01001010 11001010 11111111111
1111 10001010 01001010 11001010 111111111111
111 10001010 01001010 11001010 1111111111111
11 10001010 01001010 11001010 11111111111111
1 10001010 01001010 11001010 111111111111111

re-aligning this to byte boundaries:

11111111 10001010 01001010 11001010 11111111
11111111 00010100 10010101 10010101 11111111
11111110 00101001 00101011 00101011 11111111
11111100 01010010 01010110 01010111 11111111
11111000 10100100 10101100 10101111 11111111
11110001 01001001 01011001 01011111 11111111
11100010 10010010 10110010 10111111 11111111
11000101 00100101 01100101 01111111 11111111

remembering that the LSB is on the left, changing it to "normal"(MSB) gives
possible received messages:

11111111 01010001 01010010 01010011 11111111 = 0xff515253ff - NO SHIFT
11111111 00101000 10101001 10101001 11111111 = 0xff28a9a9ff - SHIFTED by 1
01111111 10010100 11010100 11010100 11111111 = 0x7f94d4d4ff - SHIFTED by 2
00111111 01001010 01101010 11101010 11111111 = 0x3f4a6aeaff - SHIFTED by 3
00011111 00100101 00110101 11110101 11111111 = 0x1f2535f5ff - SHIFTED by 4
10001111 10010010 10011010 11111010 11111111 = 0x8f929afaff - SHIFTED by 5
01000111 01001001 01001101 11111101 11111111 = 0x47494dfdff - SHIFTED by 6
10100011 10100100 10100110 11111110 11111111 = 0xa3a4a5feff - SHIFTED by 7

They are all representative of the original 0x515253 that was sent, however only 1 of 
them directly shows that upon receive without shifting.

And once you determine how many bits you need to shift to get valid data,
everything that you read in will need to be shifted by that number of bits
until you stop transmitting data.  If you stop transmitting, then you have
to do the same thing over again once you start transmitting data again.

This can be avoided by utilizing a receive data strobe in an appropriate clock 
mode.  If the transmitting device can supply a strobe signal that activates at 
the beginning of the of the data and deactivates at the end, the receiver will 
only be activated during the active phase of this signal, and hopefully the 
data will have the correct alignment.

-------------------------END LSB to LSB--------------------------------------

-------------------------Begin MSB to LSB------------------------------------
This example is sending out of a device that does MSB first and receiving with an ESCC.

Lets start by sending the following message: 0x515253 this is in binary (MSB):
01010001 01010010 01010011

now the idle is 1's so the message will be received (depending on how many 1's are 
clocked in prior to the actual data) the possibilities are:

11111111 01010001 01010010 01010011 11111111
1111111 01010001 01010010 01010011 111111111
111111 01010001 01010010 01010011 1111111111
11111 01010001 01010010 01010011 11111111111
1111 01010001 01010010 01010011 111111111111
111 01010001 01010010 01010011 1111111111111
11 01010001 01010010 01010011 11111111111111
1 01010001 01010010 01010011 111111111111111

re-aligning this to byte boundaries:

11111111 01010001 01010010 01010011 11111111
11111110 10100010 10100100 10100111 11111111
11111101 01000101 01001001 01001111 11111111
11111010 10001010 10010010 10011111 11111111
11110101 00010101 00100101 00111111 11111111
11101010 00101010 01001010 01111111 11111111
11010100 01010100 10010100 11111111 11111111
10101000 10101001 00101001 11111111 11111111

remembering that the LSB is on the left, changing it to "normal"(MSB) gives
possible received messages:

11111111 10001010 01001010 11001010 11111111 = 0xff8a4acaff
01111111 01000101 00100101 11100101 11111111 = 0x7f4525e5ff
10111111 10100010 10010010 11110010 11111111 = 0xbfa292f2ff
01011111 01010001 01001001 11111001 11111111 = 0x5f5149f9ff
10101111 10101000 10100100 11111100 11111111 = 0xafa8a4fcff
01010111 01010100 01010010 11111110 11111111 = 0x575452feff
00101011 00101010 00101001 11111111 11111111 = 0x2b2a29ffff
00010101 10010101 10010100 11111111 11111111 = 0x159594ffff

They are all representative of the original 0x515253 that was sent, however only 1 of 
them directly shows that upon receive without shifting.

And once you determine how many bits you need to shift to get valid data,
everything that you read in will need to be shifted by that number of bits
until you stop transmitting data.  If you stop transmitting, then you have
to do the same thing over again once you start transmitting data again.

This can be avoided by utilizing a receive data strobe in an appropriate clock 
mode.  If the transmitting device can supply a strobe signal that activates at 
the beginning of the of the data and deactivates at the end, the receiver will 
only be activated during the active phase of this signal, and hopefully the 
data will have the correct alignment.

-------------------------END MSB to LSB--------------------------------------
Is this all clear as mud now?
Download Driver Pack

How To Update Drivers Manually

After your driver has been downloaded, follow these simple steps to install it.

  • Expand the archive file (if the download file is in zip or rar format).

  • If the expanded file has an .exe extension, double click it and follow the installation instructions.

  • Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.

  • Find the device and model you want to update in the device list.

  • Double-click on it to open the Properties dialog box.

  • From the Properties dialog box, select the Driver tab.

  • Click the Update Driver button, then follow the instructions.

Very important: You must reboot your system to ensure that any driver updates have taken effect.

For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.

server: web3, load: 3.14