SLLSEH3C July 2013 – January 2018 SN65HVD888
PRODUCTION DATA.
The SN65HVD888 device is a half-duplex RS-485 transceiver suitable for data transmission at rates up to 250 kbps over controlled-impedance transmission media (such as twisted-pair cabling). The device features a high level of internal transient protection, making it able to withstand up ESD strikes up to 12 kV (per IEC 61000-4-2) and EFT transients up to 4 kV (per IEC 61000-4-4) without incurring damage. Up to 256 units of SN65HVD82 may share a common RS-485 bus due to the device’s low bus input currents. The device features automatic polarity correction, which detects bus mis-wirings at start-up and then swaps the A and B halves of the bus if needed.
When the driver and the receiver are both disabled (DE = Low and RE = High) the device enters standby mode. If the enable inputs are in the disabled state for only a brief time (for example: less than 100 ns), the device does not enter standby mode, preventing the SN65HVD888 from entering standby mode during driver or receiver enabling. Only when the enable inputs are held in the disabled state for a duration of 300 ns or more does the device enter low-power standby mode. In this mode most internal circuitry is powered down, and the steady-state supply current is typically less than 400 nA. When either the driver or the receiver is re-enabled, the internal circuitry becomes active. During VCC power-up, when the device is set for both driver and receiver disabled mode, the device may consume more than 5-µA of ICC disabled current because of capacitance charging effects. This condition occurs only during VCC power up.
The SN65HVD888 automatically corrects a wrong bus-signal polarity caused by a cross-wire fault. In order to detect the bus polarity, all three of the following conditions must be met:
After the failsafe time has passed, the polarity correction is complete and is applied to both the receive and transmit channels. The status of the bus polarity is latched within the transceiver and is maintained for subsequent data transmissions.
NOTE
Data string durations of consecutive 0s or 1s exceeding tFS-min can accidently trigger a wrong polarity correction and must be avoided.
Figure 13 shows a simple point-to-point data link between a master node and a slave node. Because the master node with the failsafe biasing network determines the signal polarity on the bus, an RS-485 transceiver without polarity correction, such as SN65HVD82, suffices. All other bus nodes, typically performing as slaves, require the SN65HVD888 transceiver with polarity correction.
Prior to initiating data transmission the master transceiver must idle for a time span that exceeds the maximum failsafe time, tFS-max, of a slave transceiver. This idle time is accomplished by driving the direction control line, DIR, low. After a time, t > tFS-max, the master begins transmitting data.
Because of the indicated cross-wire fault between master and slave, the slave node receives bus signals with reversed polarity. Assuming the slave node has just been connected to the bus, the direction-control pin is pulled-down during power-up and then is actively driven low by the slave MCU. The polarity correction begins as soon as the slave supply is established and ends after approximately 44 to 76 ms.
Initially the slave receiver assumes that the correct bus polarity is applied to the inputs and performs no polarity reversal. Because of the reversed polarity of the bus-failsafe voltage, the output of the slave receiver, RS, turns low. After tFS has passed and the receiver has detected the wrong bus polarity, the internal POLCOR logic reverses the input signal and RS turns high.
At this point all incoming bus data with reversed polarity are polarity corrected within the transceiver. Because polarity correction is also applied to the transmit path, the data sent by the slave MCU are reversed by the POLCOR logic and then fed into the driver.
The reversed data from the slave MCU are reversed again by the cross-wire fault in the bus, and the correct bus polarity is reestablished at the master end.
This process repeats each time the device powers up and detects an incorrect bus polarity.
INPUT | ENABLE | OUTPUTS | DESCRIPTION | |
---|---|---|---|---|
D | DE | A | B | |
NORMAL MODE | ||||
H | H | H | L | Actively drives bus High |
L | H | L | H | Actively drives bus Low |
X | L | Z | Z | Driver disabled |
X | OPEN | Z | Z | Driver disabled by default |
OPEN | H | H | L | Actively drives bus High |
POLARITY-CORRECTING MODE(1) | ||||
H | H | L | H | Actively drives bus Low |
L | H | H | L | Actively drives bus High |
X | L | Z | Z | Driver disabled |
X | OPEN | Z | Z | Driver disabled by default |
OPEN | H | L | H | Actively drives bus Low |
DIFFERENTIAL INPUT | ENABLE | OUTPUT | DESCRIPTION | |
---|---|---|---|---|
VID = VA – VB | RE | R | ||
NORMAL MODE | ||||
VIT+ < VID | L | H | Receive valid bus High | |
VIT– < VID < VIT+ | L | ? | Indeterminate bus state | |
VID < VIT– | L | L | Receive valid bus Low | |
X | H | Z | Receiver disabled | |
X | OPEN | Z | Receiver disabled | |
Open, short, idle Bus | L | ? | Indeterminate bus state | |
POLARITY-CORRECTING MODE(1) | ||||
VIT+ < VID | L | L | Receive valid bus Low | |
VIT– < VID < VIT+ | L | ? | Indeterminate bus state | |
VID < VIT– | L | H | Receive polarity corrected bus High | |
X | H | Z | Receiver disabled | |
X | OPEN | Z | Receiver disabled | |
Open, short, idle Bus | L | ? | Indeterminate bus state |