From f30af5e28868811d802edc2d874ce832652512f0 Mon Sep 17 00:00:00 2001 From: "David A. Mellis" Date: Mon, 13 Jul 2009 02:33:02 +0000 Subject: Adding Tom's examples for the new LiquidCrystal library. --- libraries/LiquidCrystal/examples/Shift/Shift.pde | 82 ++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 libraries/LiquidCrystal/examples/Shift/Shift.pde (limited to 'libraries/LiquidCrystal/examples/Shift/Shift.pde') diff --git a/libraries/LiquidCrystal/examples/Shift/Shift.pde b/libraries/LiquidCrystal/examples/Shift/Shift.pde new file mode 100644 index 0000000..0326c51 --- /dev/null +++ b/libraries/LiquidCrystal/examples/Shift/Shift.pde @@ -0,0 +1,82 @@ + /* + LiquidCrystal Library - Shift + + Demonstrates the use a 16x2 LCD display. The LiquidCrystal + library works with all LCD displays that are compatible with the + Hitachi HD44780 driver. There are many of them out there, and you + can usually tell them by the 16-pin interface. + + This sketch demonstrates how to use shiftLeft() and shiftRight() + to move the cursor. + + The circuit: + * LCD RS pin to digital pin 12 + * LCD Enable pin to digital pin 11 + * LCD D4 pin to digital pin 5 + * LCD D5 pin to digital pin 4 + * LCD D6 pin to digital pin 3 + * LCD D7 pin to digital pin 2 + * 10K resistor: + * ends to +5V and ground + * wiper to LCD VO pin (pin 3) + + Library originally added 18 Apr 2008 + by David A. Mellis + library modified 5 Jul 2009 + by Limor Fried (http://www.ladyada.net) + example added 9 Jul 2009 + by Tom Igoe + + http://www.arduino.cc/en/Tutorial/LiquidCrystal + + */ + +// include the library code: +#include + +// initialize the library with the numbers of the interface pins +LiquidCrystal lcd(12, 11, 5, 4, 3, 2); + +int thisChar = 'a'; + +void setup() { + // set up the LCD's number of rows and columns: + lcd.begin(2, 16); + // turn on the cursor: + lcd.cursor(); + Serial.begin(9600); +} + +void loop() { + // reverse directions at 'm': + if (thisChar == 'm') { + // go right for the next letter + lcd.shiftRight(); + } + // reverse again at 's': + if (thisChar == 's') { + // go left for the next letter + lcd.shiftLeft(); + } + // reset at 'z': + if (thisChar > 'z') { + // go to (0,0): + lcd.home(); + // start again at 0 + thisChar = 'a'; + } + // print the character + lcd.print(thisChar, BYTE); + // wait a second: + delay(1000); + // increment the letter: + thisChar++; +} + + + + + + + + -- cgit v1.2.3-18-g5258