12864点阵型液晶显示控制设计

合集下载

智能化仪表课程设计12864用点阵图形液晶模块显示信号曲线

智能化仪表课程设计12864用点阵图形液晶模块显示信号曲线

用点阵图形液晶模块显示信号曲线关键字:液晶点阵图形液晶模块信号曲线显示液晶应用很广,例如液晶电子手表,计算器以及液晶电视、便携式计算机等,处处可以看到液晶的足迹。

本文主要介绍如何用AT8?S52单片控制点阵液晶模块将现场采集到的信号以实时曲线的方式表达,为信号的现场分析提供便利,有较高的实用价值。

本文先介绍点阵图形液晶模块显示原理,然后介绍整个控制系统的软、硬件设计。

采用点阵图形液晶模块的信号曲线显示,由AT8?S52、12位A/D转换芯片TLC2543和1 28×6?点阵图形液晶模块组成,其AT8?S52的P2.4~P2.7口分别与TLC2543的CS、DO UT、DIN和CLK端连接。

模块软件利用P2.5口向TLC2543写控制字,选择A/D通道并将转换结果通过P2.4口读到AT8?S52的某个寄存器中,再利用P1.0~P1.7口和P3.2~P 3.7口控制点阵图形液晶模块将A/D转换结果从液晶屏幕上显示。

点阵液晶模块显示原理本文采用的128*6?模组的STN点阵图形液晶模块,由两个列驱动器HD61202、和一个行驱动器HD61203组成,可以直接与8位CPU相接。

每个HD61202,每个有512 Byte(40 96bits)供RAM显示。

RAM显示的每位数据与LCD每点的状态ON/OFF完全一致。

介绍点阵图形液晶模块的显示原理,实际上就是介绍它的控制芯片。

HD61202和HD61203控制原理大致相同,下面就HD6120的控制原理简单介绍一下。

每个控制器HD61202,有512 Byte(4096Bits)供RAM显示,RAM显示的每位数据与LCD 每点的状态ON/OFF完全一致。

控制器HD61202指令共有7条,分别是显示ON/OFF指令、设置页(X地址)指令、读状态指令、显示开始行指令、显示器开始行指令、设置Y地址指令、写显示数据指令和读显示数据指令。

具体指令的书写规则,可以查HD61202使用手册,这里就不再罗列。

基于hgs12864显示屏的显控软件设计

基于hgs12864显示屏的显控软件设计

delay(5);//延时 5ms
IO2SET=(IO2SET|oled_data);//写入数据
IO2SET=(IO2SET|OLED_WR);//低电平
IO2SET=(IO2SET|OLED_CS);//低电平
}
写入一个字节的指令的伪代码如下院
void writeCmd(unsigned char oled_cmd) //oled_cmd
作者简介:徐春梅 渊1981-冤袁 女袁 工程师袁 研究方向院 空管二次雷达应答机软件的算法及实现曰 刘太兵渊1988-冤袁 男袁 工程师袁 研究方向院 空管二次雷达应答机软件的算 法及实现遥
2020.02 13
据位袁 CS# 表示片选使能信号 渊低有效冤遥 SSD1325 是
显示屏的集成驱动袁 直接从数据存储器 渊GDDRAM冤 显
VCC GND RES# D/C# R/W# E/RD# CS# D0-D7 NC NC
SSD1325 驱动
Row02-62
Column0-127
128X64 显示屏
Row13-63
图 2 HGS12864 逻辑电路 RES# 表示复位信号 渊低有效冤袁 D/C# 表示控制数 据/指令袁 R/W# 表示读写选择位袁 E/RD 表示接收读数
1 概述 在嵌入式显示控制系统中袁 常采用显示器件显示系
统的工作状态和参数设置袁 显示器件有 LED尧 数码管和 液晶显示屏等袁 其中点阵 OLED 使用较多袁 它可以显示 ASCII 字符尧 汉字和图形[1]遥 HGS12864 型显示屏是点阵 OLED袁 分为带字库和不带字库两类遥 由于 ARM 显控系 统较小袁 且系统显示的汉字数量不多袁 不带字库的 OLED 显示屏的成本较低袁 使用不带字库的 HGS12864 型显示屏袁 LPC2294 作为微控制器袁 按键作为用户的输 入控制袁 设计并实现了显示控制软件遥 2 系统设计 2.1 总体方案

51单片机YM12864汉字图形点阵液晶显示模块

51单片机YM12864汉字图形点阵液晶显示模块

51单片机YM12864汉字图形点阵液晶显示模块­本文以AT89C51单片机控制使用比较普遍的YM12864液晶显示器为基础,介绍了一种采用分页原理实现多级中文菜单操作的方法。

给出了YM12864主要技术参数、显示特性和核心的程序。

设计的中文菜单具有一定的通用性,只需更改其中的菜单项即可将此设计应用到家电、仪器仪表等设备上,为操作者提供友好方便的中文操作界面。

51单片机YM12864汉字图形点阵液晶显示模块-_典型应用电路图。

目前小型的显示器主要有LCD和LED,LED显示器只能显示数字和有限个英文字符,不能显示汉字,显示内容不直观,操作人员只能根据约定格式了解显示内容。

而LCD则可显示各种汉字和图形,尤其能实现中文菜单显示,为操作者提供方便友好的操作界面,并且功耗低,因此LCD得到广泛应用。

而现在市面上带中文字库的LCD比比皆是,价格适中,且大部分具有与MUC统一的标准接口,为使用LCD实现中文菜单操作提供了很大的方便。

相信更多的电子产品在提升性能的同时,设计更加人性化的中文菜单交互界面,将会使产品具有更广阔的前景。

二、YM12864液晶显示模块简介YM12864汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。

主要技术参数和显示特性:电源:VDD 3.3V~+5V(内置升压电路,无需负压)显示内容:128列×64行与MCU接口:8位或4位并行/3位串行多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等。

其引脚功能为通用20脚LCD接口,用户指令集也为通用128*64LCD用户指令集,相关资料很容易获取。

因其内置中文字库,省去了自己造字库的工作量,而只需写入相应的汉字和字符内码即可显示所需要的汉字和字符,这在许多程序开发软件中很容易实现,如:WAVE、KEIL等。

12864点阵型液晶显示屏的基本原理与使用方法(很详细)

12864点阵型液晶显示屏的基本原理与使用方法(很详细)

0
0
1
1
1
0
0
1
1
X
X
X
0
0
1
0
1
1
1
0
0
0
1
X
X
X
1
0 BUSY 0 ON/OFF RST 0
0
1
写数据
1
1
读数据
DB2 1 X X X 0
DB1 1 X X X 0
DB0 1/0
X X X 0
表 2:12864LCD 指令表
各功能指令分别介绍如下。
显示开/关指令
R/WRS 00
DB7 DB6 DB5 DB4 DB3DB2DB1 DB0 00111111/0
设置了页地址和列地址,就唯一确定了显示 RAM 中的一个单元,这样 MPU 就可以
用读、写指令读出该单元中的内容或向该单元写进一个字节数据。
5、读状态指令
R/WRS 10
DB7 DB6 DB5 DB4 DB3DB2DB1 DB0 BUSY0ON/OFFREST0000
该指令用来查询液晶显示模块内部控制器的状态,各参量含义如下:
图 2 “你”字模图
12864 点阵型 LCD 简介
12864 是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及 128×64 全点阵液晶显示器组成。 可完成图形显示,也可以显示 8×4 个(16×16 点阵)汉字。
管脚号 1 2 3 4
管脚名称 VSS VDD V0
D/I(RS)
LEVER 0
12864LCD 的指令系统及时序
该类液晶显示模块(即 KS0108B 及其兼容控制驱动器)的指令系统比较简单,总共只有七种。其指 令表如表 2 所示:

