Moin!!!
Ich hab das jetzt mal weiter durchgetestet.
Hab einen weiteren Pin genommen und den auf druck des gleichen Tasters ohne verzögerung auch setzen lassen.
Der Code ist so:
Code:
#include <avr/io.h>
#include <stdint.h>
#define F_CPU 8000000UL
#include <util/delay.h>
int main (void)
{
DDRA |= (1<<DDA0) | (1<<DDA1);
DDRD &= ~(1<<DDD0);
PORTA &= ~(1<<PA0) | (1<<PA1);
while(1)
{
if ((PIND & (1<<PD0)) != 0)
{
PORTA |= (1<<PA1);
_delay_ms(100);
PORTA |= (1<<PA0);
}
else
PORTA &= ~(1<<PA0);
PORTA &= ~(1<<PA1);
}
return 0;
}
Das hab ich gemacht um zu sehen ob das verzögert.
Es funktioniert. Nur leider ist die verzögerungszeit immer die selbe.
wenn ich "_delay_ms(100)" eingebe ist die verzögerung genau so lange als wenn ich "_delay_ms(10000)" eingebe. Es kommt aber keine Fehlermeldung oder so.
Lesezeichen