From 4e1b64421075c701712b150aea00d7f3c8af9c9f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Anian=20B=C3=BChler?=
 <anian.buehler@reutlingen-university.de>
Date: Tue, 2 Nov 2021 14:05:58 +0100
Subject: [PATCH] updated blockreference

---
 .../com/ardublock/block/ardublock.xml         |   4 +-
 .../webapp/com/ardublock/reference/abs.html   |   6 +-
 .../webapp/com/ardublock/reference/and.html   |   6 +-
 .../reference/code_comment_head.html          |   4 +-
 .../com/ardublock/reference/constrain.html    |  10 +--
 .../com/ardublock/reference/digital-high.html |   6 +-
 .../com/ardublock/reference/digital-low.html  |   4 +-
 .../com/ardublock/reference/elseif.html       |   4 +-
 .../webapp/com/ardublock/reference/equal.html |  10 +--
 .../webapp/com/ardublock/reference/false.html |   4 +-
 .../com/ardublock/reference/glue_digital.html |  21 +++----
 .../com/ardublock/reference/glue_number.html  |  19 +++---
 .../com/ardublock/reference/glue_string.html  |  22 +++----
 .../com/ardublock/reference/greater.html      |  14 ++---
 .../ardublock/reference/greater_equal.html    |  10 +--
 .../webapp/com/ardublock/reference/if.html    |  12 ++--
 .../webapp/com/ardublock/reference/less.html  |  10 +--
 .../com/ardublock/reference/less_equal.html   |  10 +--
 .../reference/local_variable_digital.html     |  32 +++++++---
 .../reference/local_variable_number.html      |  58 ++++++++++--------
 ...{loop-beispiel.png => loop-beispiel-1.png} | Bin
 .../webapp/com/ardublock/reference/loop.html  |  19 +++---
 .../webapp/com/ardublock/reference/map.html   |   4 +-
 .../com/ardublock/reference/map_common.html   |  45 ++++----------
 .../ardublock/reference/variable_digital.html |  16 +++--
 .../ardublock/reference/variable_number.html  |  39 +++++++++---
 26 files changed, 196 insertions(+), 193 deletions(-)
 rename src/main/webapp/com/ardublock/reference/{loop-beispiel.png => loop-beispiel-1.png} (100%)

diff --git a/src/main/resources/com/ardublock/block/ardublock.xml b/src/main/resources/com/ardublock/block/ardublock.xml
index 2ebe67c..7d8140d 100644
--- a/src/main/resources/com/ardublock/block/ardublock.xml
+++ b/src/main/resources/com/ardublock/block/ardublock.xml
@@ -3076,9 +3076,9 @@
 			</BlockDrawer>
 			
 			<BlockDrawer button-color="255 0 0" name="bd.number" type="default">
-				<BlockGenusMember>setter_variable_analog</BlockGenusMember>
+				<!-- BlockGenusMember>setter_variable_analog</BlockGenusMember>
 				<BlockGenusMember>create_variable_analog</BlockGenusMember>
-				<BlockGenusMember>create_array_analog</BlockGenusMember>
+				<BlockGenusMember>create_array_analog</BlockGenusMember> -->
 				
 				<BlockGenusMember>numberDivider1</BlockGenusMember>
 				<BlockGenusMember>millis</BlockGenusMember>
diff --git a/src/main/webapp/com/ardublock/reference/abs.html b/src/main/webapp/com/ardublock/reference/abs.html
index bc7f77b..0a52695 100644
--- a/src/main/webapp/com/ardublock/reference/abs.html
+++ b/src/main/webapp/com/ardublock/reference/abs.html
@@ -36,7 +36,7 @@
         <p>
             Der <code>abs</code> Block ist ein mathematischer Operator, der den Betrag einer Zahl oder einer analogen Variable ausgibt. 
             Es können fest programmierte Zahlenwerte, analoge Eingänge oder analoge Variablen als Parameter eingesetzt werden. 
-            Der <code>abs</code> Block selbst kann dann als analoge Variable in anderen Blöcken verwendet werden. 
+            Der <code>abs</code> Block selbst kann dann als analoger Wert in anderen Blöcken verwendet werden. 
         </p>
         <h2 class="unterueberschrift" id="block_beschreibung">Erklärung</h2>
         <p>
@@ -48,7 +48,7 @@
         </p>
         <h2 class="unterueberschrift" id="code">Code</h2>
         <p>
-            Im Code kann der <code>abs</code> Block mit dem Befehl (<code>abs()</code>) realisiert werden. 
+            Im Code kann der <code>abs</code> Block mit dem Befehl <code>abs()</code> realisiert werden. 
             Wobei zwischen die Klammern hier die entsprechende Größe eingefügt wird, auf die der Befehl angewendet werden soll. 
             <br>
             <b>Beispiel:</b> Es soll der Betrag der Variable <code>var</code> im seriellen Monitor ausgegeben werden. 
@@ -73,4 +73,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/and.html b/src/main/webapp/com/ardublock/reference/and.html
index 6a2aa6c..732b7ef 100644
--- a/src/main/webapp/com/ardublock/reference/and.html
+++ b/src/main/webapp/com/ardublock/reference/and.html
@@ -36,12 +36,12 @@
         <p>
             Der <code>UND</code> Block ist eine logische Verknüpfung von zwei digitalen Variablen, wobei diese auch beispielsweise digitale Eingänge sein könnten. 
             Wenn beide Eingänge des <code>UND</code> Blocks wahr sind, dann ist auch der <code>UND</code> Block selbst wahr bzw. <code>TRUE</code>. 
-            Wenn man mit der Maus über den Block schwebt, dann erscheint ein kleiner Pfeil. 
+            </br>Wenn man mit der Maus über den Block schwebt, dann erscheint ein kleiner Pfeil. 
             Wenn man diesen anklickt, dann öffnet sich ein dropdown Menü, mit welchem man den <code>UND</code> Block in einen <code>ODER</code> Block umwandeln kann. 
         </p>
         <h2 class="unterueberschrift" id="beispiel">Beispiele</h2>
         <p>
-            Hier ist eine Übersicht wie sich der <code>ODER</code> Block verhält, wenn man verschiedene logische Kombinationen an seinen Eingängen anlegt. 
+            Hier ist eine Übersicht wie sich der <code>UND</code> Block verhält, wenn man verschiedene logische Kombinationen an seinen Eingängen anlegt. 
             Für <code>true</code> und <code>false</code> könnte hier auch <code>HIGH</code> oder <code>LOW</code> eingetragen werden. 
             Diese haben dieselbe Bedeutung. 
             Ein Verwenden von digitalen Variablen oder digitalen Eingängen des Arduinos ist natürlich ebenso möglich. 
@@ -83,4 +83,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/code_comment_head.html b/src/main/webapp/com/ardublock/reference/code_comment_head.html
index d9f00a3..e476980 100644
--- a/src/main/webapp/com/ardublock/reference/code_comment_head.html
+++ b/src/main/webapp/com/ardublock/reference/code_comment_head.html
@@ -36,7 +36,7 @@
             Seine Funktion ist es lediglich eine Information über das Programm zu geben. 
             Die Kommentarfunktion ist daher eine sehr nützliche Funktion und wird in der Softwareentwicklung überall eingesetzt. 
             <br><br>
-            Der Kommentar, der mit diesem Block geschrieben wird, kann zwischen zwei Blocke eingefügt werden. 
+            Der Kommentar, der mit diesem Block geschrieben wird, kann zwischen zwei Blöcke im globalen Bereich (Programm-Block, ganz oben) eingefügt werden. 
             Im generierten Code werden diese Informationen dann allerdings am Anfang des Codes eingefügt. 
             Es kann alles mögliche in Textform in den Kommentarblock eingefügt werden. 
             <br>
