Hier meine leicht veränderte Source-Datei.
Tja, gleiches Problem, wie vorher. Wieder wird bei einem 'A' das gesetzte Bit gleich wieder gelöscht. Das "Wenn du vor das zweite if noch ein else schreibst" war wörtlich zu nehmen, also nur ein else, sonst nichts. Die if-else-Struktur muss so aussehen:
if () {
}
else if () {
}
else {
}

warning: return type of 'main' is not `int'
Ist unkritisch. Schreib einfach "int main (void)".

Ich sehe gerade, dass PortA der Analog-Port ist. Du hast doch hoffentlich AVCC angeschlossen, oder?