简介

LCD1602是一种工业字符型液晶,能够同时显示16x02即32个字符。LCD1602液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,即可以显示出图形。【百度百科】

  • 引脚说明
  • 引脚 符号 说明
  • 1 GND 接地
  • 2 VCC 5V正极
  • 3 V0 对比度调整,接正极时对比度最弱
  • 4 RS 寄存器选择,1数据寄存器(DR),0指令寄存器(IR)
  • 5 R/W 读写选择,1度,0写
  • 6 EN 使能(enable)端,高电平读取信息,负跳变时执行指令
  • 7~14 D0~D7 8位双向数据
  • 15 BLA 背光正极
  • 16 BLK 背光负极
  • 其它知识点
  • 一些简称(本文无用,瞎记)
  • DR 数据寄存器
  • IR 指令寄存器
  • DDRAM 显示数据存储器(LCD1602有80字节)
  • CGROM 字符发生器(内建192个5*7点阵字符)
  • 1
  • 2
  • 3
  • 4
  • 3脚电位器
  • 一个滑动变阻器,中间接负极(输出),两边分别接电源正极和接地(或不接)


材料

大面包板 x1

3脚电位器 x1

LCD 1602 x1

Arduino UNO x1

接线示意图


LCD1602 —> Arduino UNO 说明

GND —> GND 接地

VCC —> 5V 5V电源

V0 —> 连接3脚继电器中间,用于调节对比度

RS —> 3 随便接一个输出口,方便接线、画图

R/W —> GND 接地,写模式

EN —> 5 随便接一个输出口,方便接线、画图

D0~D3 —> 4位工作模式,不使用

D4~D7 —> 10~13 其它口也行,方便接线、画图

BLA —> 背光,电源正极,可选

BLK —> 背光,接地,可选

开始抄代码

加载库文件

打开Arduino IDE,选项目 -> 加载库 -> 管理库中搜索LiquidCrystal,然后安装即可,笔者的IDE版本为1.6.12,自带该库。



示例代码, hello word


//引入依赖
#include <LiquidCrystal.h> // 初始化针脚
const int rs = 3, en = 5, d4 = 10, d5 = 11, d6 = 12, d7 = 13;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7); void setup() {
//设置LCD要显示的列数、行数,即2行16列
lcd.begin(16, 2); //输出Hello World
lcd.print("hello, world!");
} void loop() {
//设置光标定位到第0列,第1行(从0开始)
lcd.setCursor(0, 1);
//打印从重置后的秒数
lcd.print( millis() / 1000);
}


示例代码,自动滚屏


//引入依赖
#include <LiquidCrystal.h>
// 初始化针脚
const int rs = 3, en = 5, d4 = 10, d5 = 11, d6 = 12, d7 = 13;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
char arr [9]= {'a', 'b', 'c', 'd' ,'e' ,'f' ,'g', 'h', 'i'}; void setup() {
//设置LCD要显示的列数、行数,即2行16列
lcd.begin(16, 2);
} void loop() {
//输出1-9,a1-9,b,1-9,c
lcd.setCursor(0, 0);
lcd.autoscroll(); for(int i = 0; i < 9; i++){
for(int j = 1; j < 10; j++){
lcd.print(j);
delay(500);
}
lcd.print(arr[i]);
delay(500);
} //关闭自动滚屏
lcd.noAutoscroll();
//为下重循环清屏
lcd.clear();
}


https://blog.csdn.net/zcw1994/article/details/80517943


版权声明:本文为CSDN博主「我的小胖子呢」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。



#include <LiquidCrystal.h> // 初始化针脚
const int rs = 3, en = 5, d4 = 10, d5 = 11, d6 = 12 ,d7 = 13;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
unsigned long time;
unsigned long starttime;
int timeHour; //显示小时数
int timeMinute; //显示分钟数
int timeSecond; //显示秒数
int startHour=0; //初始小时数
int startMinute=1; //初始分钟数
int startSecond=40; //初始秒数
void setup() {
Serial.begin(9600);
lcd.begin(16,2); //初始化LCD1602
lcd.print("Welcome to use!"); //液晶显示Welcome to use!
delay(1000); //延时1000ms
lcd.clear(); //液晶清屏
starttime=startHour*60*60+startMinute*60+startSecond;
lcd.setCursor(0,0); //设置液晶开始显示的指针位置
lcd.print("While accounting");
} void loop() {
if (millis()<=starttime*1000){
time =starttime-(millis()/1000);
timeHour=time/(60*60);
timeMinute=(time-timeHour*60*60)/60;
timeSecond=time-timeHour*60*60-timeMinute*60;
lcd.setCursor(0,1); //设置液晶开始显示的指针位置
lcd.print("Time:");
lcd.print(Pressing_string(timeHour));
lcd.print(":");
lcd.print(Pressing_string(timeMinute));
lcd.print(":");
lcd.print(Pressing_string(timeSecond));
//delay(10);
}else{
lcd.setCursor(0,1); //设置液晶开始显示的指针位置
lcd.print("It's game over.");
}
}
//n->"0n",nn->"nn"
String Pressing_string(int myint){
String mystring;
if (myint<10 ){
mystring="0"+String(myint);
}else{
mystring=String(myint);
}
return mystring;
}

