Displays
DFRobot LCD Shield
- Details
- Hauptkategorie: Arduino
- Zuletzt aktualisiert am Freitag, 15. Juni 2012 08:09
Hardware
Zur Benutzerkommunikation kann ein DFRobot LCD Keypad Shield eingesetzt werden. Es wird über einige Ports des Arduino angesteuert (4Bit parallel). Das HTML-Handbuch (Englisch) ist hier zu finden, es gibt ausserdem einen Schaltplan.
![]() |
Das LCD Shield bietet fünf Steuertasten: Up, Down, Left, Right und Select. Der Taster ganz rechts ist der Resettaster für den Arduino. Die fünf Bedientasten werden über einen einzigen Analogeingang abgefragt (Spannungsteilerschaltung), um Ports zu sparen. Die Hintergrundbeleuchtung ist mit Pin 10 verbunden und kann durch das Sketch geschaltet werden. |
![]() |
Das LCD-Shield wird auf dem Arduino aufgesteckt und bildet eine kompakte Einheit. Auf dem Shield sind Lötaugen für nicht verwendete Ports vorhanden. Man kann dort Stift-/Buchsenleisten einsetzen und damit auch über das Shield Verbindungen zu Sensoren herstellen. Damit man das Shield hinter einer Frontplatt einbauen und die Tasten bedienen kann, müssten Taster mit langen Stiften verwendet werden. Das kann man auch selbst umrüsten, bei Reichelt gibt es die passenden Taster mit verschiedenen Stiftlängen. |
![]() |
Die nicht vom LCD verwendeten Ports sind auf eine Lochreihe parallel zu den Stiftleisten herausgeführt. Hier wird eine nach unten weisende 7-polige Buchsenleiste eingelötet, die später für Breadboardverbindungen dient. |
![]() |
Bei den Versorgungsspannungen und den Analogeingängen werden ebenfalls Zusatzbuchsen eingelötet (1x5-polig, 1x 6-polig). |
![]() |
Ganz links erkennt man die neu eingelöteten Buchsenleisten. |
![]() |
Mit fertigen Verbindungskabeln können die Verbindungen von den zusätzlichen Buchsenleisten zum Breadboard hergestellt werden. Ist etwas fummelig, manchmal braucht man eine Pinzette, aber da die Buchsenleisten nach unten zeigen, kann man später den Deckel des Hutschienengehäuses über dem LCD-Shield schliessen. |
Das LCD Shield kann für etwa 14,50 € (inkl. Porto) über Ebay (Suchbegriff: Arduino LCD Shield) direkt aus China bezogen werden. Der Bestückungsplan des Shields:

Folgende Signale werden vom Shield verwendet:
| Arduino Pin | LCD-Pin |
| Analog 0 | Taste (Up, Down, Left, Right, Select) |
|
Digital 4 |
DB 4 |
| Digital 5 | DB 5 |
| Digital 6 | DB 6 |
| Digital 7 | DB 7 |
| Digital 8 | RS (Command or Data) |
| Digital 9 | Enable |
| Digital 10 | Hintergrundbeleuchtung |
Das LCD hat das Standard-Character Set des HD44780-Controllers:

Die rot markierten Positionen sind im Gegensatz zum seriellen Display von Sparkfun bei diesem Shield verfügbar. Beim normalen LCD-Display können eigene Character (siehe 1. Spalte in oben stehender Tabelle) definiert werden. Diese Website bietet einen Codegenerator für das gewünschte Zeichen an.
Library
Es wird die Standard-Lib LiquidCrystal verwendet (in IDE 0022 enthalten).
Sketch
Sketch für Darstellung des LCD-Zeichensatzes:

#include <LiquidCrystal.h> /***************************************************************************** * Sketch: LCD_CharSet.pde * Author: Andreas Kriwanek * Version: 1.00 05.04.2011/09:35 * * Hardware: * Arduino UNO * DFRobot LCD Keypad Shield * * This sketch generates a character map of th LCD shield. Every value from * 0x00 - 0xFF will be sent to the display. The correspomding character is * shown in line 2 of the display. * *****************************************************************************/ // select the pins used on the LCD panel: LiquidCrystal lcd(8, 9, 4, 5, 6, 7); char LCDChar[2]=""; void setup() { lcd.begin(16, 2); // 16x2 LCD panel lcd.setCursor(0,0); lcd.print("LCD KeyPadShield"); lcd.setCursor(0,1); lcd.print("<Character Set>"); delay(2000); } void loop() { lcd.clear(); for(int i=0; i<=255; i++){ lcd.setCursor(0,0); lcd.print("Value="); sprintf(LCDChar, "0x%02X", i); lcd.print(LCDChar); lcd.setCursor(0,1); lcd.print("Character:"); lcd.print(char(i)); delay(2000); } }














