LCD汉字显示屏的硬件电路与汇编语言程序设计
一、电路原理图
二、电路简介
1、OCMJ2X8(128X32)引脚说明
引脚 | 名称 | 方向 | 说明 | 引脚 | 名称 | 方向 | 说明 |
1 | VLED+ | I | 背光源正极(LED+5V) | 8 | DB1 | I | 数据1 |
2 | VLED- | I | 背光源负极(LED-OV) | 9 | DB2 | I | 数据2 |
3 | VSS | I | 地 | 10 | DB3 | I | 数据3 |
4 | VDD | I | (+5V) | 11 | DB4 | I | 数据4 |
5 | REQ | I | 请求信号,高电平有效 | 12 | DB5 | I | 数据5 |
6 | BUSY | O | 应答信号=1:已收到数据并正在处理中=0:模块空闲,可接收数据 | 13 | DB6 | I | 数据6 |
7 | DB0 | I | 数据0 | 14 | DB7 | I | 数据7 |
2、硬件接口
接口协议为 请求/应答(REQ/BUSY) 握手方式。应答BUSY 高电平(BUSY =1) 表示 OCMJ 忙于内部处理,不能接收用户命令;BUSY 低电平(BUSY =0)表示 OCMJ 空闲,等待接收用户命令。发送命令到 OCMJ可在BUSY =0 后的任意时刻开始,先把用户命令的当前字节放到数据线上,接着发高电平REQ 信号(REQ =1)通知OCMJ请求处理当前数据线上的命令或数据。OCMJ模块在收到外部的REQ高电平信号后立即读取数据线上的命令或数据,同时将应答线BUSY变为高电平,表明模块已收到数据并正在忙于对此数据的内部处理,此时,用户对模块的写操作已经完成,用户可以撤消数据线上的信号并可作模块显示以外的其他工作,也可不断地查询应答线BUSY是否为低(BUSY =0?),如果BUSY =0,表明模块对用户的写操作已经执行完毕。可以再送下一个数据。如向模块发出一个完整的显示汉字的命令,包括坐标及汉字代码在内共需5个字节,模块在接收到最后一个字节后才开始执行整个命令的内部操作。
三、用户命令
1)显示国标汉字
命令格式: F0 XX YY QQ WW
该命令为5字节命令(最大执行时间为1.2毫秒,Ts2=1.2mS),其中
XX:为以汉字为单位的屏幕行坐标值,取值范围00到07、02到09、00到09
YY:为以汉字为单位的屏幕列坐标值,取值范围00到01、00到03、00到04
QQ WW:坐标位置上要显示的GB 2312 汉字区位码
2) 显示8X8 ASCII字符
命令格式:F1 XX YY AS
该命令为4字节命令(最大执行时间为0.8毫秒,Ts2=0.8mS),其中
XX:为以ASCII码为单位的屏幕行坐标值,取值范围00到0F、04到13、00到13
YY:为以ASCII码为单位的屏幕列坐标值,取值范围00到1F、00到3F、00到4F
AS:坐标位置上要显示的ASCII 字符码
3) 显示8X16 ASCII字符
命令格式:F9 XX YY AS
该命令为4字节命令(最大执行时间为1.0毫秒,Ts2=1.0mS),其中
XX:为以ASCII码为单位的屏幕行坐标值,取值范围00到0F、04到13、00到13
YY:为以ASCII码为单位的屏幕列坐标值,取值范围00到1F、00到3F、00到4F
AS:坐标位置上要显示的ASCII 字符码
4) 显示位点阵
命令格式: F2 XX YY
该命令为3字节命令(最大执行时间为0.1毫秒,Ts2=0.1mS),其中
XX:为以1*1点阵为单位的屏幕行坐标值,取值范围00到7F、20到9F、00到9F
YY:为以1*1点阵为单位的屏幕列坐标值,取值范围00到40、00到40、00到40
5) 显示字节点阵
命令格式: F3 XX YY BT
该命令为4字节命令(最大执行时间为0.1毫秒,Ts2=0.1mS),其中
XX:为以1*8点阵为单位的屏幕行坐标值,取值范围00到0F、04到13、00到13
YY:为以1*1点阵为单位的屏幕列坐标值,取值范围00到1F、00到3F、00到4F
BT:字节像素值,0 显示白点,1 显示黑点 (显示字节为横向)
6) 清屏
命令格式:F4
该命令为单字节命令(最大执行时间为11毫秒,Ts2=11mS),其功能为将屏幕清空。
7) 上移
格式:F5
该命令为单字节命令(最大执行时间为25毫秒,Ts2=25mS),其功能为将屏幕向上移 一个点阵行。
8) 下移
命令格式:F6
该命令为单字节命令(最大执行时间为30毫秒,Ts2=30mS),其功能为将屏幕向下移动一个点阵行。
9) 左移
命令格式:F7
该命令为单字节命令(最大执行时间为12毫秒,Ts2=12mS),其功能为将屏幕向左移动一个点阵行。
10) 右移
命令格式: F8
该命令为单字节命令(最大执行时间为12毫秒,Ts2=12mS),其功能为将屏幕向右移动一个点阵行。
四、装配要求和方法
1、实验连线:8255的PA0~PA7接DB0~DB7,PC7接BUSY,PC0接REQ,CS8255接CS0。
2、程序流程: