51单片机怎么显示当前时间_51单片机玩转物联网基础篇06-LCD1602液晶显示器

85f005faa160826f9166bce9bc42aa1a.png

前言

本节我们开始学习LCD1602,LCD1602是字符型液晶显示屏,在实际项目中应用非常广泛,学完本节就可以逐步开发一些好玩的应用了。

一、基础知识

1.LCD1602简介

LCD1602是字符型液晶显示模块,专门用于显示字母、数字、符号等点阵式LCD,顾名思义,LCD1602一共可以显示两行,每一行能够显示16个字符数据,采用5V供电,具有低功耗、长寿面、搞可靠性等特性,实物图如下:

ba3a2b440eaee61cfca16ecaf4498150.png

(1) 引脚说明

1a5decc001f29d5ebc50a7c443425f03.png

在 LCD1602 内部含有 80 个字节的 DDRAM,它是用来寄存显示字符的。其地址

和屏幕的对应关系如下

06eb8f3d180ac9c092e677b097da656a.png

从上图可知,LCD1602中80个字节并不是所有的都用来显示数据,只有第一行的00~0F,第二行的40~4F用来显示,其他地址只能用来存储

(2) 指令表

463137daa8ab4f35fe2928bc07ff2f13.png

(3) 常用指令说明

  • 清屏指令

8c9ceba6e59e82c3bf3475af2dff4984.png

功能:清楚屏幕,置AC为0

  • 模式设置指令

b5aa31849c58c56e3d052cb1788a13cf.png

功能:光标和显示模式设置

设定每次输入1位数据后光标的移位方向,并且设定每次写入后的字符是否移动。

I/D(光标移动方向): 1:右移 0:左移

S(显示屏整体是否移动): 1 :有效右移 0:无效

  • 显示开关控制指令

edfbb012ea6069673cf0eee12758b2ee.png

功能:控制显示器开/关,光标开/关,光标是否闪烁

D:1,开启显示功能; 0,关闭显示功能

C:1,有光标;0,无光标

B:1,光标闪烁;0,光标不闪烁

  • 功能设定指令

939a9f3dc5f695e7130ace1b151b4f44.png

功能:设置数据总线位数、显示行数、字型

DL:1,数据总线为8位; 0,数据总线为4位

N:1,显示2行;0,显示1行

F:1,5X7点阵;0,5X10点阵

2.硬件设计

打开硬件设计电路,LCD相关电路如下

74aa82f397c6e4918afd1b8a02a95fe7.png

注意:R7控制LCD1602驱动电压,可调,一般设计需要10K可调电阻,也可以字型调试OK后,焊接固定电阻。

二、实例

1.创建工程

将上一节工程复制出来,并修改名字为05-lcd1602

ab68a7e4b1b99ad3a87cfb21bd8d6d32.png

2.修改程序

/*------------------------------------------------------
*店铺网址:https://shop321633213.taobao.com/?spm=a1z10.3-c.0.0.33816af5iLgN2F
*适用于A08开发板
*实验现象:驱动LCD1602
*QQ群:906015840
* ------------------------------------------------------*/ #include<reg51.h> //头文件
#include <intrins.h> 
#define uchar unsigned char
#define uint unsigned int 
uchar code table_xiaoyi[]="XIAOYI IOT";         //
uchar code table_xiaoyi_welcome[]="Welcome!";                                 
sbit LCD_EN=P3^7;   //液晶使能信号
sbit LCD_RS=P3^5;   //数据/命令选择端
sbit LCD_WR=P3^6;void delay_ms(uint ms)
{uint x,y;for(x=ms;x>0;x--)for(y=110;y>0;y--);
}void write_com(uchar com) //命令
{LCD_RS=0;        //选择写命令P0=com;delay_ms(5);LCD_EN=1;        //使能信号LCD_EN=0;         //关闭使能
}void write_data(uchar date) //数据
{LCD_RS=1;        //选择写数据P0=date;delay_ms(5);LCD_EN=1;LCD_EN=0;
}void init()
{LCD_EN=0;write_com(0x38);         //00111000        设置16*2显示,5*7点阵 8为数据接口write_com(0x0c);   //00001100        设置开显示,不显示光标write_com(0x06);         // 00000110        写一个字符后地址指针加 1write_com(0x01);         //00000001        显示清0,数据指针清零        
}void main(void) //主函数
{uchar i;LCD_WR=0;init();// 写第一行数据write_com(0x80); for(i=0;i<10;i++){write_data(table_xiaoyi[i]);delay_ms(5);}// 写第二行数据write_com(0x80+0x40);        for(i=0;i<8;i++){write_data(table_xiaoyi_welcome[i]);delay_ms(5);}while(1);
}

