Hallo Ezalo,

du hast geschrieben, der Taster zieht auf Masse. Deine If-Abfrage prüft jedoch, ob am Eingang "1" anliegt, d.h. wenn der Taster NICHT gedrückt ist.
Mit einem Ausrufezeichen vor der if-Bedingung wird das umgedreht.
Oder du lässt den Inhalt der if-Bedingung gleich und tauschst die LED-An und LED-Aus-Befehle.

Code:
int main(void){
   DDRA |= 0b00000001;         //PA0 als Ausgang definieren
   PORTA &= ~(1<<PA0);         //PA0 auf Low schalten (LED aus)
   PORTA &= ~(1<<PA1);         //PA1 auf High setzen
   while(1){
      if(!(PINA&(1<<PIN1))){    //Hier vorne das Ausrufezeichen beachten! Wenn Taste gedrückt...
         PORTA |= (1<<PA0);   //... schalte LED ein
      }
      else{
         PORTA &= ~(1<<PA0);
      }
   }
   while(1);   //das kannst du noch weglassen, hier kommt der Atmega nie hin!
   return 0;
}
Grüße,
Bernhard

EDIT:
Wie sehen denn die Taster aus? Wie viele Anschlüsse haben die?