@@ -67,4 +67,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/constrain.html b/src/main/webapp/com/ardublock/reference/constrain.html
index 2ba165d..16dfcc6 100644
--- a/src/main/webapp/com/ardublock/reference/constrain.html
+++ b/src/main/webapp/com/ardublock/reference/constrain.html
@@ -38,10 +38,10 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Der <code>einschränken</code> Block ist ein Block, der zur Signalanpassing dient. 
-            Mit ihm lassen sich Variablen in einen bestimmten Zahlenbereich limitieren. 
-            Die eingeschränkte Variable kann dann selbst nicht mehr über bzw. unter die angegebenen Werte gehen. 
-            Der <code>einschränken</code> Block kann selbst wie eine analoge Variable eingesetzt werden. 
+            Der <code>einschränken</code> Block ist dient der Signalanpassung. 
+            Mit ihm lassen sich Variablen oder eingelesene Werte in einen bestimmten Zahlenbereich begrenzen. 
+            <br>Der Rückgabewert des Blocks geht nie über über bzw. unter die angegebenen Grenzwerte. 
+            Der <code>einschränken</code> Block kann selbst wie ein analoger Wert eingesetzt werden. 
         </p>
         <h2 class="unterueberschrift" id="wert">Wert</h2>
         <p>
@@ -79,4 +79,4 @@
     </div>
 </article>
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/digital-high.html b/src/main/webapp/com/ardublock/reference/digital-high.html
index aedc9b5..81119ac 100644
--- a/src/main/webapp/com/ardublock/reference/digital-high.html
+++ b/src/main/webapp/com/ardublock/reference/digital-high.html
@@ -36,8 +36,8 @@
         <p>
             Der <code>HIGH</code> Block beschreibt einen von zwei <b>digitalen Zuständen</b>. 
             Er kann überall eingesetzt werden, wo eine digitale Größe eingesetzt werden kann (runde Form). 
-            Zum Beispiel beim Setzen von lokalen oder globalen digitalen Variablen, als <code>teste</code> Bedingung in <code>falls</code> 
-            oder <code>sonst falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen z.B.( <code>UND / ODER / == / != </code>).
+            Zum Beispiel beim Setzen von (lokalen oder globalen) digitalen Variablen, als <code>teste</code> Bedingung in <code>falls</code> 
+            oder <code>sonst falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen z. B. ( <code>UND | ODER | == | != </code>).
             <br>
             Der <code>HIGH</code> Block ist gleichbedeutend mit dem <code>true</code> Block.
             <br><br>
@@ -59,4 +59,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/digital-low.html b/src/main/webapp/com/ardublock/reference/digital-low.html
index 70ff818..a684e97 100644
--- a/src/main/webapp/com/ardublock/reference/digital-low.html
+++ b/src/main/webapp/com/ardublock/reference/digital-low.html
@@ -37,7 +37,7 @@
             Der <code>LOW</code> Block beschreibt einen von zwei <b>digitalen Zuständen</b>. 
             Er kann überall eingesetzt werden, wo eine digitale Größe eingesetzt werden kann (runde Form). 
             Zum Beispiel beim Setzen von lokalen oder globalen digitalen Variablen, als <code>teste</code> Bedingung in <code>falls</code> 
-            oder <code>sonst falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen z.B.( <code>UND / ODER / == / != </code>).
+            oder <code>sonst falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen z. B. ( <code>UND | ODER | == | != </code>).
             <br>
             Der <code>LOW</code> Block ist gleichbedeutend mit dem <code>false</code> Block.
             <br><br>
@@ -59,4 +59,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/elseif.html b/src/main/webapp/com/ardublock/reference/elseif.html
index db3b5c6..416401c 100644
--- a/src/main/webapp/com/ardublock/reference/elseif.html
+++ b/src/main/webapp/com/ardublock/reference/elseif.html
@@ -45,7 +45,7 @@
             Es können beliebig viele <code>sonst falls</code> Blöcke unter einen <code>falls</code> Block gehängt werden.
             Die Blöcke werden dann von oben nach unten abgearbeitet. Wenn eine Bedingung nicht erfüllt ist, dann wird die nächste Bedingung getestet und so weiter.
             <br><br>
-            <b style="color: red;">Achtung:</b> Wenn eine Bedingung erfüllt ist, dann werden die angehängten <code>sonst falls</code> Blöcke übersprungen. Aus einer Kette eines <code>falls</code> und 
+            <b style="color: red;">Achtung:</b> Wenn eine Bedingung erfüllt ist, dann werden die nachfolgend angehängten <code>sonst falls</code> Blöcke übersprungen. Aus einer Kette eines <code>falls</code> und 
             einem oder mehreren <code>sonst falls</code> Blöcken kann immer nur <b>höchstens</b> ein <code>dann</code> ausgeführt werden.
 
         </p>
@@ -113,4 +113,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/equal.html b/src/main/webapp/com/ardublock/reference/equal.html
index ef31dd8..181a675 100644
--- a/src/main/webapp/com/ardublock/reference/equal.html
+++ b/src/main/webapp/com/ardublock/reference/equal.html
@@ -36,10 +36,10 @@
             Es können fest Programmierte Zahlenwerte, analoge Eingänge oder analoge Variablen miteinander verglichen werden. 
             Jedoch können pro analogem <code>==</code> Block immer nur zwei Größen auf einmal verglichen werden. 
             Der analoge <code>==</code> Block ist <code>true</code>, wenn die beiden zu vergleichenden Größen den gleichen Wert haben. 
-            <br>
-            Ist die Größe im linken Feld größer, als die im rechten Feld, dann ist der Block an sich <code>false</code>. 
-            Ist die Größe im rechten Feld größer, als die im linken Feld, dann ist der Block an sich <code>false</code>. 
-            Haben beide Größen den gleichen Wert, dann ist der Block an sich <code>true</code>. 
+            <br><br>
+            Ist der Wert im linken Feld größer, als die im rechten Feld, dann ist der Block <code>false</code>. <br>
+            Ist der Wert im rechten Feld größer, als die im linken Feld, dann ist der Block <code>false</code>. <br>
+            Haben beide Größen den gleichen Wert, dann ist der Block <code>true</code>. 
             <br><br>
             Wenn man mit der Maus über dem Block schwebt, dann erscheint ein kleiner Pfeil nach unten. 
             Klickt man diesen mit der linken Maustaste, dann öffnet sich ein Dropdown Menü und der <code>==</code> Block kann folgende Blöcke umgewandelt werden: 
@@ -87,4 +87,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/false.html b/src/main/webapp/com/ardublock/reference/false.html
index 2d44829..2c1dfed 100644
--- a/src/main/webapp/com/ardublock/reference/false.html
+++ b/src/main/webapp/com/ardublock/reference/false.html
@@ -37,7 +37,7 @@
             Der <code>false</code> Block beschreibt einen von zwei <b>digitalen Zuständen</b>. 
             Er kann überall eingesetzt werden, wo eine digitale Größe eingesetzt werden kann (runde Form). 
             Zum Beispiel beim Setzen von lokalen oder globalen digitalen Variablen, als <code>teste</code> Bedingung in <code>falls</code> 
-            oder <code>sonst falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen z.B.( <code>UND / ODER / == / != </code>).
+            oder <code>sonst falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen z.B.( <code>UND | ODER | == | != </code>).
             <br>
             Der <code>false</code> Block ist gleichbedeutend mit dem <code>LOW</code> Block.
             <br><br>
@@ -59,4 +59,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/glue_digital.html b/src/main/webapp/com/ardublock/reference/glue_digital.html
index 8a920d8..b25fbf3 100644
--- a/src/main/webapp/com/ardublock/reference/glue_digital.html
+++ b/src/main/webapp/com/ardublock/reference/glue_digital.html
@@ -17,7 +17,7 @@
     <section>
     <div id="ueberschrift">
         <p>Kommunikation / Verbinder</p>
-        <h1 style="font-size: 220%;">Verbinde String und digitale Größe</h1>
+        <h1 style="font-size: 220%;">Verbinde Zeichenkette und digitale Größe</h1>
     </div>
     <div>
         <div>
@@ -34,16 +34,14 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Mit diesem Block lässt sich eine Zeichenkette (String) mit einer digitalen Größe verbinden. 
-            Der <code>verbinde</code> Block lässt sich dann wie ein String in anderen Blöcken verwenden (rechteckig mit ausgeschnittenen Ecken). 
-            So können zum Beispiel Werte von Variablen im seriellen Monitor ausgegeben werden. 
+            Mit diesem Block lässt sich eine Zeichenkette ("Beispieltext") mit einer digitalen Größe verbinden. 
+            So können Werte von Variablen im seriellen Monitor ausgegeben werden. 
             <br><br>
-            Für die linke Komponente in dem Block wird ein String eingesetzt. 
+            Für die linke Komponente in dem Block wird ein Text eingesetzt. 
             In diesen kann jeder mögliche Text geschrieben werden. 
             In das rechte Feld des <code>verbinde</code> Blocks kann eine digitale Variable eingesetzt werden. 
-            Der gesamte Block wird dann in einen zusammenhängenden String umgewandelt. 
             Wenn dieser dann im seriellen Monitor ausgegeben wird, dann wird der Wert der digitalen Variable ausgegeben. 
-            Im Text steht dann entweder "true" oder "false" anstelle der Variable. 
+            Nach dem Text steht dann entweder "1" oder "0" (Simulator: "true" oder "false") anstelle der Variable. 
         </p>
         <h2 class="unterueberschrift" id="block_beschreibung">Beispiel</h2>
         <p>
@@ -62,16 +60,13 @@
             ohne einen Zeilenumbruch direkt hintereinander im Code geschrieben werden. 
             <br>
             In den einen Befehl wird der auszugebende String eingefügt und in den anderen der Name der auszugebenden digitalen Variable. 
-            <br>
-            <b style="color: red;">Achtung: </b>Wenn zwischen String und Variable ein Leerzeichen sein soll, dann muss dieses 
-            im String als normales Zeichen angehängt werden. 
             <br><br>
             Im Code würde das dann folgendermaßen aussehen (ohne <code>Serial.begin(9600)</code>): 
             <br><br>
             <code>
                 &emsp;&emsp;Serial.print("Der Wert des Tür-Sensors ist: "); <br>
-                &emsp;&emsp;Serial.print("tuer_sens"); <br>
-                &emsp;&emsp;Serial.print(); <br>
+                &emsp;&emsp;Serial.print(tuer_sens); <br>
+                &emsp;&emsp;Serial.println(); <br>
             </code>
             
         <p>
@@ -80,4 +75,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/glue_number.html b/src/main/webapp/com/ardublock/reference/glue_number.html
index 23aa972..0c1f997 100644
--- a/src/main/webapp/com/ardublock/reference/glue_number.html
+++ b/src/main/webapp/com/ardublock/reference/glue_number.html
@@ -34,15 +34,13 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Mit diesem Block lässt sich eine Zeichenkette (String) mit einer analogen Größe verbinden. 
-            Der <code>verbinde</code> Block lässt sich dann wie ein String in anderen Blöcken verwenden (rechteckig mit ausgeschnittenen Ecken). 
-            So können zum Beispiel Werte von analogen Variablen im seriellen Monitor ausgegeben werden. 
+            Mit diesem Block lässt sich eine Zeichenkette ("Beispieltext") mit einer analogen Größe verbinden. 
+            So können analoge Werte im seriellen Monitor ausgegeben werden. 
             <br><br>
-            Für die linke Komponente in dem Block wird ein String eingesetzt. 
+            Für die linke Komponente in dem Block wird eine Zeichenkette eingesetzt. 
             In diesen kann jeder mögliche Text geschrieben werden. 
-            In das rechte Feld des <code>verbinde</code> Blocks kann eine analoge Variable eingesetzt werden. 
-            Der gesamte Block wird dann in einen zusammenhängenden String umgewandelt. 
-            Wenn dieser dann im seriellen Monitor ausgegeben wird, dann wird der Wert der analogen Variable ausgegeben. 
+            In das rechte Feld des <code>verbinde</code> Blocks kann ein analoger Wert oder eine analoge Variable eingesetzt werden. 
+            Nach dem Text steht dann der analoge Wert (z. B. 123).
             
         </p>
         <h2 class="unterueberschrift" id="block_beschreibung">Beispiel</h2>
@@ -62,15 +60,12 @@
             ohne einen Zeilenumbruch direkt hintereinander im Code geschrieben werden. 
             <br>
             In den einen Befehl wird der auszugebende String eingefügt und in den anderen der Name der auszugebenden digitalen Variable. 
-            <br>
-            <b style="color: red;">Achtung: </b>Wenn zwischen String und Variable ein Leerzeichen sein soll, dann muss dieses 
-            im String als normales Zeichen angehängt werden. 
             <br><br>
             Im Code würde das dann folgendermaßen aussehen (ohne <code>Serial.begin(9600)</code>): 
             <br><br>
             <code>
                 &emsp;&emsp;Serial.print("Der Wert des Zählers ist: "); <br>
-                &emsp;&emsp;Serial.print("zaehler"); <br>
+                &emsp;&emsp;Serial.print(zaehler); <br>
             </code>
             
         <p>
@@ -79,4 +74,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/glue_string.html b/src/main/webapp/com/ardublock/reference/glue_string.html
index 9ac4e44..6cc6264 100644
--- a/src/main/webapp/com/ardublock/reference/glue_string.html
+++ b/src/main/webapp/com/ardublock/reference/glue_string.html
@@ -34,16 +34,13 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Mit diesem Block lässt sich eine Zeichenkette (String) mit einer weiteren Zeichenkette verbinden. 
-            Der <code>verbinde</code> Block lässt sich dann wie ein einzelner String in anderen Blöcken verwenden (rechteckig mit ausgeschnittenen Ecken). 
-            So können zwei verschiedene Strings in einem Block verwendet werden. 
+            Mit diesem Block lässt sich eine Zeichenkette ("Beispieltext") mit einer weiteren Zeichenkette verbinden. 
+            So können zwei verschiedene Texte aneinander gehängt und auf dem SerialMonitor ausgegeben werden. 
             <br><br>
-            Für die rechte Komponente und die linke Komponente in dem Block wird ein String eingesetzt. 
-            In diesen kann jeder mögliche Text geschrieben werden. 
-            Wenn der gesamte Block wird dann in einen zusammenhängenden String umgewandelt. 
-            Wenn dieser dann im seriellen Monitor ausgegeben wird, dann werden beide Strings auf einmal ausgegeben. 
+            Für die rechte Komponente und die linke Komponente in dem Block wird eine Zeichenkette eingesetzt. 
+            Wenn dieser dann im seriellen Monitor ausgegeben wird, dann werden beide Strings nacheinander ausgegeben. 
             <br>
-            Im "Basic"-Modus ist die Anwendung jedoch wenig hilfreich, da man nur im "Pro"-Modus Strings als Variablen erstellen kann. 
+            Im "Basic"-Modus findet dieser Block wenig sinnvolle Anwendung, da man nur im "Pro"-Modus Zeichenketten als Variablen erstellen kann. 
             
         </p>
         <h2 class="unterueberschrift" id="code">Code</h2>
