/*
 * Reading switch & controlling LED
 * Programming in avr-gcc style
 */
#include <avr/io.h>
#include <util/delay.h>
const int led=PD4;
const int sw=PD2;
int main(){
  // configure led pin as output, switch pin as input
  DDRD |= (1<<led);
  DDRD &= ~(1<<sw);
  while (1){
    if (!(PIND & (1<<sw)))
      PORTD |= (1<<led);
    else
      PORTD &= ~(1<<led);
  }
}