分享学习12864心得

2023-05-16

分享12864显示中文

  • 一、12864基本参数
  • 二、代码部分
    • 1.得到控制时序
    • 2.指令集
    • 3.对显示屏写入数据
  • 总结


一、12864基本参数

1.电气参数

电源电压:VDD:+3.0–+5.5V
显示分辨率:128×64点
内置汉字字库,提供8192个16×16点阵汉字(简繁体可选)
内置128个16×8点阵字符
2MHZ时钟频率
通讯方式:串行、并口可选

2.引脚说明

LCD12864的引脚总共有20个,如图:
在这里插入图片描述
在这里插入图片描述3.电路连接原理图
在这里插入图片描述根据引脚图与连接电路看出,3、18引脚已悬空连接,复位引脚RES已接高电压。

二、代码部分

1.得到控制时序

12864存在串行和并行两种方式,此处只有并行写入。对于12864读取数据意义不大,此处只有写入数据。
时序图根据时序图可以得到:
R/W引脚,可以看出在写入数据时始终是处于电平;
使能端En,在写入数据前,拉高电平,而后给一个下降沿,将数据写入到内存当中;
整个流程为:
先给定RS引脚电平,确定是写入指令还是数据,而后R/W引脚指令,准备写入数据;接着使能端En拉高电平,数据此时写入至数据线上,当使能端给定下降沿时,数据被写入至内存中。
如何看懂时序图https://www.21ic.com/jichuzhishi/mcu/shixu/2013-05-31/182781.html

2.指令集

(1)检测忙代码如下:

//在读取指令时,得到的数据首位D7是否为1来判断是否处于Busy状态;
void LCD12864_CheckBusy()
{
	LCD12864_RS=0;
	LCD12864_WR=1;
	LCD12864_E=1;
	while((P0&0X80)==0X80);
	LCD12864_E=0;
}

(2)写入地址代码如下:

void LCD12864_WriteCommand(unsigned char Command)
{
	LCD12864_Busy();
	LCD12864_RS=0;
	LCD12864_WR=0;
	LCD12864_E=1;
	P0=Command; 
	Delay(50);
	LCD12864_E=0;
}

(3)写入数据代码如下:

void LCD12864_WriteData(unsigned char Data)
{
	LCD12864_Busy();
	LCD12864_RS=1;
	LCD12864_WR=0;
	LCD12864_E=1;
	P0=Data; 
	Delay(50);
	LCD12864_E=0;
}

(4)初始化代码如下:

void LCD12864_Init()
{
	LCD12864_PSB=1;
	LCD12864_Busy();
	LCD12864_WriteCommand(0X30);//选定基本指令集
	LCD12864_WriteCommand(0x0C);//显示开00001110
	LCD12864_WriteCommand(0x01);//清除显示
	LCD12864_WriteCommand(0x06);//指定初始位置
}

3.对显示屏写入数据

(1)选定显示位置

void LCD12864_SetLoc(unsigned char line,unsigned char column)
{
	switch(line)
	{
		case 1:
		{
			LCD12864_WriteCommand(0X80+column);
			break;
		}
		case 2:
		{
			LCD12864_WriteCommand(0X90+column);
			break;
		}
		case 3:
		{
			LCD12864_WriteCommand(0X88+column);
			break;
		}
		case 4:
		{
			LCD12864_WriteCommand(0X98+column);
			break;
		}
		default :
			break;
	}
}

(2)写入字符

void LCD12864_ShowChar(unsigned char line,unsigned char column,unsigned char Char)
{
	LCD12864_SetLoc(line,column);
	LCD12864_WriteData(Char);
}

(3)写入字符串

void LCD12864_ShowString(unsigned char line,unsigned char column,unsigned char String[])
{
	unsigned char i;
	LCD12864_SetLoc(line,column);//LCD12864_WriteCommand(0x1B);
	for(i=0;String[i]!='\0';i++){LCD12864_WriteData(String[i]);}
}

(4)主函数

#include <REGX52.H>
#include "LCD12864.h"
void main()
{
	LCD12864_Init();
	LCD12864_ShowString(1,0,"欢迎来到我的世界");
	
	while(1)
	{
		
	}
}

