`
hzy3774
  • 浏览: 993011 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

51单片机驱动LCD1602液晶

 
阅读更多

1602液晶通常情况下作字符显示,操作很方便。

首先来看1602的引脚;由于是8位并行数据传递,所以占用IO较多:



 

 输入指令表:



 对1602的操作包括读数据和写数据;

在大多数情况下我们要用LCD显示简单的字符,所以最基本的操作就是写操作;写操作又包括写指令和写数据:写指令是告诉LCD做一些特殊的操作;写数据是告诉LCD要显示什么数据;

通过R/W区分读和写,通过RS区分指令还是数据,通过E说明什么时候做操作:



 写指令又分为特殊指令(如清屏,指定显示方式等)和显示地址指令(告诉LCD要在什么位置显示);

我们通常使用两行显示模式,他们的显示地址如下:

 

然而实际上这个地址还要加上0x80才是真正的显示地址:

例如0行0列的地址是0x80 + 0 + 0 = 0x80;

例如1行3列的地址是0x80 + 0x40 + 3 = 0xc3;

也就是说1行?列的地址是0x8?;

2行?列的地址是0xc?。

至于写数据操作,就是只要写入某个字符的ASCII码值,LCD就知道要显示什么字符了。

一个最简单的显示程序:

#include <reg51.h>

#define uchar unsigned char
#define uint unsigned int

#define writeCmd(cmd)	write((cmd),0)
#define writeDat(dat)	write((dat),1)

#define LCD P0

sbit RS = P2^0;
sbit RW = P2^1;
sbit E = P2^2;

void delay(unsigned char n)
{
    unsigned char x,y;
    for(x=n; x>0; x--)
        for(y=110; y>0; y--);
}

void write(uchar dat, bit rs) {
    RS = rs;
    LCD = dat;
    delay(5);
    E = 1;
    E = 0;
}

void lcdInit() {
    RW = 0;
    writeCmd(0x38);	//0x38 是把1602设置为 8位数据,双列,5*7字形 的显示模式
    writeCmd(0x0c);	//设置为关闭光标功能
    writeCmd(0x06);	//设定lcd自动把显示地址递增
    writeCmd(0x01);	//清屏
    writeCmd(0x80);	//显示地址指向头
}

void main() {
    lcdInit();
    writeCmd(0xc3);	//要在第2行3列显示一个S
    writeDat('S');
    while(1);
}

  仿真显示效果:



 

  • 大小: 243.6 KB
  • 大小: 199.9 KB
  • 大小: 139.7 KB
  • 大小: 64 KB
  • 大小: 53.1 KB
  • 大小: 33.8 KB
分享到:
评论

相关推荐

    云龙51单片机LCD1602液晶例题_云龙51单片机LCD1602液晶_

    标题中的"云龙51单片机LCD1602液晶例题"表明这是一个关于如何使用云龙51单片机驱动LCD1602液晶屏的实例教程。LCD1602屏幕通常有两行,每行可显示16个字符,常用于简单的人机交互界面。 描述中的"LCD 1602 simple ...

    51单片机C51LCD1602液晶程序

    51单片机是微电子技术中广泛应用的一种微控制器,尤其在嵌入式系统设计中占据着重要地位。...通过深入学习和实践,可以掌握51单片机驱动LCD1602液晶屏的基本技能,为后续的嵌入式开发打下坚实的基础。

    51单片机驱动LCD1602程序设计(C语言)

    51单片机驱动LCD1602程序设计(C语言),文档里还包含了lcd的管脚图和显示图形的代码

    51单片机驱动LCD1602例程+pretues仿真

    总之,通过51单片机驱动LCD1602的学习,你可以掌握微控制器与外围设备的交互,理解基本的液晶显示原理,以及利用PretuEyes进行硬件仿真的技能。这些知识对于进一步探索嵌入式系统设计和开发具有重要的基础作用。

    51单片机驱动LCD1602程序设计(C语言).pdf

    本资源是关于使用51单片机驱动LCD1602液晶显示屏的程序设计教程,使用C语言编写。该教程详细介绍了LCD1602的控制原理、引脚定义、DDRAM地址与显示位置的对应关系、字符代码、CGROM和CGRAM的工作原理等知识点。 控制...

    实验22:LCD1602液晶.rar_51单片机_lcd1602

    这个实验22主要关注如何利用51单片机驱动LCD1602液晶屏,并编写相应的子程序。 LCD1602,全称是16x2字符型液晶显示屏,它由16个字符组成的两行显示区域构成,每行可以显示80位(16个字符)的数据。这种显示器通常...

    51单片机对LCD1602液晶的驱动设计

    51单片机——LCD1602 1、1602液晶读写时序 (1)、读状态 RS=L,R/W=H,E=H。(判断忙完毕后释放总线) (2)、读数据 RS=H,R/W=H,E=H。 (3)、写指令 RS=L,R/W=L,D0~D7=指令码,E=高脉冲 (4)、写...

    LCD1602液晶_lcd1602_at89c51_

    在本项目中,我们将探讨如何使用STC89C51单片机驱动LCD1602液晶进行显示操作。 首先,LCD1602液晶显示器具有16个字符宽度和2行显示能力,每个字符由5x7点阵组成。它通过串行或并行接口与微控制器连接,并需要一定的...

    时钟显示,c语言 使用51单片机驱动LED1602液晶显示器

    总结起来,使用51单片机和C语言驱动LED1602液晶显示器显示时钟并实现控制功能,涉及到以下几个关键知识点: 1. 51单片机的IO口操作 2. LED1602液晶显示器的指令集和接口通信 3. 定时器的配置与中断服务程序 4. 键盘...

    使用51单片机+lcd1602转接板-iic接口进行显示.zip

    在本项目中,51单片机被用作主控制器,负责驱动LCD1602显示屏幕并处理数据传输。 LCD1602显示器,也称为16x2 LCD(液晶显示屏),是指具有16个字符宽度和2行显示能力的字符型液晶屏。它通常用于简单的信息显示,如...

    51单片机c语言LCD1602 滚动显示详细操作适合新手入门范例程序

    本篇文章将深入探讨如何使用C语言在51单片机上实现LCD1602显示器的滚动显示功能,这对于新手来说是一个非常实用的入门范例。 LCD1602是16x2字符型液晶显示器,即它可以显示两行,每行16个字符的文本信息。这种...

    51单片机LCD1602液晶屏驱动代码.rar_51单片机LCD1602液晶屏驱动代码_lcd1602 51_they4qi_v

    这个"51单片机LCD1602液晶屏驱动代码.rar"压缩包提供了针对51单片机的LCD1602屏幕的驱动程序,帮助开发者快速实现文字显示功能。 LCD1602液晶屏,全称为16字符x2行液晶显示器,其名称中的“1602”代表它可以显示16...

    51单片机音乐盒1602液晶

    【51单片机音乐盒1602液晶】是一个基于51系列单片机的电子设备,主要用于播放音乐并配以LCD1602液晶显示屏进行交互操作和信息显示。这种音乐盒集成了多种功能,包括开关机、播放控制以及信息显示,为用户提供了便捷...

    51单片机lcd1602液晶显示开发文档以及实验程序

    LCD1602液晶显示屏是微控制器开发中常用的可视化组件,尤其在51单片机系统中应用广泛。51单片机以其简单易用、性价比高而深受电子爱好者和初学者的喜爱。LCD1602,顾名思义,是指能够显示16个字符、每行20个字符的...

    基于C51单片机和LCD1602程序

    6. **C51与LCD1602接口设计**:根据单片机的IO口资源,合理分配LCD1602的控制线和数据线,并编写相应的驱动程序。如果是并行接口,可能需要处理数据线的高低电平控制;如果是串行接口,则需要掌握I2C或SPI通信协议。...

    Protues仿真实例-51单片机-LCD1602.rar

    本教程以"Protues仿真实例-51单片机-LCD1602"为主题,将带领我们深入探讨51系列单片机如何与LCD1602液晶显示器进行通信,并在Protues环境中实现功能验证。 51单片机,全称Intel 8051单片机,是微控制器领域的经典之...

    51单片机教程(七):LCD1602液晶显示模块

    本刊上期介绍单片机捕获红外遥控器解码方法电路原路和程序设计方法,并给出了实例...这一讲将介绍单片机驱动LCD1602 液晶显示模块。通过该讲,读者可以掌握LCD1602 液晶的工作原理和如何通过单片机来驱动LCD1602 液晶。

Global site tag (gtag.js) - Google Analytics