Hallo Martin
Zitat Zitat von Phenix Beitrag anzeigen
unsigned char oscillation; // die Variable "oscillation" wird deklariert
DDRD &= ~(1<<2); // Change Port D Pin 2 to input Wieso wird das gemacht und was ist DDRD
Das Bedeutet das im Data Direction Register D Port 2 auf eingang gesetzt wird.

count72kHz=0; //Wieso wird es auf count72kHzauf 0 gesetzt?
oscillation = FALSE;

while (count72kHz<100) { //Was geschieht hier?
if ((PIND & (1<<2)) == 0) oscillation = TRUE; // was bedeutet (PIND & (1<<2)) ?

count72kHz wird auf Null gesetz damit im nächsten Schritt gefragt werden kann ob der count72kHz noch unter Hundert ist. Wenn ja, dann wird im Port Input Pin D geguckt ob Pin 2 Null ist. Dann wird gesagt das oscillation = TRUE.
Ich hoffe dir schon mal Helfen zu Können.
Thobe