总结

对于12864的基本指令集,与1602原理一模一样,所以只需要将1206的使用掌握彻底,对于12864的基本指令级集掌握起来不是很困难。

参考文章:

https://blog.csdn.net/lin5103151/article/details/103467838

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

分享学习12864心得 的相关文章

  • C 数组

    lt div class 61 34 article intro 34 id 61 34 content 34 gt C 数组 C 语言支持数组数据结构 xff0c 它可以存储一个固定大小的相同类型元素的顺序集合 数组是用来存储一系列数据
  • 为什么访问亚马逊的网站卡顿?

    lt h4 class 61 34 sectiontitle 34 gt 为什么访问亚马逊的网站卡顿 xff1f lt h4 gt 购买了 华北 北京四 的服务器 xff0c 在亚马逊开办了跨境电商网站 xff0c 使用过一段时间后 xff
  • 一文了解公有云、私有云、混合云、边缘云、专有云、分布式云

    1 公有云 公有云是为大众建的 xff0c 所有入驻用户都称租户 xff0c 不仅同时有很多租户 xff0c 而且一个租户离开 xff0c 其资源可以马上释放给下一个租户 xff0c 一如饭店里一桌顾客走了马上迎来下一桌顾客 公有云是最彻底
  • 区块链基本概念

    传统商业网络 在当前传统商业网络中 xff0c 作为整个商业网络的参与方 xff0c 各商业机构及政府 金融机构等各方独立 系统不通 xff0c 各自维护自己的数据 当发生交易时 xff0c 交易双方修改各自账本并本地维护 xff0c 形成
  • ChatGPT——OpenAI推出的人工智能聊天机器人

    ChatGPT OpenAI推出的人工智能聊天机器人 目录 隐藏 1 什么是ChatGPT 2 ChatGPT的应用领域 3 3 ChatGPT的原理 4 ChatGPT的发展历程 5 ChatGPT爆火的原因 6 ChatGPT带来的变革
  • HBase

    架构设计 核心概念 xff1a Client xff1a 发起读写请求的角色 xff0c 面向hbase client 编程 首先hbase查询Meta表 xff0c 找到读或写的数据的region区域位置信息 然后向region对应的HR
  • python 数组的排列与组合:combinations 与 permutations

    combinations 与 permutations 函数在python 的 itertools 库中 xff0c 因此在使用前需要 import itertools combinations 函数的作用就是罗列出所有数组中 n 个元素的
  • 在STM32下完成一个基于FreeRTOS的多任务程序

    在STM32下完成一个基于FreeRTOS的多任务程序 一 FreeRTOS简述二 MDK下移植FreeRTOS三 总结 一 FreeRTOS简述 FreeRTOS是一个热门的嵌入式设备用即时操作系统核心 已被经成功移植到35种不同的微控制
  • 【K8S】Kubernetes集群搭建流程详解

    文章目录 一 购买云服务器二 搭建Docker环境三 根据K8S官网搭建 基础环境 四 安装K8S三剑客 xff1a kubelet kubeadm kubectl五 安装K8S节点需要使用的镜像六 使用kubeadm初始化Master节点
  • springBoot maven打包[分层打包]

    打jar包 xff0c 很大 xff0c 发服务器也慢 get到一种打包方式 直接挨着cv直接就能用 一 src目录下创建assembly文件夹下assembly xml lt assembly xmlns 61 34 http maven
  • 链表-倒序排列鏈表

    剑指 Offer 06 从尾到头打印链表 38 输入一个链表的头节点 xff0c 从尾到头反过来返回每个节点的值 xff08 用数组返回 xff09 示例 1 xff1a 输入 xff1a head 61 1 3 2 输出 xff1a 2
  • 使用远程桌面链接CentOS 7

    需求 xff1a Gnome桌面环境 Xrdp Xrdp是Microsoft远程桌面协议 RDP 的开源实现 xff0c 它允许您以图形方式控制远程系统 Gnome安装 yum groupinstall 34 GNOME Desktop 3
  • vscode的下载速度会特别慢问题处理

    1 xff0c 下载太慢大部分是因为VSCODE官网服务器跟我们国内的链接速度有关 xff0c 当我们去官网下载会出现下面的情况 2 xff0c 复制下载的链接 xff0c 并且修改红框中的内容为 span style background
  • Dockerfile

    Dockerfile Dockerfile基本结构指令FROMMAINTAINERRUNCMDEXPOSEENVADDCOPYENTRYPOINTVOLUMEUSERWORKDIRONBUILD 创建镜像 Dockerfile 基本结构 D
  • 使用git时本地代码被覆盖怎么办

    1 遇事不要慌 xff0c 看本地历史记录 右键要想要恢复的代码或文件夹 61 右键 61 Local History 61 gt Show History 2 我一下就找到了本地历史记录 看右边有了不同时间的代码 xff0c 去点一下试试
  • Ubuntu截图工具flameshot的安装与快捷键设置

    https blog csdn net sexyluna article details 105884224
  • moveit配置过后gazebo加载不出来机械臂模型的问题

    我使用moveit setup assistant对dubot magician机械臂的urdf进行配置 xff0c 配置完成后发现运行gazebo launch可以打开gazebo xff0c 但是却什么也没有 xff0c 机械臂模型加载
  • 上传本地项目代码到GitHub的方法

    预备知识 xff1a 有一个GitHub账号 xff0c 然后知道怎么进GitHub网页 之前往GitHub上传代码都是现场百度找指令操作的 xff0c 从来不记 xff0c 这次干脆做个记录当个笔记吧 Git是一个版本控制软件 xff0c
  • 单片机之蜂鸣器

    蜂鸣器简介 无源蜂鸣器 xff1a 有绿色电路板的一种 有源蜂鸣器 xff1a 没有电路板用黑胶封闭的一种 其实蜂鸣器的种类有很多 例如 xff1a 电磁式蜂鸣器 xff1a 由振荡器 电磁线圈 磁铁 振动膜片及外壳组成 同时电磁式蜂鸣器也
  • Centos Stream 9 安装 Docker 23.0.2 社区版 官方安装教程

    目录 一 内核的版本必须大于3 10使用下面的命令来检查是否满足docker的要求 xff0c 进行依赖性检查 二 安装docker容器引擎 xff0c 需要一个具有sudo权限的账户登录进行操作 1 更新现有yum包 2 遇到提示请输入y