12864点阵型LCD显示实验

12864点阵型LCD显示实验

/****************************************//*杭州电子&计算机工作室*//* *//*12864LCD测试程序*//*目标器件:AT89S51 *//*晶振:11.0592MHZ *//*编译环境:Keil 7.50A *//****************************************//*********************************包含头文件********************************/ #include <reg51.h>/********************************命令字定义*********************************/ #define Disp_On 0x3f#define Disp_Off 0x3e#define Col_Add 0x40#define Page_Add 0xb8#define Start_Line 0xc0/*********************************端口定义**********************************/ sbit Mcs=P2^3; //左半屏使能,当MCS=1,左半屏显示sbit Scs=P2^4; //右半屏使能,当SCS=1,右半屏显示sbit Enable=P2^2; //使能sbit Di=P2^0; //数据/命令选择(RS)sbit RW=P2^1; //读/写信号sbit Rst=P2^5; //复位脚sbit Light=P2^6; //背光脚/**********************************字模表***********************************/ /************************************************************/ char code h[]={/*-- 文字: h --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x08,0xF8,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20, };char code w[]={/*-- 文字: w --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x80,0x80,0x00,0x80,0x00,0x80,0x80,0x80,0x0F,0x30,0x0C,0x03,0x0C,0x30,0x0F,0x00, };char code i[]={/*-- 文字: i --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x00,0x80,0x98,0x98,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,};char code f[]={/*-- 文字: f --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x00,0x80,0x80,0xF0,0x88,0x88,0x88,0x18,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,};char code c[]={/*-- 文字: c --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x0E,0x11,0x20,0x20,0x20,0x11,0x00,};char code a[]={/*-- 文字: a --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x19,0x24,0x22,0x22,0x22,0x3F,0x20,};char code t[]={/*-- 文字: t --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x00,0x80,0x80,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x00,0x00,};char code o[]={/*-- 文字: o --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00,};char code m[]={/*-- 文字: m --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F,};char code dian[]={/*-- 文字: . --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,};/*************************************欢迎使用***********************************/char code huan[]={/*-- 文字: 欢--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x14,0x24,0x44,0x84,0x64,0x1C,0x20,0x18,0x0F,0xE8,0x08,0x08,0x28,0x18,0x08,0x00,0x20,0x10,0x4C,0x43,0x43,0x2C,0x20,0x10,0x0C,0x03,0x06,0x18,0x30,0x60,0x20,0x00,};char code yun2[]={/*-- 文字: 迎--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x40,0x41,0xCE,0x04,0x00,0xFC,0x04,0x02,0x02,0xFC,0x04,0x04,0x04,0xFC,0x00,0x00,0x40,0x20,0x1F,0x20,0x40,0x47,0x42,0x41,0x40,0x5F,0x40,0x42,0x44,0x43,0x40,0x00,};char code shi[]={/*-- 文字: 使--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x40,0x20,0xF0,0x1C,0x07,0xF2,0x94,0x94,0x94,0xFF,0x94,0x94,0x94,0xF4,0x04,0x00,0x00,0x00,0x7F,0x00,0x40,0x41,0x22,0x14,0x0C,0x13,0x10,0x30,0x20,0x61,0x20,0x00,};char code yong[]={/*-- 文字: 用--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x00,0x00,0x00,0xFE,0x22,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0xFE,0x00,0x00,0x80,0x40,0x30,0x0F,0x02,0x02,0x02,0x02,0xFF,0x02,0x02,0x42,0x82,0x7F,0x00,0x00,};/***********************************单片机开发板*********************************/char code dan[]={/*-- 文字: 单--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x00,0x00,0xF8,0x28,0x29,0x2E,0x2A,0xF8,0x28,0x2C,0x2B,0x2A,0xF8,0x00,0x00,0x00,0x08,0x08,0x0B,0x09,0x09,0x09,0x09,0xFF,0x09,0x09,0x09,0x09,0x0B,0x08,0x08,0x00,};char code pian[]={//*-- 文字: 片--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x00,0x00,0x00,0xFE,0x10,0x10,0x10,0x10,0x10,0x1F,0x10,0x10,0x10,0x18,0x10,0x00,0x80,0x40,0x30,0x0F,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0xFF,0x00,0x00,0x00,0x00,};char code ji[]={/*-- 文字: 机--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x08,0x08,0xC8,0xFF,0x48,0x88,0x08,0x00,0xFE,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x04,0x03,0x00,0xFF,0x00,0x41,0x30,0x0C,0x03,0x00,0x00,0x00,0x3F,0x40,0x78,0x00,};char code kai[]={/*-- 文字: 开--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x40,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0x00,0x00,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,};char code fa[]={/*-- 文字: 发--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x00,0x10,0x3E,0x10,0x10,0xF0,0x9F,0x90,0x90,0x92,0x94,0x1C,0x10,0x10,0x10,0x00,0x40,0x20,0x10,0x88,0x87,0x41,0x46,0x28,0x10,0x28,0x27,0x40,0xC0,0x40,0x00,0x00, };char code ban[]={/*-- 文字: 板--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x10,0x10,0xD0,0xFF,0x50,0x90,0x00,0xFE,0x62,0xA2,0x22,0x21,0xA1,0x61,0x00,0x00,0x04,0x03,0x00,0x7F,0x00,0x11,0x0E,0x41,0x20,0x11,0x0A,0x0E,0x31,0x60,0x20,0x00, };char code dang[]={/*-- 文字: 当--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x00,0x00,0x40,0x42,0x5C,0x48,0x40,0x40,0x7F,0x40,0x50,0x4E,0x44,0xC0,0x00,0x00,0x00,0x00,0x20,0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x7F,0x00,0x00, };char code qian[]={/*-- 文字: 前--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x08,0x08,0xE8,0xA8,0xA9,0xAE,0xEA,0x08,0x08,0xC8,0x0C,0x0B,0xEA,0x08,0x08,0x00, 0x00,0x00,0x7F,0x04,0x24,0x44,0x3F,0x00,0x00,0x1F,0x40,0x80,0x7F,0x00,0x00,0x00, };char code zhuang[]={/*-- 文字: 状--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x08,0x30,0x00,0xFF,0x20,0x20,0x20,0x20,0xFF,0x20,0xE1,0x26,0x2C,0x20,0x20,0x00,0x04,0x02,0x01,0xFF,0x40,0x20,0x18,0x07,0x00,0x00,0x03,0x0C,0x30,0x60,0x20,0x00, };char code tai1[]={/*-- 文字: 态--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x00,0x04,0x04,0x04,0x84,0x44,0x34,0x4F,0x94,0x24,0x44,0x84,0x84,0x04,0x00,0x00,0x00,0x60,0x39,0x01,0x00,0x3C,0x40,0x42,0x4C,0x40,0x40,0x70,0x04,0x09,0x31,0x00, };char code yun[]={/*-- 文字: 运--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x40,0x41,0xCE,0x04,0x00,0x20,0x22,0xA2,0x62,0x22,0xA2,0x22,0x22,0x22,0x20,0x00,0x40,0x20,0x1F,0x20,0x28,0x4C,0x4A,0x49,0x48,0x4C,0x44,0x45,0x5E,0x4C,0x40,0x00, };char code xing[]={/*-- 文字: 行--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x10,0x08,0x84,0xC6,0x73,0x22,0x40,0x44,0x44,0x44,0xC4,0x44,0x44,0x44,0x40,0x00,0x02,0x01,0x00,0xFF,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,};char code zhong[]={/*-- 文字: 中--*//*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/0x00,0x00,0xFC,0x08,0x08,0x08,0x08,0xFF,0x08,0x08,0x08,0x08,0xFC,0x08,0x00,0x00,0x00,0x00,0x07,0x02,0x02,0x02,0x02,0xFF,0x02,0x02,0x02,0x02,0x07,0x00,0x00,0x00,};char code maohao[]={/*-- 文字: : --*//*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,};/**************************************************************************** 函数功能:延时程序入口参数:t出口参数:****************************************************************************/ void delay(unsigned int t){unsigned int i,j;for(i=0;i<t;i++)for(j=0;j<10;j++);}/***************************************************************************** 函数功能:写命令到LCD程序入口参数:cmdcode出口参数:*****************************************************************************/ void write_com(unsigned char cmdcode){Di=0;RW=0;P0=cmdcode;delay(2);Enable=1;delay(2);Enable=0;}/***************************************************************************** 函数功能:写数据到LCD程序入口参数:Dispdata出口参数:*****************************************************************************/ void write_data(unsigned char Dispdata){Di=1;RW=0;P0=Dispdata;delay(2);Enable=1;delay(2);Enable=0;}/***************************************************************************** 函数功能:清除LCD内存程序入口参数:pag,col,hzk出口参数:*****************************************************************************/ void Clr_Scr(){unsigned char j,k;Mcs=1;Scs=1;write_com(Page_Add+0);write_com(Col_Add+0);for(k=0;k<8;k++){write_com(Page_Add+k);for(j=0;j<64;j++)write_data(0x00);}Mcs=0;Scs=0;}/***************************************************************************** 函数功能:指定位置显示数字16*16程序入口参数:pag,col,hzk出口参数:*****************************************************************************/ void hz_disp16(unsigned char pag,unsigned char col, unsigned char code *hzk){unsigned char j=0,i=0;for(j=0;j<2;j++){write_com(Page_Add+pag+j);write_com(Col_Add+col);for(i=0;i<16;i++)write_data(hzk[16*j+i]);}}/***************************************************************************** 函数功能:指定位置显示数字8*16程序入口参数:pag,col,hzk出口参数:*****************************************************************************/ void hz_disp8(unsigned char pag,unsigned char col, unsigned char code *hzk){unsigned char j=0,i=0;for(j=0;j<2;j++){write_com(Page_Add+pag+j);write_com(Col_Add+col);for(i=0;i<8;i++)write_data(hzk[8*j+i]);}}/***************************************************************************** 函数功能:LCD初始化程序入口参数:出口参数:*****************************************************************************/ void init_lcd(){delay(100);Mcs=1;Scs=1;delay(100);write_com(Disp_Off);write_com(Page_Add+0);write_com(Start_Line+0);write_com(Col_Add+0);write_com(Disp_On);}/***************************************************************************** 函数功能:主程序入口参数:出口参数:*****************************************************************************/ void main(void){Light=0; //开LCD背光init_lcd();Clr_Scr();Mcs=1;Scs=0; //左、右都显示while(1){Mcs=1;Scs=0; //左显示delay(2);//欢迎hz_disp16(0,32,huan);hz_disp16(0,48,yun2);//单片机hz_disp16(2,16,dan);hz_disp16(2,32,pian);hz_disp16(2,48,ji);//当前状态hz_disp16(4,0,dang);hz_disp16(4,16,qian);hz_disp16(4,32,zhuang);hz_disp16(4,48,tai1);//网址:www.hifihz_disp8(6,0,w);hz_disp8(6,8,w);hz_disp8(6,16,w);hz_disp8(6,24,dian);hz_disp8(6,32,h);hz_disp8(6,40,i);hz_disp8(6,48,f);hz_disp8(6,56,i);Mcs=0;Scs=1; //右显示//使用hz_disp16(0,0,shi);hz_disp16(0,16,yong);//开发板hz_disp16(2,0,kai);hz_disp16(2,16,fa);hz_disp16(2,32,ban);//:运行中hz_disp8(4,0,maohao);hz_disp16(4,8,yun);hz_disp16(4,24,xing);hz_disp16(4,40,zhong);//网址:hz_disp8(6,0,c);hz_disp8(6,8,a);hz_disp8(6,16,t);hz_disp8(6,24,dian);hz_disp8(6,32,c);hz_disp8(6,40,o);hz_disp8(6,48,m);delay(2);}}。