@@ -52,17 +49,14 @@
             ohne einen Zeilenumbruch direkt hintereinander im Code geschrieben werden. 
             <br>
             In den einen Befehl wird der erste auszugebende String eingefügt und in den anderen der zweite. 
-            <br>
-            <b style="color: red;">Achtung: </b>Wenn zwischen den beiden Strings ein Leerzeichen sein soll, dann muss dieses 
-            im String als normales Zeichen angehängt werden. 
             <br><br>
             <img src="glue_string-beispiel-1.png" alt="">
             <br><br>
             Im Code würde das dann folgendermaßen aussehen (ohne <code>Serial.begin(9600)</code>): 
             <br><br>
             <code>
-                &emsp;&emsp;Serial.print("Das ist der String 1 "); <br>
-                &emsp;&emsp;Serial.print("und das ist der String 2"); <br>
+                &emsp;&emsp;Serial.print("Das ist der String 1. "); <br>
+                &emsp;&emsp;Serial.print("und das ist der String 2. "); <br>
             </code>
             
         <p>
@@ -71,4 +65,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/greater.html b/src/main/webapp/com/ardublock/reference/greater.html
index 635d8a6..3fc7896 100644
--- a/src/main/webapp/com/ardublock/reference/greater.html
+++ b/src/main/webapp/com/ardublock/reference/greater.html
@@ -33,13 +33,13 @@
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
             Der <code>&gt;</code> Block ist ein Logik-Block, der zwei analoge Größen miteinander vergleicht, selbst aber nur einen digitalen Zustand (entweder <code>true</code> oder <code>false</code>) annehmen kann. 
-            Es können fest Programmierte Zahlenwerte, analoge Eingänge oder analoge Variablen miteinander verglichen werden. 
+            Es können feste Zahlenwerte, analoge Eingänge oder analoge Variablen miteinander verglichen werden. 
             Jedoch können pro <code>&gt;</code> Block immer nur zwei Größen auf einmal verglichen werden. 
-            Der <code>&gt;</code> Block ist <code>true</code>, wenn die Größe im linken Feld größer als die im rechten Feld des Blocks ist. 
-            <br>
-            Ist die Größe im rechten Feld größer, als die im linken Feld, dann ist der Block an sich <code>false</code>. 
-            Ist die Größe im linken Feld größer, als die im rechten Feld, dann ist der Block an sich <code>true</code>. 
-            Haben beide Größen den gleichen Wert, dann ist der Block an sich <code>false</code>. 
+            Der <code>&gt;</code> Block ist <code>true</code>, wenn der Wert im linken Feld größer als die im rechten Feld des Blocks ist. 
+            <br><br>
+            Ist der Wert  im rechten Feld größer, als die im linken Feld, dann ist der Block <code>false</code>. <br>
+            Ist der Wert  im linken Feld größer, als die im rechten Feld, dann ist der Block <code>true</code>. <br>
+            Sind beide Werte gleich groß, dann ist der Block <code>false</code>. 
             <br><br>
             Wenn man mit der Maus über dem Block schwebt, dann erscheint ein kleiner Pfeil nach unten. 
             Klickt man diesen mit der linken Maustaste, dann öffnet sich ein Dropdown Menü und der <code>&gt;</code> Block kann folgende Blöcke umgewandelt werden: 
@@ -87,4 +87,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/greater_equal.html b/src/main/webapp/com/ardublock/reference/greater_equal.html
index 17392c0..69d4200 100644
--- a/src/main/webapp/com/ardublock/reference/greater_equal.html
+++ b/src/main/webapp/com/ardublock/reference/greater_equal.html
@@ -36,10 +36,10 @@
             Es können fest Programmierte Zahlenwerte, analoge Eingänge oder analoge Variablen miteinander verglichen werden. 
             Jedoch können pro <code>&gt;=</code> Block immer nur zwei Größen auf einmal verglichen werden. 
             Der <code>&gt;=</code> Block ist <code>true</code>, wenn die Größe im rechten Feld größer <b>oder gleich</b> wie die Größe im linken Feld des Blocks ist. 
-            <br>
-            Ist die Größe im linken Feld größer, als die im rechten Feld, dann ist der Block an sich <code>false</code>. 
-            Ist die Größe im rechten Feld größer, als die im linken Feld, dann ist der Block an sich <code>true</code>. 
-            Haben beide Größen den gleichen Wert, dann ist der Block an sich <code>true</code>. 
+            <br> <br>
+            Ist der Wert  im linken Feld größer, als die im rechten Feld, dann ist der Block <code>false</code>. <br>
+            Ist der Wert  im rechten Feld größer, als die im linken Feld, dann ist der Block <code>true</code>. <br>
+            Sind beide Werte gleich groß, dann ist der Block <code>true</code>. 
             <br><br>
             Wenn man mit der Maus über dem Block schwebt, dann erscheint ein kleiner Pfeil nach unten. 
             Klickt man diesen mit der linken Maustaste, dann öffnet sich ein Dropdown Menü und der <code>&gt;=</code> Block kann folgende Blöcke umgewandelt werden: 
@@ -83,4 +83,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/if.html b/src/main/webapp/com/ardublock/reference/if.html
index 6f2fcc8..9f1dd63 100644
--- a/src/main/webapp/com/ardublock/reference/if.html
+++ b/src/main/webapp/com/ardublock/reference/if.html
@@ -33,17 +33,17 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Der <code>falls</code> Block hat eine wichtige Funktion, wenn es darum geht komplexere Programme zu erstellen. Dann reicht es nämlich nicht aus einfach 
-            nur einen fest programmierten Ablauf auszuführen. Durch den <code>falls</code> Block lassen sich Verzweigungen erstellen, sodass der Programmablauf bei geänderten Verhältnissen variiert.
+            Der <code>falls</code> Block hat eine wichtige Funktion, wenn es darum geht komplexere Programme zu erstellen. Häufig reicht ein fest programmierten Ablauf nicht aus.
+ 	    Durch den <code>falls</code> Block lassen sich Verzweigungen erstellen, sodass der Programmablauf bei geänderten Verhältnissen variieren kann.
             <br>
-            Es geht konret darum eine vorgegebene Bedingung zu überprüfen und daraufhin zu entscheiden, ob der darin eingefügte Code ausgeführt oder übersprungen werden soll.
+            Es geht darum eine vorgegebene Bedingung zu überprüfen und daraufhin zu entscheiden, ob der darin eingefügte Code ausgeführt oder übersprungen werden soll.
             Dieses Verfahren wird nahezu überall in der Programmentwicklung eingesetzt.
         </p>
         <h2 class="unterueberschrift">teste</h2>
         <p>
             In den <code>teste</code> Parameter wird eine Bedingung eingesetzt. Diese kann nur zwei mögliche Zustände haben. Entweder die Bedingung ist wahr (<code>true</code>) oder falsch (<code>false</code>). 
-            Es kann ein digitaler Eingang eingesetzt werden, an dem entweder ein Signal anliegt, dann ist dieser wahr und der Code wird ausgeführt oder wenn kein Signal anliegt und die Bedingung nicht erfüllt ist 
-            der Code dann eben nicht ausgeführt wird.
+            Es kann ein digitaler Eingang eingesetzt werden, an dem entweder ein Signal anliegt, dann ist dieser wahr und der Code wird ausgeführt oder wenn kein Signal anliegt und damit die Bedingung nicht erfüllt ist, 
+            der Code dann nicht ausgeführt wird.
             <br><br>
             Es können auch zwei Variablen oder eine Variable mit einem festen Wert verglichen werden. Zum Beispiel, dass die Temperatur eines Sensors über 28°C liegen muss um einen Pin umzuschalten, der dann einen 
             Ventilator aktiviert. Weiter unten wird dies in einem <a href="#if-besipiel">Beispiel</a> erklärt.
