Pro Mini, no analog pullup

I'm using A0 and A1 to read switches. Took me forever to figure out that in this particular Pro Mini clone, the instructions

pinMode(A0, INPUT_PULLUP)
pinMode(A1, INPUT_PULLUP)

do not provide a pullup. I haven't tried digitalWrite(A0, HIGH), but I assume it wouldn't work, either.

I'm reading A0 and A1 with the following line:

keys1 = (~PINB & 0x1C) | (~PINC & 0x03) ;

where A0 and A1 are bits 0 and 1 on PORTC. Now that I've put external pullup resistors on the two pins, the port read operation works fine.

Is there something I'm missing about analog pullups? I realize that some of the clones have problems, but I'm also under the impression that the microprocessors on the clones are all Atmel (Microchip Technology) Atmega328P quality chips. Am I wrong about this? I don't see the Pro Mini listed in the Arduino wiki.

Dr.Q

The Pro Mini is officially a Sparkfun product. And they are good.

If you buy clones, you take a chance. Or you might have pure bad luck.

I would write some test code using digitalRead to test the individual pins.

agree, thanks.

The confusing thing is that the analog I/O pin is a direct connection from the processor chip, so that implies that the chip itself is bad, not the clone board (since the board works fine once the external pullups are added).

Dr.Q