1-单片机键盘与显示电路设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

单片机与键盘、显示器的接口设计第一节LED接口原理第二节键盘接口原理第三节实用LED和键盘驱动电路设计•采用INTEL8155•采用INTEL8279•采用ZLG7289A前期知识:51单片机的通用I/O口8051有4组8位I/O口:P0、P1、P2和P3口,其中P1、P2和P3为准双向口,P0口则为双向三态输入输出口。MCS-51系列单片机的基本I/O口双向三态输入输出端口。P0口身兼两职,既可作为地址总线(AB0-AB7),也可作为数据总线(DB0-DB7)。作为通用I/O时,是一个漏极开路电路。需外接上拉电阻。作为地址/数据总线使用时,不需处接上拉电阻。P0可驱动8个LSTTL,其它P口可以驱动4个LSTLL。并行输入和输出端口P0P0口电路中包含有一个数据输出锁存器、两个三态数据输入缓冲器、一个数据输出的驱动电路和一个输出控制电路。P0口的功能与驱动能力P0口可以作为通用的I/O口;P0口可以作为单片机系统的地址/数据线使用;P0可以驱动8个标准的TTL负载电路。注意在P0口作为通用的I/O口时,必须外接上拉电阻(如下图)。12345678P0VCCP1口某位结构并行输入和输出端口P1P1口为8位准双向输入输出端口。作为输入口使用时,有两种情况。其一是:首先是读锁存器的内容,进行处理后再写到锁存器中,这种操作即读—修改—写操作,象JBC(逻辑判断)、CPL(取反)、INC(递增)、DEC(递减)、ANL(与逻辑)和ORL(逻辑或)指令均属于这类操作。其二是:读P1口线状态时,打开三态门G,将外部状态读入CPU。P1口电路中包含有一个数据输出锁存器、一个三态数据输入缓冲器、一个数据输出的驱动电路。P1口的功能和驱动能力P1口只可以作为通用的I/O口使用;P1可以驱动4个标准的TTL负载电路;注意在P1口作为通用的I/O口使用时,在从I/O端口读入数据时,应该首先向相应的I/O口内部锁存器写“1”。举例:从P1口的低四位输入数据MOVP1,#00001111b;;先给P1口底四位写1MOVA,P1;;再读P1口的底四位并行输入和输出端口P2P2口作为通用I/O时,准双向输入输出端口。P2口作为高8位地址总线,AB8-AB15。P2口与P0一起构成单片机与外电路相连接的扩展端口。通常可以用来扩展存储器、及与其它总线型连接方式的外设。P2可以驱动4个标准的TTL负载电路。并行输入和输出端口P3P3口作为通用I/O时,为准双向输入输出端口。P3口的第二功能。·P3.0串行输入口(RXD)·P3.1串行输出口(TXD)·P3.2外中断0(INT0)·P3.3外中断1(INT1)·P3.4定时/计数器0的外部输入口(T0)·P3.5定时/计数器1的外部输入口(T1)·P3.6外部数据存储器写选通(WR)·P3.7外部数据存储器读选通(RD)P3口电路中包含有一个数据输出锁存器、两个三态数据输入缓冲器、一个数据输出的驱动电路和一个输出控制电路。P3口的功能和驱动能力P3口可以作为通用的I/O口使用;可以作为单片机系统的第二功能的输入和输出。P3口可以驱动4个标准的TTL负载电路。注意在P3口的使用时,首先要考虑第二功能的要求。MCS-51单片机P3口的第二功能引脚第二功能P3.0RXD(串行口输入)P3.1TXD(串行口输出)P3.2INT0(外部中断0输入)P3.3INT1(外部中断1输入)P3.4T0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6WR(片外数据存储器写选通控制输出)P3.7RD(片外数据存储器读选通控制输出)第一节LED接口原理常用的LED显示器有LED状态显示器(俗称发光二极管)、LED七段显示器(俗称数码管)和LED十六段显示器。发光二极管可显示两种状态,用于系统状态显示;数码管用于数字显示;LED十六段显示器用于字符显示。1.数码管简介1)数码管结构数码管由8个发光二极管(以下简称字段)构成,通过不同的组合可用来显示数字09、字符AF、H、L、P、R、U、Y、符号“”及小数点“”。数码管的外形结构如下图9-1所示。数码管又分为共阴极和共阳极两种结构。agdfecb109876gfGNDabedGNDcdp12345VDVD+5V(a)(b)(c)dp图9-12)数码管工作原理共阳极数码管的8个发光二极管的阳极(二极管正端)连接在一起。通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮。根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起。通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。3)数码管字形编码要使数码管显示出相应的数字或字符,必须使段数据口输出相应的字形编码。对照图,字型码各位定义为:数据线D0与a字段对应,D1与b字段对应……,依此类推。如使用共阳极数码管,数据为0表示对应字段亮,数据为1表示对应字段暗;如使用共阴极数码管,数据为0表示对应字段暗,数据为1表示对应字段亮。如要显示“0”,共阳极数码管的字型编码应为:11000000B(即C0H);共阴极数码管的字型编码应为:00111111B(即3FH)。依此类推。2.静态显示接口静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止。这种显示方式的各位数码管相互独立,公共端恒定接地(共阴极)或接正电源(共阳极)。每个数码管的8个字段分别与一个8位I/O口地址相连,I/O口只要有段码输出,相应字符即显示出来,并保持不变,直到I/O口输出新的段码。采用静态显示方式,较小的电流即可获得较高的亮度,且占用CPU时间少,编程简单,显示便于监测和控制,但其占用的口线多,硬件电路复杂,成本高,只适合于显示位数较少的场合。3.动态显示接口动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。通常,各位数码管的段选线相应并联在一起,由一个8位的I/O口控制;各位的位选线(公共阴极或阳极)由另外的I/O口线控制。动态方式显示时,各数码管分时轮流选通,要使其稳定显示,必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码。依此规律循环,即可使各位数码管显示将要显示的字符。虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人以同时显示的感觉。采用动态显示方式比较节省I/O口,硬件电路也较静态显示方式简单,但其亮度不如静态显示方式,而且在显示位数较多时,CPU要依次扫描,占用CPU较多的时间。第二节键盘接口原理1.键的分类按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点式开关按键,如电气式按键,磁感应按键等。前者造价低,后者寿命长。目前,微机系统中最常见的是触点式开关按键。2.输入原理在单片机应用系统中,除了复位按键有专门的复位电路及专一的复位功能外,其它按键都是以开关状态来设置控制功能或输入数据的。当所设置的功能键或数字键按下时,计算机应用系统应完成该按键所设定的功能,键信息输入是与软件结构密切相关的过程。对于一组键或一个键盘,总有一个接口电路与CPU相连。CPU可以采用查询或中断方式了解有无将键输入,并检查是哪一个键按下,将该键号送入累加器ACC,然后通过跳转指令转入执行该键的功能程序,执行完后再返回主程序3.按键结构与特点微机键盘通常使用机械触点式按键开关,其主要功能是把机械上的通断转换成为电气上的逻辑关系。也就是说,它能提供标准的TTL逻辑电平,以便与通用数字系统的逻辑电平相容。机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来。其抖动过程如图9-2所示,抖动时间的长短与开关的机械特性有关,一般为5~10ms。闭合稳定键按下前沿抖动后沿抖动图9-24.按键编码一组按键或键盘都要通过I/O口线查询按键的开关状态。根据键盘结构的不同,采用不同的编码。无论有无编码,以及采用什么编码,最后都要转换成为与累加器中数值相对应的键值,以实现按键功能程序的跳转。5.制键盘程序一个完善的键盘控制程序应具备以下功能:(1)检测有无按键按下,并采取硬件或软件措施,消除键盘按键机械触点抖动的影响。(2)有可靠的逻辑处理办法。每次只处理一个按键,其间对任何按键的操作对系统不产生影响,且无论一次按键时间有多长,系统仅执行一次按键功能程序。(3)准确输出按键值(或键号),以满足跳转指令要求。独立式按键单片机控制系统中,往往只需要几个功能键,此时,可采用独立式按键结构。1.独立式按键结构独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。独立式按键的典型应用如图9-3所示。P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.78031VCC图9-3独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大,不宜采用。2.独立式按键的软件结构独立式按键的软件常采用查询式结构。先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。矩阵式按键单片机系统中,若使用按键较多时,通常采用矩阵式(也称行列式)键盘1.矩阵式键盘的结构及原理矩阵式键盘由行线和列线组成,按键位于行、列线的交叉点上,其结构如下图9-4所示。由图可知,一个4×4的行、列结构可以构成一个含有16个按键的键盘,显然,在按键数量较多时,矩阵式键盘较之独立式按键键盘要节省很多I/O口。012345678910111213141500123123+5V图9-4矩阵式键盘中,行、列线分别连接到按键开关的两端,行线通过上拉电阻接到+5V上。当无键按下时,行线处于高电平状态;当有键按下时,行、列线将导通,此时,行线电平将由与此行线相连的列线电平决定。这是识别按键是否按下的关键。然而,矩阵键盘中的行线、列线和多个键相连,各按键按下与否均影响该键所在行线和列线的电平,各按键间将相互影响,因此,必须将行线、列线信号配合起来作适当处理,才能确定闭合键的位置。线反转法2.键盘按键的识别识别按键的方法很多,其中,最常见的方法是扫描法。按键按下时,与此键相连的行线与列线导通,行线在无键按下时处在高电平。显然,如果让所有的列线也处在高电平,那么,按键按下与否不会引起行线电平的变化,,因此,必须使所有列线处在低电平。只有这样,当有键按下时,该键所在的行电平才会由高电平变为低电平。CPU根据行电平的变化,便能判定相应的行有键按下。3.盘的编码对于独立式按键键盘,因按键数量少,可根据实际需要灵活编码。对于矩阵式键盘,按键的位置由行号和列号惟一确定,因此可分别对行号和列号进行二进制编码,然后将两值合成一个字节,高4位是行号,低4位是列号。4.键盘的工作方式对键盘的响应取决于键盘的工作方式,键盘的工作方式应根据实际应用系统中CPU的工作状况而定,其选取的原则是既要保证CPU能及时响应按键操作,又不要过多占用CPU的工作时间。通常,键盘的工作方式有三种,即编程扫描、定时扫描和中断扫描。1)编程扫描方式编程扫描方式是利用CPU完成其它工作的空余时间,调用键盘扫描子程序来响应键盘输入的要求。在执行键功能程序时,CPU不再响应键输入要求,直到CPU重新扫描键盘为止。

1 / 48
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功