0
\$\begingroup\$

So I am trying to interface a slave device to a master uC through an ADUM4151 SPI Isolator and am getting confused on where I need pullups for the MISO line as I see it a few ways in reference designs.

My slave device's MISO is open drain, so he needs a 5k pullup. I'm then putting him through the ADUM4151 and straight to my uC (through 100ohm resistor). I don't have any other slaves on the bus so I figure this should be the end of it. However, I see a few designs where a schottky diode is placed with its cathode facing the output on the isolated/uC side of the isolator and then another pullup before going to the uC.

Can anyone explain to me what the point of that would be? I've read a few things stating it "converts the isolators push-pull output to open drain." But seems like I'm going to be sending current into an output pin through the diode when MISO is pulled low. I figure it'd only be useful with other slaves on the processor side of the isolation so I probably don't need it, but would like to understand the point/purpose.

\$\endgroup\$
3
  • \$\begingroup\$ Could you post a link to the page that describes the Schottky diode approach? Could you post the part number of your slave device? Useful that it is, the SPI is more like a tradition than a standard: there is no single specification (unlike, say, I2C). For example, open drain MISO is not a part of the "core" SPI tradition. As a result, compatibility of each component on the SPI bus has to be examined. Which is what you're doing. \$\endgroup\$ Commented Jan 12, 2016 at 19:41
  • \$\begingroup\$ Thanks, Nick. Yes, I understand that SPI is just sort of do what works given your situation sort of standard. For my question, I don't think the fact that it is SPI is even relevant really. It could just be a generic open drain output through an isolator to a uC. Either way the Slave part is the Linear Tech LTC6804-2 and here is an SiLabs document relating to I2C discussing using a schottky to turn its push-pulls to open drains. silabs.com/Support%20Documents/TechnicalDocs/an352.pdf \$\endgroup\$ Commented Jan 12, 2016 at 19:49
  • \$\begingroup\$ Which diodes are you asking about? D1A/D1B? Or D2A/D2B? \$\endgroup\$
    – bigjosh
    Commented Jan 12, 2016 at 21:39

2 Answers 2

5
\$\begingroup\$

I see a few designs where a schottky diode is placed with its cathode facing the output on the isolated/uC side of the isolator and then another pullup before going to the uC. Can anyone explain to me what the point of that would be?

It sounds like you are looking at this schematic from the above datasheet....

enter image description here

If we look at a single channel, it looks like this...

schematic

simulate this circuit – Schematic created using CircuitLab

Here, diode D1 converts the push/pull output of the isolator to effectively an open collector output.

Here are the possible cases for the above circuit with MCU being an open-collector pin and OUTPUT being a push-pull pin:

MCU: Pull Low, ISOLATOR: Pull Low

No problems.

MCU: Hi-Z, ISOLATOR: Pull Low

No problems. Current flows though R1 and D1 into OUT, the MCU sees a low.

MCU Hi-Z, ISOLATOR: Drive High

No problems. R1 pulls MCU input line high, MCU sees high.

MCU: Pull-low, ISOLATOR: Drive High

Yikes. If the two directly connected, then they would fight it out and one would burn up. But adding D1 prevents current from flowing from the high OUT into the low MCU.

R1 is needed for the case where OUTPUT is high and the MCU is not pulling down. In this case, R1 will pull up so both see the line as high.

Make sense?

\$\endgroup\$
1
\$\begingroup\$

It's a cheap and easy method of high-voltage unidirectional level translation. The diode blocks the voltage from the high signal while allowing the low signal to pull the input low. Obviously this is less important when the output is OD, but the same basic principle still applies.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.