Du sa att du hade en Atmega32, databladet för denna hittar du här. I databaldet står det mesta du behöver veta, inkl kodexempel.
http://www.atmel.com/dyn/resources/prod ... oc2503.pdf
PB7 är egentligen en define för 7, men man skriver så för att göra det tydligare.
DDR är data direction register, bestämmer om porten ska vara in- eller utgång.
För att kolla om pinne 1 på port A är hög, förutsatt att den är satt som ingång (DDR), använd (PINA & (1<<PA1))
För att kolla om den är låg, sätt "icke" framför !(PINA & (1<<PA1))
#define (PINA & (1<<PA1)) knapp
är förstås fel
#define knapp (PINA & (1<<PA1))
ska det vara