root / arduino-1.0 / libraries / LiquidCrystal / examples / Scroll / Scroll.ino @ 58d82c77
History | View | Annotate | Download (2.25 KB)
1 |
/* |
---|---|
2 |
LiquidCrystal Library - scrollDisplayLeft() and scrollDisplayRight() |
3 |
|
4 |
Demonstrates the use a 16x2 LCD display. The LiquidCrystal |
5 |
library works with all LCD displays that are compatible with the |
6 |
Hitachi HD44780 driver. There are many of them out there, and you |
7 |
can usually tell them by the 16-pin interface. |
8 |
|
9 |
This sketch prints "Hello World!" to the LCD and uses the |
10 |
scrollDisplayLeft() and scrollDisplayRight() methods to scroll |
11 |
the text. |
12 |
|
13 |
The circuit: |
14 |
* LCD RS pin to digital pin 12 |
15 |
* LCD Enable pin to digital pin 11 |
16 |
* LCD D4 pin to digital pin 5 |
17 |
* LCD D5 pin to digital pin 4 |
18 |
* LCD D6 pin to digital pin 3 |
19 |
* LCD D7 pin to digital pin 2 |
20 |
* LCD R/W pin to ground |
21 |
* 10K resistor: |
22 |
* ends to +5V and ground |
23 |
* wiper to LCD VO pin (pin 3) |
24 |
|
25 |
Library originally added 18 Apr 2008 |
26 |
by David A. Mellis |
27 |
library modified 5 Jul 2009 |
28 |
by Limor Fried (http://www.ladyada.net) |
29 |
example added 9 Jul 2009 |
30 |
by Tom Igoe |
31 |
modified 22 Nov 2010 |
32 |
by Tom Igoe |
33 |
|
34 |
This example code is in the public domain. |
35 |
|
36 |
http://www.arduino.cc/en/Tutorial/LiquidCrystal |
37 |
*/ |
38 |
|
39 |
// include the library code: |
40 |
#include <LiquidCrystal.h> |
41 |
|
42 |
// initialize the library with the numbers of the interface pins |
43 |
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); |
44 |
|
45 |
void setup() { |
46 |
// set up the LCD's number of columns and rows: |
47 |
lcd.begin(16, 2); |
48 |
// Print a message to the LCD. |
49 |
lcd.print("hello, world!"); |
50 |
delay(1000); |
51 |
} |
52 |
|
53 |
void loop() { |
54 |
// scroll 13 positions (string length) to the left |
55 |
// to move it offscreen left: |
56 |
for (int positionCounter = 0; positionCounter < 13; positionCounter++) { |
57 |
// scroll one position left: |
58 |
lcd.scrollDisplayLeft(); |
59 |
// wait a bit: |
60 |
delay(150); |
61 |
} |
62 |
|
63 |
// scroll 29 positions (string length + display length) to the right |
64 |
// to move it offscreen right: |
65 |
for (int positionCounter = 0; positionCounter < 29; positionCounter++) { |
66 |
// scroll one position right: |
67 |
lcd.scrollDisplayRight(); |
68 |
// wait a bit: |
69 |
delay(150); |
70 |
} |
71 |
|
72 |
// scroll 16 positions (display length + string length) to the left |
73 |
// to move it back to center: |
74 |
for (int positionCounter = 0; positionCounter < 16; positionCounter++) { |
75 |
// scroll one position left: |
76 |
lcd.scrollDisplayLeft(); |
77 |
// wait a bit: |
78 |
delay(150); |
79 |
} |
80 |
|
81 |
// delay at the end of the full loop: |
82 |
delay(1000); |
83 |
|
84 |
} |
85 |
|