Electronic – Why are open-drain outputs needed

digital-logicopen-drainpullup

I have almost no knowledge in electronics and electricity. I've encountered the concept of open-drain output recently and I think I got the idea.
What I have understood is that it is a transistor connected to an output pin, acting as a sink. Therefore, such pin will always output a zero value.

Maybe I simplified it too much and I missed something.

Anyway, I was wondering why this kind of outputs are needed.

As far as I know, if we were to output a one through such pin, we would have to connect an external pull-up resistor. Why not have that resistor already connected internally?

Thanks for any answer you can give. Also, apart from beign a noob in electronics, I'm new to this forum, so I'm sorry if this question is too theoretical. In case it is, I would apreciate some recommendations of forums where to ask these kind of questions.

Best Answer

The main reason is that it allows for multiple endpoints to coexist on the same line and transmit. The outputs can only pull one way, so the effect is like a wired OR gate. If the outputs were push-pull, then the device that is asserting will fight against the ones that aren't. It would short the IO line and result in damage. Whereas, in an OD configuration, the current is limited to that of the pull-up.

Related Topic