程序中将字符串"XIAOYI IOT"显示在第一行,"Welcome"显示在第二行。

三、运行

将上述程序生成的hex文件烧录到板子中,板子显示如下:

15e0a4d85a6758ba0eaaa59e886c0486.png

硬件获取:

51单片机物联网开发板 STC89C52RC实验板支持连云​item.taobao.com
b1969614a71f8369b3e3d565308810ab.png

一叶孤沙出品:一沙一世界,一叶一菩提

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/542836.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

联想服务器如何u盘启动盘装系统,联想如何设置u盘启动

相信有不少网友都在使用联想电脑&#xff0c;它的性价比一直受到不少消费者的青睐。接下来教大家联想如何设置u盘启动&#xff0c;希望大家能喜欢。联想如何设置u盘启动步骤阅读1、按快捷键弹出启动选项&#xff0c;联想笔记本一般是F12或者F22、按TAB键切换App Menu菜单&#…

c语言负数左移右移_C语言 位运算符的运算规则

位运算是指按照二进制进行的运算&#xff0c;在C语言中&#xff0c;提供了6种的位运算符&#xff0c;他们分别是按位与&#xff08;&&#xff09;&#xff0c;按位或&#xff08;|&#xff09;&#xff0c;按位异或&#xff08;^&#xff09;&#xff0c;按位取反&#xff…

的标题形状工具在哪里_自媒体如何搜集素材?标题、文章、图片素材收集3大途径!...

文&#xff1a;老彭自媒体大家好&#xff0c;我是老彭&#xff0c;很多人觉得做自媒体写内容很难&#xff0c;每天想写点东西又感觉无从下手&#xff0c;那么到底是什么原因造成的呢&#xff1f;其实最主要的原因还是自己平时看的太少&#xff0c;和素材储备不足所导致的。大家…

小样本点云深度学习库_合成鲁棒的对抗样本来欺骗深度学习分类器

本期一诺sec关注深度学习系统安全问题&#xff0c;推荐一篇来自ICML 2018会议论文Synthesizing Robust Adversarial Examples。论文链接http://proceedings.mlr.press/v80/athalye18b.html。深度模型对于对抗样本具有高度的脆弱性&#xff0c;这已经是得到大家印证的事实。自从…

java数据类型_JAVA基础篇(数据类型)

首先请大家想想这几个问题&#xff1a;1.java数据类型是什么&#xff1f;2.Java数据类型有什么用&#xff1f;上一节&#xff08;JAVA基础篇&#xff08;函数&#xff09;&#xff09;有个add函数&#xff0c;里面有两个int类型&#xff0c;int类型就是整数的意思&#xff0c;这…

SharePoint CAML In Action——Part I

阅读目录 CAML In Action接下来在SharePoint中&#xff0c;我们经常要对List进行操作&#xff0c;比如要从List中取出相应的ListItem&#xff0c;利用CAML是个好办法。在没了解CAML之前&#xff0c;我是这样取数据的&#xff1a; MyList.Items.Cast<SPListItem>().ToList…

地图统计_博客 城市访问量统计并且通过Echarts+百度地图展示

本篇讲解一下 如何在Vue 中使用 Echarts 百度地图 统计 博客访问量 并且通过QQWry 解析 ip 地址 利用Echarts 展示出来效果图如下&#xff1a;1.纯真Ip地址库 QQWry这是我在github上找的 java版本的 解析 qqwry的1.1 maven 引入 qqwry<dependency> <grou…

修改console缓存大小_更改缓存的行大小将如何影响其他参数?

修改console缓存大小Prerequisites: Memory mapping and its types 先决条件&#xff1a; 内存映射及其类型 While designing a cache system of a PC, the size of cache lines is an important parameter. 在设计PC的缓存系统时&#xff0c;缓存行的大小是重要的参数。 In …

win10必须禁用的服务_Win10系统中这3个无用的设置,奉劝你还是早点关闭吧!

在PC端所有的操作系统中&#xff0c;占据市场份额最大的莫过于微软发布的windows系统。其中最经典的莫过于XP和win7&#xff0c;无奈微软已经停更了这两个操作系统&#xff0c;所以为了电脑的安全着想&#xff0c;很多人都直接升级更新至最新版的win10系统&#xff0c;目前win1…

Android 布局练习

