hallo,
möchtest du analoges Signal messen oder ein digitales?
also wenn du nur bestimmte Portpins auslesen möchtest, dann geht das so:
Code:
if(PINF & (1<<PF0)){ //hier wird abgefragt ob der PF0=1 ist
//mach irgendwas
}
sonst:
Code:
if(!(PINF & (1<<PF0))){ //hier wird abgefragt ob der PF0=0 ist
//mach irgendwas
}
und zu deiner blinkLED() Funktion...
mit
Code:
DDRB = (1 << DDB7);
_delay_ms(10);
DDRB &= ~( 1 << DDB7 );
_delay_ms(10);
änderst du nur die "Richtung" des Signals, d.h. du schaltest die Pins als Ausgang und nach 10ms wider als Eingang.
Du müsstest am besten den entsprechenden Pin mit DDRB|=(1<<PB7); in der main zuvor initialisieren und dann kannst du mit PORTB|=(1<<PB7); den Pin auf 1 bzw. mit PORTB&=~(1<<PB7); wieder auf 0 setzen.
Lesezeichen