技术:51单片机、Arduino、LCD1602
 

概述

本文介绍了LCD1602显示屏,并在LCD1602上显示字符串,对LCD1602常见的问题的解决和开发方法也做了简单介绍。

详细

一、LCD1602

LCD1602是一种工业字符型液晶,能够同时显示16x02即32个字符,1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号的点阵型液晶模块。它是由若干个5x7或者5x10的点阵字符位组成,每个点阵字符位都可以用显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此,所以它不能很好的显示图片。

二、51单片机 - LCD1602显示字符串

硬件连接:

对比度太大或者太小都容易看不到东西,这里要注意了,接着在LCD1602上显示"This is lcd1602":

#include "reg52.h"    //此文件中定义了单片机的一些特殊功能寄存器
#include "lcd.h" typedef unsigned int u16; //对数据类型进行声明定义
typedef unsigned char u8; u8 Disp[]="This is lcd1602"; void main(void)
{
u8 i;
LcdInit();
for(i=0;i<15;i++)
{
LcdWriteData(Disp[i]); }
while(1);
}

LCD1602显示屏效果如下:

除了这些简单的显示字符串功能外,LCD1602显示屏上还可以显示一些简单的中文。LCD1602内部有80个字节的显存,即DDRAM。但LCD1602的显示屏幕只有16×2大小,因此,并不是所有写入DDRAM的字符代码都能在屏幕上显示出来,只有写在范围内的字符才可以显示出来,写在范围外的字符不能显示出来。这样,我们在程序中利用“光标或显示移动指令”使字符慢慢移动到可见的显示范围内,看到字符的移动效果。这些大家可以尝试做一下!!!

三、Arduino - LCD显示字符串

硬件连接:

加载库文件:

打开Arduino IDE -> 项目 -> 加载库 -> 管理库中搜索LiquidCrystal,然后安装即可。

LCD1602显示字符串代码:

#include <LiquidCrystal.h> //引入依赖

/* 初始化针脚 */
const int rs = 3;
const int en = 5;
const int d4 = 10;
const int d5 = 11;
const int d6 = 12;
const int d7 = 13;
const int lcdlight = 9; //调节对比度 LiquidCrystal lcd(rs, en, d4, d5, d6, d7); void setup() {
pinMode(lcdlight,OUTPUT);
analogWrite(lcdlight, 130);//用于调节对比度(0-255) lcd.begin(16, 2);//设置LCD要显示的列数、行数,即2行16列 lcd.print("This is lcd1602!");//输出Hello World
} void loop() {
lcd.setCursor(0, 1); //设置光标定位到第0列,第1行(从0开始)
lcd.print( millis() / 1000);//打印从重置后的秒数
}

LCD1602显示字符串:

LCD1602自动滚屏:

四、总结

本文介绍了LCD1602显示屏,并在LCD1602上显示字符串。大家也可以使用LCD1602显示时钟和温湿度值等等,也可以尝试显示中文,后面一篇文章会教大家使用OLED显示屏!!!

五、项目结构图

注:本文著作权归作者,由demo大师发表,拒绝转载,转载需要作者授权