@@ -86,4 +86,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/less.html b/src/main/webapp/com/ardublock/reference/less.html
index 30aa4b9..517f580 100644
--- a/src/main/webapp/com/ardublock/reference/less.html
+++ b/src/main/webapp/com/ardublock/reference/less.html
@@ -36,10 +36,10 @@
             Es können fest Programmierte Zahlenwerte, analoge Eingänge oder analoge Variablen miteinander verglichen werden. 
             Jedoch können pro <code>&lt;</code> Block immer nur zwei Größen auf einmal verglichen werden. 
             Der <code>&lt;</code> Block ist <code>true</code>, wenn die Größe im rechten Feld größer als die im linken Feld des Blocks ist. 
-            <br>
-            Ist die Größe im linken Feld größer, als die im rechten Feld, dann ist der Block an sich <code>false</code>. 
-            Ist die Größe im rechten Feld größer, als die im linken Feld, dann ist der Block an sich <code>true</code>. 
-            Haben beide Größen den gleichen Wert, dann ist der Block an sich <code>false</code>. 
+            <br><br>
+            Ist der Wert im linken Feld größer, als die im rechten Feld, dann ist der Block <code>false</code>. <br>
+            Ist der Wert im rechten Feld größer, als die im linken Feld, dann ist der Block <code>true</code>. <br>
+            Sind beide Werte gleich groß, dann ist der Block <code>false</code>. 
             <br><br>
             Wenn man mit der Maus über dem Block schwebt, dann erscheint ein kleiner Pfeil nach unten. 
             Klickt man diesen mit der linken Maustaste, dann öffnet sich ein Dropdown Menü und der <code>&lt;</code> Block kann folgende Blöcke umgewandelt werden: 
@@ -87,4 +87,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/less_equal.html b/src/main/webapp/com/ardublock/reference/less_equal.html
index fd8eb06..25cf71f 100644
--- a/src/main/webapp/com/ardublock/reference/less_equal.html
+++ b/src/main/webapp/com/ardublock/reference/less_equal.html
@@ -36,10 +36,10 @@
             Es können fest Programmierte Zahlenwerte, analoge Eingänge oder analoge Variablen miteinander verglichen werden. 
             Jedoch können pro <code>&lt;=</code> Block immer nur zwei Größen auf einmal verglichen werden. 
             Der <code>&lt;=</code> Block ist <code>true</code>, wenn die Größe im rechten Feld kleiner <b>oder gleich</b> wie die Größe im linken Feld des Blocks ist. 
-            <br>
-            Ist die Größe im rechten Feld größer, als die im linken Feld, dann ist der Block an sich <code>false</code>. 
-            Ist die Größe im linken Feld größer, als die im rechten Feld, dann ist der Block an sich <code>true</code>. 
-            Haben beide Größen den gleichen Wert, dann ist der Block an sich <code>true</code>. 
+            <br><br>
+            Ist der Wert im rechten Feld größer, als die im linken Feld, dann ist der Block <code>false</code>. <br>
+            Ist der Wert im linken Feld größer, als die im rechten Feld, dann ist der Block <code>true</code>. <br>
+            Sind beide Werte gleich groß, dann ist der Block <code>true</code>. 
             <br><br>
             Wenn man mit der Maus über dem Block schwebt, dann erscheint ein kleiner Pfeil nach unten. 
             Klickt man diesen mit der linken Maustaste, dann öffnet sich ein Dropdown Menü und der <code>&lt;=</code> Block kann folgende Blöcke umgewandelt werden: 
@@ -83,4 +83,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/local_variable_digital.html b/src/main/webapp/com/ardublock/reference/local_variable_digital.html
index 12b7ebb..30b417e 100644
--- a/src/main/webapp/com/ardublock/reference/local_variable_digital.html
+++ b/src/main/webapp/com/ardublock/reference/local_variable_digital.html
@@ -34,29 +34,41 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-           Digitale Variablen sind in der Arduino Programmierung sehr nützlich. 
-           Mit ihnen lassen sich verschiedene Zustände abbilden. 
+           Mit digitalen Variablen lassen sich digitale Zustände speichern. 
            Eine digitale Variable kann nur zwei Zustände annehmen. 
-           Entweder ist sie wahr (<code>true / HIGH</code>) oder falsch (<code>false / LOW</code>).
+           Entweder ist sie wahr (<code>true | HIGH</code>) oder falsch (<code>false | LOW</code>).
            <br>
-           
-           Der Block in dieser Referenz ist für eine <b>lokale</b> digitale Variable. 
+           Der Block in dieser Referenz ist eine <b>lokale</b> digitale Variable. 
            Sie kann also nicht im gesamten Code an unterschiedlichen Stellen verwendet werden. 
            Wenn die lokale digitale Variable beispielsweise innerhalb einer <code>solange</code> Schleife das erste mal auftaucht und gesetzt wird, 
-           dann kann sie auch nur dort verwendet werden. 
+           dann kann sie auch nur dort verwendet werden. Außerhalb dieser Schleife existiert sie dann nicht.
            <br>
            Sobald der Block, in dem die lokale Variable das erste mal auftaucht abgearbeitet wurde, hört diese auf zu existieren. 
            Der <code>lokale digitale Variable</code> Block kann in verschiedenen anderen Blöcken eingesetzt werden. 
-           Zum Beispiel als <code>teste</code> Bedingung in <code>falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen. ( <code>UND / ODER / == / != </code>).
+           Zum Beispiel als <code>teste</code> Bedingung in <code>falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen. ( <code>UND | ODER | == | != </code>).
            <br><br>
            Der Name der Variable kann verändert werden. 
            Der Standardname nach dem Platzieren des Block lautet <code>lokale_digitale_Variable</code>. 
            Wenn man mit einem Linksklick auf den Block klickt, dann wird der Bearbeitungsmodus aktiviert und der Name kann geändert werden. 
            Mit der Enter-Taste kann der Bearbeitungsmodus wieder verlassen werden. 
            <br>
-           Wenn die Variable später im Code noch einmal verwendet werden soll, dann muss der Block gleich benannt werden. 
+           Wenn die Variable später im Code noch einmal verwendet werden soll, dann muss der Block exakt gleich (auch Groß-/Kleinschreibung) benannt werden. 
            <br><br>
-           <b style="color: red;">Achtung: </b>Der Variablenname darf keine Umlaute (ä, ö, ü) enthalten, da die Arduino IDE den Code sonst nicht auf das Board hochlöaden kann. 
+            <b>Warum sollte man lokale Variablen verwenden?</b>
+            <ul>
+            	<li>Lokale Variablen erhöhen die Übersichtlichkeit in größeren Programmen, in dem viele Variablen benötigt werden.</li>
+            	<li>Es können auch mehrere lokale Variablen mit den gleichen Name an verschiedenen Stellen verwendet werden.</li>
+	    	<li>Lokale Variablen können nicht aus versehen an anderer Stelle überschrieben werden.</li>
+            	<li>Es wird auch der Programmspeicher entlastet.</li>
+            </ul>
+            <b style="color: red;">Achtung bei Variablennamen:</b>
+	    <ul>
+	       <li>beginnen immer mit einem Kleinbuchstaben</li>
+	       <li>werden, wenn sie aus mehreren orten bestehen, durch CamelCase-Schreibweise (beispielVariable) oder _ getrennt (beispiel_variable)</li>
+	       <li>dürfen keine Leerzeichen oder Sonderzeichen (außer - und _ ) enthalten</li>
+	       <li>dürfen nicht mit Ziffern beginnen</li>
+  	       <li>dürfen keine Umlaute (ä, ö, ü) enthalten</li>
+	   </ul>
          </p>
         <h2 class="unterueberschrift" id="code">Code</h2>
         <p>          