随机推荐

  • AttributeError: module numpy has no attribute int .报错解决方案

    在训练YOLO模型时突然发现这个报错 xff0c 后来发现是numpy版本问题 xff0c yolo官方给的是大于等于1 18 5 xff0c 当你执行pip install r requirements txt命令时 xff0c 他默认安
  • 单片机(嵌入式)程序分层架构

    目录 前言 嵌入式3层软件架构 嵌入式4层软件架构 1 驱动层 操作系统层 中间件层 应用层 嵌入式4层软件架构 2 硬件层 嵌入式微处理芯片 嵌入式存储器系统 嵌入式I O接口 中间层 系统软件层 RTOS 文件系统 GUI 应用层 嵌入
  • FreeRTOS笔记—第一章 FreeRTOS概述

    1 1 认识FreeRTOS 1 1 1 什么是操作系统 操作系统 xff08 Operating System xff0c 简称OS xff09 是管理计算机硬件与软件资源的计算机程序 简单说就是一种管理计算机资源的软件 目的是为了高效
  • 嵌入式工程师 面试题 集-C语言

    预编译 1 什么是预编译 xff0c 何时需要预编译 答 xff1a 预编译又称预处理 就是做些代码文本的替换工作 开头的指令 xff0c 比如拷贝 include 包含的文件代码 xff0c define 宏定义的替换 xff0c 条件编
  • 嵌入式工程师面试题集-MCU_STM32

    一 选择题 1 Cortex M处理器采用的架构是 xff08 D xff09 xff08 A xff09 v4T xff08 B xff09 v5TE xff08 C xff09 v6 xff08 D xff09 v7 2 NVIC可用来
  • 嵌入式工程师面试题集汇总

    主观问题 主观问题 介绍类 请自我介绍 xff1f 为什么不留在xx公司 xff08 为啥离职 xff09 xff1f 你5 10年职业规划是怎样的 xff1f 你还写代码吗 xff1f 从工程师到管理再到工程师你是怎样想的或能承受吗 把你
  • C++解决实际问题 ——a的三次方(accode)

    hello大家好 xff0c 在下 小侠雨落 xff0c 几天不见 xff0c 甚是想念啊 xff01 不说了 xff0c 上标题 a的三次方 咳咳 xff0c 题目描述输入一个整数 a xff0c 输出 a 的三次方 输入格式 一行 xf
  • [CVPR2018]Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering

    Bottom Up and Top Down Attention 附 xff1a 论文下载地址 主要贡献 提出了一个新的LSTM组合模型 xff0c 包括了attention LSTM和language LSTM 两个组件 在这个组合模型的
  • python matplotlib绘图总结

    目录 1 画线 a 常规画线 xff1a matplotlib pyplot plot 1 xff09 线的颜色 风格 标记点形状 2 xff09 一图多线 xff0c 并加图例 b 非均匀画线 semilogy c 给特定的点打标签 2
  • mysql now的时间问题

    mysql now 函数调用系统时间不对修正方法 进入mysql命令行 查看时区设置 xff1a show variables like 39 zone 39 select 64 64 time zone 两者保持与系统时间一致 xff0c
  • 【谷粒学院】微信扫码支付(224~238)

    224 项目第十五天内容介绍 225 课程评论实现过程分析 226 课程支付功能需求分析 1 课程支付说明 xff08 1 xff09 课程分为免费课程和付费课程 xff0c 如果是免费课程可以直接观看 xff0c 如果是付费观看的课程 x
  • 故障转移集群搭建高可用文件共享服务器

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言 一 故障转移集群是什么 xff1f 二 什么是仲裁盘 xff1f 三 添加故障转移集群功能 四 故障转移集群的建立 五 配
  • HTTP的报文(详解)

    摘要 我们对于http的了解 xff0c 应该在于 xff0c 我们如果想请求一个资源或者访问一个页面 xff0c 客户端 xff08 我们 xff09 应该向服务器发送一个http请求 xff0c 然后得到响应 xff0c 才能出现我们想
  • Kubernetes部署

    文章目录 1 Kubernetes快速部署1 1 Kubernetes安装要求1 2 安装步骤1 3 准备环境1 4 所有节点安装Docker kubeadm kubelet1 4 1 安装Docker1 4 2 添加kubernetes阿
  • 如何从GitHub克隆带有子模块的仓库,比如FreeRTOS

    情形一 xff1a 首次克隆 git clone recurse submodules git 64 github com FreeRTOS FreeRTOS git 该命令会递归克隆该仓库及所有的子模块 工程目录下的 gitmodules
  • grpc生成go文件命令

    标题 xff1a grpc生成go文件命令 类型 xff1a Golang 内容 xff1a 一 生成tag bp go文件命令 1 protoc go out 61 plugins 61 grpc modules course info
  • Prometheus+grafana监控 k8s集群

    在k8s集群中使用node exporter prometheus grafana对集群进行监控 node exporter组件负责收集节点上的metrics监控数据 xff0c 并将数据推送给prometheus prometheus负责
  • 用IAR给MSP430烧录时出现“Only one MSP-FET ez-FET debugger can be connected to your system during recovery”

    一 问题说明 当安装上IAR软件后 xff0c 新建工程配置好后 xff0c 烧录进MSP430 xff08 我的是MSP430F5529 xff09 中时出现 34 Only one MSP FET ez FET debugger can
  • ConstOS防火墙端口操作

    添加端口 permanent 是永久生效的意思 如果不添加则默认重启后失效 firewall cmd zone 61 public add port 61 3490 tcp permanent 重载端口 firewall cmd reloa
  • 分享学习12864心得

    分享12864显示中文 一 12864基本参数二 代码部分1 得到控制时序2 指令集3 对显示屏写入数据 总结 一 12864基本参数 1 电气参数 电源电压 xff1a VDD xff1a 43 3 0 43 5 5V 显示分辨率 xff