基于STC12C5A60S2系列1T 8051单片机的带字库液晶显示器LCD12864数据传输并行模式显示汉字应用

本文主要是介绍基于STC12C5A60S2系列1T 8051单片机的带字库液晶显示器LCD12864数据传输并行模式显示汉字应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

基于STC12C5A60S2系列1T 8051单片机的液晶显示器LCD12864显示汉字应用

  • STC12C5A60S2系列1T 8051单片机管脚图
  • STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式及配置
  • STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式介绍
  • 液晶显示器LCD12864简单介绍
    • 一、LCD12864点阵型液晶显示器介绍
      • 1、DDRAM(Data Display Ram)
      • 2、CGROM(Character Generation ROM)
      • 3、CGRAM(Character Generation RAM)
      • 4、GDRAM(Graphic Display RAM)
      • 5、HCGROM(Half height Character Generation ROM)
      • 6、LCD12864点阵型液晶显示器 DDRAM(Data Display Ram:数据显示随机存储器)、CGROM(Character Generation ROM:字符发生只读存储器)、CGRAM(Character Generation RAM:字符发生随机存储器) 、HCGROM(Half height Character Generation ROM:半宽字符发生只读存储器)各自作用
        • (1)、DDRAM(Data Display Ram:数据显示随机存储器)
        • (2)、CGROM(Character Generation ROM:字符发生只读存储器)
        • (3)、CGRAM(Character Generation RAM:字符发生随机存储器)
        • (4)、HCGROM(Half height Character Generation ROM:半宽字符发生只读存储器)
      • 7、LCD12864点阵型液晶显示器 DDRAM(Data Display Ram:数据显示随机存储器)、CGROM(Character Generation ROM:字符发生只读存储器)、CGRAM(Character Generation RAM:字符发生随机存储器) 、HCGROM(Half height Character Generation ROM:半宽字符发生只读存储器)之间的联系
    • 二、LCD12864点阵型液晶显示器尺寸图
    • 三、LCD12864点阵型液晶显示器示意图
    • 四、LCD12864点阵型液晶显示器连接原理图
      • 1、第一种LCD12864点阵型液晶显示器连接原理图(LCD12864点阵型液晶显示器引脚功能说明对应下面第一种LCD12864点阵型液晶显示器引脚功能列表)
      • 2、第二种LCD12864点阵型液晶显示器连接原理图(LCD12864点阵型液晶显示器引脚功能说明对应下面第二种LCD12864点阵型液晶显示器引脚功能列表(常用))
    • 五、LCD12864点阵型液晶显示器引脚功能列表
      • 1、第一种LCD12864点阵型液晶显示器引脚功能列表
      • 2、第二种LCD12864点阵型液晶显示器引脚功能列表(常用)
    • 六、LCD12864点阵型液晶显示器读写操作
    • 七、LCD12864点阵型液晶显示器内部存储器详细介绍
      • 1、DDRAM(Data Display Ram:数据显示随机存储器)
        • (1)、DDRAM是什么?
        • (2)、DDRAM有什么作用?
        • (3)、DDRAM内存地址
        • (4)、DDRAM(Data Display Ram:数据显示随机存储器)与LCD12864点阵型液晶显示器显示位置对应关系
          • <1>、DDRAM(Data Display Ram:数据显示随机存储器)存储汉字与LCD12864点阵型液晶显示器显示位置对应关系
          • <2>、DDRAM(Data Display Ram:数据显示随机存储器)存储半宽字符(比如:英文字母、数字、符号、ASCII码、日文字符、希腊文字符)与LCD12864点阵型液晶显示器显示位置对应关系
        • (5)、DDRAM(Data Display Ram:数据显示随机存储器)内部数据读写
          • <1>、单片机从LCD12864点阵型液晶显示器内部ST7920芯片的DDRAM(Data Display Ram:数据显示随机存储器)读取数据
          • <2>、单片机写数据到LCD12864点阵型液晶显示器内部ST7920芯片的DDRAM(Data Display Ram:数据显示随机存储器)
        • (6)、单片机驱动LCD12864点阵型液晶显示器内部ST7920芯片给LCD2864点阵型液晶显示器传送数据的模式
          • <1>、单片机驱动LCD12864点阵型液晶显示器内部ST7920芯片以8位数据并行总线模式给LCD12864点阵型液晶显示器传送数据的时序图
          • <2>、单片机驱动LCD12864点阵型液晶显示器内部ST7920芯片以4位数据并行总线模式给LCD12864点阵型液晶显示器传送数据的时序图
          • <3>、单片机驱动LCD12864点阵型液晶显示器内部ST7920芯片以串行总线模式给LCD12864点阵型液晶显示器传送数据的时序图
        • (7)、字符编码在DDRAM中存储的事项说明
          • <1>、每次对DDRAM的操作单位是一个字,也就是2个字节。当往DDRAM写入数据时,首先写地址,然后连续送入2个字节的数据,先送高字节数据,再送低字节数据。读数据时也是如此,先写地址,然后读出高字节数据,再读出低字节数据(注意:读数据时先假读一次)。
          • <2>、显示ASCII码半宽字符时,往每个地址送入2个字节的ASCII编码,对应LCD12864点阵型液晶显示器显示位置就会显示2个半宽字符,左边的为高字节字符,右边的为低字节字符。
          • <3>、显示汉字时,汉字编码的2个字节必须存储在同一地址空间中,不能分开放在2个地址存放,否则显示的就不是你想要的字符。每个字中的2个字节自动结合查找字模并显示字符。所以,如果我们往一个地址中写入的是一个汉字的2字节编码就会正确显示该字符,若编码高字节存放在前一地址低字节,编码低字节存放在后一地址高字节,显然他们就不会结合查找字模,而是与各地址相应字节结合查找字模。
      • 2、CGROM(Character Generation ROM:字符发生只读存储器)
        • (1)、CGROM是什么?
        • (2)、CGROM有什么作用?
        • (3)、CGROM存储的GB字符列表
        • (4)、CGROM内部数据读写
          • <1>、单片机从LCD12864点阵型液晶显示器内部ST7920芯片的CGROM读取数据
          • <2>、单片机写数据到LCD12864点阵型液晶显示器内部ST7920芯片的CGROM
      • 3、CGRAM(Character Generation RAM:字符发生随机存储器)
        • (1)、CGRAM是什么?
        • (2)、CGRAM有什么作用?
        • (3)、CGRAM存储自定义字符地址列表
        • (4)、CGRAM内部数据读写
          • <1>、单片机从LCD2864点阵型液晶显示器内部ST7920芯片的CGRAM读取数据
          • <2>、单片机写数据到LCD12864点阵型液晶显示器内部ST7920芯片的CGRAM
      • 4、GDRAM(Graphic Display RAM:图形显示随机存储器)
        • (1)、GDRAM是什么?
        • (2)、GDRAM有什么作用?
        • (3)、GDRAM坐标位址列表
        • (4)、LCD12864点阵型液晶显示器内部ST7920芯片的GDRAM内存地址与LCD12864点阵型液晶显示器显示位址对应关系
        • (5)、GDRAM内部数据读写
          • <1>、单片机从LCD12864点阵型液晶显示器内部ST7920芯片的GDRAM读取数据
          • <2>、单片机写数据到LCD12864点阵型液晶显示器内部ST7920芯片的GDRAM
      • 5、HCGROM(Half height Character Generation ROM:半宽字符发生只读存储器)
        • (1)、HCGROM是什么?
        • (2)、HCGROM有什么作用?
        • (3)、HCGROM字符列表
        • (4)、HCGROM数据读写
          • <1>、单片机从LCD12864点阵型液晶显示器内部ST7920芯片的HCGROM读取数据
          • <2>、单片机写数据到LCD12864点阵型液晶显示器内部ST7920芯片的HCGROM
    • 八、LCD12864点阵型液晶显示器内部ST7920芯片控制指令(提供2套控制指令集,分别是基本指令和扩充指令。)
    • 通过液晶显示器LCD12864显示汉字