@@ -75,4 +87,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/local_variable_number.html b/src/main/webapp/com/ardublock/reference/local_variable_number.html
index d429953..606fbfc 100644
--- a/src/main/webapp/com/ardublock/reference/local_variable_number.html
+++ b/src/main/webapp/com/ardublock/reference/local_variable_number.html
@@ -35,35 +35,39 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Der <code>lokale analoge Variable</code> Block kann jeden <b>ganzen</b> Wert zwischen -32,768 und 32,768 annehmen. 
-            Er kann überall eingesetzt werden, wo eine analoge Größe eingesetzt werden kann (hexagonale Form). 
-            Zum Beispiel beim Setzen von lokalen oder globalen analogen Variablen, in Blöcken zum Vergleich analoger Größen 
-            z.B.( <code>UND / ODER / == / != / &lt; / &gt;</code> usw...), 
+            Mit analogen Variablen lassen sich analoge Werte (-32.768 bis +32.768) speichern.
+	    <br>
+            Der Block in dieser Referenz ist für eine <b>lokale</b> analoge Variable.
+            Sie kann also nicht im gesamten Code an unterschiedlichen Stellen verwendet werden. 
+            Wenn die lokale analoge Variable beispielsweise innerhalb einer <code>solange</code> Schleife das erste mal auftaucht und gesetzt wird, 
+            dann kann sie auch nur dort verwendet werden. Außerhalb dieser Schleife existiert sie dann nicht.
+            <br>
+            Sobald der Block, in dem die lokale Variable das erste mal auftaucht abgearbeitet wurde, hört diese auf zu existieren. 
+            Die <code>lokale analoge Variable</code> kann überall eingesetzt werden, wo eine analoge Größe eingesetzt werden kann (hexagonale Form). 
+            Zum Beispiel beim Setzen weiteren analogen Variablen, in Blöcken zum Vergleich analoger Größen 
+            z.B.( <code>UND | ODER | == | != /| &lt; | &gt;</code> usw...), 
             beim Setzen von analogen Ausgängen oder beim Speichern und Verarbeiten von analogen Eingangssignalen. 
             <br><br>
-            Der Name der Variable kann verändert werden. Der Standardname nach dem Platzieren des Block lautet <code>lokale_analoge_Variable</code>. 
-            Wenn man mit der linken Maustaste auf den Block klickt, dann wird der Bearbeitungsmodus aktiviert und der Name kann geändert werden. 
-            Mit der Enter-Taste kann der Bearbeitungsmodus wieder verlassen werden.
-            <br>
-            Wenn die Variable später im Code noch einmal verwendet werden soll, dann muss der Block an der zweiten Stelle gleich benannt werden. 
-            Die Variable ist allerdings eine lokale. 
-            Das heißt sie kann nicht überall im Code verwendet werden. 
-            Sie kann nur in dem Bereich/ der Schleife/ dem Block verwendet werden, in dem sie zum ersten mal angelegt wurde. 
-            <br> <br>
-            <b>Beispiel:</b> Eine lokale Variable wird innerhalb einer <code>solange</code> Schleife zum ersten mal verwendet. 
-            Dann kann die lokale Variable nur innerhalb der <code>solange</code> Schleife verwendet werden. 
-            Bei jedem mal, wenn die Schleife einen neuen Durchlauf startet wird die Variable neu erschaffen und auf den entsprechenden Wert 
-            gesetzt. 
+            Der Name der Variable kann verändert werden. 
+            Der Standardname nach dem Platzieren des Block lautet <code>lokale_analoge_Variable</code>. 
+            Wenn man mit einem Linksklick auf den Block klickt, dann wird der Bearbeitungsmodus aktiviert und der Name kann geändert werden. 
+            Mit der Enter-Taste kann der Bearbeitungsmodus wieder verlassen werden. 
             <br><br>
-            Auf den ersten Blick scheinen lokale Variablen recht ungeschickt. 
-            Warum sollte man sie verwenden?
-            <br>
-            Sie haben auch Vorteile. 
-            Zum Beispiel erhöhen sie die Übersichtlichkeit in größeren Programmen, in dem viele Variablen benötigt werden, 
-            da nicht alle Variablen außerhalb der <code>loop</code> Funktion initialisiert werden müssen. 
-            Es können auch mehrere lokale Variablen mit den gleichen Namen verwendet werden, wenn sie sich nicht in die 
-            quere kommen. So muss sich nicht für jede Variable in größeren Programmen ein individueller Name ausgedacht werden. 
-            Es wird auch der Programmspeicher entlastet. 
+            <b>Warum sollte man lokale Variablen verwenden?</b>
+            <ul>
+            	<li>Lokale Variablen erhöhen die Übersichtlichkeit in größeren Programmen, in dem viele Variablen benötigt werden.</li>
+            	<li>Es können auch mehrere lokale Variablen mit den gleichen Name an verschiedenen Stellen verwendet werden.</li>
+	    	<li>Lokale Variablen können nicht aus versehen an anderer Stelle überschrieben werden.</li>
+            	<li>Es wird auch der Programmspeicher entlastet.</li>
+            </ul>
+            <b style="color: red;">Achtung bei Variablennamen:</b>
+	    <ul>
+	       <li>beginnen immer mit einem Kleinbuchstaben</li>
+	       <li>werden, wenn sie aus mehreren orten bestehen, durch CamelCase-Schreibweise (beispielVariable) oder _ getrennt (beispiel_variable)</li>
+	       <li>dürfen keine Leerzeichen oder Sonderzeichen (außer - und _ ) enthalten</li>
+	       <li>dürfen nicht mit Ziffern beginnen</li>
+  	       <li>dürfen keine Umlaute (ä, ö, ü) enthalten</li>
+	   </ul>
          </p>
         <h2 class="unterueberschrift" id="code">Code</h2>
         <p>          
@@ -81,4 +85,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/loop-beispiel.png b/src/main/webapp/com/ardublock/reference/loop-beispiel-1.png
similarity index 100%
rename from src/main/webapp/com/ardublock/reference/loop-beispiel.png
rename to src/main/webapp/com/ardublock/reference/loop-beispiel-1.png
diff --git a/src/main/webapp/com/ardublock/reference/loop.html b/src/main/webapp/com/ardublock/reference/loop.html
index 1e03129..3e7ce74 100644
--- a/src/main/webapp/com/ardublock/reference/loop.html
+++ b/src/main/webapp/com/ardublock/reference/loop.html
@@ -33,23 +33,24 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Der <code>wiederhole fortlaufend</code> Block ist ein wichtiger Bestandteil eines Arduinoprogramms. Alle Programme müssen eine Hauptschleife besitzen, um auf den Arduino 
-            hochgeladen werden zu können. Der <code>wiederhole fortlaufend</code> Block ist einer von zwei möglichen Hauptschleifen. Wie der Name bereits aussagt, wird jede Operation die in diesen Block eingefügt wird unendlich
-            oft abgearbeitet. Man spricht auch von einer Schleife. Hier handelt es sich speziell um eine Endlosschleife, da sie keine Abbruchbedingung besitzt, welche die endlose 
-            Ausführung unterbrechen würde.
+            Der <code>wiederhole fortlaufend</code> Block ist die Hauptschleife des Arduino-Programms. Alle Programme müssen eine Hauptschleife besitzen, um auf den Arduino 
+            hochgeladen werden zu können. Der <code>wiederhole fortlaufend</code> Block ist einer von zwei möglichen Hauptschleifen. Wie der Name bereits aussagt, wirden die Blöcke (Befehle) die in diesen Block sind, unendlich
+            oft abgearbeitet. Daher spricht man auch von einer (Endlos-) Schleife.
         </p>
         <h2 class="unterueberschrift">mache</h2>
         <p>
             Dem Block können im <code>mache</code> Feld verschiedene beliegig viele weitere Blöcke zugeordnet werden.
             In der Reihenfolge, in welcher diese in angeordnet sind, werden sie auch vom Arduino ausgeführt. 
