Unterprogramme und der Weg zurück

Gast #1087259
Ich habe gerade eine Gedankenblockade. folgendes (gekürztes) Programm
1
main()
2
{
3
  aus EEPROM Fehlerbit lesen //(ist 1, kurz zuvor gesetzt)
4
  if (Fehlerbit == 1)
5
    Fehlerroutine()
6
  weiter mit Programm
7
}
8

9

10
Unterprogramm Fehlerroutine:
11
Fehlerroutine()
12
{
13
  Wert messen
14
  if (Wert >= 5)
15
  {
16
    Fehlerbit in EEPROM zurück auf 0 setzen
17
    break();
18
  }
19
  alles ausschalten;
20
  Sleep mode();
21
}

Falls das Fehlerbit gesetzt wird/ist, dann soll der Controller in den 
Sleep mode fallen.

Wenn eine Bedingung erfüllt (Wert>=5) ist, soll das Fehlerbit 
zurückgesetzt werden und mit dem Programm weiter fortgefahren werden.

Geht das in dem oben geschilderten Fall so oder geht der Controller 
trotzdem noch in den sleep mode?

ich möchte natürlich, das das Programm sofort nach erreichen der 
Bedingung wieder fortgesetzt wird.

Anmerkung:
Der Sleep mode bleibt solange, bis die die Stromzufuhr unterbrochen 
wird. Erst bei erneutem Einschalten wird die Bedingung geprüft und das 
Fehlerbit evtl. zurückgesetzt. Soll heißen, das nach zurücksetzen des 
Fehlerbits, der Sleepmode nicht in Gang gesetzt werden soll.
Gast #1087276
Ups - jaja die Gedankenblockade!

Ein einfaches Else - wer hätte das gedacht.

Vielen Dank!

>/* Forever bis Power-OFF / Power-ON */

 Richtig - forever bis Power off
 Nach Power On Bedingung prüfen

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.