STC12C5A60S2系列1T 8051单片机管脚图

在这里插入图片描述在这里插入图片描述

STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式及配置

在这里插入图片描述

STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式介绍

在这里插入图片描述在这里插入图片描述

液晶显示器LCD12864简单介绍

一、LCD12864点阵型液晶显示器介绍

LCD12864点阵型液晶显示器是一种具有4 位或8 位并行、2 线或3线串行多种接口方式,内部可含有或不含有国标一级、二级简体中文字库的点阵型液晶显示器。其中LCD12864点阵型液晶显示器中128表示128列,64表示64行,总共有128x64=8192个点。常见LCD12864点阵型液晶显示器内部控制器以ST7920芯片为主,内置了DDRAM(Data Display Ram:数据显示随机存储器)、CGROM(Character Generation ROM:字符发生只读存储器)、CGRAM(Character Generation RAM:字符发生随机存储器)、GDRAM(Graphic Display RAM:图形显示随机存储器)、HCGROM(Half height Character Generation ROM:半宽字符发生只读存储器)。在此分别介绍LCD12864点阵型液晶显示器内部控制器ST7920芯片中的五种存储器,如下所示。

1、DDRAM(Data Display Ram)

数据显示随机存储器,往里面写啥,屏幕就会显示啥。

