LCD1602显示屏原理及使用教程
创作时间:
作者:
@小白创作中心
LCD1602显示屏原理及使用教程
引用
CSDN
1.
https://blog.csdn.net/m0_60790717/article/details/126239828
LCD1602显示屏是一种常用的字符型液晶显示屏,广泛应用于各种单片机和嵌入式系统中。本文将详细介绍LCD1602显示屏的工作原理、引脚定义、控制时序以及驱动程序的编写方法。
1. 芯片简介
LCD1602显示屏为字符显示屏,显示字符为16×2。采用LCD显示一个字符时比较复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。这样一来就组成某个字符。但由于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD1602上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。
主要特点如下:
- 显示容量为16×2个字符;
- 芯片工作电压为4.5~5.5V,最佳工作电压为5.0V;
- 工作电流为2.0mA(5.0V);
- 字符尺寸为2.95×4.35(W×H)mm。
2. 引脚定义
- VSS(1):显示屏电源地;
- VDD(2):显示屏电源;
- V0(3):V0为液晶显示器对比度调整端;
- RS(4):寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器;
- RW(5):读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据;
- EN(6):使能端,当E端由高电平跳变成低电平时,液晶模块执行命令;
- D0-D7(7-14):8位双向数据线;
- A(15):背光正极;
- K(16):背光负极;
3. 控制时序
(1)读操作时序如图:
(2)写操作时序如图
4. 驱动程序
(1)LCD1602.h
#ifndef __LCD1602_H__
#define __LCD1602_H__
#include<reg52.h>
sbit LCD1602_RS = P2^6;
sbit LCD1602_RW = P2^5;
sbit LCD1602_E = P2^7;
#define LCD1602_Data P0
void delay_50us_1602(unsigned int t);
void LCD1602_write_com(unsigned char com);
void LCD1602_write_data(unsigned int dat);
void LCD1602_init(void);
/*******************************************
函数名称:Disp_ZF
功 能:控制液晶显示字符
参 数:addr--显示位置的首地址
pt--指向显示数据的指针
num--显示字符个数
返回值 :无
********************************************/
void LCD1602_Disp_ZF(unsigned char addr,const unsigned char * pt,unsigned char num);
#endif
(2)LCD1602.c
#include "LCD1602.h"
//延时函数
void delay_50us_1602(unsigned int t)
{
unsigned char j;
for(;t>0;t--)
for(j=19;j>0;j--);
}
//LCD1602写指令
void LCD1602_write_com(unsigned char com)
{
LCD1602_E = 0;
LCD1602_RS = 0;
LCD1602_RW = 0;
LCD1602_Data= com;
delay_50us_1602(10);
LCD1602_E = 1;
delay_50us_1602(20);
LCD1602_E = 0;
}
//LCD1602写数据
void LCD1602_write_data(unsigned int dat)
{
LCD1602_E = 0;
LCD1602_RS = 1;
LCD1602_RW = 0;
LCD1602_Data = dat;
delay_50us_1602(10);
LCD1602_E = 1;
delay_50us_1602(20);
LCD1602_E = 0;
}
//LCD1602初始化
void LCD1602_init(void)
{
delay_50us_1602(300);
LCD1602_write_com(0X38);
delay_50us_1602(100);
LCD1602_write_com(0X38);
delay_50us_1602(100);
LCD1602_write_com(0X38);
LCD1602_write_com(0X38);
LCD1602_write_com(0X08);
LCD1602_write_com(0X01);
LCD1602_write_com(0X06);
LCD1602_write_com(0X0C);
}
void LCD1602_Disp_ZF(unsigned char addr,const unsigned char * pt,unsigned char num)
{
unsigned char i;
LCD1602_write_com(addr);
for(i = 0;i < (num*1);i++)
LCD1602_write_data(*(pt++));
}
热门推荐
慢病管理与生活行为纠正学说
全面了解纺织纤维的回潮率及其重要性
水电改造要几天?家装工程时间规划指南
啥叫腔梗?一文读懂腔隙性脑梗死
隔离霜的正确使用方法及步骤详解
别再搞错了!防晒霜和隔离霜的正确使用顺序,让你美得更科学
蒜香四溢,粉丝爽滑——蒜蓉粉丝的美味秘诀
虾仁粉丝煲最好吃家常做法,一煎一滚,鲜香爽滑超美味,越吃越香
造价咨询行业“数字住建”时代:把握三大机遇,执行五大策略
奶茶怎么做,需要什么材料(家庭版简单教程)
宅家简单三步自制奶茶,奶香味浓郁,味道纯正香甜,比买的还好喝
联合国维和人员为何在刚果民主共和国驻扎了65年?
羁绊是什么意思?
戒烟,是对自己最好的投资
从安龙一中的老照片,追溯到乾隆时期的九峰书院
A股投资者必看!如何利用技术分析预测走势和把握机会
项目管理如何进行缓冲设置
积阴德,心灵富足:阴德积累对于内心世界的滋养与提升
西安八大名胜古迹,探秘西安八大名胜,感受古都的非凡魅力!
Qt中的信号与槽机制:深入解析
真善和伪善的本质区别
为什么周围善良的人大多都得不到好报,心肠歹毒的人却过的很好?你有什么看法?
项目经理如何跟校长沟通
跨平台开发的未来:智能适配与生成技术的崛起
明代道教是如何发展起来的?与明代制度之间又有什么关系?
螺杆式空压机零部件详解:从主机到冷却系统的全面解析
王者荣耀张飞英雄调整介绍
八字命理新手教程之藏干 🌳 「八字藏干是什么意思解释」
历史上和C罗风格相近的球员,AI是怎么回答的?
如何挑选适合自己的跑鞋:根据跑步类型、足型和体重全面解析