0
\$\begingroup\$

This question already has an answer here:

I was just learning about the port configurations of the GPIO pins. I came across the open drain configuration, and I was bit confused. I could not understand this properly. When this should be enabled or disabled? Should this be always enabled when the port is configured for output while transmitting?

\$\endgroup\$

marked as duplicate by pipe, Daniel, gbulmer, DoxyLover, Armandas Sep 24 '16 at 7:30

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • \$\begingroup\$ It sounds to me that you have a particular use case in mind, that you failed to specify. What do you mean by "transmitting"? \$\endgroup\$ – pipe Sep 24 '16 at 4:54
0
\$\begingroup\$

The simplified view of a digital "output" is simply two transistors, one connected to the ground, one connected to the circuit input-output power supply (Vio).

When and output is configured in "push-pull" mode, outputting a '0' connects the output pin to the ground, a '1' connects it to Vio. In "open drain" mode, the "higher" transistor is always disabled: '0' still connects the output pin to the ground, but outputting a '1' does not connect the pin to Vio, and it's left "floating".

Configuring a pin as push-pull or open drain is a choice you make during a circuit design, depending on what you want to achieve.

\$\endgroup\$

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