LCD1602课程设计报告
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LCD1602 指令说明:详情见附录一 LCD1602 指令表。
5
Hale Waihona Puke Baidu
2.6、系统框图
三、程序流程图
3.1 、主程序流程图
3.2、LCD 初始化子程序流程图
6
3.3、命令写入子程序流程图
3.4、数据写入子程序流程图
3.5、外部中断和外中断 1 流程图
3.6、延时子程序流程图
7
四、程序清单
#include<reg52.h> #include"intrins.h"
sbit lcden=P2^5; sbit lcdrs=P1^0; sbit lcdrw=P1^1;
//使能端
//*************函数声明************* void delay(uint count); void write_command(uchar command); void write_info(uchar info); void init();
1→0 1
将数据寄存器内的数据读到 DB0-DB7,模块的内部操 1
作自动将 DDRAM 或 CGRAM 中的数据送入数据寄存器中
忙标志位 BF:忙标志位 BF=1 时,表明模块正在进行内部操作,此时不接受 任何外部指令和数据。当 RS=0、R/W=1 且 E 为高电平时,BF 输出到 DB7。
地址计数器(AC):地址计数器是 DDRAM 或 CGRAM 的地址指针。AC 具有自动 加 1 或减 1 的功能。
3
单片机的外部复位电路有上电自动复位和按
键手动复位两种。本次课程设计使用的是上电+
按键复位。
复位键按下后,复位端与 VCC 电源接通,迅
速放电,是 RST 引脚为高电平,复位键弹起之后,
电源 VCC 通过电阻对电容重新充电,RST 引脚端
出现复位正脉冲,其持续时间取决于 RC 电路的时
间常。
上电+按键复位
组合选择指定的寄存器,进行相应的操作,组合选择方式如下表:
E
RS
R/W
说明
1
0
0
将 DB0-DB7 的指令代码写入指令寄存器中
1→0 0
1
1
分别将状态表示 BF 和地址计数器 AC 内容读到 DB7 和 1
DB6-DB0 将 DB0-DB7 的数据写入数据寄存器中,模块的内部操 0
作自动将数据写入 DDRAM 或 CGRAM 中
显示数据寄存器(DDRAM):DDRAM 存储器显示字符的字符码,其容量的大小 决定模块最多可显示的字符数目。
字符发生器 ROM:在 CGROM 中,模块已经以 8 位二进制数的形式,生成了 5 ×8 的点阵的字符字模组字符字膜。
字符发生器 RAM:在 CGRAM 中,用户可以生成自定义图形字符的字模组,可 以生成 5×8 点阵的字符字膜 8 组,相对应的字符码从 CGROM 的 00H-0FFH 范围内 选择。
通过两个按键控制外部中断 0 和外部中断 1,分屏渐入式显示大段字符, 使 LCD1602 显示两句名言警句。
外部中断 0:I want to bring out the secrets of nature and apply them for the happiness of man. I don't know of any better service to offer for the short time we are in the world. --Thomas Edison(我想揭示大自然的秘密,用来造福人 类。我认为,在我们的短暂一生中,最好的贡献莫过于此了。——爱迪生)
"for the short ","time we are in ",
"the world.
"," --Thomas Edison"};
/*命在这个世界上取得成就的人,都努力去寻找他们想要的机会,如果找不到机会,他们便自己创造机会。 -- 萧伯纳*/
uchar code table2[10][16]={"The people who ","get on in this ", "world are the ","people who get ", "up and look for ","circumstances ", "they want,and if","they cannot find", "them,make them. "," --Bernara Shaw"};
单片机具备微型计算机的全部特征,因此单片机仍符合冯·诺依曼结构,其 基本结构如下图所示:
单片机除了具备体积小,价格低,性能强大,速度快,用途广,灵活性强, 可靠性高等优点外,与通用性微型计算机相比,还具有许多独特之处:
1、存储器 ROM 和 RAM 严格分工; 2、采用面向控制的指令系统; 3、输入/输出(I/O)端口引脚通常设计有多种功能; 4、品种规格的系列化; 5、单片机的硬件功能具有广泛的通用性。 单片机主要由:程序存储器(ROM)、随机存储器(RAM)、中央处理器(CPU)、 并行输入输出(I/O)端口、串行输入输出端口、定时器/计数器、系统时钟组成。
第 4 脚:RS 为寄存器选择,高电平 1 时
选择数据寄存器、低电平 0 时选择指令寄存器;
第 5 脚:RW 为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写
操作;
第 6 脚:E(或 EN)端为使能(enable)端,高电平(1)时读取信息,负跳变时
执行指令;
第 7~14 脚:D0~D7 为 8 位双向数据端;
第 15~16 脚:空脚或背灯电源。15 脚背光正极,16 脚背光负极。
4
字符液晶显示模块组件内部主要有 LCD 显示屏、控制器、驱动器和偏压电路
构成。
控制器主要由指令寄存器 IR、数据寄存器 DR、忙标识 BF、地址计数器 AC、
DDRAM、CGRAM 及时序发生电路组成。
指令寄存器(IR)和数据寄存器(DR):用户可以通过 RS 和 R/W 输入信号的
2.5、LCD1602 工作原理
LCD1602 是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由
若干个 5X7 点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有
一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。其显示
的内容为 16X2,即可以显示两行,每行 16 个字符液晶模块(显示字符和数字)。
512KB RAM, 32 位 I/O 口线,看门狗定时器,内置 4KB EEPROM,MAX810 复位 电路,3 个 16 位定时器/计数器,4 个外部中断,一个 7 向量 4 级中断结构(兼 容传统 51 的 5 向量 2 级中断结构),全双工串 行口。另外 STC89C52 可降至 0Hz 静态逻辑操 作,支持 2 种软件可选择节电模式。空闲模式 下,CPU 停止工作,允许 RAM、定时器/计数器、 串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作 停止,直到下一个中断或硬件复位为止。最高 运作频率 35MHz,6T/12T 可选。其管脚图如右 图所示。
2.3、晶振和时钟电路
利用芯片内部的振荡器,然后
再引脚 XTAL1 和 XTAL2 两端跨接晶
体振荡器(简称晶振),就构成了
稳定的自激振荡器,发出的脉冲直
接送入内部时钟电路,如右图所示。
内部时钟电路
外接晶振时,C1 和 C2 的值通常选择为 30pF 左右。C1、C2 对频率有微调作用,
晶振或陶瓷谐振器的频率范围可在 1.2-13MHZ 之间选择。
迪生*/
uchar code table1[12][16]={"I want to bring ","out the secret ",
"of nature and ","apply them for ",
"the happiness of","man.I don't know",
"of any better ","service to offer",
2.4 复位电路 时钟电路开始工作,在单片机的 RST 引脚上加大于 24 个时钟周期以上的正
脉冲,单片机系统即初始复位。初始化后,程序计数器 PC 指向 0000H,P0~P3 输出口全部为高电平,堆栈指针写入 07H,其他专用寄存器被清 0。RST 由高电 平下降为低电平后,系统从 0000H 地址开始执行程序。
#define uchar unsigned char #define uint unsigned int #define busy 0x80;
uchar code design[]="Designer: ZhaQi";
/*我想揭示大自然的秘密,用来造福人类。我认为,在我们的短暂一生中,最好的贡献莫过于此了。--爱
二、 系统工作原理
2.1、单片机及单片机系统 微型计算机包括运算器、控制器、存储器、输入/输出接口四个基础组成部
分。如果在一块芯片上,集成了一台微型计算机的四个基础部分,这种芯片被称 为单片微型计算机,简称单片机。
以单片机为核心的硬件电路称为单片机系统,单片机系统属于嵌入式系统的 应用范畴,嵌入式系统包括硬件和软件两部分:硬件部分包括中央处理器、存储 器、外设器件、I/O(输入/输出)端口和图形控制器等;软件部分包括操作系统 软件(OS)和应用程序软件。
为突出单片机在嵌入式系统的主导地位,许多半导体公司在单片机内部还集 成了许多外围电路和外设接口,如:中断、定时/计数、串行通讯、模拟/数字转 换(ADC)、脉冲宽度调制(PWM)等单元。一般来说,单片机利用大规模集成电 路技术把中央处理器和数字存储器(RAM)、程序存储器(ROM)及其他 I/O 通信 口集成在一块芯片上,构成一个最小的计算机系统。而现代的单片机则配置了中 断单元、定时单元及 A/D 转换等更复杂、更完善的电路,使得单片机的功能越来 越强大,应用更广泛。
一、 设计要求
1、 原设计要求: 通过单片机控制 LCD1602,使 LCD 显示两行字符。
2、 更改后设计要求: 通过单片机 STC89C52RC,控制 LCD 第一行不断滚动显示“Changzhou
Institute of Technology”,第二行显示“Designer: ZhaQi” 3、 附加的设计要求:
1
程序存储器(ROM):用来存放用户程序,可分为 EPROM、MASK ROM、OTP ROM 和 FLASH ROM 等。
随机存储器(RAM):用来存放程序运行时的工作变量和数据,RAM 的内容 是易失性的,掉电后会丢失。
中央处理器(CPU):是单片机的核心单元,通常由算数逻辑运算部件 ALU 和控制部件构成。
外部中断 1:The people who get on in this world are the people who get up and look for circumstances they want, and if they cannot find them, make them. -- Bernara Shaw(在这个世界上取得成就的人,都努力去寻找他们想要的机 会,如果找不到机会,他们便自己创造机会。 ——萧伯纳)
1602 采用标准的 16 脚接口,管脚图如右图所示,其中:
第 1 脚:VSS 为电源地;
第 2 脚:VCC 接 5V 电源正极;
第 3 脚:V0 为液晶显示器对比度调整端,
接正电源时对比度最弱,接地电源时对比
度最高(对比度过高时会 产生“鬼影”,
使用时可以通过一个 10K 的电位器调整对
比度);
LCD1602 管脚图
系统时钟:通常需要外接石英晶体或其他震荡源提供时钟信号输入,也有 的使用内部 RC 振荡器。
以上是指单片机的基本构成,现代的单片机又加入了许多新的功能部件, 如模拟/数字转换器(A/D)、数字/模拟转换器(D/A)、温度传感器、液晶(LCD)
2
驱动电路、电压监控、看门狗电路、低压检测电路等。
2.2、STC89C52RC 芯片 本次课程设计所使用的单片机型号是 STC89C52RC,它具有:8KB ROM,
并行输入/输出(I/O)端口:通常为独立的双向 I/O 口,即可以用作输入 方式,又可以用作输出方式,有的是漏极开路输出,有的能提供足够的电流可以 直接驱动外部设备。
串行输入/输出口:用于单片机和串行设备或其他单片机的通信,有同步 和异步之分,可以用硬件或通用串行收发器件实现。
定时器/计数器(T/C):用于单片机内部精确定时或对外部事件(输入信 号如脉冲)进行计数,通常单片机内部有多个定时/计数器。
5
Hale Waihona Puke Baidu
2.6、系统框图
三、程序流程图
3.1 、主程序流程图
3.2、LCD 初始化子程序流程图
6
3.3、命令写入子程序流程图
3.4、数据写入子程序流程图
3.5、外部中断和外中断 1 流程图
3.6、延时子程序流程图
7
四、程序清单
#include<reg52.h> #include"intrins.h"
sbit lcden=P2^5; sbit lcdrs=P1^0; sbit lcdrw=P1^1;
//使能端
//*************函数声明************* void delay(uint count); void write_command(uchar command); void write_info(uchar info); void init();
1→0 1
将数据寄存器内的数据读到 DB0-DB7,模块的内部操 1
作自动将 DDRAM 或 CGRAM 中的数据送入数据寄存器中
忙标志位 BF:忙标志位 BF=1 时,表明模块正在进行内部操作,此时不接受 任何外部指令和数据。当 RS=0、R/W=1 且 E 为高电平时,BF 输出到 DB7。
地址计数器(AC):地址计数器是 DDRAM 或 CGRAM 的地址指针。AC 具有自动 加 1 或减 1 的功能。
3
单片机的外部复位电路有上电自动复位和按
键手动复位两种。本次课程设计使用的是上电+
按键复位。
复位键按下后,复位端与 VCC 电源接通,迅
速放电,是 RST 引脚为高电平,复位键弹起之后,
电源 VCC 通过电阻对电容重新充电,RST 引脚端
出现复位正脉冲,其持续时间取决于 RC 电路的时
间常。
上电+按键复位
组合选择指定的寄存器,进行相应的操作,组合选择方式如下表:
E
RS
R/W
说明
1
0
0
将 DB0-DB7 的指令代码写入指令寄存器中
1→0 0
1
1
分别将状态表示 BF 和地址计数器 AC 内容读到 DB7 和 1
DB6-DB0 将 DB0-DB7 的数据写入数据寄存器中,模块的内部操 0
作自动将数据写入 DDRAM 或 CGRAM 中
显示数据寄存器(DDRAM):DDRAM 存储器显示字符的字符码,其容量的大小 决定模块最多可显示的字符数目。
字符发生器 ROM:在 CGROM 中,模块已经以 8 位二进制数的形式,生成了 5 ×8 的点阵的字符字模组字符字膜。
字符发生器 RAM:在 CGRAM 中,用户可以生成自定义图形字符的字模组,可 以生成 5×8 点阵的字符字膜 8 组,相对应的字符码从 CGROM 的 00H-0FFH 范围内 选择。
通过两个按键控制外部中断 0 和外部中断 1,分屏渐入式显示大段字符, 使 LCD1602 显示两句名言警句。
外部中断 0:I want to bring out the secrets of nature and apply them for the happiness of man. I don't know of any better service to offer for the short time we are in the world. --Thomas Edison(我想揭示大自然的秘密,用来造福人 类。我认为,在我们的短暂一生中,最好的贡献莫过于此了。——爱迪生)
"for the short ","time we are in ",
"the world.
"," --Thomas Edison"};
/*命在这个世界上取得成就的人,都努力去寻找他们想要的机会,如果找不到机会,他们便自己创造机会。 -- 萧伯纳*/
uchar code table2[10][16]={"The people who ","get on in this ", "world are the ","people who get ", "up and look for ","circumstances ", "they want,and if","they cannot find", "them,make them. "," --Bernara Shaw"};
单片机具备微型计算机的全部特征,因此单片机仍符合冯·诺依曼结构,其 基本结构如下图所示:
单片机除了具备体积小,价格低,性能强大,速度快,用途广,灵活性强, 可靠性高等优点外,与通用性微型计算机相比,还具有许多独特之处:
1、存储器 ROM 和 RAM 严格分工; 2、采用面向控制的指令系统; 3、输入/输出(I/O)端口引脚通常设计有多种功能; 4、品种规格的系列化; 5、单片机的硬件功能具有广泛的通用性。 单片机主要由:程序存储器(ROM)、随机存储器(RAM)、中央处理器(CPU)、 并行输入输出(I/O)端口、串行输入输出端口、定时器/计数器、系统时钟组成。
第 4 脚:RS 为寄存器选择,高电平 1 时
选择数据寄存器、低电平 0 时选择指令寄存器;
第 5 脚:RW 为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写
操作;
第 6 脚:E(或 EN)端为使能(enable)端,高电平(1)时读取信息,负跳变时
执行指令;
第 7~14 脚:D0~D7 为 8 位双向数据端;
第 15~16 脚:空脚或背灯电源。15 脚背光正极,16 脚背光负极。
4
字符液晶显示模块组件内部主要有 LCD 显示屏、控制器、驱动器和偏压电路
构成。
控制器主要由指令寄存器 IR、数据寄存器 DR、忙标识 BF、地址计数器 AC、
DDRAM、CGRAM 及时序发生电路组成。
指令寄存器(IR)和数据寄存器(DR):用户可以通过 RS 和 R/W 输入信号的
2.5、LCD1602 工作原理
LCD1602 是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由
若干个 5X7 点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有
一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。其显示
的内容为 16X2,即可以显示两行,每行 16 个字符液晶模块(显示字符和数字)。
512KB RAM, 32 位 I/O 口线,看门狗定时器,内置 4KB EEPROM,MAX810 复位 电路,3 个 16 位定时器/计数器,4 个外部中断,一个 7 向量 4 级中断结构(兼 容传统 51 的 5 向量 2 级中断结构),全双工串 行口。另外 STC89C52 可降至 0Hz 静态逻辑操 作,支持 2 种软件可选择节电模式。空闲模式 下,CPU 停止工作,允许 RAM、定时器/计数器、 串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作 停止,直到下一个中断或硬件复位为止。最高 运作频率 35MHz,6T/12T 可选。其管脚图如右 图所示。
2.3、晶振和时钟电路
利用芯片内部的振荡器,然后
再引脚 XTAL1 和 XTAL2 两端跨接晶
体振荡器(简称晶振),就构成了
稳定的自激振荡器,发出的脉冲直
接送入内部时钟电路,如右图所示。
内部时钟电路
外接晶振时,C1 和 C2 的值通常选择为 30pF 左右。C1、C2 对频率有微调作用,
晶振或陶瓷谐振器的频率范围可在 1.2-13MHZ 之间选择。
迪生*/
uchar code table1[12][16]={"I want to bring ","out the secret ",
"of nature and ","apply them for ",
"the happiness of","man.I don't know",
"of any better ","service to offer",
2.4 复位电路 时钟电路开始工作,在单片机的 RST 引脚上加大于 24 个时钟周期以上的正
脉冲,单片机系统即初始复位。初始化后,程序计数器 PC 指向 0000H,P0~P3 输出口全部为高电平,堆栈指针写入 07H,其他专用寄存器被清 0。RST 由高电 平下降为低电平后,系统从 0000H 地址开始执行程序。
#define uchar unsigned char #define uint unsigned int #define busy 0x80;
uchar code design[]="Designer: ZhaQi";
/*我想揭示大自然的秘密,用来造福人类。我认为,在我们的短暂一生中,最好的贡献莫过于此了。--爱
二、 系统工作原理
2.1、单片机及单片机系统 微型计算机包括运算器、控制器、存储器、输入/输出接口四个基础组成部
分。如果在一块芯片上,集成了一台微型计算机的四个基础部分,这种芯片被称 为单片微型计算机,简称单片机。
以单片机为核心的硬件电路称为单片机系统,单片机系统属于嵌入式系统的 应用范畴,嵌入式系统包括硬件和软件两部分:硬件部分包括中央处理器、存储 器、外设器件、I/O(输入/输出)端口和图形控制器等;软件部分包括操作系统 软件(OS)和应用程序软件。
为突出单片机在嵌入式系统的主导地位,许多半导体公司在单片机内部还集 成了许多外围电路和外设接口,如:中断、定时/计数、串行通讯、模拟/数字转 换(ADC)、脉冲宽度调制(PWM)等单元。一般来说,单片机利用大规模集成电 路技术把中央处理器和数字存储器(RAM)、程序存储器(ROM)及其他 I/O 通信 口集成在一块芯片上,构成一个最小的计算机系统。而现代的单片机则配置了中 断单元、定时单元及 A/D 转换等更复杂、更完善的电路,使得单片机的功能越来 越强大,应用更广泛。
一、 设计要求
1、 原设计要求: 通过单片机控制 LCD1602,使 LCD 显示两行字符。
2、 更改后设计要求: 通过单片机 STC89C52RC,控制 LCD 第一行不断滚动显示“Changzhou
Institute of Technology”,第二行显示“Designer: ZhaQi” 3、 附加的设计要求:
1
程序存储器(ROM):用来存放用户程序,可分为 EPROM、MASK ROM、OTP ROM 和 FLASH ROM 等。
随机存储器(RAM):用来存放程序运行时的工作变量和数据,RAM 的内容 是易失性的,掉电后会丢失。
中央处理器(CPU):是单片机的核心单元,通常由算数逻辑运算部件 ALU 和控制部件构成。
外部中断 1:The people who get on in this world are the people who get up and look for circumstances they want, and if they cannot find them, make them. -- Bernara Shaw(在这个世界上取得成就的人,都努力去寻找他们想要的机 会,如果找不到机会,他们便自己创造机会。 ——萧伯纳)
1602 采用标准的 16 脚接口,管脚图如右图所示,其中:
第 1 脚:VSS 为电源地;
第 2 脚:VCC 接 5V 电源正极;
第 3 脚:V0 为液晶显示器对比度调整端,
接正电源时对比度最弱,接地电源时对比
度最高(对比度过高时会 产生“鬼影”,
使用时可以通过一个 10K 的电位器调整对
比度);
LCD1602 管脚图
系统时钟:通常需要外接石英晶体或其他震荡源提供时钟信号输入,也有 的使用内部 RC 振荡器。
以上是指单片机的基本构成,现代的单片机又加入了许多新的功能部件, 如模拟/数字转换器(A/D)、数字/模拟转换器(D/A)、温度传感器、液晶(LCD)
2
驱动电路、电压监控、看门狗电路、低压检测电路等。
2.2、STC89C52RC 芯片 本次课程设计所使用的单片机型号是 STC89C52RC,它具有:8KB ROM,
并行输入/输出(I/O)端口:通常为独立的双向 I/O 口,即可以用作输入 方式,又可以用作输出方式,有的是漏极开路输出,有的能提供足够的电流可以 直接驱动外部设备。
串行输入/输出口:用于单片机和串行设备或其他单片机的通信,有同步 和异步之分,可以用硬件或通用串行收发器件实现。
定时器/计数器(T/C):用于单片机内部精确定时或对外部事件(输入信 号如脉冲)进行计数,通常单片机内部有多个定时/计数器。