Geht die Auswerteroutine noch weiter? Wenn man sich den Code in einem Editor mit Syntax Highlighting anschaut (habe kein AVR - auf die Schnelle Notepad++ benutzt), fällt auf, dass die geschweifte Klammer nach if (Stop==1){ nicht geschlossen wird. Nicht dass dann Code mit ausgeführt wird, das nicht zu der Routine gehört, in dem Stop gesetzt wird
Code:
if (Stop==1){
if ((Stop_aktiv==0) && (Schluessel_auf==0) && (Schluessel_zu==0)) {
Stop_aktiv=1;
PORTB |= (1<<TestLED1);
} // Ansteuerung von Test LEDs
PORTB |= (1<<TestLED2);
if ((Pointer_oeffnen>=1) && (Stop_aktiv==1)){ // Auswertung Programm öffnen aktiv
cli();// Globale Interuptfreigabe löschen
if (Schluessel_auf==1) { // Auswertung das "Schlüssel auf" betätigt wurde
Stop=0; // Stop Routine verlassen
PORTB |= (1<<TestLED4);
Stop_aktiv=0;
}
sei();
}
Lesezeichen