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/Scroll/Scroll.pde | 65 ++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 libraries/LiquidCrystal/examples/Scroll/Scroll.pde (limited to 'libraries/LiquidCrystal/examples/Scroll/Scroll.pde') diff --git a/libraries/LiquidCrystal/examples/Scroll/Scroll.pde b/libraries/LiquidCrystal/examples/Scroll/Scroll.pde new file mode 100644 index 0000000..4556a38 --- /dev/null +++ b/libraries/LiquidCrystal/examples/Scroll/Scroll.pde @@ -0,0 +1,65 @@ +/* + LiquidCrystal Library - scrollDisplayLeft() and scrollDisplayRight() + + 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 prints "Hello World!" to the LCD and uses the + scrollDisplayLeft() and scrollDisplayRight() methods to scroll + the text. + + 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); + +void setup() { + // set up the LCD's number of rows and columns: + lcd.begin(2, 16); + lcd.setCursor(0,7); + // Print a message to the LCD. + lcd.print("hello, world!"); +} + +void loop() { + // scroll 27 positions (display length + string length) to the left: + for (int positionCounter = 0; positionCounter < 27; positionCounter++) { + // scroll one position left: + lcd.scrollDisplayLeft(); + // wait a bit: + delay(200); + } + + // scroll 27 positions (display length + string length) to the right: + for (int positionCounter = 0; positionCounter < 27; positionCounter++) { + // scroll one position right: + lcd.scrollDisplayRight(); + // wait a bit: + delay(200); + } +} + -- cgit v1.2.3-18-g5258 From e66eb79a26977f897b6340a501003d6af41d998b Mon Sep 17 00:00:00 2001 From: Tom Igoe Date: Sun, 2 Aug 2009 18:45:04 +0000 Subject: Changed begin() in LiquidCrystal examples --- libraries/LiquidCrystal/examples/Scroll/Scroll.pde | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'libraries/LiquidCrystal/examples/Scroll/Scroll.pde') diff --git a/libraries/LiquidCrystal/examples/Scroll/Scroll.pde b/libraries/LiquidCrystal/examples/Scroll/Scroll.pde index 4556a38..ec49244 100644 --- a/libraries/LiquidCrystal/examples/Scroll/Scroll.pde +++ b/libraries/LiquidCrystal/examples/Scroll/Scroll.pde @@ -39,7 +39,7 @@ LiquidCrystal lcd(12, 11, 5, 4, 3, 2); void setup() { // set up the LCD's number of rows and columns: - lcd.begin(2, 16); + lcd.begin(16, 2); lcd.setCursor(0,7); // Print a message to the LCD. lcd.print("hello, world!"); -- cgit v1.2.3-18-g5258 From 16eaf9a9fbd2371467835f7def4c7587d3ed47ae Mon Sep 17 00:00:00 2001 From: Tom Igoe Date: Wed, 5 Aug 2009 14:41:11 +0000 Subject: Checked and updated all LiquidCrystal examples --- libraries/LiquidCrystal/examples/Scroll/Scroll.pde | 32 +++++++++++++++++----- 1 file changed, 25 insertions(+), 7 deletions(-) (limited to 'libraries/LiquidCrystal/examples/Scroll/Scroll.pde') diff --git a/libraries/LiquidCrystal/examples/Scroll/Scroll.pde b/libraries/LiquidCrystal/examples/Scroll/Scroll.pde index ec49244..9276553 100644 --- a/libraries/LiquidCrystal/examples/Scroll/Scroll.pde +++ b/libraries/LiquidCrystal/examples/Scroll/Scroll.pde @@ -27,6 +27,8 @@ by Limor Fried (http://www.ladyada.net) example added 9 Jul 2009 by Tom Igoe + modified 25 July 2009 + by David A. Mellis http://www.arduino.cc/en/Tutorial/LiquidCrystal */ @@ -40,26 +42,42 @@ LiquidCrystal lcd(12, 11, 5, 4, 3, 2); void setup() { // set up the LCD's number of rows and columns: lcd.begin(16, 2); - lcd.setCursor(0,7); + //lcd.setCursor(0,7); // Print a message to the LCD. lcd.print("hello, world!"); + delay(1000); } void loop() { - // scroll 27 positions (display length + string length) to the left: - for (int positionCounter = 0; positionCounter < 27; positionCounter++) { + // scroll 13 positions (string length) to the left + // to move it offscreen left: + for (int positionCounter = 0; positionCounter < 13; positionCounter++) { // scroll one position left: lcd.scrollDisplayLeft(); // wait a bit: - delay(200); + delay(150); } - // scroll 27 positions (display length + string length) to the right: - for (int positionCounter = 0; positionCounter < 27; positionCounter++) { + // scroll 29 positions (string length + display length) to the right + // to move it offscreen right: + for (int positionCounter = 0; positionCounter < 29; positionCounter++) { // scroll one position right: lcd.scrollDisplayRight(); // wait a bit: - delay(200); + delay(150); + } + + // scroll 16 positions (display length + string length) to the left + // to move it back to center: + for (int positionCounter = 0; positionCounter < 16; positionCounter++) { + // scroll one position left: + lcd.scrollDisplayLeft(); + // wait a bit: + delay(150); } + + // delay at the end of the full loop: + delay(1000); + } -- cgit v1.2.3-18-g5258