2009-07-13 04:33:02 +02:00
|
|
|
/*
|
2009-07-25 20:26:29 +02:00
|
|
|
LiquidCrystal Library - Autoscroll
|
2013-10-21 09:58:40 +02:00
|
|
|
|
2009-07-13 04:33:02 +02:00
|
|
|
Demonstrates the use a 16x2 LCD display. The LiquidCrystal
|
2013-10-21 09:58:40 +02:00
|
|
|
library works with all LCD displays that are compatible with the
|
2009-07-13 04:33:02 +02:00
|
|
|
Hitachi HD44780 driver. There are many of them out there, and you
|
|
|
|
can usually tell them by the 16-pin interface.
|
2013-10-21 09:58:40 +02:00
|
|
|
|
2009-07-25 20:26:29 +02:00
|
|
|
This sketch demonstrates the use of the autoscroll()
|
2009-08-05 16:41:27 +02:00
|
|
|
and noAutoscroll() functions to make new text scroll or not.
|
2013-10-21 09:58:40 +02:00
|
|
|
|
2009-07-13 04:33:02 +02:00
|
|
|
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
|
2010-11-22 15:36:23 +01:00
|
|
|
* LCD R/W pin to ground
|
2009-07-13 04:33:02 +02:00
|
|
|
* 10K resistor:
|
|
|
|
* ends to +5V and ground
|
|
|
|
* wiper to LCD VO pin (pin 3)
|
2013-10-21 09:58:40 +02:00
|
|
|
|
2009-07-13 04:33:02 +02:00
|
|
|
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
|
2013-10-21 09:58:40 +02:00
|
|
|
by Tom Igoe
|
2010-11-22 15:36:23 +01:00
|
|
|
modified 22 Nov 2010
|
|
|
|
by Tom Igoe
|
2013-10-21 09:58:40 +02:00
|
|
|
|
2010-02-24 04:48:20 +01:00
|
|
|
This example code is in the public domain.
|
|
|
|
|
2015-05-20 17:10:06 +02:00
|
|
|
http://www.arduino.cc/en/Tutorial/LiquidCrystalAutoscroll
|
2012-04-11 12:56:31 +02:00
|
|
|
|
2009-07-13 04:33:02 +02:00
|
|
|
*/
|
|
|
|
|
|
|
|
// include the library code:
|
|
|
|
#include <LiquidCrystal.h>
|
|
|
|
|
|
|
|
// initialize the library with the numbers of the interface pins
|
|
|
|
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
|
|
|
|
|
|
|
|
void setup() {
|
2013-10-21 09:58:40 +02:00
|
|
|
// set up the LCD's number of columns and rows:
|
|
|
|
lcd.begin(16, 2);
|
2009-07-13 04:33:02 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
void loop() {
|
2009-07-25 20:26:29 +02:00
|
|
|
// set the cursor to (0,0):
|
2009-07-13 04:33:02 +02:00
|
|
|
lcd.setCursor(0, 0);
|
|
|
|
// print from 0 to 9:
|
|
|
|
for (int thisChar = 0; thisChar < 10; thisChar++) {
|
2013-10-21 09:58:40 +02:00
|
|
|
lcd.print(thisChar);
|
|
|
|
delay(500);
|
2009-07-13 04:33:02 +02:00
|
|
|
}
|
2009-07-25 20:26:29 +02:00
|
|
|
|
|
|
|
// set the cursor to (16,1):
|
2013-10-21 09:58:40 +02:00
|
|
|
lcd.setCursor(16, 1);
|
2009-07-25 20:26:29 +02:00
|
|
|
// set the display to automatically scroll:
|
|
|
|
lcd.autoscroll();
|
2009-07-13 04:33:02 +02:00
|
|
|
// print from 0 to 9:
|
|
|
|
for (int thisChar = 0; thisChar < 10; thisChar++) {
|
|
|
|
lcd.print(thisChar);
|
|
|
|
delay(500);
|
|
|
|
}
|
2009-07-25 20:26:29 +02:00
|
|
|
// turn off automatic scrolling
|
|
|
|
lcd.noAutoscroll();
|
2013-10-21 09:58:40 +02:00
|
|
|
|
2009-07-13 04:33:02 +02:00
|
|
|
// clear screen for the next loop:
|
|
|
|
lcd.clear();
|
|
|
|
}
|
|
|
|
|