12864中文图形点阵液晶显示模块使用说明书

12864中文图形点阵液晶显示模块使用说明书

72us
读出 RAM
的值
1 1 D7
D6
D5
D4
D3
D2
D1
D0
从 内 部 RAM 读 取 数 据 (DDRAM/CGRAM/GDRAM)
72us
指令表 2:(RE=1:扩充指令集)
指令
指令码
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
说明
执行 时间 (540K HZ)
功能:设定 CGRAM 地址到地址计数器(AC),需确定扩充指令中 SR=0(卷动地址或 RAM 地址选择)
地址
设定 CGRAM 地址到地址计数器(AC)
1 AC5 AC4 AC3 AC2 AC1 AC0 需确定扩充指令中 SR=0(卷动地址或 72us RAM 地址选择)
设定 DDRAM 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 设定 DDRAM 地址到地址计数器(AC) 72us
I/O
DB5
I/O
DB6
I/O
DB7
I/O
PSB
I
NC
-
/RST
I
VEE
-
LED+
-
LED-
-
说明
电源地
逻辑电源正(+5V)
LCD 对比度调节电压
并行模式时选择数据或指令
H: 数据 L: 指令
串行模式时选择模块与否
H: 选择 L: 不选择
并行模式时控制读写
H: 读
L: 写
串行模式时输入数据
并行模式时使能端
L
L
L
H
DL
X
RE
X

点阵型12864

点阵型12864

点阵型12864液晶的使用【实验目的】熟悉点阵型128*64液晶显示器的驱动电路及使用方法。

掌握用A T89S52来控制液晶显示器的方法掌握用扫描法识别矩阵按键的方法进一步熟悉EDA实验平台【实验器材】EDA实验箱、PC机、DB25-ISP下载线、USB转换线、USB-BLASTER编程器等软件:Quatus II 、Keil uVision2、ISPlay等。

【实验原理】液晶作为显示器件广泛应用于各种电子仪器、便携设备上,点阵液晶可以方便的显示各种字符、图片。

WGM12864H液晶显示模块采用三星公司的KS0107液晶控制器,能够显示128*64像素图形或4行16*16中文字符。

一.系统硬件电路1.WGM12864H液晶模块2. WGM12864H 操作指令(1) 显示开关控制。

此命令用于控制液晶显示器开关。

D=1:显示开。

显示器可以进行各种显示操作。

D=0:显示关。

不能对显示器进行各种显示操作。

开显示时,液晶模块DDRAM 的内容显示在LCD 屏幕上,控制显示器的开关并不影响DDRAMA 中的数据和内部状态。

(2) 设置显示起始行。

WGM12864H 液晶模块共有64行,由Z 地址计数器进行控制。

Z 地址计数器是一个六位计数器A5:A0,此计数器具有循环计数功能,它是用于行扫描同步,当一行扫描完成时此计数器自动加一,指向下一行扫描数据,RST 复位后Z 计数器为0。

起始行可以是64行中的任一行,如设置A5:A0为62,则起始行于DDRAM 中的行对应关系如下:(3) 设置页地址。

