END/de

From MCS Wiki AVR
< END(Difference between revisions)
Jump to: navigation, search
(Created page with "= <span class="f_Header">Action</span> = Terminate program execution. <span style="font-family: Arial;"> </span> <span style="font-family: Arial;"> </span> = <sp...")
 
(Remarks)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== (**COPIED FROM ENGLISH PAGE**) === <span class="f_Header">Action</span> =
+
= <span class="f_Header">Funktion</span> =
  
Terminate program execution.
+
Beendet die Programmausführung.
  
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
Line 15: Line 15:
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
  
= <span class="f_Header">Remarks</span> =
+
= <span class="f_Header">Anmerkungen</span> =
  
STOP can also be used to terminate a program.
+
STOP kann auch zum Beenden eines Programms verwendet werden.
  
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
Line 23: Line 23:
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
  
When an END statement is encountered, all interrupts are disabled and a never-ending loop is generated.
+
Wenn ein END Befehl erreicht wird dann werden alle Interrupts disabled und eine Endlosschleife wird erzeugt.
  
When a STOP is encountered the interrupts will not be disabled. Only a never ending loop will be created.
+
Wenn STOP erreicht wird dann werden die Interrupts nicht disabled. Es wird lediglich eine Endlosschleife erzeugt.
  
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
  
In an embedded application you probably do not want to end the application. But there are cases where you do want to end the application. For example when you control some motors, and you determine a failure, you do not want to use a Watchdog reset because then the failure will occur again. In that case you want to display an error, and wait for service personal to fix the failure.
+
Bei einer Embedded Anwendung möchte man normalerweise die Programmausführung nicht beenden.
 +
Es gibt aber Situationen, in denen man die Programmausführung beenden möchte.
 +
Wenn beispielsweise einige Motoren angesteuert werden und eine Fehlersituation auftritt dann möchte man nicht, dass ein Watchdog Reset auftritt weil der Fehler dann ggf. wieder auftritt. In einer derartigen Situation ist es eventuell sinnvoll, einen Fehlercode anzeigen zu lassen und zu warten bis ein Servicetechniker den Fehler behebt.
  
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
  
It is important to notice that without the END statement, your program can behave strange in certain cases. For example&nbsp;:
+
Es ist wichtig, zu verstehen, dass ein Programm ohne END Befehl in bestimmten Situationen ein unvorhersehbares Verhalten zeigt.  
  
Print "Hello"
+
Zum Beispiel:
 +
 
 +
Print "Hallo"
  
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
  
Note that there is no END statement. So what will happen? The program will print "Hello". But as the compiler places the library code behind the program code, the micro will execute the library code&nbsp;! But without being called. As most library code are assembler sub routines that end with a RET, your program will most likely crash, or reset and repeat for ever.
+
Beachten Sie, dass es hier keinen END Befehl gibt. Was wird also passieren? Das Programm wird "Hallo" ausgeben. Da der Compiler aber hinter den eigentlichen Code Library-Code speichert wird der Mikrocontroller Library-Code ausführen. Weil Library-Code meistens aus Assembler-Routinen besteht, die mit RET enden wird das Programm höchstwahrscheinlich abstürzen, resetten oder in eine Endlosschleife laufen.
  
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
  
= <span class="f_Header">See also</span> =
+
= <span class="f_Header">Siehe auch</span> =
  
 
[[STOP]]
 
[[STOP]]
Line 51: Line 55:
 
<span style="font-family: Arial;">&nbsp;</span>
 
<span style="font-family: Arial;">&nbsp;</span>
  
= <span class="f_Header">Example</span> =
+
= <span class="f_Header">Beispiel</span> =
  
 
<br/><source lang="bascomavr">
 
<br/><source lang="bascomavr">
Print "Hello" 'print this
+
Print "Hallo" 'serielle Ausgabe
End 'end program execution and disable all interrupts
+
End 'Programmausführung beenden und alle Interrupts disablen
 
</source><br/>{{Languages}}
 
</source><br/>{{Languages}}
  
 
[[Category:BASCOM Language Reference/de]]
 
[[Category:BASCOM Language Reference/de]]

Latest revision as of 01:10, 19 February 2013

Contents

Funktion

Beendet die Programmausführung.

 

 

Syntax

END

 

 

Anmerkungen

STOP kann auch zum Beenden eines Programms verwendet werden.

 

 

Wenn ein END Befehl erreicht wird dann werden alle Interrupts disabled und eine Endlosschleife wird erzeugt.

Wenn STOP erreicht wird dann werden die Interrupts nicht disabled. Es wird lediglich eine Endlosschleife erzeugt.

 

Bei einer Embedded Anwendung möchte man normalerweise die Programmausführung nicht beenden. Es gibt aber Situationen, in denen man die Programmausführung beenden möchte. Wenn beispielsweise einige Motoren angesteuert werden und eine Fehlersituation auftritt dann möchte man nicht, dass ein Watchdog Reset auftritt weil der Fehler dann ggf. wieder auftritt. In einer derartigen Situation ist es eventuell sinnvoll, einen Fehlercode anzeigen zu lassen und zu warten bis ein Servicetechniker den Fehler behebt.

 

Es ist wichtig, zu verstehen, dass ein Programm ohne END Befehl in bestimmten Situationen ein unvorhersehbares Verhalten zeigt.

Zum Beispiel:

Print "Hallo"

 

Beachten Sie, dass es hier keinen END Befehl gibt. Was wird also passieren? Das Programm wird "Hallo" ausgeben. Da der Compiler aber hinter den eigentlichen Code Library-Code speichert wird der Mikrocontroller Library-Code ausführen. Weil Library-Code meistens aus Assembler-Routinen besteht, die mit RET enden wird das Programm höchstwahrscheinlich abstürzen, resetten oder in eine Endlosschleife laufen.

 

Siehe auch

STOP

 

 

Beispiel


Print "Hallo" 'serielle Ausgabe 
End 'Programmausführung beenden und alle Interrupts disablen

Languages   English Deutsch  
Personal tools
Namespaces
Variants
Actions
Navigation
In other languages
Language