Well, this time I have a question about I/O ports. I've been using a HC908JL3 and a HC908JB16 mcu for a while. I've noticed that the I/O ports section of both mcu's datasheets specify for the JB16 mcu that, for example, port D pins are open drain when configured as output, so you need a pull-up resistor to generate a logic 1, otherwise is Hi-z or 0 (as output). For the HC908JL3 port B is specified as an 8-bit port that shares its pins with the ADC but it doesn't say whether it's open drain or not (I've assumed it isn't). The next thing I did is test those pins. If you configure port B of the JL3 as output and put a logic 1 it puts VCC at its output. The same thing for the JB16 port D and it puts a Hi-Z state at its output (that's because it is open drain). My questions are:
-Why port B of the JL3 is able to put a VCC voltage at its pins? It has an internal and non software configurable pull-up resistor?
-If the datasheet doesn't specify that it is open-drain/collector when configured as ouptut, does that means that the port is able to switch between logic 1 (VCC) and logic 0 without using pull-up resistors?
I hope I explained myself clearly enough.