Hi,
mit dem Poti und dem Ausgang auf Low das klappt. Aber eines verstehe ich überhaupt nicht: ich verwende zur Erzeugung eines Signals folgenden Code:
Code:
#include <stdlib.h>
#include <avr/io.h>
#include <util/delay.h>
#include <math.h>


void _delay_s(uint8_t sek){
	for (int i=0; i!=sek; i++){
	 _delay_ms(200);
	 _delay_ms(200);
	 _delay_ms(200);
	 _delay_ms(200);
	 _delay_ms(200);
	}
}


	
	/*SND_A_PORT &= ~(1<<SND_A_PIN);   //EN auf Low
	SND_A_DDR |= (1<<SND_A_DD);      //Ausgang*/




int main(void)
{
 
	DDRB |= (1<<DDB0); //PB0 als Ausgang
	PORTB &= ~(1<<PB0); //PB0 auf Low

 
 _delay_s(5);
 for(;;){
	 PORTB ^= (1 << PB0); //Toggle
	 _delay_ms(2);
	}
}
Der Ton klingt nicht sauber.
Wenn ich aber DDRB |= (1<<DDB0); auskommentiere, dann klingt der Ton wunderbar. Unlogisch?