所示:X 地址计数器为DDRAM 的页指针。

所谓页地址就是DDRAM 的行地址,8行为页。

WGM 液晶显示器共64行,即8页,A2:A0表示0~7页。

读写数据对页地址没有影响,页地址由本指令或RST 信号改变,复位后页地址为0。

(4) 设置列地址。

编址为0-63。

此指令将A5:A0送入Y地址计数器,作为DDRAM的Y地址指针。

点阵液晶显示屏SG12864—01D模块的控制与应用

点阵液晶显示屏SG12864—01D模块的控制与应用

点阵液晶显示屏SG12864—01D模块的控制与应用
在应用实践的基础上。

总结性地介绍了点阵液晶显示模块
SG12864—01D 的控制原理与应用技巧,给出了在模拟时序下的汇编驱动程序,最后提出了具有节约空间资源的应用方案。

引言
液晶显示模块可归结为字符型和点阵型两大类,点阵型又分为单色屏和彩色屏。

字符型模块通常包含相应的字符库,点阵型模块包含有液晶显示控制器,显示内容没有任何限制,文字图片均可。

液晶彩屏的技术含量最高,但在一般控制系统设计中,点阵单色屏已完全能够满足信息显示的需要。

1 SG12864—01 D模块应用参数与显示方式
从模块的型号可以看出,它在水平方向有128个点阵,竖直方向有64个点阵。

通常汉字取模方式为16×16,显然模块汉字显示的个数为
8X4;字符取模方式为8X 16,因此字符显示的个数为16X4。

基于128×64点阵液晶显示的智能温度控制器的设计与实现

基于128×64点阵液晶显示的智能温度控制器的设计与实现

3 0 3 ;2 深圳 市拓 普 微 科技 开发 有 限公 司 ,广 东 深 圳 0 10 .
绍 了 L 0 3液 晶显示模块的功能特性 、接 口电路及应 用程序 。实验 中应 用 D 1 B 0温度 传感 器实现 温度信 M3 3 S82 号 的采集 ,并把采集到 的信号传送给单片机 ,单片机将信号进行处理完成相应 的智能控制 ,同时将环境温 度 、
李 志广 ,张
( . 河北 工业 大学 理 学院 ,天 津 1
5 85 ) 1 0 7
摘 要 :以智 能 温 度 控 制 器 的设 计 实 验 为 依 托 ,文 章 给 出 了 一 套 液 晶 显 示 模 块 驱 动 实 验 的设 计 方 案 ,详 细 介
辉 王永 学 , ,张志 东
De in a d i l me t t n o h n e l e tt mp r t r sg n mp e n a i ft e i t l g n e e a u e o i
c n r le a e n 1 8 4 d tma r i u d c y t ld s l y o to lr b s d o 6 o ti l i r sa ip a 2 x x q
t s,t e i tra e cr ui,a d t e a p iai n p o r m ft e L 0 i e h n ef c ic t n h p lc t r g a o h M3 33 LCM r n r d c d i e al n o a e i to u e n d ti.I
a d t e r n mitd t h n h n ta s t o t e MCU.Th e e e tmpe au esg a r c s ig a d t e i tli e tc nr la e p r r t r i n lp o e sn n h n elg n o to r e —

基于STM8的12864LCD点阵字库显示

基于STM8的12864LCD点阵字库显示

基于STM8/32的128*64LCD点阵字库显示
本方案主控采用STM8S207C8T6,1.7寸128*64LCD显示屏,LCD驱动芯片采用UC1701(可兼容ST7565),字库显示采用高通GT20L16S1Y字库芯片,以实现LCD界面上的显示。

详细资料及代码可查看附件。

以下分别是STM8S207C8T6,UC1701和GT20L16S1Y在原理图中的模块电路。

原理图是依据datasheet中的阐述所绘制,其中主控电路是使用了stm8s207c8t6芯片绘制的最小系统,显示屏部分是根据设置BM0和BM1来选择总线模式绘制的电路。

这里我使用了SPI总线模式。

而字库芯片本身就是SPI总线模式通信,直接根据规格书的电路例子使用即可。

完成了电路部分,知道了总线模式,再结合数据手册就可以对改设备编写程序代码了。

首先是LCD液晶屏的驱动,要液晶屏显示你想要的数据,主要是LCD初始化成功,下面是LCD初始化程序,根据指令列表编写的程序代码:
初始化显示屏之前必须对引脚的模式进行相对应的配置
显示驱动成功后则接着是对字库芯片的文字数据获取进行编程调试,以下是获取GB2312文字的函数代码。

PCB实物图
实际效果图
以下有三个界面,分别是行驶记录仪、门禁显示和一个图形页面。

文字显示采用GT20L16S1Y字库芯片,这款芯片包含最常用的GB2312汉字,字型符合国家标准。

门禁界面中的数字采用字库芯片内的24点阵不等宽时钟体字库。

图形LOGO可存储至字库芯片中的64K可擦写空间。

附件1:/s/1jG6dte2 附件2:/s/1sjEC4Kt 附件3:/s/1gdhgXSv。

实验七 图形点阵显示实验

实验七  图形点阵显示实验

