NuMicro® NUC029LEE/NUC029SEE32-bit Arm® Cortex® -M0 MicrocontrollerAug, 2018 Page 178 of 497 Rev 1.00NUMICRO® NUC029LEE/NUC029SEE TECHNICAL REFERENCE MANUAL6.6.4.3 Open-drain Output Mode ExplanationSet GPIOx_PMD (PMDn[1:0]) to 10b as the GPIOx port [n] pin is in Open-drain mode and thedigital output function of I/O pin supports only sink current capability, an additional pull-up resistoris needed for driving high state. If the bit value in the corresponding bit [n] of GPIOx_DOUT is 0,the pin drive a “low” output on the pin. If the bit value in the corresponding bit [n] of GPIOx_DOUTis 1, the pin output drives high that is controlled by external pull-up resistor.Port PinPort LatchDataNInput DataFigure 6.6-2 Open-Drain Output6.6.4.4 Quasi-bidirectional Mode ExplanationSet GPIOx_PMD (PMDn[1:0]) to 11b as the GPIOx port [n] pin is in Quasi-bidirectional mode andthe I/O pin supports digital output and input function at the same time but the source current isonly up to hundreds of uA. Before the digital input function is performed the corresponding bit inGPIOx_DOUT must be set to 1. The Quasi-bidirectional output is common on the 80C51 andmost of its derivatives. If the bit value in the corresponding bit [n] of GPIOx_DOUT is 0, the pindrive a “low” output on the pin. If the bit value in the corresponding bit [n] of GPIOx_DOUT is 1,the pin will check the pin value. If pin value is high, no action takes. If pin state is low, then pin willdrive strong high with 2 clock cycles on the pin and then disable the strong output drive and thenthe pin status is control by internal pull-up resistor. Note that the source current capability inQuasi-bidirectional mode is only about 200 uA to 30 uA for VDD is form 5.0 V to 2.5 V.Port Pin2 CPUClock DelayInput DataPort LatchDataP P PNVDDStrong VeryWeak WeakFigure 6.6-3 Quasi-bidirectional I/O Mode