Arduino携手LCD1602 向世界问好“hello World!”
2016-05-11 12:04
363 查看
LCD1602
LCD1602是一款简易的液晶显示屏,可以显示16X2的 字符,包括符号,数字,英文,但不包含中文。
本例程使用的是简易接线的方法,占用d4, d5, d6, d7 ,IO口比较少(看着效果图,已经是风中凌乱了),往后再继续更新其他接线方法
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/struggle.gif)
引脚图
1602采用标准的16脚接口,其中:引脚 | 符号 | 功能说明 |
1 | VSS | 电源地,一般接地 |
2 | VDD | 接电源(+5V) |
3 | V0 | 液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。 |
4 | RS | RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。 |
5 | R/W | R/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 |
6 | E | E(或EN)端为使能(enable)端, 写操作时,下降沿使能。 读操作时,E高电平有效 |
7 | DB0 | 低4位三态、 双向数据总线 0位(最低位) |
8 | DB1 | 低4位三态、 双向数据总线 1位 |
9 | DB2 | 低4位三态、 双向数据总线 2位 |
10 | DB3 | 低4位三态、 双向数据总线 3位 |
11 | DB4 | 高4位三态、 双向数据总线 4位 |
12 | DB5 | 高4位三态、 双向数据总线 5位 |
13 | DB6 | 高4位三态、 双向数据总线 6位 |
14 | DB7 | 高4位三态、 双向数据总线 7位(最高位)(也是busy flag) |
15 | BLA | 背光电源正极 |
16 | BLK | 背光 电源负极 |
Bom表
Arduino Uno *1LCD1602 液晶显示屏 *1
跳线 若干
电阻100Ω *1(其实不用电阻也可以,把V0引脚直接接GND)
接线图
程序实现
程序已经写好直接上传程序到Arduino uno主板上。
//LingShun Lab #include <LiquidCrystal.h> LiquidCrystal lcd(12,11,5,4,3,2); //构造一个LiquidCrystal的类成员。使用数字IO ,12,11,5,4,3,2 void setup() { lcd.begin(16,2); //初始化LCD1602 lcd.print("Welcome to use!"); //液晶显示Welcome to use! delay(1000); //延时1000ms lcd.clear(); //液晶清屏 } void loop() { lcd.setCursor(0,0); //设置液晶开始显示的指针位置,0列0行,人类理解的第一行 lcd.print("Hello World!"); lcd.setCursor(0,1); //0列,1行,人类理解的第二行 lcd.print("for LingShun Lab"); delay(1000); //延时1000ms lcd.setCursor(0,0); lcd.print("Good Job! "); delay(1000); //延时1000ms }
相关函数
函数LiquidCrystal() 概要:
创建一个LiquidCrystal的实例(构造函数).可使用4线或8线方式作为数据线(请注意,还需要指令线).若采用四线方式,将d0-d3悬空不连接.RW引脚可接地而不用接在Arduino的某个引脚上;如果这样接,省略在函数中的rw参数.语法:
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)
参数说明:
rs: rs连接的Arduino的引脚编号
rw: rw连接的Arduino的引脚编号
enable:enable连接的Arduino的引脚编号
d0, d1, d2, d3, d4, d5, d6, d7: 连接的Arduino的引脚编号
相关文章推荐
- java生成随机字符串uuid
- reequests快速入门
- Chapter 5. 集合---(ArrayList、Stack、queue、哈希表)
- 关于在easyui中添加tab的时候不能执行href页面中的js的说明
- requestAnimationFrame,Web中写动画的另一种选择
- When to use dequeueReusableCellWithIdentifier vs dequeueReusableCellWithIdentifier: forIndexPath
- 从自建页面跳转到标准订单或者BP页面的例子
- 建造者模式(Builder Pattern)
- Windows窗体与控件
- report builder 报表表头固定
- Java按Value排序Map
- UITableViewCell的简单使用
- UITableViewcell实现微博界面
- java中String、StringBuffer、StringBuilder的区别
- [一句秒懂]图片拉伸技巧,纯代码书写UIImage分类搞定
- Processing of multipart/form-data request failed. Read timed out
- Named query not found: (包扫描的问题)
- UE4推荐教程
- [Baltic2014]sequence 解题报告
- A Beginner's Guide To LVM [3/9]