(0F000H)CS1A1A0A210KW2D0D1D2D3D4D5D6D7 RSRW231U3A564U3B123U5AWRRD12JP9CSVSS1VDD2V03RS4RW5E6DB07DB18DB29DB310DB411DB512DB613DB714CS115CS216RST17VOUT18LED+19LED-2012864JJP6VCCCS1/210KR31470R4DS1.MODEL TINYWR_COM_AD_L EQU 0F004H ;写左半屏指令地址WR_COM_AD_R EQU 0F000H ;写右半屏指令地址WR_DATA_AD_L EQU 0F006H ;写左半屏数据地址WR_DATA_AD_R EQU 0F002H ;写右半屏数据地址RD_BUSY_AD EQU 0F001H ;查忙地址RD_DATA_AD EQU 0F003H ;读数据地址X EQU 0B8H ;起始显示行基址Y EQU 040H ;起始显示列基址FirstLine EQU 0C0H ;起始显示行.STACK 100.DATA;-- 文字: 星 --Line1_1 DB 00H,00H,0FCH,82H,82H,0AAH,2AH,0AAH,0AAH,0AAH,02AH, 02H,02H,0FCH,00H,00H DB 00H,0EEH,9BH,90H,98H,94H,95H,80H,80H,80H,95H,95H,95H,95H,0FFH,00H;-- 文字: 研 --Line1_2 DB 9EH,62H,02H,02H,02H,32H,0FEH,62H,02H,02H,32H,02H,02H,02H,62H,0DCH DB 03H,3CH,40H,40H,46H,40H,0F1H,8EH,80H,40H,7CH,80H,80H,80H,0FEH,03H;-- 文字: 电 --Line1_3 DB 00H,0F8H,04H,04H,44H,44H,06H,02H,02H,46H,44H,04H,04H,0F8H,00H,00H DB 00H,0FH,10H,10H,11H,11H,0F0H,80H,90H,91H,91H,8CH,84H,87H,0C8H,78H;-- 文字: 子 --Line1_4 DB 80H,40H,5EH,52H,52H,52H,32H,72H,82H,82H,42H,62H,52H,4CH,0C0H,00H DB 07H,04H,04H,04H,0FCH,8CH,8CH,80H,80H,7CH,04H,04H,04H,04H,07H,00H;”STARES51PRO”Line2_1 DB 00H,70H,88H,08H, 08H,08H,38H,00H,00H,38H,20H,21H,21H,22H,1CH,00H Line2_2 DB 18H,08H,08H,0F8H,08H,08H,18H,00H,00H,00H,20H,3FH,20H,00H,00H,00H Line2_3 DB 00H,00H,0C0H,38H,0E0H,00H,00H,00H,20H,3CH,23H,02H,02H,27H,38H,20H Line2_4 DB 08H,0F8H,88H,88H,88H,88H,70H,00H,20H,3FH,20H,00H,03H,0CH,30H,20H Line2_5 DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H Line2_6 DB 08H,0F8H,88H,88H,0E8H,08H,10H,00H,20H,3FH,20H,20H,23H,20H,18H,00H Line2_7 DB 00H,70H,88H,08H,08H,08H,38H,00H,00H,38H,20H,21H,21H, 22H,1CH,00H Line2_8 DB 00H,0F8H,08H, 88H,88H,08H,08H,00H,00H,19H,21H,20H,20H,11H,0EH,00H Line2_9 DB 00H,10H,10H,0F8H,00H,00H,00H,00H,00H,20H,20H,3FH,20H,20H,00H,00H Line2_10 DB 08H,0F8H,08H,08H,08H,08H,0F0H,00H,20H,3FH,21H,01H,01H,01H,00H,00H Line2_11 DB 08H,0F8H,88H,88H,88H,88H,70H,00H,20H,3FH,20H,00H,03H,0CH,30H,20H Line2_12 DB 0E0H,10H,08H,08H,08H,10H,0E0H,00H,0FH,10H,20H,20H,20H,10H,0FH,00H ;-- 文字: 欢 --Line3_1 DB 14H,24H,44H,84H,64H,1CH,20H,18H,0FH,0E8H,08H,08H,28H,18H,08H,00H DB 20H,10H,4CH,43H,43H,2CH,20H,10H,0CH,03H,06H,18H,30H,60H,20H,00H;-- 文字: 迎 --Line3_2 DB 40H,41H,0CEH,04H,00H,0FCH,04H,02H,02H,0FCH,04H,04H,04H,0FCH,00H,00H DB 40H,20H,1FH,20H,40H,47H,42H,41H,40H,5FH,40H,42H,44H,43H,40H,00H;-- 文字: 使 --Line3_3 DB 40H,20H,0F0H,1CH,07H,0F2H,94H,94H,94H,0FFH,94H,94H,94H,0F4H,04H,00H DB 00H,00H,7FH,00H,40H,41H,22H,14H,0CH,13H,10H,30H,20H,61H,20H,00H;-- 文字: 用 --Line3_4 DB 00H,00H,00H,0FEH,22H,22H,22H,22H,0FEH,22H,22H,22H,22H,0FEH,00H,00H DB 80H,40H,30H,0FH,02H,02H,02H,02H,0FFH,02H,02H,42H,82H,7FH,00H,00H .CODESTART: MOV AX,@DATAMOV DS,AXNOPSTART1: CALL LCD_INIT ;液晶初始化CALL DelayTimeCALL DisLine1 ;第2行显示”星研电子”CALL DelayTimeCALL DisLine2 ;第3行显示”STAR ES51PRO”CALL DelayTimeCALL DisLine3 ;第4行显示”欢迎使用”CALL DelayTimeJMP START1;延时程序DelayTime PROC NEARMOV CX,0LOOP $LOOP $RETDelayTime ENDP;第2行显示”星研电子”DisLine1 PROC NEARLEA SI,Line1_1MOV AL,2 ;A-起始显示行地址,第2行MOV AH,32 ;B-起始显示列地址,第32列,以下同CALL WordDISL ;左半屏,显示一个字子程序LEA SI,Line1_2MOV AL,2MOV AH,48CALL WordDISLLEA SI,Line1_3MOV AL,2MOV AH,0CALL WordDISR ;右半屏,显示一个字子程序LEA SI,Line1_4MOV AL,2MOV AH,16CALL WordDISRRETDisLine1 ENDP;第3行显示”STAR ES51PRO”DisLine2 PROC NEARLEA SI,Line2_1MOV AL,4 ;A-起始显示行地址,第4行MOV AH,16 ;B-起始显示列地址,第16列,以下同CALL ByteDISL ;左半屏,显示一个字节子程序LEA SI,Line2_2MOV AL,4MOV AH,24CALL ByteDISLLEA SI,Line2_3MOV AL,4MOV AH,32CALL ByteDISLLEA SI,Line2_4MOV AL,4MOV AH,40CALL ByteDISLLEA SI,Line2_5MOV AL,4MOV AH,48CALL ByteDISLLEA SI,Line2_6MOV AL,4MOV AH,56CALL ByteDISLLEA SI,Line2_7MOV AL,4MOV AH,0CALL ByteDISR ;右半屏字节显示数据LEA SI,Line2_8MOV AL,4MOV AH,8CALL ByteDISRLEA SI,Line2_9MOV AL,4MOV AH,16CALL ByteDISRLEA SI,Line2_10MOV AL,4MOV AH,24CALL ByteDISRLEA SI,Line2_11MOV AL,4MOV AH,32CALL ByteDISRLEA SI,Line2_12MOV AL,4MOV AH,40CALL ByteDISRRETDisLine2 ENDP;第4行显示”欢迎使用”DisLine3 PROC NEARLEA SI,Line3_1MOV AL,6 ;A-起始显示行地址,第6行MOV AH,32 ;B-起始显示列地址,第32列,以下同CALL WordDISL ;左半屏,显示一个字子程序LEA SI,Line3_2MOV AL,6MOV AH,48CALL WordDISLLEA SI,Line3_3MOV AL,6MOV AH,0CALL WordDISR ;右半屏,显示一个字子程序LEA SI,Line3_4MOV AL,6MOV AH,16CALL WordDISRRETDisLine3 ENDP;液晶初始化LCD_INIT PROC NEARMOV AL,3EH ;初始化左半屏,关显示CALL WRComL ;写指令子程序MOV AL,FirstLine ;设置起始显示行,第0行CALL WRComLMOV AL,3EH ;初始化右半屏,关显示CALL WRComR ;写指令子程序MOV AL,FirstLine ;设置起始显示行,第0行CALL WRComRCALL LCDClear ;清屏MOV AL,3FH ;开显示CALL WRComLMOV AL,3FH ;开显示CALL WRComRRETLCD_INIT ENDP;清屏LCDClear PROC NEAR;清左半屏MOV AL,0 ;起始行,第0行MOV AH,0 ;起始列,第0列LCDClearL1: PUSH AXMOV CX,64CALL SETXYL ;设置起始显示行列地址LCDClearL2: MOV AL,0CALL WRDATALLOOP LCDClearL2POP AXINC AXCMP AL,8 ;共8行JNZ LCDClearL1;清右半屏MOV AL,0 ;起始行,第0行MOV AH,0 ;起始列,第0列LCDClearR1: PUSH AXMOV CX,64CALL SETXYR ;设置起始显示行列地址LCDClearR2: XOR AL,ALCALL WRDATARLOOP LCDClearR2POP AXINC ALCMP AL,8 ;共8行JNZ LCDClearR1RETLCDClear ENDP;显示字体,显示一个数据要占用X行两行位置;左半屏显示一个字节/字:AL-起始显示行序数X(0-7);AH-起始显示列序数Y(0-63);SI-显示字数据首地址ByteDisL PROC NEARMOV CX,8 ;显示8个字节数据,用于显示一个英文/符号CALL DispLRETByteDisL ENDPWordDisL PROC NEARMOV CX,16 ;显示16字节数据,用于显示一个汉字CALL DispLRETWordDisL ENDPDispL PROC NEARPUSH AXPUSH CXCALL SETXYL ;设置起始显示行列地址CALL DisplayL ;显示上半行数据POP CXPOP AXINC ALCALL SETXYL ;设置起始显示行列地址CALL DisplayL ;显示下半行数据RETDispL ENDP;右半屏显示一个字节/字:AL-起始显示行序数X(0-7);AH-起始显示列序数Y(0-63);SI-显示字数据首地址ByteDisR PROC ENARMOV CX,8 ;显示8个字节数据,用于显示一个英文/符号CALL DispRRETByteDisR ENDPWordDisR PROC NEARMOV CX,16 ;显示16字节数据,用于显示一个汉字CALL DispRRETWordDisR ENDPDispR PROC NEARPUSH AXPUSH CXCALL SETXYR ;设置起始显示行列地址CALL DisplayR ;显示上半行数据POP CXPOP AXINC ALCALL SETXYR ;设置起始显示行列地址CALL DisplayR ;显示下半行数据RETDispR ENDP;显示图形;显示左半屏一行图形,AL-X起始行序数(0-7),AH-Y起始列地址序数(0-63)LineDisL PROC NEARMOV CX,64CALL SETXYL ;设置起始显示行列CALL DisplayL ;显示数据RETLineDisL ENDP;显示右半屏一行图形,AL-X起始行地址序数(0-7),AH-Y起始列地址序数(0-63) LineDisR PROC NEARMOV CX,64CALL SETXYR ;设置起始显示行列CALL DisplayR ;显示数据RETLineDisR ENDP;基本控制;显示左半屏数据,R7-显示数据个数DisplayL PROC NEARLODSBCALL WRDataL ;写左半屏数据LOOP DisplayLRETDisplayL ENDP;显示右半屏数据,R7-显示数据个数DisplayR PROC NEARLODSBCALL WRDataR ;写左半屏数据LOOP DisplayRRETDisplayR ENDP;设置左半屏起始显示行列地址,AL-X起始行序数(0-7),AH-Y起始列序数(0-63) SETXYL PROC NEAROR AL,X ;行地址=行序数+行基址CALL WRComLMOV AL,AHOR AL,Y ;列地址=列序数+列基址CALL WRComLRETSETXYL ENDP;设置右半屏起始显示行列地址,AL-X起始行序数(0-7),AH-Y起始列序数(0-63) SETXYR PROC NEAROR AL,X ;行地址=行序数+行基址CALL WRComRMOV AL,AHOR AL,Y ;列地址=列序数+列基址CALL WRComRRETSETXYR ENDP;写左半屏控制指令,A-写入指令WRComL PROC NEARMOV DX,WR_COM_AD_LOUT DX,ALWRComL1: MOV DX,RD_BUSY_ADIN AL,DXTEST AL,80H ;检查液晶显示是否处于忙状态JNZ WRComL1RETWRComL ENDP;写右半屏控制指令,A-写入指令WRComR PROC NEARMOV DX,WR_COM_AD_ROUT DX,ALWRComR1: MOV DX,RD_BUSY_ADIN AL,DXTEST AL,80H ;检查液晶显示是否处于忙状态JNZ WRComR1RETWRComR ENDP;写左半屏数据,A-写入数据WRDataL PROC NEARMOV DX,WR_DATA_AD_LOUT DX,ALWRDataL1: MOV DX,RD_BUSY_ADIN AL,DXTEST AL,80H ;检查液晶显示是否处于忙状态JNZ WRDataL1RETWRDataL ENDP;写右半屏数据,A-写入数据WRDataR PROC NEARMOV DX,WR_DATA_AD_ROUT DX,ALWRDataR1: MOV DX,RD_BUSY_ADIN AL,DXTEST AL,80H ;检查液晶显示是否处于忙状态JNZ WRDataR1RETWRDataR ENDPEND START七、实验扩展及思考实验内容:显示一幅图画,进一步熟练液晶显示的操作。

