keine interrupts. hier der komplette code:
Code:
#include <avr/io.h>
#include <avr/iom8.h>
int main( void )
{
DDRB = (1<<DDB1)|(1<<DDB3); // pin 1 & 3 als ausgang (!?)
PORTB |= (1 << PB1); //pullup
PORTB |= (1 << PINB3); //pullup
while(1)
{
if( bit_is_clear(PINB, PB3))
PORTB |= (1 << PB1); // led an
else
PORTB &= ~(1 << PB1); // led aus
}
}
//EOF
man kann zwar den status eines pins auch auslesen, wenn er als ausgang geschaltet ist, aber DDxn verhält sich irgendwie genau umgekehrt, als im datenblatt beschrieben.
gruesse
Lesezeichen