Arduino和C51开发LCD1602显示屏的更多相关文章

  1. Arduino和C51开发OLED显示屏

    技术:51单片机.Arduino.OLED显示屏.U8glib   概述 OLED显示屏常常用作为智能产品的显示设备,本文简单介绍OLED显示屏的使用方法. 详细 代码下载:http://www.de ...

  2. Arduino和C51开发DHT11温湿度传感器

    技术:51单片机.Arduino.DHT11.温湿度传感器.传感器   概述 学习单片机离不开对传感器的学习,本文主要介绍DHT11温湿度传感器的使用方法,同学也可以了解更多的传感器,这对你以后开发产 ...

  3. Arduino和C51开发光敏传感器

    技术:51单片机.Arduino.光敏传感器.PCF8591.AD/DA转换   概述 本文介绍了如何接收传感器的模拟信号和如何使用PCF8591 AD/DA转换模块对光敏传感器的模拟信号进行转换.讲 ...

  4. Arduino和C51开发DS1302时钟

    技术:51单片机.Arduino.DS1302时钟.串口通信   概述 本文实现51单片机和Arduino串口实时显示时钟功能,让读者对DS1302能够更好的理解,这次功能也和上节课学到的串口通信运用 ...

  5. x86 版的 Arduino Intel Galileo 开发板的体验、分析和应用

    1.前言 在今年(2013)罗马举办的首届欧洲 Make Faire 上,Intel 向对外发布了采用 x86 构架的 Arduino 开发板:Intel Galileo.这无疑是一个开源硬件领域的重 ...

  6. Arduino可穿戴开发入门教程(大学霸内部资料)

    Arduino可穿戴开发入门教程(大学霸内部资料) 试读下载地址:链接:http://pan.baidu.com/s/1mg9To28 密码:z5v8 介绍:Arduino可穿戴开发入门教程(大学霸内 ...

  7. Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE

    Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...

  8. Arduino可穿戴开发入门教程Arduino开发环境介绍

    Arduino可穿戴开发入门教程Arduino开发环境介绍 Arduino开发环境介绍 Arduino不像我们使用的PC端操作系统一样,可以直接在操作系统中安装软件为操作系统编程.Arduino的软件 ...

  9. Arduino可穿戴开发入门教程LilyPad和LilyPad Simple的介绍

    Arduino可穿戴开发入门教程LilyPad和LilyPad Simple的介绍 LilyPad和LilyPad Simple的介绍 LilyPad和LilyPad Simple是LilyPad微控 ...

随机推荐

  1. 7.4 服务远程暴露 - 创建Exporter与启动netty服务端

    为了安全:服务启动的ip全部使用10.10.10.10 远程服务的暴露总体步骤: 将ref封装为invoker 将invoker转换为exporter 启动netty 注册服务到zookeeper 订 ...

  2. go语言之进阶篇定时器重置

    1.定时器重置 示例: package main import ( "fmt" "time" ) func main() { timer := time.New ...

  3. android api doc 一

    Manifest.permission 用于记录相应权限类 ACCESS_CHECKIN_PROPERTIES 允许在登入数据库的时候读写其中的属性表,并上传改变的值 ACCESS_COARSE_LO ...

  4. JAVA 中不错的开源FTP组件:commons-net

    第一步:引入jar到pom.xml. <!-- https://mvnrepository.com/artifact/commons-net/commons-net --> <dep ...

  5. Vs2013 坑爹的Target framework问题

    之前的一个项目是使用Vs2008来开发的,因为这段时间家里有事情所以只能跟经理协商在家里来做此项目,因为家里的VS是2013的所以在迁移时没有什么问题 但今天我更改一个类库的文件后重新生成解决方案结果 ...

  6. (转)【风宇冲】Unity3D教程宝典之AssetBundles:第一讲

    自:http://blog.sina.com.cn/s/blog_471132920101gz8z.html 原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                 ...

  7. c++ string wstring 字符串替换

      int CStringTool::Replace(std::wstring& strContent, std::wstring& strReplace, std::wstring  ...

  8. 开源的DirectUI界面库

    1. duilib简介 duilib是一个开源的DirectUI界面库,简洁但是功能强大.而且还是BSD的license,所以即便是在商业上,大家也可以安心使用.现在大家可以从这个网站获取到他们所有的 ...

  9. 论文阅读:Memory Networks

    一.论文所解决的问题 实现长期记忆(大量的记忆),而且实现怎样从长期记忆中读取和写入,此外还增加了推理功能 为什么长期记忆非常重要:由于传统的RNN连复制任务都不行,LSTM预计也够玄乎. 在QA问题 ...

  10. 修改linux的时间可以使用date指令

    修改linux的时间可以使用date指令 修改日期: 时间设定成2009年5月10日的命令如下: #date -s 05/10/2009 修改时间: 将系统时间设定成上午10点18分0秒的命令如下.  ...