LCD12864驱动开发

2023-10-12 20:30
文章标签 开发 驱动 lcd12864

本文主要是介绍LCD12864驱动开发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

 一、概述

二、方框图

 三、模块接口说明

1、串口接口管脚信号

2、并行接口

四、模块主要硬件构成说明

1、RS,R/W配4种模式:

 2、E信号

五、指令说明

六、读写时序图

6.1 数据传输过程 

 6.2、时序图

 6.3、串口读写时序

 七、交流参数

八、软件初始化

九、应用举例:

1、使用前的准备

2、字符显示

3 、图形显示

 4、应用说明

5、LCD12864-0402B 与单片机 80C51 的一种接口如图所示

十、附录部分

附录1:ASCII码表

​编辑 

附录2:汉字码址表


 一、概述

        LCD12864-0402B 是一种具有 4位/8 位并行、2线或3 线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块:其显示分辨率为 128X64,内置 8192个 16*16 点汉字,和128 16*8点ASCII 字符集,利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示 8X4行 16X16 点阵的汉字,也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
        基本特性:

  • 低电源电压 (VDD:+3.0--+5.5V)
  • 显示分辨率:128X64 点
  • 内置汉字字库,提供 8192 个 16X16 点阵汉字(简繁体可选)内置 128 个 16X8 点阵字符2MHZ 时钟频率
  • 显示方式:STN、半透、正显
  • 驱动方式: 1/32DUTY,1/5BIAS
  • 视角方向: 6 点
  • 背光方式:侧部高亮白色 LED,功耗仅为普通 LED 的 1/5-1/10
  • 通讯方式:串行、并口可选
  • 内置 DC-DC 转换电路,无需外加负压
  • 无需片选信号,简化软件设计
  • 工作温度: 0C - +55C,存储温度: -20C - +60C

二、方框图

 三、模块接口说明

1、串口接口管脚信号

  • *注释 1: 如在实际应用中仅使用串口通讯模式,可将 PSB 接固定低电平,也可以将模块上的J8 和“GND”用焊锡短接。
  • *注释 2: 模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空。
  • *注释 3: 如背光和模块共用一个电源,可以将模块上的 JA、JK 用焊锡短接。

2、并行接口

  • *注释 1: 如在实际应用中仅使用并口通讯模式,可将 PSB 接固定高电平,也可以将模块上的J8 和“VCC'用焊锡短接。
  • *注释 2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空
  • *注释 3: 如背光和模块共用一个电源,可以将模块上的 JA、JK 用焊锡短接。

四、模块主要硬件构成说明

控制器接口信号说明:

1、RS,R/W配4种模式:

 2、E信号

  • 忙标志:BF

        BF 标志提供内部工作情况.BF=1 表示模块在进行内部操作,此时模块不接受外部指令和数据.BF=O 时模块为准备状态,随时可接受外部指令和数据.

        利用 STATUS RD 指令,可以将 BF 读到 DB7 总线,从而检验模块之工作状态

  • 字型产生 ROM(CGROM)

        字型产生 ROM (CGROM) 提供 8192 个此触发器是用于模块屏幕显示开和关的控制。DFF=1 为开显示(DISPLAY ON),DDRAM 的内容就显示在屏幕上,DFF-0 为关显示(DISPLAY OFF)。

        DFF 的状态是指令 DISPLAY ON/OFF 和 RST 信号控制的。

  • 显示数据RAM (DDRAM)

        模块内部显示数据 RAM 提供 64X2 个位元组的空间,最多可控制 4 行 16 字(64 个字) 的中文字型显当写入显示数据 RAM 时,可分别显示 CGROM 与 CGRAM 的字型,此模块可显示三种字型,分别是半角英数字型(16*8)、CGRAM 字型及 CGROM 的中文字型,三种字型的选择,由在 DDRAM 中写入的编码选择,在 0000H0006H 的编码中(其代码分别是 0000、0002、0004、0006 共 4 ) 将选择 CGRAM 的自定义字型,02H-7FH 的编码中将选择半角英数字的字型,至于 A1 以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码 BIG5 (A140一D75F),GB (A1AO-F7FFH)。

  • 字型产生RAM(CGRAM)

        字型产生 RAM 提供图象定义(造字)功能,可以提供四组 16X16 点的自定义图象空间,使用者可以将内部字型没有提供的图象字型自行定义到 CGRAM 中,便可和 CGROM 中的定义一样地通过 DDRAM 显示在屏幕中。

  • 地址计器AC

        地址计数器是用来贮存 DDRAM/CGRAM 之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入 DDRAM/CGRAM 的值时,地址计数器的值就会自动加一,当 RS 为“0”时而 R/W 为“1”时,地址计数器的值会被读取到 DB6--DBO 中。

  • 光标/闪烁控制电路

        此模块提供硬体光标及闪烁控制电路,由地址计数器的值来指定 DDRAM 中的光标或闪烁位置。 

