Arduino+LCD1602:显示
连接,写代码,显示
- 引言:Arduino Cookbook,好书
Arduino Cookbook可以在“皮皮书屋”下载,这是一个非常好的电子书网站,收录的大批关于计算机及其衍生学科的电子书,大部分是英文原版PDF。
- 基础知识
LCD Keypad Shield:我使用的LCD模块。接口编号(括号内为对应接口编号):DB4(PIN4),DB5(PIN5),DB6(PIN6),DB7(PIN7),RS(PIN8),Enable(PIN9),背光控制(PIN10)
LiquidCrystal库:这个库包含了你要让LCD工作的一切函数,Arduino IDE自带。你可以在这里找到相关信息,当然,下面一会提到一些。
函数(全部由我人工翻译,若出错请见谅并指正):
- LiquidCrystal()——定义你的LCD的接口:各个引脚连接的I/O口编号,格式为LiquidCrystal(rs, enable, d4, d5, d6, d7) LiquidCrystal(rs, rw, enable, d4, d5, d6, d7) LiquidCrystal(rs, enable, d0, d1, d2, d3, d4, d5, d6, d7) LiquidCrystal(rs, rw, enable, d0, d1, d2, d3, d4, d5, d6, d7)
- begin()——定义LCD的长宽(n列×n行),格式lcd.begin(cols, rows)
- clear()——清空LCD,格式lcd.clear()
- home()——把光标移回左上角,即从头开始输出,格式lcd.home()
- setCursor()——移动光标到特定位置,格式lcd.setCursor(col, row)
- write()——在屏幕上显示内容(必须是一个变量,如”Serial.read()“),格式lcd.write(data)
- print()——在屏幕上显示内容(字母、字符串,等等),格式lcd.print(data) lcd.print(data, BASE)
- cursor()——显示光标(一条下划线),格式lcd.cursor()
- noCursor()——隐藏光标,格式lcd.noCursor()
- blink()——闪烁光标,格式lcd.blink()
- noBlink()——光标停止闪烁,格式lcd.noBlink()
- display()——(在使用noDisplay()函数关闭显示后)打开显示(并恢复原来内容),格式lcd.display()
- noDisplay()——关闭显示,但不会丢失原来显示的内容,格式为lcd.noDisplay()
- scrollDisplayLeft()——把显示的内容向左滚动一格,格式lcd.scrollDisplayLeft()
- scrollDisplayRight()——把显示的内容向右滚动一格,格式为lcd.scrollDisplayRight()
- autoscroll()——打开自动滚动,这使每个新的字符出现后,原有的字符都移动一格:如果字符一开始从左到右(默认),那么就往左移动一格,否则就向右移动,格式lcd.autoscroll()
- noAutoscroll()——关闭自动滚动,格式lcd.noAutoscroll()
- leftToRight()——从左往右显示,也就是说显示的字符会从左往右排列(默认),但屏幕上已经有的字符不受影响,格式lcd.leftToRight()
- rightToLeft()——从右往左显示,格式lcd.rightToLeft()
- createChar()——自造字符,最多5×8像素,编号0-7,字符的每个像素显示与否由数组里的数(0-不显示,1-显示)决定,格式lcd.createChar(num, data),有点难理解,可以看一个例子
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
byte smiley[8] = {
B00000,
B10001,
B00000,
B00000,
B10001,
B01110,
B00000,
};
void setup() {
lcd.createChar(0, smiley);
lcd.begin(16, 2);
lcd.write(0);
}
void loop() {}
基本知识就介绍到这里,需要更多信息,可以看看Arduino Cookbook,访问Arduino网站与我联系(如果我能提供帮助的话)。