-            Dabei kann es sich um Bausteine handeln, welche eine bestimmte Zeit verzögern, einen Ausgang setzen, einen Eingang auslesen oder sogar um weitere Schleifen.
-            Um einen Block hinzuzufügen muss dieser mit der Maus an die entsprechende Stelle gezogen werden. Wenn der Block dann erkannt wird ist ein klicken zu hören und der neue Block rastet an dem Vorherigen ein und verbindet sich mit diesem. 
+            Um einen Block hinzuzufügen muss dieser mit der Maus an die entsprechende Stelle gezogen werden. Wenn der Block dann erkannt wird ist ein klicken zu hören und der neue Block rastet an dem vorherigen ein und verbindet sich mit diesem. 
             So können mehrere Blöcke untereinander platziert werden.
+            <br><br>
+	    <b style="color: red;">Achtung:</b> Nur Blöcke innerhalb von <code>mache</code> werden ausgeführt.<br>
+            Sollen Blöcke testweise nicht ausgeführt werden, reicht es, diese aus dem <code>wiederhole fortlaufend</code> Block zu nehmen und auf "die Seite" zu legen.
         </p>
         <h2 class="unterueberschrift">Beispiel</h2>
         <p>
-            Ein anschauliches und einfaches Beispiel wäre ein "Bink" Programm.
-            Hier wird eine LED über einen Vorwiderstand an einen digitalen Pin des Arduinos angeschlossen. In diesem Beispiel an Pin 2. Dieser wird dann jeweils eine Sekunde auf 5 Volt und anschließend eine Sekunde 
+            Ein anschauliches und einfaches Beispiel ist ein "Bink" Programm.
+            Hier wird eine LED an einen digitalen Pin des Arduinos angeschlossen. In diesem Beispiel an Pin 2. Dieser wird dann jeweils eine Sekunde auf 5 Volt und anschließend eine Sekunde 
             auf 0 Volt geschaltet. Dadurch leuchtet die LED eine Sekunde und erlischt danach für eine Sekunde. Diese Operationen werden dann unendlich oft wiederholt.
             <br><br>
             Dazu benötigt man einen <code>wiederhole fortlaufend</code> Block, zwei <code>digitalWrite</code> Blöcke und zwei <code>warte Millisekunden</code> Blöcke.
@@ -81,4 +82,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/map.html b/src/main/webapp/com/ardublock/reference/map.html
index 4867119..33044ac 100644
--- a/src/main/webapp/com/ardublock/reference/map.html
+++ b/src/main/webapp/com/ardublock/reference/map.html
@@ -41,7 +41,7 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Der <code>zuordnen</code> Block ist ein Block, der zur Signalanpassing dient. 
+            Der <code>zuordnen</code> Block zur Umrechnung von Wertebereichen verwendet. 
             Mit ihm lassen sich Werte aus einem Zahlenbereich in einen anderen Zahlenbereich übertragen. 
             Beim Übertragen werden nur ganze Zahlen generiert. 
             Es gibt keine Kommazahlen oder Brüche. 
@@ -142,4 +142,4 @@
     </div>
 </article>
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/map_common.html b/src/main/webapp/com/ardublock/reference/map_common.html
index 2ccfb66..5ae1a24 100644
--- a/src/main/webapp/com/ardublock/reference/map_common.html
+++ b/src/main/webapp/com/ardublock/reference/map_common.html
@@ -37,48 +37,25 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Der <code>map [0, 1023] to [0, 255]</code> Block ist ein Block, der zur Signalanpassing dient. 
-            Mit ihm lassen sich Werte aus dem Zahlenbereich von 0 bis 1023 in den Zahlenbereich von 0 bis 255 übertragen. 
-            Beim Übertragen werden nur ganze Zahlen generiert. 
-            Es gibt keine Kommazahlen oder Brüche. 
-            Wenn ein Wert hintzer dem Komma entsteht, dann wird dieser abgeschnitten. 
+            Mit dem <code>map [0, 1023] to [0, 255]</code> Block können Werte aus dem Zahlenbereich <code>0 bis 1023</code> in den Bereich <code>0 bis 255</code> umgerechnet werden.
+            Die zwei Wertebereiche werden beim Einlesen analoger Eingänge (0 - 1023) und beim Setzen von anlogen Ausgängen (0 - 255) verwendet.
+            Dieser Block entspricht dem <code>zuordnen</code> Block mit fest eingestellten Zahlenwerten.
         </p>
         <h2 class="unterueberschrift" id="block_beschreibung">Erklärung</h2>
         <p>
-            In der Informatik wird oft mit bestimmten Zahlenbereichen gearbeitet. 
-            Dabei sind häufig Potenzen von 2 verwendet. 
-            <br>
-            Hier: Von 0 bis 1023 sind es 1024 Werte. 
-            1024 ist 2 hoch 10. 
-            <br>
-            Oder: Von 0 bis 255 sind es 256 Werte. 
-            256 ist 2 hoch 8.
-            <br><br>
-            <b>Beispiel: </b>Beim Befehl <code>analogRead</code> kann der Eingang an einem analogen Pin gemessen werden. 
-            Dabei wird keine Spannung direkt gemessen, sondern man bekommt nur Werte von 0 bis 1023. 
-            Diesen analogen Eingang kann man nun in den <code>map [0, 1023] to [0, 255]</code> Block einsetzen um den Eingangswert in aus dem Zahlenbereich von 0 bis 1023 in den 
-            Zahlenbereich von 0 bis 255 zu transferieren. 
-            <br>
-            Diese Anwendung ist allerdings sehr spezifisch, kommt jedoch häufig zum einsatz, wenn Sensoren ausgelesen oder Aktoren (z.B. ein Motor) angesteuert werden sollen. 
-            <br><br>
-            <b>Berechnung: </b>Hier noch eine Erklärung, wie man den Wert von Hand berechnen könnte. 
-            Hier: Es soll die Zahl <b style="color: red;">350</b> vom Zahlenbereich [0, 1023] in den Zahlenbereich [0, 255] transferiert werden. 
-            <br>
-            <div class="fraction">
-                <span class="top">255</span> &#xb7; <b style="color: red;">350</b>
-                <span class="bottom">1023</span>
-                <p>
-                    = 87,24 &rarr; 87
-                </p>
-            </div>
-            <br><br>
+            Der Block rechnet dabei linear zwischen den beiden Zahlenbereichen um:<br>
+            Liegt der Eingangswert am unteren Ende des Eingangsbereichs (hier 0), dann liegt der Ausgangswert auch am unteren Ende (hier 0).<br>
+            Liegt der Eingangswert in der Mitte des Eingangsbereichs (hier 512), dann liegt der Ausgangswert auch in der Mitte (hier 127).<br>
+            Liegt der Eingangswert am unteren Ende des Eingangsbereichs (hier 1023), dann liegt der Ausgangswert auch am unteren Ende (hier 255).<br>
+            <b style="color: red;">Achtung: </b>Das bedeutet auch, dass der <b>Ausgangswert</b> sowohl  <b>größer</b> als auch  <b>kleiner als</b> der eingestellte  <b>Ausgangsbereich</b> (0 - 255) werden kann.
+           
             In ArduBlock: 
             <br><br>
             <img src="map_common-beispiel-1.png" alt="beispiel-zum-map-common-block">
         </p>
         <h2 class="unterueberschrift" id="wert">Wert</h2>
         <p>
