武汉理工大学《能力拓展训练》说明书
作为输出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash 编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口:P1是一个带内部上拉电阻的8 位双向I/O 口,P1的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。与AT89C51 不同之处是,P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),参见表1。Flash 编程和程序校验期间,P1接收低8 位地址。
表3.1.1 .P1.0和P1.1的第二功能
引脚号 P1.0 P1.1 功能特性 T2,时钟输出 T2EX(定时/计数器2) P2口:P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX @DPTR 指令)时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX @RI 指令)时,P2 口输出P2 锁存器的内容。Flash 编程或校验时,P2亦接收高位地址和一些控制信号。
P3口:P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能P3口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号。 RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)
6
武汉理工大学《能力拓展训练》说明书
输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。对Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一条 MOVX 和MOVC指令才能将ALE 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 禁止位无效。
PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000H—FFFFH),EA 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU 则执行内部程序存储器中的指令。Flash 存储器编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是该器件是使用12V 编程电压Vpp。
XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。 XTAL2:振荡器反相放大器的输出端。
3.2 FYD12864液晶芯片介绍
12864C-1是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含
有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16 点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
(1)基本特性: 低电源电压(VDD:+3.0--+5.5V) 显示分辨率:128×64点
内置汉字字库,提供8192个16×16点阵汉字(简繁体可选) 内置128个16×8点阵字符
7
武汉理工大学《能力拓展训练》说明书
2MHZ时钟频率 显示方式:STN、半透、正显 驱动方式:1/32DUTY,1/5BIAS 视角方向:6点
背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5—1/10 通讯方式:串行、并口可选
内置DC-DC转换电路,无需外加负压 无需片选信号,简化软件设计
工作温度:0℃-+55℃,存储温度:-20℃-+60℃ (2)内部结构
FYD12864液晶的内部结构控制如图3.2.1所示。
图 3.2.1 液晶内部结构图
(3)模块接口说明 管脚号 1 2 3 4
管脚名称 VSS VCC V0 RS(CS) 表 3.1.1 12864管脚说明 电平 管脚功能描述 0V 3.0+5V - H/L 电源地 电源正 对比度(亮度)调整 RS=“H”,表示DB7—DB0为显示数据 RS=“L”,表示DB7—DB0为显示指令数据 8 武汉理工大学《能力拓展训练》说明书
5 R/W(SID) H/L 6 E(SCLK) H/L 7—14 DB0—DB7 H/L 15 PSB H/L 16 NC - 17 /RESET H/L 18 VOUT - 19 A VDD 20 K VSS (4)模块主要硬件结构说明 表 3.2.2 RS,R/W的配合选择决定控制界面的4种模式 RS R/W 功能说明 L L MPU写指令到指令暂存器 L H 读出忙标志(BF)及地址计数器(AC)的状态 H L MPU写入数据到数据暂存器 H H MPU从数据暂存器(DR)中读出数据 表 3.2.3 E信号 E状态 执行动作 结果 高——>低 I/O缓冲——>DR 配合/W进行写数据或指令 高 DR——>I/O缓冲 配合R惊醒读数据或指令 低/低——>高 无动作
a. 忙标志:BF
R/W=“H”,E=“H”,数据被读到DB7—DB0 R/W=“L”,E=“H→L”,DB7—DB0的数据被写到IR或DR 使能信号 三态数据线 H:8位或4位并口方式,L:串口方式 空脚 复位端,低电平有效 LCD驱动电压输出端 背光源正端(+5V) 背光源负端 BF标志提供内部工作情况.BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据.BF=0时,模块为准备状态,随时可接受外部指令和数据. 利用STATUS RD 指令,可以将BF读到DB7总线,从而检验模块之工作状态.
b. 字型产生ROM (CGROM)
字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY ON),DDRAM 的内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。
DFF 的状态是指令DISPLAY ON/OFF和RST信号控制的。
c. 显示数据RAM (DDRAM)
模块内部显示数据RAM提供64×2个位元组的空间,最多可控制4行16字
(64个字)的中文字型显示,当写入显示数据RAM时,可分别显示CGROM与CGRAM的字型;此模块可显示三种字型,分别是半角英数字型(16*8)、CGRAM字型及CGROM的中文字型,三种字型的选择,由在DDRAM中写入
9
武汉理工大学《能力拓展训练》说明书
的编码选择,在0000H—0006H的编码中(其代码分别是0000、0002、0004、0006共4个)将选择CGRAM的自定义字型,02H—7FH的编码中将选择半角英数字的字型,至于A1以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码BIG5(A140—D75F),GB(A1A0-F7FFH)。
d. 字型产生RAM (CGRAM)
字型产生RAM提供图象定义(造字)功能, 可以提供四组16×16点的自定义图象空间,使用者可以将内部字型没有提供的图象字型自行定义到CGRAM中,便可和CGROM中的定义一样地通过DDRAM显示在屏幕中。
e. 地址计数器AC
地址计数器是用来贮存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当RS为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6——DB0中。
f. 光标/闪烁控制电路
此模块提供硬体光标及闪烁控制电路,由地址计数器的值来指必RAM中的光标或闪烁位置。 (5)主要指令说明
表3.3.3 基本指令说明表 指 令 指令码 RR/DD6 D5 D4 D3 D2 D1 D0 S W 7 0 0 0 0 0 1 功能 将DDRAM填满\并且设定DDRAM的地址计数器(AC)到\设定DDRAM的地址计数器(AC)到\并且将游标移到开头原点位置;这个指令不改变DDRAM 的内容 D=1: 整体显示 ON C=1: 游标ON B=1:游标位置反白允许 指定在数据的读取与写入时,设定游标的移动方向及指定显示的移位 设定游标的移动与显示的移位控制位;这个指令不改变DDRAM 的内容 DL=0/1:4/8位数据 RE=1: 扩充指令操作 清除 显示 0 0 0 0 地址 0 0 0 0 归位 显示状0 0 0 0 态开/关 进入点 设定 0 0 0 0 游标或显示移0 0 0 0 位控制 功能 0 0 0 0 设定
0 0 0 0 1 X 0 0 0 0 1 0 D C B 1 I/D S 0 1 S/C R/L X X 1 DL X RE X X 10