12864硬件连接以及程序控制

12864硬件连接以及程序控制

(来自厂家提供模块图) 外形尺寸:
(来自厂家提供模块图) 三、模块引脚说明:
(来自厂家提供模块图) 三、接口时序 8 位并行连接时序图 写时序图:
读时序图:
四、软件设计 硬件连接: 1 脚----VCC 2 脚----GND 3 脚----滑动变阻器 4 脚----PD5 5 脚----PD6 6 脚----PD7 7 脚----PC0 8 脚----PC1 9 脚----PC2 10 脚----PC3 11 脚----PC4 12 脚----PC5 13 脚----PC6 14 脚----PC7 15 脚----PD14 16 脚----浮空 17 脚----浮空 18 脚----浮空 19 脚----VCC 20 脚----GND 代码如下: void LCD12864_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; /*对 12864 屏数据信号进行配置*/ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6| GPIO_Pin_7; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init(GPIOC, &GPIO_InitStructure); /*对 12864 屏控制信号进行配置*/ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE); GPIO_InitStructure.GPIO_Pin GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_14; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init(GPIOD, &GPIO_InitStructure); GPIO_SetBits(GPIOD,GPIO_Pin_14); } =

图形点阵液晶(12864M)实验

图形点阵液晶(12864M)实验
主函数:初始化,显示,原地踏步
注释:只读入一次,不使用读忙标志(这个有可能导致数读不进去)
显示结果:(第一行:)单片机实验室
(第二行:)欢迎你
(第三行:)Welcome to MCU
(第四行:)厦门大学
*/
#include <reg51.h>
#include <intrins.h>
sbit RS = P1^0;
void lcdreset()
{
write_com(0x30);
delay(16); //选择基本指令集(30H)
write_com(0x04); //点设定,游标右移
delay(16);
write_com(0x0f); //开显示控制(无游标、不反白)
delay(16);
write_com(0x01); //清除显示,并且设定地址指针为00H(同时地址归为)
sbit RW = P1^1;
sbit E = P1^3;
//sbit PSB = P1^5;//PSB接VCC;
#define Lcd_Bus P0 //MCU P1<------> LCM
/*------------------检查忙位-----------------------------*/
{
//chk_busy();
RS = 0; //置零
RW = 0;
E = 1;
Lcd_Bus = cmdcode;
delay(10); //在数据写入的时候加入适当的延时
E = 0;
}
/*-------------------写数据到LCD----------------------------*/

12864液晶电路设计

12864液晶电路设计

12864液晶电路设计2864点阵液晶显示模块(LCM)就是由128*64个液晶显示点组成,那么你想知道吗?下面就由店铺为你带来12864液晶电路设计,希望你喜欢。

12864液晶电路设计图JBG12864E01-08W是一款4位/8位并行、2线或3线接口方式,内部含有国际一级、二级简体中文字库的图形点阵液晶模块。

显示分辨率为128*64,内置8198个16*16点汉字,和128个16*8点ASCII 字符集。

该型号液晶模块具有接口方式简单,指令操作便捷的特点,可构成全中文人机交互图形界面。

可显示8*4行16*16点阵的行字,也可完成图形显示。

基本特性电源电压(VDD):3.0-5.5v显示分辨率:128*64内置汉字字库:8192个(可选简繁体)内置点阵字符:128个16*8点阵字符时钟频率:2mHz显示方式:STN,蓝膜,负显驱动方式:1/64Duty ,1/9Bias视角方向:6点背光方式:白色LED背光源通讯方式:串口、并口可选工作温度:-20°C——70°C存储温度:-30°C——80°C存储湿度:20——90%RH接口:8比特数据总线驱动型号:SNB6400+SNB0064外形尺寸:63.2(L)*54.0(W)*9.5(H)显示区域:54.0(L)*36.0(W)有效视区:50.00(L)*31.32(W)像素尺寸:0.35*0.45像素间距:0.39*0.49接口说明第1脚:VSS,接地第2脚:VDD,驱动电源(5V)第3脚:V0,对比度调整第4脚:RS,RS=“H”,表示DB7——DB0为显示数据,RS=“L”,表示 DB7——DB0为显示指令数据。

第5脚:RW,第6脚:E,使能信号第7——14脚:数据线第15脚:CS1,chip section第16脚:CS2,chip section第17脚:RST,复位第18脚:VEE,驱动电压输出端第19脚:背光源正端第20脚:背光源负端12864液晶电路设计软件编程说到软件编程,首先我们需要准备一下平台:第一:给单片机焊接一个下载电路,51单片机最常用的就是串口下载,需要串口头一个、104电容5个、max232芯片一个、串口线/USB转串口连接线(后者主要为笔记本等没有串口的电脑设计)一条、导线若干。

点阵图形液晶显示屏程序设计

点阵图形液晶显示屏程序设计

128*64点阵图形液晶显示屏程序设计教程ﻩ笔者使用PROTEUS仿真软件中的液晶显示屏(型号AMPIRE12864)探索点阵液晶的编程方式;该型号液晶屏内部无字库,只能自建字模进行字符显示(使用方法与图形显示方式一致);字模可通过“字模提取”软件提取,省去手工建模的麻烦.闲话少说,先把电路图附上:整体电路图功能说明:该电路使用AT89C52作控制器,电路左下方为时钟芯片DS1302;笔者打算用液晶屏显示当前时间、若干汉字、一幅小图等内容;电路连线:(1)液晶模块: E=P2^0;RW=P2^1;RS=P2^2;CS2=P2^3;CS1=P2^4;RST=5V;数据口D0~D7接单片机P0口;(2)时钟芯片DS1302:RST = P3^6; CLK= P1^6;SDA =P1^7;电路仿真结果如下:ﻩ看完结果了,该学习下如何对该类液晶进行程序设计、显示自己喜欢的东东了。

首先分析下该液晶模块内部控制器的工作原理:管脚功能:管脚名称LEVER管脚功能描述VSS0电源地VDD+5。

0V电源电压V0-液晶显示器驱动电压(在PROTUES仿真软件中可不接) RSH/LRS=“H”,表示DB7∽DB0为显示数据RS=“L”,表示DB7∽DB0为显示指令数据R/WH/L R/W=“H”,E=“H”数据被读到DB7∽DB0R/W=“L”,E=“H→L”数据被写到IR或DREH/LR/W=“L",E信号下降沿锁存DB7∽DB0R/W=“H”,E=“H"DDRAM数据读到DB7∽DB0DB0~DB7H/L数据线CS1H/L H:选择芯片(右半屏)信号CS2H/LH:选择芯片(左半屏)信号RET H/L复位信号,低电平复位VOUT-10V LCD驱动负电压(在PROTUES仿真软件中可不接)12864内部功能器件及相关功能:1.指令寄存器(IR)IR是用于寄存指令码,与数据寄存器数据相对应.当D/I=0时,在E信号下降沿的作用下,指令码写入IR.2.数据寄存器(DR)DR是用于寄存数据的,与指令寄存器寄存指令相对应.当D/I=1时,在下降沿作用下,图形显示数据写入DR,或在E信号高电平作用下由DR读到DB7∽DB0数据总线。

LCD12864液晶显示的设计

LCD12864液晶显示的设计

电子技术课程设计报告书课题名称 LCD12864液晶显示的设计姓 名学 号院、系、部 物理与电信工程系 专 业 电子信息工程指导教师2012年 06月 20日※※※※※※※※※ ※※ ※※ ※※ ※※※※※※※※※2009级电子信息工程单片机课程设计LCD12864液晶显示的设计1 设计目的(1)熟悉模拟电路的应用与集成电路的引脚排列。

(2)掌握单片机芯片80C5X系列的逻辑功能及使用方法。

(3)熟悉电路仿真软件Proteus的使用。

(4)了解点阵型LCD12864(不带字库)的组成及工作原理。

(5)熟悉KEIL软件的编程,加强C语言的能力。

2 设计思路(1)设计单片机最小系统电路。

(2)设计LCD12864液晶外围电路。

(3)设计LCD12864液晶与单片机的组成电路。

3 设计过程3.1方案论证图3.1.1 单片机与LCD液晶的工作原理框由于要实现点阵液晶的绘图等功能,而且对于51系列的单片机片内RAM 都不大,要实现读操作的话只能使用可以并行方式的液晶,(只有并行方式可读)因为如果不使用并行方式而采用在51系列单片机内部开辟一片128*64大小的缓存用于对液晶的刷新从而实现读的功能显然不现实。

本设计选用的12864是AMPIRE128X64,它的控制器是KS0138,采用并行方式与单片机通信。

对于单片机的选用,采用程序存储空间较大的STC89C58,它有32K的flash,对于实现简单的GUI设计足够。

图1是单片机与LCD液晶以及外围电路的总体框图。

3.2电路设计图3.2.1 单片机最小系统电路如图2所示,单片机的最小系统有复位电路和振荡电路组成,复位电路采用上电复位,振荡电路采用的内部方式,在XTAL1和XTAL2端外界石英晶体作定时元件,内部反相放大器自激振荡,产生时钟。

P0口出外接4.7K上拉电阻,因为P0口是漏极开路,必须要接上拉才能输出高电平。

5V直流稳压电源电路如图3所示,该电路由电源变压器、整流桥堆、滤波电容C6、C7、三端稳压集成电路LM7805、限流电阻器和电源指示发光二极管组成。

基于128_64点阵液晶显示的智能温度控制器的设计与实现

基于128_64点阵液晶显示的智能温度控制器的设计与实现

ISSN1672-4305CN12-1352/N实 验 室 科 学LABORATORY SC I ENCE 第13卷 第3期 2010年6月Vol 113 No 13 J un 12010实验技术基于128@64点阵液晶显示的智能温度控制器的设计与实现李志广1,张 辉1,王永学1,张志东2(1.河北工业大学理学院,天津 300130;2.深圳市拓普微科技开发有限公司,广东深圳518057)摘 要:以智能温度控制器的设计实验为依托,文章给出了一套液晶显示模块驱动实验的设计方案,详细介绍了L M 3033液晶显示模块的功能特性、接口电路及应用程序。

实验中应用DS18B20温度传感器实现温度信号的采集,并把采集到的信号传送给单片机,单片机将信号进行处理完成相应的智能控制,同时将环境温度、系统状态等信息显示在L M 3033液晶显示模块上。

关键词:液晶显示;温度控制;LM 3033中图分类号:TN 141 文献标识码:B do :i 10.3969/.j issn .1672-4305.2010.03.018Desi gn a nd m i ple m entati on of the i ntelli gent te mperaturecontroll er based on 128@64dotmatri x li qu i d crystal displayLI Zh i-guang 1,Z HANG H ui 1,WANG Y ong-xue 1,Z HANG Zhi-dong2(1.Schoo l of Sciences ,H ebeiU niversity of Techno l o gy ,T ian ji n 300130,Ch i n a ;2.Shenzhen Top -w ay Technology Co .,Ltd .,Shenzhen 518057,China)A bstract :B ased on t h e i n te lli g ent te m perat u re contr o ller desi g n exper i m en,t a desi g n sche m e of the liqu i d crystal d isp lay m odu le (LC M )driv i n g experi m ent is g i v en in th is paper .The functi o na l pr oper -ties ,the interface circ u i,t and the app lication pr ogra m of the L M 3033LC M are i n troduced in detai.l I n th is experi m en,t t h e te m perature si g nal is co llected through the DS18B20dig ita l te m perature sensor ,and then trans m itted to theMCU.The te m perat u re signal processing and the intelligent control are per -for m ed by M C U.A t the sa m e ti m e ,i n for m ations ,such as a m bient te m perature and syste m status are d isp l a yed on the L M 3033LC M.K ey words :li q u i d crystal d isp lay ;te m perat u re con tro;l L M 3033基金项目:国家自然科学基金(项目编号:10704022);河北工业大学教学改革项目。

推荐-12864点阵型液晶显示控制设计 精品

推荐-12864点阵型液晶显示控制设计 精品

本文介绍以AT89S51单片机为控制核心,以LCD128*64液晶作为显示的模块。

该模块硬件结构简单、功能齐全,工作稳定,可完成目前绝大部分设备的显示工作。

12864是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成。

可完成图形显示,也可以显示8×4个(16×16点阵)汉字。

关键字:单片机 LCD128*64 液晶显示模块目录1 课程设计目的 (1)2 课程设计题目描述和要求 (1)3 课程设计报告内容 (1)3.1 系统软、硬件功能设定(分工方案) (1)3.2 系统硬件电路介绍 (1)3.3 LCD显示基本原理 (3)3.4 系统软件介绍 (4)3.5系统软件流程 (5)3.6 液晶显示模块指令系统 (5)3.7系统硬件电路框图 (6)3.8原理图及基本结构 (7)3.9 128 64点阵型液晶 C语言程序(可以显示指定点) (12)4实物图 (22)总结 (23)致谢 (24)参考文献 (25)1 课程设计目的通过电路结构选择、控制方式选择、参数计算、器件选型、硬件制作及软件编程调试等训练切实培养学生综合应用知识、正确分析问题、解决问题的能力,特别是实际动手和创新能力,将自动化专业知识进行整合,融会贯通。

2 课程设计题目描述和要求设计题目:LCD显示器显示界面的设计信息时代各种信息最终都是要通过信息显示来实现人、机交换,而信息的显示依赖于各种显示器件的应用,由于液晶显示器(LCD)具有低工作电压、微功耗、显示灵活、成本低等特点,因此在电子计算器、智能化仪器仪表、手机、掌上电脑等等领域应用极为广泛。

(1)了解128X64液晶显示器的基本结构、电路特性、软件特性、接口应用技术等;(2)在(1)基础上能根据实际工作需要,进行液晶显示界面的任意开发;如:要求每位同学在液晶(LCD)上显示自己的学号(数字)、姓名(中文)等;(3)撰写课程设计说明书。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6
E(SCLK)
H/L
使能信号
7
DB0
H/L
三态数据线
8
DB1
H/L
三态数据线
9
DB2
H/L
三态数据线
10
DB3
H/L
三态数据线
11
DB4
H/L
三态数据线
12
DB5
H/L
三态数据线
13
DB6
H/L
三态数据线
14
DB7
H/L
三态数据线
15
PSB
H/L
H:8位或4位并口方式,L:串口方式(见注释1)
16
(8)视角方向:6点
(9)背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5—1/10
(10)通讯方式:串行、并口可选
(11)内置DC-DC转换电路,无需外加负压
(12)无需片选信号,简化软件设计
(13)工作温度: 0℃ - +55℃ ,存储温度: -20℃ - +60℃
三、模块接口说明
管脚号
3.2 系统硬件电路介绍………………………………………………………………………1
3.3 LCD显示基本原理………………………………………………………………………3
3.4 系统软件介绍……………………………………………………………………………4
3.5系统软件流程……………………………………………………………………………5
二﹑基本特性
(1)低电源电压(VDD:+3.0--+5.5V)
(2)显示分辨率:128×64点
(3)内置汉字字库,提供8192个16×16点阵汉字(简繁体可选)
(4)内置 128个16×8点阵字符
(5)2MHZ时钟频率
(6)显示方式:STN、半透、正显
(7)驱动方式:1/32DUTY,1/5BIAS
管脚名称
电平
管脚功能描述
1
VSS
0V
电源地
2
VCC
3.0+5V
电源正
3
V0
-
对比度(亮度)调整
4
RS(CS)
H/L
RS=“H”,表示DB7——DB0为显示数据
RS=“L”,表示DB7——DB0为显示指令数据
5
R/W(SID)
H/L
R/W=“,E=“H”,数据被读到DB7——DB0
R/W=“L”,E=“H→L”, DB7——DB0的数据被写到IR或DR
1 课程设计目的
通过电路结构选择、控制方式选择、参数计算、器件选型、硬件制作及软件编程调试等训练切实培养学生综合应用知识、正确分析问题、解决问题的能力,特别是实际动手和创新能力,将自动化专业知识进行整合,融会贯通。
2 课程设计题目描述和要求
设计题目:LCD显示器显示界面的设计
信息时代各种信息最终都是要通过信息显示来实现人、机交换,而信息的显示依赖于各种显示器件的应用,由于液晶显示器(LCD)具有低工作电压、微功耗、显示灵活、成本低等特点,因此在电子计算器、智能化仪器仪表、手机、掌上电脑等等领域应用极为广泛。
NC
-
空脚
17
/RESET
H/L
复位端,低电平有效(见注释2)
18
VOUT
-
LCD驱动电压输出端
19
A
VDD
背光源正端(+5V)(见注释3)
20
K
VSS
背光源负端(见注释3)
3.3 LCD显示基本原理
FYD12864-0402B是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
(1)了解128X64液晶显示器的基本结构、电路特性、软件特性、接口应用技术等;
(2)在(1)基础上能根据实际工作需要,进行液晶显示界面的任意开发;如:要求每位同学在液晶(LCD)上显示自己的学号(数字)、姓名(中文)等;
(3)撰写课程设计说明书。说明书中要求有主程序流程图、关键子程序流程图及应用系统硬件电路图;
(4)总结调试过程中出现的问题及解决办法。
3 课程设计报告内容
3.1 系统软、硬件功能设定(分工方案)
系统软件使用keil,89C51单片机,硬件则选用12864液晶显示器
3.2 系统硬件电路介绍
一﹑概述
带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
关键字:单片机 LCD128*64 液晶显示模块
1 课程设计目的……………………………………………………………………………1
2 课程设计题目描述和要求………………………………………………………………1
3 课程设计报告内容………………………………………………………………………1
3.1 系统软、硬件功能设定(分工方案)………………………………………………1
4实物图………………………………………………………………………………………22
总 结…………………………………………………………………………………………23
致 谢…………………………………………………………………………………………24
参考文献………………………………………………………………………………………25
本文介绍以AT89S51单片机为控制核心,以LCD128*64液晶作为显示的模块。该模块硬件结构简单、功能齐全,工作稳定,可完成目前绝大部分设备的显示工作。12864是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成。可完成图形显示,也可以显示8×4个(16×16点阵)汉字。
3.6 液晶显示模块指令系统…………………………………………………………………5
3.7系统硬件电路框图………………………………………………………………………6
3.8原理图及基本结构………………………………………………………………………7
3.9128 64点阵型液晶 C语言程序(可以显示指定点)………………………………12
相关文档
最新文档