Auch wenn´s mit PWM0A = 0 klappt, gibt´s noch zwei einfachere Methoden (die dem Verständnis im allgemeinen und speziellen auch förderlich sein könnten):Wie kann ich während der Laufzeit den als PWM laufenden Timer anhalten resp. das AUsgangssignal auf LOW setzen (und später wieder einschalten)??
"disable timer0" wird oft anfangs fälschlicherweise so verstanden, dass man damit den Timer anhält. Dem ist aber nicht so, sondern mit diesem Befehl wird lediglich der Interrupt deaktiviert, der beim Überlaufen des Timers ausgelöst würde (entsprechend aktiviert man diesen Interrupt mit "enable timer0")
Der Befehl den Du suchst lautet ganz einfach "stop timer0" bzw. "start timer0", wenn er weiterlaufen soll.
Nur diese Frage habe ich nicht ganz verstanden:
WAS willst Du denn verändern??Aber wie verändere ich das jetzt?
Und den PWM-Pin kannst Du über das Data-Direction-Register als Eingang konfigurieren. Dann führt er weder High noch Low, sondern ist einfach nur ein hochohmiger Eingang:
DDRB.0=0
Mit DDRB.0=1 wird er dann wieder zum Ausgang!
Lesezeichen