PNP transistor base voltage acting weird
Your microcontroller output is only capable of sinking 20 mA. Therefore it doesn't have enough current capability to pull the PNB base more than ~0.9 V below the emitter. 

To pull the base down to 0 V (which might be what you expect), you might have to pull many amps through the base (and if the device were ideal you might have to pull gigaamps or more). Of course this would be likely to cause the BJT and uC to evaporate in a cloud of smoke.

As it is, you are probably pulling substantially more than 20 mA, and abusing your microcontroller and BJT both. Add a base resistor to limit the current to less than 20 mA when the uC applies 0 V.