1、第 1 页 共 45 页汉字液晶显示屏应用与实践摘要本文介绍了基于 51 单片机的 LCD 液晶显示系统的设计,该系统用来完成对简易信号发生器信号输出状态的提示。硬件系统由单片机最小系统和液晶显示系统组成;液晶显示系统由主控模块 ST7920 和 LCD 液晶显示模块接口电路组成。介绍了常用的字符显示和汉字显示方法及程序。实现了对信号发生器发出直流、方波、正弦波和三角波不同频率以及幅值的 52 种组合的实时判断和显示。关键词:液晶显示器,AT89C51,ST7920 第 2 页 共 45 页Chinese LCD application and practiceAbstractArticle
2、51 SCM is introduced based on the LCD display system design, this system is used to perform simple signal output signal generator for the state. Hardware system by single-chip microcomputer system and minimum liquid crystal display (LCD) system, LCD display system control module by ST7920 LCD LCD mo
3、dule and interface circuit. This paper introduces some common characters and Chinese displaying methods and procedures. To realize the dc signal generator, a square, sine wave with different frequencies and the triangle and the amplitude of the combination of 52 and real-time display.Keywords: LCD,
4、AT89C51, ST79201 绪论1.1 系统背景液晶显示器件在中国已有二十余年的发展历史。二十余年来,液晶显示器件从实验室走向大规模生产集团,形成了独立的产业部门。现在,液晶显示几乎已经应用于生产,生活的各个领域,人们几乎时时处处都要与这一神奇而又普通的面孔打交道。液晶显示是集单片机技术、微电子技术、信息处理于一体的新型显示方式。由于液晶显示器具有低压低功耗,显示信息量大易于彩色化,无电磁辐射,长寿命,无污染等特点。LCD 是目前显示产业中发展速度最快,市场应用最广的显示器件,成为众多显示媒体中的佼佼者,在越来越多的领域中发挥作用,是目前显示器件中一个理想的选择。 LCD 在监控系统中的
5、应用:目前大多数监控系统自带的显示系统为 LED 数码管显示,这样显示效果比较单一,只能显示监控系统的测量值。而 LCD 液晶显示器不仅可以显示数值、汉字等,并且可以显示文本和图形。利用 LCD 和键盘实现人机交互,使监控系统独立工作成为可能。通过监控系统对现场的单回路控制器进行参数设置,对各个单回路控制器的工作进行监控。LCD 在时钟中的应用:在日常生活中我们会经常看到时间的显示,这些显示第 3 页 共 45 页大都是采用液晶显示器来显示的,而对其中的汉字无法用显示来解决。我们利用 LCD 液晶模块制成的小屏幕实现了时间的显示,显示格式为“时时:分分:秒秒” 。另外,可以增加闹钟功能,时间到
6、了则产生音乐声;还可以增加万年历显示“年月日”等多项功能。LCD 在大屏幕显示中的应用:大屏幕显示的应用范围极广,随着社会发展,公众生活的加强,人们对能够面向广大公众传递信息的显示装置越来越感到必需。使用液晶投影显示大屏幕,不仅有投影仪,指挥用大屏幕,还有液晶投影彩色电视。它可以用一个体积很小的系统装置,实现 100 英寸以上的非常漂亮的大屏幕电视显示。它与传统的显示媒体相比,具有分辨率极高,透过性好,显示内容丰富,彩色易于控制等优点。随着计算机技术及电子通信技术的发展,LCD 显示屏作为一种新的传媒工具,现已经应用到商业、军事、车站、宾馆、体育、新闻、金融、证券、广告以及交通运输等许多行业,
7、大到几十平方米的大屏幕,小到家庭影院用的图文显示屏,以及政府部门应用的电子黑板,证券、银行等部门用的信息数字混合屏。LCD 显示屏带来广泛的社会效益和经济效益,具有良好的发展前景。1.2 系统概述本系统的应用是针对一种基于 FPGA 的信号发生器而设计的液晶显示控制系统,分为单片机最小系统板和液晶显示屏两部分。单片机最小系统负责对输入信号的判断,从而控制液晶模块显示相应的汉字。液晶显示器(LCD)具有功耗低、体积小、重量轻、超薄等许多其它显示器无法比拟的优点,近几年来被广泛用于单片机控制的智能仪器、仪表和低功 耗电子产品中。LCD 可分为段位式 LCD、字符式 LCD 和点阵式 LCD。其中,
8、段位式 LCD 和字符式 LCD 只能用于字符和数字的简单显示,不能满足图形曲 线和汉字显示的要求 ;而点阵式 LCD 不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动,动画功能,分区开窗口,反 转,闪烁等功能,用途十分广泛。本文介绍了点阵式液晶显示器 12864A-1 与单片机的接口及编程的方法,同时介绍了创建字符和点阵汉字的方法,及常用的字符显示和汉字显示程序。单片机可以通过数据总线与控制信号直接采用存储器访问形式、I/O 设备访问形式控制该液晶显示模块。第 4 页 共 45 页基于 FPGA 的信号发生器根据产生信号的不同输出不同的几组信号输出给单片机
9、,单片机用 7 个 I/O 口来控制显示,其中两个 I/O 口选择波形类型,包括直流、方波、正弦波和三角波;两个 I/O 口选择频率类型,包括10Hz、50Hz、100Hz 和 500Hz;两个 I/O 口选择幅值类型,包括 1V、2V、3V 和5V;剩下的一个 I/O 口选择显示类型包括开机显示和正文显示。上下系统连接如图 1.1 所示;信号发生器波形分类如表 1.1 所示。波形选择开关初值时钟分频直流量方波正弦波三角波波形控制信号数模转换电路频率选择开关幅值选择开关F P G A单片机液晶输出图 1.1 系统之间连接图表 1.1 波形分类说明表波形开关 频率开关 幅值开关 情况0 0 0
10、0 0 0幅值为 1V 的 10HZ 直流电平0 0 0 0 0 1幅值为 2V 的 10HZ 直流电平0 0 0 0 1 0 幅值为 3V 的 10HZ 直流电第 5 页 共 45 页平0 0 0 0 1 1幅值为 5V 的 10HZ 直流电平0 1 0 0 0 0 幅值为 1V 的 10HZ 方波0 1 0 0 0 1 幅值为 2V 的 10HZ 方波0 1 0 0 1 0 幅值为 3V 的 10HZ 方波0 1 0 0 1 1 幅值为 5V 的 10HZ 方波0 1 0 1 0 0 幅值为 1V 的 50HZ 方波0 1 0 1 0 1 幅值为 2V 的 50HZ 方波0 1 0 1 1
11、 0 幅值为 3V 的 50HZ 方波0 1 0 1 1 1 幅值为 5V 的 50HZ 方波0 1 1 0 0 0 幅值为 1V 的 100HZ 方波0 1 1 0 0 1 幅值为 2V 的 100HZ 方波0 1 1 0 1 0 幅值为 3V 的 100HZ 方波0 1 1 0 1 1 幅值为 5V 的 100HZ 方波0 1 1 1 0 0 幅值为 1V 的 500HZ 方波0 1 1 1 0 1 幅值为 2V 的 500HZ 方波0 1 1 1 1 0 幅值为 3V 的 500HZ 方波0 1 1 1 1 1 幅值为 5V 的 500HZ 方波1 0 0 0 0 0 幅值为 1V 的
12、10HZ 正弦波1 0 0 0 0 1 幅值为 2V 的 10HZ 正弦波1 0 0 0 1 0 幅值为 3V 的 10HZ 正弦波1 0 0 0 1 1 幅值为 5V 的 10HZ 正弦波第 6 页 共 45 页1 0 0 1 0 0 幅值为 1V 的 50HZ 正弦波1 0 0 1 0 1 幅值为 2V 的 50HZ 正弦波1 0 0 1 1 0 幅值为 3V 的 50HZ 正弦波1 0 0 1 1 1 幅值为 5V 的 50HZ 正弦波1 0 1 0 0 0 幅值为 1V 的 100HZ 正弦波1 0 1 0 0 1 幅值为 2V 的 100HZ 正弦波1 0 1 0 1 0 幅值为 3
13、V 的 100HZ 正弦波1 0 1 0 1 1 幅值为 5V 的 100HZ 正弦波1 0 1 1 0 0 幅值为 1V 的 500HZ 正弦波1 0 1 1 0 1 幅值为 2V 的 500HZ 正弦波1 0 1 1 1 0 幅值为 3V 的 500HZ 正弦波1 0 1 1 1 1 幅值为 5V 的 500HZ 正弦波1 1 0 0 0 0 幅值为 1V 的 10HZ 三角波1 1 0 0 0 1 幅值为 2V 的 10HZ 三角波1 1 0 0 1 0 幅值为 3V 的 10HZ 三角波1 1 0 0 1 1 幅值为 5V 的 10HZ 三角波1 1 0 1 0 0 幅值为 1V 的
14、50HZ 三角波1 1 0 1 0 1 幅值为 2V 的 50HZ 三角波1 1 0 1 1 0 幅值为 3V 的 50HZ 三角波1 1 0 1 1 1 幅值为 5V 的 50HZ 三角波1 1 1 0 0 0 幅值为 1V 的 100HZ 三角波1 1 1 0 0 1 幅值为 2V 的 100HZ 三角波1 1 1 0 1 0 幅值为 3V 的 100HZ 三角波第 7 页 共 45 页1 1 1 0 1 1 幅值为 5V 的 100HZ 三角波1 1 1 1 0 0 幅值为 1V 的 500HZ 三角波1 1 1 1 0 1 幅值为 2V 的 500HZ 三角波1 1 1 1 1 0 幅
15、值为 3V 的 500HZ 三角波1 1 1 1 1 1 幅值为 5V 的 500HZ 三角波2 液晶显示模块介绍2.1 液晶显示模块概述12864A-1 汉字图形点阵液晶显示模块,采用 ST7920 控制驱动器 123,可显示汉字及图形,内置 8192 个中文汉字(16X16 点阵) 、128 个字符(8X16 点阵)及 64X256 点阵显示 RAM(GDRAM) 。主要技术参数和显示特性:电源:VDD 3.3V+5V(内置升压电路,无需负压);显示内容:128 列 64 行显示颜色:黄绿显示角度:6:00 钟直视LCD 类型:STN与 MCU 接口:8 位或 4 位并行/3 位串行配置
16、LED 背光多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等2.2 模块引脚说明 表 2.1 128X64 引脚说明表 456引脚号引脚名称 方向 功能说明1 VSS - 模块的电源地第 8 页 共 45 页2 VDD - 模块的电源正端3 V0 - LCD 驱动电压输入端4 RS(CS) H/L 并行的指令/数据选择信号;串行的片选信号5 R/W(SID) H/L 并行的读写选择信号;串行的数据口6 E(CLK) H/L 并行的使能信号;串行的同步时钟7 DB0 H/L 数据 08 DB1 H/L 数据 19 DB2 H/L 数据 210 DB3 H/L 数据 311 DB4 H/L
17、 数据 412 DB5 H/L 数据 513 DB6 H/L 数据 614 DB7 H/L 数据 715 PSB H/L 并/串行接口选择:H-并行;L-串行16 NC 空脚17 /RET H/L 复位 低电平有效18 NC 空脚19 LED_A - 背光源正极(LED+5V)20 LED_K - 背光源负极(LED-OV)逻辑工作电压(VDD):4.55.5V电源地(GND):0V工作温度(Ta):060(常温) / -2075(宽温)第 9 页 共 45 页2.3 接口时序模块有并行和串行两种连接方法 7(时序如下):8 位并行连接时序图MPU 写资料到模块图 2.1 MPU 写资料到模块
18、时序图MPU 从模块读出资料图 2.2 MPU 从模块读出资料时序图2.4 用户指令集表 2.2 指令表(RE=0:基本指令集)指令指令码 说明第 10 页 共 45 页RSRWDB7DB6DB5DB4DB3DB2DB1DB0清除显示0 0 0 0 0 0 0 0 0 1将 DDRAM 填满“20H”,并且设定 DDRAM 的地址计数器(AC)到“00H”地址归位0 0 0 0 0 0 0 0 1 X设定 DDRAM 的地址计数器(AC)到“00H” ,并且将游标移到开头原点位置;这个指令并不改变DDRAM 的内容进入点设定0 0 0 0 0 0 0 1I/DS指定在资料的读取与写入时,设定游标移动方向及指定显示的移位显示状态开/关0 0 0 0 0 0 1 D C BD=1:整体显示 ONC=1:游标 ONB=1:游标位置 ON