|
@@ -203,13 +203,19 @@ Damit Methoden einer Klasse verwendet werden können, muss zunächst ein Objekt
|
|
|
* Beispiel 1:
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
```
|
|
|
|
|
|
* Beispiel 2:
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse für LCD-Shield Version 5 und Standardeinstellungen
|
|
|
// für LEDs und Taster.
|
|
|
HSA_LCD_Shield Display(LCD_VERSION_5);
|
|
@@ -218,6 +224,9 @@ Damit Methoden einer Klasse verwendet werden können, muss zunächst ein Objekt
|
|
|
* Beispiel 3:
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse ohne Initialisierung der Taster und LEDs
|
|
|
// und mit Standardeinstellungen für die LCD-Shield Version.
|
|
|
HSA_LCD_Shield Display(CONFIG_L0B0);
|
|
@@ -225,6 +234,9 @@ Damit Methoden einer Klasse verwendet werden können, muss zunächst ein Objekt
|
|
|
* Beispiel 4:
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse für LCD-Shield Version 5, ohne Initialisierung der
|
|
|
// LEDs aber mit Initialisierung der Taster.
|
|
|
HSA_LCD_Shield Display(LCD_VERSION_5, CONFIG_L0B1);
|
|
@@ -233,6 +245,9 @@ Damit Methoden einer Klasse verwendet werden können, muss zunächst ein Objekt
|
|
|
* Beispiel 5:
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse durch Vererbung mit Standardeinstellungen.
|
|
|
HSA_LCD_Shield Display = HSA_LCD_Shield();
|
|
|
```
|
|
@@ -243,7 +258,7 @@ Damit Methoden einer Klasse verwendet werden können, muss zunächst ein Objekt
|
|
|
<u>Definition:</u>
|
|
|
|
|
|
```arduino
|
|
|
- ~<Objekt>(void);
|
|
|
+ <Objekt>.~HSA_LCD_Shield(void);
|
|
|
```
|
|
|
|
|
|
<u>Beschreibung:</u>
|
|
@@ -253,14 +268,23 @@ Damit Methoden einer Klasse verwendet werden können, muss zunächst ein Objekt
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
+
|
|
|
+ void setup(void) {
|
|
|
+ // Führe andere Anweisungen aus!!
|
|
|
+ // ...
|
|
|
+
|
|
|
+ // Entferne Objekt der Klasse wieder.
|
|
|
+ Display.~HSA_LCD_Shield();
|
|
|
+ }
|
|
|
|
|
|
- // Führe andere Anweisungen aus!!
|
|
|
- // ...
|
|
|
+ void loop(void) {
|
|
|
|
|
|
- // Entferne Objekt der Klasse wieder.
|
|
|
- ~Display();
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='Methoden'/>
|
|
@@ -304,6 +328,7 @@ zur Verfügung.
|
|
|
<u>Rückgabewert</u>
|
|
|
|
|
|
`bool`:
|
|
|
+
|
|
|
* `false`: Es ist ein Fehler bei der Konfiguration aufgetreten. Überprüfen Sie die übergebenen Parameter bei der Objekterstellung.
|
|
|
* `true`: Die Konfiguration war erfolgreich.
|
|
|
|
|
@@ -311,8 +336,11 @@ zur Verfügung.
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
|
|
|
void setup(void) {
|
|
|
// Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
@@ -323,6 +351,9 @@ zur Verfügung.
|
|
|
else Serial.println("Konfiguration nicht erfolgreich!");
|
|
|
}
|
|
|
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='returnVersion'/>
|
|
@@ -346,8 +377,11 @@ zur Verfügung.
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
|
|
|
void setup(void) {
|
|
|
// Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
@@ -355,9 +389,13 @@ zur Verfügung.
|
|
|
|
|
|
// Ausgabe der LCD-Shield Versionsnummer
|
|
|
Serial.print("Es wird die LCD-Shield Version ");
|
|
|
- Serial.print(Display.returnVersion(),DEZ);
|
|
|
+ Serial.print(Display.returnVersion(),DEC);
|
|
|
Serial.println(" verwendet.");
|
|
|
}
|
|
|
+
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='returnConfig'/>
|
|
@@ -381,8 +419,11 @@ zur Verfügung.
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
|
|
|
void setup(void) {
|
|
|
// Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
@@ -393,6 +434,10 @@ zur Verfügung.
|
|
|
Serial.print(Display.returnConfig());
|
|
|
Serial.println("\" verwendet.");
|
|
|
}
|
|
|
+
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='returnAddress'/>
|
|
@@ -417,8 +462,11 @@ zur Verfügung.
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
|
|
|
void setup(void) {
|
|
|
// Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
@@ -429,6 +477,10 @@ zur Verfügung.
|
|
|
Serial.print(Display.returnAddress(),HEX);
|
|
|
Serial.println(".");
|
|
|
}
|
|
|
+
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='lcdBacklight'/>
|
|
@@ -438,7 +490,7 @@ zur Verfügung.
|
|
|
<u>Definition:</u>
|
|
|
|
|
|
```arduino
|
|
|
- void HSA_LCD_Shield.lcdBacklight(bool <state>);
|
|
|
+ bool HSA_LCD_Shield.lcdBacklight(bool <state>);
|
|
|
```
|
|
|
|
|
|
<u>Beschreibung:</u>
|
|
@@ -452,26 +504,46 @@ zur Verfügung.
|
|
|
* `HIGH` oder `true`: schaltet die LCD-Hintergrundbeleuchtung ein
|
|
|
* `LOW` oder `false`: schaltet die LCD-Hintergrundbeleuchtung aus
|
|
|
|
|
|
+ <u>Rückgabewert</u>
|
|
|
+
|
|
|
+ `bool`:
|
|
|
+
|
|
|
+ * `false`: LCD-Backlight nicht konfiguriert
|
|
|
+ * `true`: LCD-Backlight erfolgreich angesteuert
|
|
|
+
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
|
|
|
void setup(void) {
|
|
|
+ // Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
|
+ Serial.begin(9600);
|
|
|
+
|
|
|
// Initialisiere LEDs/Taster und LC-Display mit der standard I²C-Adresse
|
|
|
Display.begin();
|
|
|
|
|
|
// LCD-Backlight 6 mal mit 2 Hz blinken lassen
|
|
|
for(int i = 0x00; i < 0x06; i++) {
|
|
|
- Display.lcdBacklight(HIGH);
|
|
|
- delay(0xFA);
|
|
|
- Display.lcdBacklight(LOW);
|
|
|
- delay(0xFA);
|
|
|
+ if(Display.lcdBacklight(HIGH))
|
|
|
+ Serial.println("LCD-Backlight eingeschaltet.");
|
|
|
+ delay(250);
|
|
|
+ if(Display.lcdBacklight(LOW))
|
|
|
+ Serial.println("LCD-Backlight ausgeschaltet.");
|
|
|
+ delay(250);
|
|
|
}
|
|
|
|
|
|
// LCD-Backlight dauerhaft einschalten
|
|
|
- Display.lcdBacklight(HIGH);
|
|
|
+ if(Display.lcdBacklight(HIGH))
|
|
|
+ Serial.println("LCD-Backlight eingeschaltet.");
|
|
|
+ }
|
|
|
+
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
}
|
|
|
```
|
|
|
|
|
@@ -491,10 +563,15 @@ zur Verfügung.
|
|
|
|
|
|
<u>Parameter:</u>
|
|
|
|
|
|
- `<led>`:
|
|
|
+ * `<led>`:
|
|
|
|
|
|
- * `LED_RED`: die rote LED wird angesteuert
|
|
|
- * `LED_GREEN`: die grüne LED wird angesteuert
|
|
|
+ * `LED_RED`: die rote LED wird angesteuert
|
|
|
+ * `LED_GREEN`: die grüne LED wird angesteuert
|
|
|
+
|
|
|
+ * `<state>`:
|
|
|
+
|
|
|
+ * `HIGH` oder `true`: schaltet die LED ein
|
|
|
+ * `LOW` oder `false`: schaltet die LED aus
|
|
|
|
|
|
<u>Rückgabewert</u>
|
|
|
|
|
@@ -506,23 +583,37 @@ zur Verfügung.
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
|
|
|
void setup(void) {
|
|
|
+ // Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
|
+ Serial.begin(9600);
|
|
|
+
|
|
|
// Initialisiere LEDs/Taster und LC-Display mit der standard I²C-Adresse
|
|
|
Display.begin();
|
|
|
|
|
|
- // LCD-Backlight 6 mal mit 2 Hz blinken lassen
|
|
|
- for(int i = 0x00; i < 0x06; i++) {
|
|
|
- Display.lcdBacklight(HIGH);
|
|
|
- delay(0xFA);
|
|
|
- Display.lcdBacklight(LOW);
|
|
|
- delay(0xFA);
|
|
|
+ // LED grün und rot 10 mal abwechselnd mit
|
|
|
+ // 1 Hz blinken lassen
|
|
|
+ for(int i = 0x00; i < 0x0A; i++) {
|
|
|
+ if(Display.controlLED(LED_GREEN,HIGH))
|
|
|
+ Serial.println("LED gruen eingeschaltet.");
|
|
|
+ if(Display.controlLED(LED_RED,LOW))
|
|
|
+ Serial.println("LED rot ausgeschaltet.\n");
|
|
|
+ delay(500);
|
|
|
+ if(Display.controlLED(LED_GREEN,LOW))
|
|
|
+ Serial.println("LED gruen ausgeschaltet.");
|
|
|
+ if(Display.controlLED(LED_RED,true))
|
|
|
+ Serial.println("LED rot eingeschaltet.\n");
|
|
|
+ delay(500);
|
|
|
}
|
|
|
+ }
|
|
|
|
|
|
- // LCD-Backlight dauerhaft einschalten
|
|
|
- Display.lcdBacklight(HIGH);
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
}
|
|
|
```
|
|
|
|
|
@@ -538,20 +629,49 @@ zur Verfügung.
|
|
|
|
|
|
<u>Beschreibung:</u>
|
|
|
|
|
|
-
|
|
|
+ Mit dieser Methode kann der Status der LEDs auf dem LCD-Shield abgefragt werden. Die LEDs müssen erfolgreich mit der Methode `HSA_LCD_Shield.begin()` initialisiert worden sein.
|
|
|
|
|
|
<u>Parameter:</u>
|
|
|
|
|
|
-
|
|
|
+ `<led>`:
|
|
|
+
|
|
|
+ * `LED_RED`: die rote LED wird angesteuert
|
|
|
+ * `LED_GREEN`: die grüne LED wird angesteuert
|
|
|
|
|
|
<u>Rückgabewert</u>
|
|
|
|
|
|
-
|
|
|
+ `bool`:
|
|
|
+
|
|
|
+ * `false`: LED ist ausgeschaltet, unbekannt oder nicht initialisiert
|
|
|
+ * `true`: LED ist eingeschaltet
|
|
|
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
+ // Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
+
|
|
|
+ void setup(void) {
|
|
|
+ // Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
|
+ Serial.begin(9600);
|
|
|
+
|
|
|
+ // Initialisiere LEDs/Taster und LC-Display mit der standard I²C-Adresse
|
|
|
+ Display.begin();
|
|
|
+
|
|
|
+ // Schalte grüne LED ein
|
|
|
+ Display.controlLED(LED_GREEN,HIGH);
|
|
|
|
|
|
+ // Frage Status der grünen LED ab
|
|
|
+ if(Display.getLED(LED_GREEN))
|
|
|
+ Serial.println("gruene LED ist eingeschaltet.");
|
|
|
+ }
|
|
|
+
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='getButton'/>
|
|
@@ -561,25 +681,58 @@ zur Verfügung.
|
|
|
<u>Definition:</u>
|
|
|
|
|
|
```arduino
|
|
|
- bool HSA_LCD_Shield.getButton(byte <address>);
|
|
|
+ byte HSA_LCD_Shield.getButton(void);
|
|
|
```
|
|
|
|
|
|
<u>Beschreibung:</u>
|
|
|
|
|
|
+ Mit dieser Methode kann der Status der Taster auf dem LCD-Shield abgefragt werden. Die Taster müssen erfolgreich mit der Methode `HSA_LCD_Shield.begin()` initialisiert worden sein.
|
|
|
|
|
|
-
|
|
|
- <u>Parameter:</u>
|
|
|
-
|
|
|
-
|
|
|
+ Eine Tastenentprellung findet nicht statt.
|
|
|
|
|
|
<u>Rückgabewert</u>
|
|
|
|
|
|
-
|
|
|
+ `byte`:
|
|
|
+
|
|
|
+ * `0x00` bzw. `false`: kein oder mehr als ein Taster betätigt oder Taster nicht initialisiert
|
|
|
+ * `0x01` bzw. `BUTTON_UP`: Taster `UP` betätigt
|
|
|
+ * `0x02` bzw. `BUTTON_RIGHT`: Taster `RIGHT` betätigt
|
|
|
+ * `0x03` bzw. `BUTTON_DOWN`: Taster `DOWN` betätigt
|
|
|
+ * `0x04` bzw. `BUTTON_LEFT`: Taster `LEFT` betätigt
|
|
|
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
+ // Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
|
|
|
+ void setup(void) {
|
|
|
+ // Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
|
+ Serial.begin(9600);
|
|
|
+
|
|
|
+ // Initialisiere LEDs/Taster und LC-Display mit der standard I²C-Adresse
|
|
|
+ Display.begin();
|
|
|
+ }
|
|
|
+
|
|
|
+ void loop(void) {
|
|
|
+ // überwache Tasterzustand
|
|
|
+ if(Display.getButton() == BUTTON_UP)
|
|
|
+ Serial.println("Taster \'UP\' betaetigt.");
|
|
|
+ if(Display.getButton() == BUTTON_RIGHT)
|
|
|
+ Serial.println("Taster \'RIGHT\' betaetigt.");
|
|
|
+ if(Display.getButton() == BUTTON_DOWN)
|
|
|
+ Serial.println("Taster \'DOWN\' betaetigt.");
|
|
|
+ if(Display.getButton() == BUTTON_LEFT)
|
|
|
+ Serial.println("Taster \'LEFT\' betaetigt.");
|
|
|
+ if(Display.getButton() == false)
|
|
|
+ Serial.println("Kein Taster betaetigt.");
|
|
|
+
|
|
|
+ // Pause von 500 ms zwischen den Abfragen
|
|
|
+ delay(500);
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='writeRow'/>
|
|
@@ -588,26 +741,74 @@ zur Verfügung.
|
|
|
|
|
|
<u>Definition:</u>
|
|
|
|
|
|
+ Schreibe in alle Zeilen:
|
|
|
+
|
|
|
```arduino
|
|
|
- bool HSA_LCD_Shield.writeRow(byte <address>);
|
|
|
+ bool HSA_LCD_Shield.writeRow(const char* <text>);
|
|
|
```
|
|
|
|
|
|
- <u>Beschreibung:</u>
|
|
|
+ Schreibe in eine Zeile:
|
|
|
|
|
|
+ ```arduino
|
|
|
+ bool HSA_LCD_Shield.writeRow(byte <row>, const char* <text>);
|
|
|
+ ```
|
|
|
+
|
|
|
+ <u>Beschreibung:</u>
|
|
|
|
|
|
+ Mit dieser Methode werden Texte (Strings) auf dem LC-Display geschrieben. Es kann dabei gewählt werden, ob in einer gezielten Zeile oder über alle Zeilen hinweg geschrieben werden soll. Dabei werden die entsprechenden Zeilen komplett überschrieben. Das LC-Display muss erfolgreich mit der Methode `HSA_LCD_Shield.begin()` initialisiert worden sein.
|
|
|
|
|
|
<u>Parameter:</u>
|
|
|
|
|
|
+ * `<text>` *(String)*: Textnachricht, die auf dem LC-Display geschrieben werden soll
|
|
|
|
|
|
+ * `<row>`:
|
|
|
|
|
|
- <u>Rückgabewert</u>
|
|
|
+ * `0x01`: Zeile 1 neu schreiben
|
|
|
+ * `0x02`: Zeile 2 neu schreiben
|
|
|
+ * `0x03`: Zeile 3 neu schreiben
|
|
|
+ * `0x04`: Zeile 4 neu schreiben
|
|
|
|
|
|
+ <u>Rückgabewert</u>
|
|
|
|
|
|
+ `bool`:
|
|
|
+
|
|
|
+ * `false`: LC-Display nicht initialisiert oder Zeilennummer unbekannt
|
|
|
+ * `true`: Textnachricht erfolgreich auf LC-Display geschrieben
|
|
|
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
+ // Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
+
|
|
|
+ void setup(void) {
|
|
|
+ // Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
|
+ Serial.begin(9600);
|
|
|
+
|
|
|
+ // Initialisiere LEDs/Taster und LC-Display mit der standard I²C-Adresse
|
|
|
+ Display.begin();
|
|
|
+
|
|
|
+ // LCD-Backlight dauerhaft einschalten
|
|
|
+ Display.lcdBacklight(HIGH);
|
|
|
|
|
|
+ // "Hallo Welt" auf dem LC-Display schreiben
|
|
|
+ if(Display.writeRow("Hallo Welt"))
|
|
|
+ Serial.println("Text auf LC-Display geschrieben.");
|
|
|
+
|
|
|
+ // Warte 5s
|
|
|
+ delay(5000);
|
|
|
+
|
|
|
+ // "Hallo Welt" in die 3. Zeile auf dem LC-Display schreiben
|
|
|
+ if(Display.writeRow(0x03,"Hallo Welt"))
|
|
|
+ Serial.println("Text auf LC-Display geschrieben.");
|
|
|
+ }
|
|
|
+
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='writeXY'/>
|
|
@@ -617,25 +818,62 @@ zur Verfügung.
|
|
|
<u>Definition:</u>
|
|
|
|
|
|
```arduino
|
|
|
- bool HSA_LCD_Shield.writeXY(byte <address>);
|
|
|
+ bool HSA_LCD_Shield.writeXY(byte <row>, byte <column>, const char* <text>);
|
|
|
```
|
|
|
|
|
|
<u>Beschreibung:</u>
|
|
|
|
|
|
-
|
|
|
+ Mit dieser Methode werden Texte (Strings) auf dem LC-Display in Abhängigkeit der ausgewählten Zeile/Spalte geschrieben. Das LC-Display muss erfolgreich mit der Methode `HSA_LCD_Shield.begin()` initialisiert worden sein.
|
|
|
|
|
|
<u>Parameter:</u>
|
|
|
|
|
|
+ * `<text>` *(String)*: Textnachricht, die auf dem LC-Display geschrieben werden soll
|
|
|
|
|
|
+ * `<row>`: Auswahl der Zeile (`0x01` bis `0x04`)
|
|
|
|
|
|
- <u>Rückgabewert</u>
|
|
|
+ * `<column>`: Auswahl der Spalte (`0x01` bis `0x0A`)
|
|
|
|
|
|
+ <u>Rückgabewert</u>
|
|
|
|
|
|
+ `bool`:
|
|
|
+
|
|
|
+ * `false`: LC-Display nicht initialisiert oder Zeilen-/Spaltennummer unbekannt
|
|
|
+ * `true`: Textnachricht erfolgreich auf LC-Display geschrieben
|
|
|
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
+ // Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
+
|
|
|
+ void setup(void) {
|
|
|
+ // Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
|
+ Serial.begin(9600);
|
|
|
+
|
|
|
+ // Initialisiere LEDs/Taster und LC-Display mit der standard I²C-Adresse
|
|
|
+ Display.begin();
|
|
|
|
|
|
+ // LCD-Backlight dauerhaft einschalten
|
|
|
+ Display.lcdBacklight(HIGH);
|
|
|
+
|
|
|
+ // schreibe "Hallo" auf dem LC-Display in Zeile 1/Spalte 1
|
|
|
+ if(Display.writeXY(0x02, 0x01, "Hallo"))
|
|
|
+ Serial.println("Text auf LC-Display geschrieben.");
|
|
|
+
|
|
|
+ // Warte 5s
|
|
|
+ delay(5000);
|
|
|
+
|
|
|
+ // schreibe "Hallo" auf dem LC-Display in Zeile 2/Spalte 7
|
|
|
+ if(Display.writeXY(0x02, 0x07, "Welt"))
|
|
|
+ Serial.println("Text auf LC-Display geschrieben.");
|
|
|
+ }
|
|
|
+
|
|
|
+ void loop(void) {
|
|
|
+
|
|
|
+ }
|
|
|
```
|
|
|
|
|
|
<div id='clearDisplay'/>
|
|
@@ -652,13 +890,26 @@ zur Verfügung.
|
|
|
|
|
|
Diese Methode löscht alle Zeichen auf den LC-Display. Methode `HSA_LCD_Shield.begin()` muss erfolgreich ausgeführt worden sein.
|
|
|
|
|
|
+ <u>Rückgabewert</u>
|
|
|
+
|
|
|
+ `bool`:
|
|
|
+
|
|
|
+ * `false`: LC-Display nicht konfiguriert
|
|
|
+ * `true`: LC-Display erfolgreich gelöscht
|
|
|
+
|
|
|
<u>Beispiel:</u>
|
|
|
|
|
|
```arduino
|
|
|
+ //Einbinden der LCD-Shield Bibliothek
|
|
|
+ #include <HSA_LCD_Shield.h>
|
|
|
+
|
|
|
// Erstelle Objekt der Klasse mit Standardeinstellungen.
|
|
|
- HSA_LCD_Shield Display();
|
|
|
+ HSA_LCD_Shield Display;
|
|
|
|
|
|
void setup(void) {
|
|
|
+ // Initialisiere serielle Kommunikation mit einer Baudrate von 9600
|
|
|
+ Serial.begin(9600);
|
|
|
+
|
|
|
// Initialisiere LEDs/Taster und LC-Display mit der standard I²C-Adresse
|
|
|
Display.begin();
|
|
|
|
|
@@ -667,11 +918,13 @@ zur Verfügung.
|
|
|
}
|
|
|
|
|
|
void loop(void) {
|
|
|
- // "Hallo Welt" auf dem LC-Display mit 0,5 Hz blinken lassen
|
|
|
- Display.writeRow(0x01, "Hallo Welt");
|
|
|
- delay(0x03E8);
|
|
|
- Display.clearDisplay();
|
|
|
- delay(0x03E8);
|
|
|
+ // "Hallo Welt" auf dem LC-Display mit 1 Hz blinken lassen
|
|
|
+ if(Display.writeRow(0x01, "Hallo Welt"))
|
|
|
+ Serial.println("Text auf LC-Display geschrieben.");
|
|
|
+ delay(500);
|
|
|
+ if(Display.clearDisplay())
|
|
|
+ Serial.println("Text auf LC-Display geloescht.");
|
|
|
+ delay(500);
|
|
|
}
|
|
|
```
|
|
|
|