Moin zusammen,
ich arbeite gerade an einer Schaltung mit einem Atmega88 die einen Stromsensor mit 1khZ ausliest (interruptgetriggert) und danach in der Mainschleife bei vorliegen eines neuen Wertes das Maximum der letzten 25ms ermittelt um eine Abweichung zu erkennen. Wenn die Abweichung über oder unter dem Schwellwert liegt, wird eine LED als Ausgabe 500ms lang geschaltet.
Mein Problem: Ich programmiere die Schaltung mit einem AVR ISP MKII und es läuft perfekt. Schalte ich einen ausreichend großen Verbraucher an oder aus, erkennt er eine Abweichung und schaltet.
Nun ziehe ich das Programmierkabel ab (MOSI, MISO, SCK, RESET sind exklusiv fürs Programmieren, keine andere Beschaltung) und stecke die Schaltung, die über einen eigenen Trafo versorgt wird, kurz aus und dann wieder in die Steckdose ein. Nun zeigt sich folgendes:
Egal ob ein Verbraucher angeschlossen ist oder nicht, und egal wie groß der Schwellwert ist (2 ADC Stufen, 12 oder 120 ADC Stufen...), es wird permanent die Triggerbedingung ausgelöst und die LED blinkt die ganze Zeit (kaum aus, gehts wieder los).

Kann der Programmieradapter da irgendwas im Code verpfuschen oder sich anders auswirken? Stecke ich danach den Programmieradapter wieder an, bleibt der Fehler bis zum nächsten Programmieren. Daher führe ich es auf einen Softwarefehler zurück der damit in Verbindung steht