Das ist so aber nicht mit einem einfachen _delay_ms(ADCW); zu machen, da diese Funktion einen bereits zur Compilezeit bekannten Wert erfordert. Man müsste sich das dann ein wenig anders machen:
Code:
// LED an PB4
uint16_t val = ADCW;
DDRB |= 0x10;
PORTB |= (1<<PB4);
for(uint16_t i = 0; i <= val; i++){
_delay_ms(1);
}
PORTB &= ~(1<<PB4);
for(uint16_t i = 0; i <= val; i++){
_delay_ms(1);
}
So könnte man das lösen. Der Arduino verwendet eigentlich auch den avr-gcc compiler wie das da jetzt genau gelöst ist frage ich mich schon seit geraumer Zeit.
MfG
Torrentula
Lesezeichen