要求&#xff1a;使用多种布局完成以下练习。 1.要求效果 完成效果 代码&#xff1a; <?xml version"1.0" encoding"utf-8"?> <…

有危害吗_涂料漆对身体有害吗?涂料漆危害怎么预防

目前很多人都会通过涂料漆来进行墙面装饰&#xff0c;用它来对墙面进行装饰是可以马上的改善墙壁的状态&#xff0c;但有些人也担心它会对身体有害&#xff0c;涂料漆对身体有害吗?由于担心涂料漆会给健康带来危害&#xff0c;很多人都想要预防&#xff0c;那涂料漆危害怎么预…

小写大写转换_小写到大写转换器JavaScript工具| 网络应用项目

小写大写转换Hi! At times, beginners always find it hard getting the application of the theory they learn in programming or a particular language. 嗨&#xff01; 有时&#xff0c;初学者总是很​​难在编程或特定语言中应用他们学到的理论。 In this article, well…

inventor扳手制作视频_弱电工程视频监控系统施工方案,可作施工组织设计

1 工程概况 1.1 编制《工程总体实施方案》 主要包括&#xff1a;结合高清监控系统设计方案作配套的深化设计&#xff0c;编制高清监控系统实施计划&#xff0c;并提出相关的配合要求。根据总体方案&#xff0c;对高清监控系统工程的技术设计作必要的补充。并提出相关的实施技术…

lol最克制诺手的英雄_LOL:究竟有没有完美克制诺手的英雄?时光上单或可一战?...

小伙伴们大家好&#xff0c;我是小数点。诺克萨斯之手德莱厄斯&#xff0c;他可以说是每一位上单玩家的噩梦了&#xff0c;因为喜欢玩诺手的人特别多&#xff0c;而会玩的诺手却一般都在对面。要知道诺手这样英雄拿到优势凶起来&#xff0c;你就没得打了&#xff0c;就算在塔下…

编程语言难度排名_编程语言TOP10!该如何选择适合自己的?

本文转载自公众号“读芯术”(ID&#xff1a;AI_Discovery)编程领域大约有700种代码语言。理解编程语言的重要性以及其如何影响需要执行的具体任务至关重要。一篇文章穷尽700 种语言不现实&#xff0c;也没有意义。因此&#xff0c;笔者挑选出了时下最热门的原因&#xff0c;在本…

测试私有方法 重构_一个全栈工程师重构之路:中小公司 DevOps 落地实践

为了这篇文章&#xff0c;我前后写了将近十篇文章铺垫&#xff0c;才将这篇整体重构思想引出。背景先说下背景&#xff0c;我们是一家小公司&#xff0c;虽然打着做产品的旗帜&#xff0c;但是每个客户都有大量的个性化功能&#xff0c;这里指各个客户的java端、Android端、ios…

puppeteer执行js_使用Node.js和Puppeteer与表单和网页进行交互– 2

puppeteer执行jsHi guys! Today lets look at another powerful function of the puppeteer API using Node.js part 2. 嗨&#xff0c;大家好&#xff01; 今天&#xff0c;让我们看看使用Node.js第2部分的puppeteer API的另一个强大功能。 In the first part of this sectio…

好用的平板电脑_小熊分享|这五款平板电脑的性价比绝了!

【叶紫网】独乐乐不如众乐乐&#xff0c;点击上方头像并添加关注&#xff0c;与叶紫科技小熊一起探索科技的奥秘。要说当代年轻人的消费观&#xff0c;我们也是说要该花花&#xff0c;该省省&#xff0c;像现在的科技产品更新换代的速度&#xff0c;就算我们的荷包相当的鼓&…

交际过程的两个基本环节_跨文化交际学概论笔记(二)

第二部分 基本概念&#xff1a;文化与交际第一章 文化的定义与特征一、文化的定义1. 文化的定义为何重要首先&#xff0c;在跨文化交际学中文化是一个至关重要的问题。研究时&#xff0c;不可避免进行文化对比。其次&#xff0c;在研究任何学科前&#xff0c;术语的界定是前提。…

lcd图片转二进制工具_辽宁2.8寸LCD屏价格,测距仪LCD显示屏_思迈微

首页 > 新闻中心发布时间&#xff1a;2020-11-15 08:27:09 导读&#xff1a;思迈微为您提供辽宁寸LCD屏价格,测距仪LCD显示屏的相关知识与详情&#xff1a; 以上便是对LED点阵式显示屏的软硬件系统、组成等的技术知识的粗略的介绍。以这款名为《液晶显示器亮点坏点修复工具》…