How does Data Direction Register (DDR) pull up resistor circuit work in Atmega Micro controllers, configuring the registers to function as Output and Inputs depending on the DDR values 1 and 0 respectively? How is it working physically at the circuit level?