summaryrefslogtreecommitdiffstats
path: root/lib/LiquidCrystal/examples/Scroll/Scroll.ino
diff options
context:
space:
mode:
Diffstat (limited to 'lib/LiquidCrystal/examples/Scroll/Scroll.ino')
-rw-r--r--lib/LiquidCrystal/examples/Scroll/Scroll.ino95
1 files changed, 95 insertions, 0 deletions
diff --git a/lib/LiquidCrystal/examples/Scroll/Scroll.ino b/lib/LiquidCrystal/examples/Scroll/Scroll.ino
new file mode 100644
index 0000000..0da976d
--- /dev/null
+++ b/lib/LiquidCrystal/examples/Scroll/Scroll.ino
@@ -0,0 +1,95 @@
+/*
+ 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 pin Connect to
+ ---------------------------------
+ 01 - GND GND, pot
+ 02 - VCC +5V, pot
+ 03 - Contrast Pot wiper
+ 04 - RS Pin8 (P2.0)
+ 05 - R/W GND
+ 06 - EN Pin9 (P2.1)
+ 07 - DB0 GND
+ 08 - DB1 GND
+ 09 - DB2 GND
+ 10 - DB3 GND
+ 11 - DB4 Pin10 (P2.2)
+ 12 - DB5 Pin11 (P2.3)
+ 13 - DB6 Pin12 (P2.4)
+ 14 - DB7 Pin13 (P2.5)
+ 15 - BL+ +5V
+ 16 - BL- GND
+ =================================
+
+ 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
+ modified 22 Nov 2010
+ by Tom Igoe
+
+ This example code is in the public domain.
+
+ http://www.arduino.cc/en/Tutorial/LiquidCrystal
+ */
+
+// include the library code:
+#include <LiquidCrystal.h>
+
+// initialize the library with the numbers of the interface pins
+LiquidCrystal lcd(P2_0, P2_1, P2_2, P2_3, P2_4, P2_5);
+
+void setup() {
+ // set up the LCD's number of columns and rows:
+ lcd.begin(16, 2);
+ // Print a message to the LCD.
+ lcd.print("hello, world!");
+ delay(1000);
+}
+
+void loop() {
+ // 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(150);
+ }
+
+ // 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(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);
+
+}
+