2、CGROM(Character Generation ROM)

字符发生只读存储器,里面存储了2M的8192个字符(包括中文、英文字母、数字、符号、ASCII码、日文字符、希腊文)的字模。在LCD12864点阵型液晶显示器界面可用16(行)x16(列)点阵来显示一个中文汉字。

3、CGRAM(Character Generation RAM)

字符发生随机存储器,可以产生128K的字符,用于用户自定义字符,一次可以自定义4个字符。在LCD12864点阵型液晶显示器界面可用16(行)x16(列)点阵来显示。

4、GDRAM(Graphic Display RAM)

图形显示随机存储器,里面存储了一块16384个点的文字图形区域,用于写文字绘图,往里面写啥绘啥,屏幕就会显示啥,它与DDRAM(数据显示随机存储器)的区别在于,往DDRAM(数据显示随机存储器)中写的数据是字符的编码,字符的显示先是在CGROM(字符发生只读存储器)中找到字模,然后映射到屏幕上,而往GDRAM(图形显示随机存储器)中写的数据是图形的点阵信息,每个点用1bit来保存其显示与否。

5、HCGROM(Half height Character Generation ROM)

半宽字符发生只读存储器,里面存储了16K的126个字符,就是字母、数字、符号。在LCD12864点阵型液晶显示器界面可用16(行)x8(列)点阵来显示一个英文字母或数字或符号。

6、LCD12864点阵型液晶显示器 DDRAM(Data Display Ram:数据显示随机存储器)、CGROM(Character Generation ROM:字符发生只读存储器)、CGRAM(Character Generation RAM:字符发生随机存储器) 、HCGROM(Half height Character Generation ROM:半宽字符发生只读存储器)各自作用

(1)、DDRAM(Data Display Ram:数据显示随机存储器)

把读到的数据(包括中文、英文字母、数字、符号、ASCII码、日文字符、希腊文以及自定义字符)显示到LCD12864点阵型液晶显示器界面。

(2)、CGROM(Character Generation ROM:字符发生只读存储器)

存储了中文、英文字母、数字、符号、ASCII码、日文字符、希腊文字符的字模编码,是液晶屏出厂时被固化在控制芯片中,用户不能改变其中的存储内容,只能读取调用。

(3)、CGRAM(Character Generation RAM:字符发生随机存储器)

留给用户存储自定义的字模编码。

(4)、HCGROM(Half height Character Generation ROM:半宽字符发生只读存储器)

存储英文字母、数字、符号的字模编码。

7、LCD12864点阵型液晶显示器 DDRAM(Data Display Ram:数据显示随机存储器)、CGROM(Character Generation ROM:字符发生只读存储器)、CGRAM(Character Generation RAM:字符发生随机存储器) 、HCGROM(Half height Character Generation ROM:半宽字符发生只读存储器)之间的联系

打个比方,CGRAM(Character Generation RAM:字符发生随机存储器)和CGROM(Character Generation ROM:字符发生只读存储器)中存储的字模信息相当于厨房中的食品,CGRAM(Character Generation RAM:字符发生随机存储器)是用户自行制作的菜肴,CGROM(Character Generation ROM:字符发生只读存储器)是厨房中现成的熟食,这些食品都要通过托盘转移一下,才能送到餐桌上食用。这类似于LCD12864点阵型液晶显示器界面要显示字符,先从CGROM(Character Generation ROM:字符发生只读存储器)和CGRAM(Character Generation RAM:字符发生随机存储器)读取到字模编码,再写入DDRAM(Data Display Ram:数据显示随机存储器)中,经如上中转以后,LCD12864点阵型液晶显示器界面在相应位置才显示出字符