Arduino连接LCD1602显示屏的更多相关文章

  1. Arduino和C51开发LCD1602显示屏

    技术:51单片机.Arduino.LCD1602   概述 本文介绍了LCD1602显示屏,并在LCD1602上显示字符串,对LCD1602常见的问题的解决和开发方法也做了简单介绍. 详细 代码下载: ...

  2. arduino连接1602LCD方法

    arduino连接1602LCD方法 参考代码:

  3. Arduino连接pH计

    关于arduino连接ph,核心的东西就是对ph传感器返回的信号值进行一系列的操作,注意因为返回的信号很弱,而且外部环境对其影响也很大,所以需要在电路设计上加入一些功能,比如信号放大.滤波等,电路设计 ...

  4. arduino连接12864LCD方法

    arduino连接12864LCD方法,参考相关代码. https://blog.csdn.net/txwtech/article/details/95038386

  5. Arduino下LCD1602综合探究(下)——如何减少1602的连线,LiquidCrystal库,LiquidCrystal库中bug的解决方法

    一.前言: 上文中,笔者系统的阐述了1602的两种驱动方式,并简单的提到了Arduino的LiquidCrystal库.本文紧接上文,对以下两个问题进行更加深入的探讨:如何能够使1602对Arduin ...

  6. Arduino下LCD1602综合探究(上)——1602的两种驱动方式,如何使LCD的控制编程变得更简单

    一.前言: LCD ( Liquid Crystal Display 的简称)液晶显示器,已经逐渐替代CRT成为主流的显示设备之一,因此也成为了单片机发烧友绕不过的话题之一:而LCD1602更是很多单 ...

  7. ARDUINO驱动LCD1602 (利用库函数)

    LCD 1602简介 工业字符型液晶,能够同时显示16x02即32个字符.(16列2行) 1602液晶也叫1602字符型液晶,它是一种专门用来显示字母.数字.符号等的点阵型液晶模块.它由若干个5X7或 ...

  8. Arduino连接SHT10温湿度传感器--返回值不正常解决办法

    如题目,arduino中连接温湿度传感器,用的是一个github开源项目,地址:点击打开,其实这个就是一个封装好的库,下载后把解压的文件夹复制到Arduino目录下的librarys文件夹内,重启Ar ...

  9. 使用Arduino连接HC-SR04超声波距离传感器的方法

    距离传感器是机器人项目最有用的传感器之一. HC-SR04是一种便宜的超声波距离传感器,可以帮助您的机器人在房间周围导航.通过一些努力和一个额外的组件,它也可以用作测量设备.在这篇文章中,您将学习到通 ...

随机推荐

  1. Write a merge sort program

    Merge Sort- Recursion Write a merge sort program in JavaScript. Sample array : [34, 7, 23, 32, 5, 62 ...

  2. 【Linux】Linux常用操作

    终端命令格式 command [-options] [parameter]command : 命令名,相应功能的英文单词或单词的缩写[-options]:选项,可用来对命令进行控制,也可以省略para ...

  3. [开源] .Net orm FreeSql 1.5.0 最新版本(番号:好久不见)

    废话开头 这篇文章是我有史以来编辑最长时间的,历时 4小时!!!原本我可以利用这 4小时编写一堆胶水代码,真心希望善良的您点个赞,谢谢了!! 很久很久没有写文章了,上一次还是在元旦发布 1.0 版本的 ...

  4. Oracle 操作权限

    alter user scott account unlock; 解锁 -- 新建用户create user yym identified by 123456; -- 放开用户权限grant conn ...

  5. 详解python操作生成excel表格,并且填充数据

    最近在研究python操作excel表格的问题,首先读取excel表格觉得平时用的多,不怎么有难度,就是pyhon生成excel表格的时候,平时不怎么用,所以重点研究了一下,现总结如下: 1.首先用到 ...

  6. SOFA入门

    简介 scalable open financial architecture stack , 可扩展开放的金融架构栈: github: https://github.com/sofastack/so ...

  7. Python 每日一练(4)

    引言 今天继续是python每日一练的几个专题,主要涵盖简单的敏感词识别以及图片爬虫 敏感词识别 这个敏感词的识别写的感觉比较简单,总的概括之后感觉功能可以简略成if filter_words in ...

  8. pandas DataFrame 的横向纵向拼接组合

    concat 与其说是连接,更准确的说是拼接.就是把两个表直接合在一起.于是有一个突出的问题,是横向拼接还是纵向拼接,所以concat 函数的关键参数是axis . 函数的具体参数是: concat( ...

  9. webmin RCE漏洞利用及分析

    Webmin是目前功能最强大的基于Web的Unix系统管理工具.管理员通过浏览器访问Webmin的各种管理功能并完成相应的管理动作. 利用条件:webmin <= 1.910 原因:官网 Sou ...

  10. 02 . Mysql基础操作及增删改查

    SQL简介 SQL(Structured Query Language 即结构化查询语言) SQL语言主要用于存取数据.查询数据.更新数据和管理关系数据库系统,SQL语言由IBM开发. SQL语句四大 ...