Hallo,

also ich habe jetzt im Programm keinen Fehler entdeckt, aber natürlich soll das nichts heißen.
Ich würde raten, einfach einmal compare0a = 127 hineinzuschreiben, als Test, und zu schauen, ob was raus kommt. Wenn nicht, dann muss es an der Hardware liegen (Pin Defekt, oder etwas in der Deklaration vergessen?), wenn schon, dann habe die Variablen nicht die Werte, die sie sollen. Dann muss man sich natürlich wieder fragen warum, eventuell mit der Led etwas herumexperimentieren (z.B. if ausgang > 100 then led = 1, oder so)
bzw. villeicht den ADC in Frage stellen, (überprüfen).

Villeicht findet ja noch jemand einen Fehler, aber es ist sicherlich auch für die Anderen Hilfreich, wenn man Dinge ausschließen kann, also z.B. an der Hardware liegts nicht, weil wenn ich einen Wert direkt zuweise, funktioniert die PWM oder so was.

Mfg Thegon