五、指令说明

        模块控制芯片提供两套控制命令,基本指令和扩充指令如下:

指令表1:(RE=0:基本指令)

 指令表2:(RE=1:扩充指令)

备注:当 IC1 在接受指令前,微处理器必须先确认其内部处于非忙碌状态,即读取 BF 标志时,BF 需为零,方可接受新的指令;如果在送出一个指令前并不检查 BF 标志,那么在前一个指令和这个指令中间必须延长一段较长的时间,即是等待前一个指今确实执行完成。

六、读写时序图

6.1 数据传输过程 

 6.2、时序图

MCU写资料到ST7920(8位数据线模式) 

MPU从ST7920读资料(8位数据线模式) 

 6.3、串口读写时序

串口方式下MPU写数据到ST7920 

 七、交流参数

 交流参数(Ta=25°C,Vdd=4.5V-5.5V)

八、软件初始化

8-位元介面:

4-位元介面:

九、应用举例:

1、使用前的准备

        先给模块加上工作电压,再按照下图的连接方法调节LCD的对比度,使其显示出黑色的底影。此过程亦可以初步检测LCD有无缺段的现象。

2、字符显示

        LCD12864-0402B 每屏可显示 4行 8 列共 32 个 16X16 点阵的汉字,每个显示 RAM 可显示1个中文字符或 2 个16X8 点阵全高 ASCII 码字符,即每屏最多可实现 32 个中文字符或 64 个

ASCII 码字符的显示。FYD12864-0402B 内部提供 128X2 字节的字符显示 RAM 缓冲区(DDRAM)。字符显示是通过将字符显示编码写入该字符显示 RAM 实现的。根据写入内容的不同,可分别在液品屏上显示 CGROM(中文字库)、HCGROM(ASCII 码字库)及 CGRAM(自定义字形 的内容。三种不同字符/字型的选择编码范围为: 0000~0006H(其代码分别是 0000、0002、0004、0006 共 4 个) 显示自定义字型,02H~7FH 显示半宽 ASCII 码字符,AIAOH~F7FFH 显示8192 种 GB2312 中文字库字形。字符显示 RAM 在液晶模块中的地址 80H~9FH。字符显示的 RAM 的地址与 32 个符显示区域有着一一对应的关系,其对应关系如下表所示。

3 、图形显示

         先设垂直地址再设水平地址(连续写入两个字节的资料来完成垂直与水平的坐标地址)

垂直地址范围 AC5...AC0
水平地址范围 AC3...ACO

绘图RAM 的地址计数器(AC) 只会对水平地址(X 轴)自动加一,当水平地址 OFH 时会重新设为00H 但并不会对垂直地址做进位自动加一,故当连续写入多笔资料时,程序需自行判断垂直地址是否需重新设定。GDRAM的坐标地址与资料排列顺序如下图:

 4、应用说明

        LCD12864-0402B 显示模块时应注意以下几点:

  1. 欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示地址,再写入中文字符编码。
  2. 显示 ASCII 字符过程与显示中文字符过程相同。不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加 1指向下一个字符位置,否则,显示的字符中将会有一个空ASCII 字符位置。
  3. 当字符编码为 2 字节时,应先写入高位字节,再写入低位字节。
  4. 模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取 BF 标志时 BF 需为“O”方可接受新的指令。如果在送出一个指今前不检查 BF 标志,则在前一个指今和这个指今中间必须延迟一段较长的时间,即等待前一个指今确定执行完成。指今执行的时间请参考指今表中的指令执行时间说明。5“RE”为基本指今集与扩充指今集的选择控制位。当变更“RE”后,以后的指今集将维持在最后的状态,除非再次变更“RE”位,否则使用相同指今集时,无需每次均重设“RE”位。

5、LCD12864-0402B 与单片机 80C51 的一种接口如图所示

十、附录部分

附录1:ASCII码表

16*8半宽字符表 

附录2:汉字码址表

 

这篇关于LCD12864驱动开发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/198262

相关文章

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设