二、LCD12864点阵型液晶显示器尺寸图

在这里插入图片描述

三、LCD12864点阵型液晶显示器示意图

在这里插入图片描述说明:由上图可知,LCD12864点阵型液晶显示器有128(列)x64(行),共有128x64=8192个点,可分左半屏(或上半屏)、右半屏(或下半屏),左半屏(或上半屏)对应DDRAM(Data Display Ram:数据显示随机存储器)内存地址是80H-87H、90H-97H、A0H-A7H、B0H-B7H,右半屏(或下半屏)对应DDRAM(Data Display Ram:数据显示随机存储器)内存地址是88H-8FH、98H-9FH、A8H-AFH、B8H-BFH,分四大行,每一大行有一大页,共四大页,每一大页有两小页(小页地址:从0xb8到0xa5),共八小页,每一小页有八行,共六十四行。

四、LCD12864点阵型液晶显示器连接原理图

1、第一种LCD12864点阵型液晶显示器连接原理图(LCD12864点阵型液晶显示器引脚功能说明对应下面第一种LCD12864点阵型液晶显示器引脚功能列表)

在这里插入图片描述

2、第二种LCD12864点阵型液晶显示器连接原理图(LCD12864点阵型液晶显示器引脚功能说明对应下面第二种LCD12864点阵型液晶显示器引脚功能列表(常用))

在这里插入图片描述

五、LCD12864点阵型液晶显示器引脚功能列表

1、第一种LCD12864点阵型液晶显示器引脚功能列表

这篇关于基于STC12C5A60S2系列1T 8051单片机的带字库液晶显示器LCD12864数据传输并行模式显示汉字应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

Java Stream 并行流简介、使用与注意事项小结

《JavaStream并行流简介、使用与注意事项小结》Java8并行流基于StreamAPI,利用多核CPU提升计算密集型任务效率,但需注意线程安全、顺序不确定及线程池管理,可通过自定义线程池与C... 目录1. 并行流简介​特点:​2. 并行流的简单使用​示例:并行流的基本使用​3. 配合自定义线程池​示

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

PostgreSQL简介及实战应用

《PostgreSQL简介及实战应用》PostgreSQL是一种功能强大的开源关系型数据库管理系统,以其稳定性、高性能、扩展性和复杂查询能力在众多项目中得到广泛应用,本文将从基础概念讲起,逐步深入到高... 目录前言1. PostgreSQL基础1.1 PostgreSQL简介1.2 基础语法1.3 数据库

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

Python中yield的用法和实际应用示例

《Python中yield的用法和实际应用示例》在Python中,yield关键字主要用于生成器函数(generatorfunctions)中,其目的是使函数能够像迭代器一样工作,即可以被遍历,但不会... 目录python中yield的用法详解一、引言二、yield的基本用法1、yield与生成器2、yi

Python多线程应用中的卡死问题优化方案指南

《Python多线程应用中的卡死问题优化方案指南》在利用Python语言开发某查询软件时,遇到了点击搜索按钮后软件卡死的问题,本文将简单分析一下出现的原因以及对应的优化方案,希望对大家有所帮助... 目录问题描述优化方案1. 网络请求优化2. 多线程架构优化3. 全局异常处理4. 配置管理优化优化效果1.

C#和Unity中的中介者模式使用方式

《C#和Unity中的中介者模式使用方式》中介者模式通过中介者封装对象交互,降低耦合度,集中控制逻辑,适用于复杂系统组件交互场景,C#中可用事件、委托或MediatR实现,提升可维护性与灵活性... 目录C#中的中介者模式详解一、中介者模式的基本概念1. 定义2. 组成要素3. 模式结构二、中介者模式的特点

从基础到高阶详解Python多态实战应用指南

《从基础到高阶详解Python多态实战应用指南》这篇文章主要从基础到高阶为大家详细介绍Python中多态的相关应用与技巧,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、多态的本质:python的“鸭子类型”哲学二、多态的三大实战场景场景1:数据处理管道——统一处理不同数据格式