微型打印机控制电路的设计_毕业设计论文(编辑修改稿)内容摘要:

系统比较简单,总共只有七种。 现分别介绍如下: Y1Y64 液晶显示驱动端 VDD, VSS 内部逻辑电源 VEE1 ,VEE2 液晶显示驱动电路的电源 常令 VEE1=VEE2 V1LV4L,V1RV4R 液晶显示驱动电压 其电压值均在 VCC 和 VEE 之间,常令V1L=V1R, V2L=V2R, V3L=V3R, V4L=V4R ADC 决定 Y1Y64 与液晶屏的连接顺序 ADC=1JF,Y1=$0,Y64=$63 ADC=0 时, Y1=$63,Y64=$0 该引脚直接接 VCC 或 GND 即可 毕业论文 ( 1) 显示开 /关指令 表 47 显示开 /关指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 1 1 1 1/0 当 DB0=1 时, LCD 显示 RAM 中的内容; DB=0 时,关闭显示。 ( 2) 显示起始行( ROW)设置指令 表 48 显示起始行设置指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 1 显示起始行( 063) 该指令设置了对应液晶屏最上一行的显示 RAM 的行号,有规律的改变显示起始行,可以使 LCD 实现显示滚屏的效果。 ( 3) 页( RAGE)设置指令 表 49 页设置指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 0 1 1 1 页号( 07) 显示 RAM 共 64 行,分 8 页,每页 8 行。 ( 4) 地址( Y Address)设置指令 表 410 地址设置指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 1 显示列地址( 063) 设置了页地址和列地址,就唯一确定了显示 RAM 中的一个单元,这样 MCU 就可以用读、写指令读出该单元中的内容或向该单元写进一个字节数据。 ( 5) 读状态指令 表 411 读状态指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 1 0 BUSY 0 ON/OFF REST 0 0 0 0 该指令用来查询 HD61202 的状态,各参量含义如下: BUSY: 1内部在工作 0正常状态 ON/OFF: 1显示关闭 0显示打开 REST: 1复位状态 0正常状态 在 BUSY 和 REST 状态时,除读状态指令外,其它指令不对 HD61202 产生作用。 在对 HD61202 操作之前要查询 BUSY 状态,以确定 是否可以对 HD61202 进行操作。 ( 6) 写数据指令 表 412 写数据指令 毕业论文 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 1 写 数 据 ( 7) 数据指令 读、写数据指令每执行完一次读、写操作,列地址就自动增一,必须注意的是,进行读操作之前,必须有一次空读操作,紧接着再读才会读出所要读的单元中的。 表 413 数据指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 1 1 读 显 示 数 据 HY12864 的电路结构特点 HY12864 是使用 HD61202 作为列驱动器,同时使用 HD61203 作为行驱动器的液 晶模块 [9]。 由于 HD61203 不与 MCU发生联系,只要提供电源就能产生行驱动信号和各种同步信号,比较简单。 下面主要介绍以下 HY12864 这个模块的逻辑电路图。 HY12864共有两片 HD61202 和一片 HD61203,如下图 46所示: Vss Vdd Vo RS R/WE DB0 DB1… DB7 CS1 CS2 RES 图 46 逻辑电路图 在 HY12864 中,两片 HD61202 的 ADC 均接高电平, RST 也接高电平,这样在使用 HY12864 时就不必再考虑这两个引脚的作用。 /CSA 跟 HD61202( 1)的 /CS1 相连;/CSB 跟 HD61202( 2)的 CS1 相连,因此 /CSA、 /CSB 选通组合信号为 /CSA, /CSB=01选通( 1) , /CSA, /CSB=10 选通( 2)。 对于 HY12864 只要供给 VDD、 VSS和 V0 即可,HD61202 和 HD61203 所需电源将有模块内部电路在 VDD和 V0、 VSS 的作用下产生的 [10]。 HY12864 的应用 LCD 64 列 64 列 64行 振荡电路 同步脉冲 DB0DB7 控制 BL BL+ Vee 毕业论文 图 47 接口电路原理图 上面是液晶显示器 HY12864 与单片机 89S52 的接口电路。 控制电路为直接访问方式的接口电路 [11]。 电路原理图如上图所 示: 单片机的 P0 端口直接与显示器的数据端口相连;电位器用来调 节显示器屏幕亮度,而负电源由显示器本身提供; 单 片机的读写信 号端口通过与非门控制显示器的读写使能端,高电平时数据被读出,下降沿时数据被锁存即写入列驱动器; 口控制芯片片选端(第二个列驱动器), 口控制芯片片选端(第一个列驱动器),且二者均为低电平有效; 口控制读写选通信号,输入低电平时写选通,本设计不需读入,所以只要低电平即可; 口控制数据指令选择信号,高电平为数据操作,低电平写指令或读状态,即先为 0 写入控制字再为 1 写入数据代码确定什么字。 键盘部分 单片机键盘和键盘接口概述 单片机使用的键盘可分为独立式和矩 阵式两种。 独立式实际上就是一组相互独立的按键,这些按键可直接与单片机的 I/O接口连接,其方法是每个按键独占一条口线,接口简单 [12]。 矩阵式键盘也称行列式键盘,因为键的数目较多,所以键按行列组成矩阵(如图 48所示)。 S W P BS3S W P BS9S W P BSFS W P BS0S W P BS4S W P BS1S W P BS2S W P BS6S W P BSAS W P BS5S W P BSES W P BSB S W P BS7S W P BS8S W P BSCS W P BSDP 1 .0P 1 .1P 1 .1P 1 .2P 1 .3P 1 .0P 1 .3P 1 .2P 1 .4P 1 .5P 1 .7P 1 .4P 1 .5P 1 .6P 1 .7P 1 .6E A /V P31X119X218R E S E T9RD17WR16I N T 012I N T 113T014T115P 1 01P 1 12P 1 23P 1 34P 1 45P 1 56P 1 67P 1 78P 0 039P 0 138P 0 237P 0 336P 0 435P 0 534P 0 633P 0 732P 2 021P 2 122P 2 223P 2 324P 2 425P 2 526P 2 627P 2 728P S E N29A L E /P30T X D11R X D108051U?毕业论文 图 48 键盘接口电路图 按一个键到键的功能被执行主要应包括两项工作:一是键的识别,即在键盘中找出被按的是哪个键,另一项是键功能的实现。 第一项工作是使用接口电路实现的,而第二项工作则是通过执行中断服务程序来完成。 下面来介绍键盘接口问题 [13]。 具体来说,键盘接口应完成以下操 作功能: a 键盘扫描,以判定是否有键被按下(称之为“闭合键”)。 b 键识别,以确定闭合键的行列位置。 c 产生闭合键的键码。 d 排除多键、串键(复按)及去抖动。 这些内容通常是以软硬件结合的方式来完成的,即在软件的配合下由接口电路来完成。 但具体那些由硬件完成由软件完成,要看接口电路的情况。 总的原则是,硬件复杂软件就简单,硬件简单软件就得复杂一些。 可以为 MCS51单片机实现键盘接口的方法和接口芯片有: a 使用单片机芯片本身的并 /串行口 b 使用通用接口芯片(例如 825 8155等) /专用接口芯片 8279 单片机键盘接口和键功能的实现 ( 1) 键盘接口处理内容 ① 键扫描 键盘上的键按行列组成矩阵,在行列的交点上都对应有一个键。 为判定有无 键被按下(闭合键)以及被按键的位置,可使用两种方法:扫描法和翻转法,其中以扫描法使用较为普遍。 因此下面以扫描法为例,说明查找闭合键的方法。 现以图 49所示的 4行 4列键盘为例,对键扫描进行说明。 输入口 1 1 1 1 0 1 1 1 +5V 输出口 ( a) ( b) 输入口 输出口 1 1 1 1 1 0 1 1 +5V 毕业论文 图 49 键扫描法示意图 首先是判定有没有键被按下。 如图 49所示,键盘的行线一端经电阻接 +5V电源 ,另一 端接单片机的输入口线。 各列线的一端接单片机的输出口线,另一端悬空。 为判定有没有键被按下,可先经输出口向所有列线输出低电平,然后再输入各行线状态。 若行线状态中有低电平,则表示有键被按下。 然后再判定被按键的位置。 因为在键盘矩阵中有键按下时,被按键处的行线和列线被接通,使穿过闭合键的那条行线变为低电平。 假定图 49中 A键被按下,则判定键位置的扫描是这样进行的: 先使输出口输出 0EH,然后输入行线状态,测试行线状态中是否有低电平(图 49( a))。 如果没有低电平,再使输出口输出 0DH,再测试行线状态(图 49( b) )。 到输出口输出 0BH时,行线中有状态为低电平者,则闭合键找到(图 49( c)),通过此次扫描的行线值和列线值就可以知道闭合键的位置。 至此行扫描似乎可以结束,但实际上扫描往往要继续进行下去,以发现可能出现的多键同时被按下。 ② 去抖动 当扫描表明有键被按下之后,紧接着应进行去抖动处理。 因为常用键盘的键实 际上就是一个机械开关结构,被按下时,由于机械接触点的弹性及电压突跳等原因,在触点闭合或断开的瞬间会出现电压抖动,如图 410所示。 抖动时间长短与键的机械特性有关,一般为 5~ 10ms。 而键的稳定的闭合时间和操 作者按键动作有关,大约为十分之几到几秒不等。 1 1 0 1 1 1 0 1 输入口 +5V 输出口 ( c) 键按下 前沿抖动 后沿抖动 毕业论文 图 410 键闭合和断开时的电压抖动 ③ 键码计算 被按键确定下来之后,接下来的工作是计算闭合键的键码,因为有了键码,才能通过散转指令把程序执行转到闭合键所对应的中断服务程序上去。 也可以直接使用该闭合键的行列值组合产生键码,但这样做会使各子程序的入口地址比较散乱,给 JMP指令的使用带来不便。 所以通常都是以键的排列顺序安排键号,例如,图 411所示的键号是按从左到右从上到下的顺序编排的。 这样安排,使键码既可以根据行号列号以查表求得,也可以通 过计算得到。 按图411所示的键码编排规律,各行的首号依次是 00H, 04H, 08H, 0CH,如列号按 0~ 3顺序,则键码的计算公式为: 键码 =行首号 +列号 ④ 等待键释放 计算键码之后,再以延时后进行扫描的方法等待键释放。 等待键释放是为了保证键的一次闭合仅进行一次处理。 综上所述,键盘接口处理的核心内容是测试有无闭合键,对闭合键进行去抖动处。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。