Now there are lots of things you won’t learn in electronics engineering colleges, for example How to make microcontroller pin low or high properly. You have to have physical working experience with electronics devices to learn many things. One of the basic question is regarding pins of microcontrollers or other ICs? Consider Arduino microcontroller or DAC(Digital to Analog Converters) for examples.
Regarding microcontroller pins, often you are told to make it high or low. That is to put the logic state of the pin low or high. But how will you do this? For example will you make a direct connection to the ground or power supply or will you connect via pulldown or pullup resistor? What is the difference and which one to use?
Similarly, normally you should not let the input pins floating or unconnected. This is because if you leave pins floating they can oscillate and draw a lot of current. This can led to unexpected behaviour of your component. So how will you deal with this problem.
Even if you took engineering classes you won’t learn such things even in top electrical engineering schools. So here you will learn how to deal with such questions that you apply in real world electronics circuits.
The first question about how to connect pins of microcontrollers to make it low or high might be easy to answer. If you want to pin low then you can just connect the pin to ground. If you want to make the pin high you can directly connect to the power supply. But what about connecting the pins via pulldown resistor and pullup resistor? In fact, you will find in many circuit schematics that the pins are grounded or connected to power supply via pulldown or pullup resistors. So what is the difference between connecting the pin directly to ground and connecting the pin to ground via pulldown resistors?
The answer is that it is a little bit better if you have pulldown or pullup resistors. The benefits for using pullup/pulldown resistor is that if you needed to connect external signal input to the same pin later on, you can simply connect it to the pin. Because the pullup or pulldown resistor is still in place, the logic state is maintained at the pin. And when needed the external signal can be applied to that pin to change the pin logic state. If the external signal ceases the pin state goes to the default state.
Another reason is since the resistor can be desoldered, you will have the flexibility on the board to make any new changes. Still another reason to use resistors instead of direct connection is for Automated Test Equipment. In Automated Test Equipment(ATE) the machines have hard time with direct connection.
Now regarding the value of pulldown or pullup resistor, it depends upon the current and voltage rating of the pin. These rating are provided in the datasheet. Using these values you can calculate the pulldown and pullup resistors.
If you went to some good electrical engineering schools then you might have learnt all these things. But most of the time, you won’t learn such things. The teachers should have taught such things in electrical or electronics circuit classes in electrical engineering degree courses.