-            Der <code>Wert</code> Parameter ist einfach dazu da, um den Zahlenwert aus dem Zahlenbereich 0 bis 1024 einzutragen, der in den Zahlenbereich von 0 bis 255 übertragen werden soll. 
+            Der <code>Wert</code> Parameter ist einfach dazu da, um den Zahlenwert aus dem Zahlenbereich 0 bis 1023 einzutragen, der in den Zahlenbereich von 0 bis 255 übertragen werden soll. 
             Als <code>Wert</code> Parameter kann auch eine analoge Variable oder ein analoger Eingang des Arduinos verwendet werden. 
             <b style="color: red;">Achtung: </b>Natürlich muss der <code>Wert</code> Parameter zwischen 0 und 1024 liegen. 
             Es kann sich auch um eine Kommazahl handeln. 
@@ -94,4 +71,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/variable_digital.html b/src/main/webapp/com/ardublock/reference/variable_digital.html
index e5e8a60..c3f5242 100644
--- a/src/main/webapp/com/ardublock/reference/variable_digital.html
+++ b/src/main/webapp/com/ardublock/reference/variable_digital.html
@@ -34,13 +34,12 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-           Digitale Variablen sind in der Arduino Programmierung sehr nützlich. 
-           Mit ihnen lassen sich verschiedene Zustände abbilden. 
+           Mit digitale Variablen lassen sich digitale Zustände speichern. 
            Eine digitale Variable kann nur zwei Zustände annehmen. 
            Entweder ist sie wahr (<code>true / HIGH</code>) oder falsch (<code>false / LOW</code>).
            <br>
            Sie kann in verschiedenen anderen Blöcken eingesetzt werden. 
-           Der Block in dieser Referenz ist für eine <b>globale</b> digitale Variable. 
+           Der Block in dieser Referenz ist für eine <b>globale</b> (überall gültige) digitale Variable. 
            Sie kann also im gesamten Code an unterschiedlichen Stellen verwendet werden. 
            Zum Beispiel als <code>teste</code> Bedingung in <code>falls</code> Blöcken oder in Blöcken zum Vergleich digitaler Größen. ( <code>UND / ODER / == / != </code>).
            <br><br>
@@ -51,7 +50,14 @@
            <br>
            Wenn die Variable später im Code noch einmal verwendet werden soll, dann muss der Block gleich benannt werden. 
            <br><br>
-           <b style="color: red;">Achtung: </b>Der Variablenname darf keine Umlaute (ä, ö, ü) enthalten, da die Arduino IDE den Code sonst nicht auf das Board hochladen kann. 
+           <b style="color: red;">Achtung bei Variablennamen:</b>
+	    <ul>
+	       <li>beginnen immer mit einem Kleinbuchstaben</li>
+	       <li>werden, wenn sie aus mehreren orten bestehen, durch CamelCase-Schreibweise (beispielVariable) oder _ getrennt (beispiel_variable)</li>
+	       <li>dürfen keine Leerzeichen oder Sonderzeichen (außer - und _ ) enthalten</li>
+	       <li>dürfen nicht mit Ziffern beginnen</li>
+  	       <li>dürfen keine Umlaute (ä, ö, ü) enthalten</li>
+	   </ul>
          </p>
         <h2 class="unterueberschrift" id="code">Code</h2>
         <p>          
@@ -69,4 +75,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/com/ardublock/reference/variable_number.html b/src/main/webapp/com/ardublock/reference/variable_number.html
index 4885998..ea0fac5 100644
--- a/src/main/webapp/com/ardublock/reference/variable_number.html
+++ b/src/main/webapp/com/ardublock/reference/variable_number.html
@@ -35,17 +35,36 @@
     <div>
         <h2 class="unterueberschrift" id="block_beschreibung">Block</h2>
         <p>
-            Der <code>analoge Variable</code> Block kann jeden <b>ganzen</b> Wert zwischen -32,768 und 32,768 annehmen. 
-            Er kann überall eingesetzt werden, wo eine analoge Größe eingesetzt werden kann (hexagonale Form). 
-            Zum Beispiel beim Setzen von lokalen oder globalen analogen Variablen, in Blöcken zum Vergleich analoger Größen 
-            z.B.( <code>UND / ODER / == / != / &lt; / &gt;</code> usw...), 
+            Mit analogen Variablen lassen sich analoge Werte (-32.768 bis +32.768) speichern.
+	    <br>
+            Der Block in dieser Referenz ist für eine <b>globale</b> (überall gültige) analoge Variable.
+            Sie kann also im gesamten Code an unterschiedlichen Stellen verwendet werden. 
+            <br>
+            Die <code>analoge Variable</code> kann überall eingesetzt werden, wo eine analoge Größe eingesetzt werden kann (hexagonale Form). 
+            Zum Beispiel beim Setzen weiteren analogen Variablen, in Blöcken zum Vergleich analoger Größen 
+            z.B.( <code>UND | ODER | == | != /| &lt; | &gt;</code> usw...), 
             beim Setzen von analogen Ausgängen oder beim Speichern und Verarbeiten von analogen Eingangssignalen. 
             <br><br>
-            Der Name der Variable kann verändert werden. Der Standardname nach dem Platzieren des Block lautet <code>analoge_Variable</code>. 
-            Wenn man mit der linken Maustaste auf den Block klickt, dann wird der Bearbeitungsmodus aktiviert und der Name kann geändert werden. 
-            Mit der Enter-Taste kann der Bearbeitungsmodus wieder verlassen werden.
-            <br>
-            Wenn die Variable später im Code noch einmal verwendet werden soll, dann muss der Block an der zweiten Stelle gleich benannt werden.
+            Der Name der Variable kann verändert werden. 
+            Der Standardname nach dem Platzieren des Block lautet <code>lokale_analoge_Variable</code>. 
+            Wenn man mit einem Linksklick auf den Block klickt, dann wird der Bearbeitungsmodus aktiviert und der Name kann geändert werden. 
+            Mit der Enter-Taste kann der Bearbeitungsmodus wieder verlassen werden. 
+            <br><br>
+            <b>Warum sollte man lokale Variablen verwenden?</b>
+            <ul>
+            	<li>Lokale Variablen erhöhen die Übersichtlichkeit in größeren Programmen, in dem viele Variablen benötigt werden.</li>
+            	<li>Es können auch mehrere lokale Variablen mit den gleichen Name an verschiedenen Stellen verwendet werden.</li>
+	    	<li>Lokale Variablen können nicht aus versehen an anderer Stelle überschrieben werden.</li>
+            	<li>Es wird auch der Programmspeicher entlastet.</li>
+            </ul>
+            <b style="color: red;">Achtung bei Variablennamen:</b>
+	    <ul>
+	       <li>beginnen immer mit einem Kleinbuchstaben</li>
+	       <li>werden, wenn sie aus mehreren orten bestehen, durch CamelCase-Schreibweise (beispielVariable) oder _ getrennt (beispiel_variable)</li>
+	       <li>dürfen keine Leerzeichen oder Sonderzeichen (außer - und _ ) enthalten</li>
+	       <li>dürfen nicht mit Ziffern beginnen</li>
+  	       <li>dürfen keine Umlaute (ä, ö, ü) enthalten</li>
+	   </ul>
          </p>
         <h2 class="unterueberschrift" id="code">Code</h2>
         <p>          
@@ -62,4 +81,4 @@
 </article>
 
 </body>
-</html>
\ No newline at end of file
+</html>
-- 
GitLab