MCS-51单片机的人机界面接口技术知识讲解
- 格式:ppt
- 大小:1.48 MB
- 文档页数:84
第七章 MCS-51单片机接口技术本章重难点:1. 用8279芯片扩展键盘接口技术的工作原理及方法2. 单片机LED显示接口技术的原理3. A/D转换、D/A转换的工作原理4. 通过各种芯片扩展后的程序编制教学基本要求:通过学习本章内容,让同学基本掌握各种芯片扩展后的基本原理,能够读懂扩展后的程序,对程序的结构有一定的了解;了解A/D转换、D/A转换的工作原理。
教学内容:§7-1 MCS-51单片机键盘接口技术从按一个键到键的功能被执行主要应包括两项工作:一项是键的识别,即在键盘中找出被按的是哪个键,另一项是键功能的实现。
第一项工作是使用接口电路实现的,而第二项工作则是通过执行中断服务程序来完成。
我们只讨论其中的第一项,即键盘接口问题。
具体来说,键盘接口应完成以下操作功能:①键盘扫描,以判定是否有键被按下(称之为“闭合键”)。
②键识别,以确定闭合键的行列位置。
③产生闭合键的键码。
④排除多键、串键(复按)及去抖动。
以为MCS-51单片机实现键盘接口的方法和接口芯片有:①使用单片机芯片本身的并行口;②使用单片机芯片本身的串行口;③使用通用接口芯片(例如8255、8155等);④使用专用接口芯片8279。
一、单片机键盘接口和键功能的实现(一)键盘接口处理的内容1.键扫描键盘上的键按行列组成矩阵,在行列的交点上都对应有一个键。
为判定有无键被按下(闭合键)以及被按键的位置,可使用两种方法:扫描法和翻转法。
现以图7-1所示的4行×8列键盘为例,对键扫描进行说明。
图7-1 键行列扫描法示意图首先是判定有没有键被按下。
如图7-2所示,键盘的行线一端经电阻接+5V电源,另一端接单片机的输入口线。
各列线的一端接单片机的输出口线,另一端悬空。
若行线状态皆为高电平,则表明无键按下;若行线状态中有低电平,则表明有键被按下。
然后再判定被按键的位置。
因为在键盘矩阵中有键被按下时,被按键处的行线、列线被接通,使穿过闭合键的那条行线变为低电平。
MCS-51单片机IO口详解单片机I O口结构及上拉电阻MCS-51有4组8位I/O口:P0、P1、P2和P3口,P1、P2和P3为准双向口,P0口则为双向三态输入输出口,下面我们分别介绍这几个口线。
一、P0口和P2口图1和图2为P0口和P2口其中一位的电路图。
由图可见,电路中包含一个数据输出锁存器(D触发器)和两个三态数据输入缓冲器,另外还有一个数据输出的驱动(T1和T2)和控制电路。
这两组口线用来作为CPU与外部数据存储器、外部程序存储器和I/O扩展口,而不能象P1、P3直接用作输出口。
它们一起可以作为外部地址总线,P0口身兼两职,既可作为地址总线,也可作为数据总线。
图1单片机P0口内部一位结构图图2 单片机P0口内部一位结构图P2口作为外部数据存储器或程序存储器的地址总线的高8位输出口AB8-AB15,P0口由ALE 选通作为地址总线的低8位输出口AB0-AB7。
外部的程序存储器由PSEN信号选通,数据存储器则由WR和RD 读写信号选通,因为2^16=64k,所以MCS-51最大可外接64kB的程序存储器和数据存储器。
二、P1口图3为P1口其中一位的电路图,P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。
Newbuff图3 单片机P2口内部一位结构图作为输入口时,锁存器置1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低电平,也可由内部上拉电阻拉成高电平,正因为这个原因,所以P1口常称为准双向口。
需要说明的是,作为输入口使用时,有两种情况:1.首先是读锁存器的内容,进行处理后再写到锁存器中,这种操作即读—修改—写操作,象JBC(逻辑判断)、CPL(取反)、INC(递增)、DEC(递减)、ANL(与逻辑)和ORL(逻辑或)指令均属于这类操作。
7MCS-51单片机的人机界面接口技术7.1 键盘及其接口7.2 显示器接口7.3 8279可编程键盘/显示接口芯片7.4 打印机接口7.1 键盘及其接口7.1.1 概述7.1.2 独立式键盘接口7.1.3 行列式键盘7.1.1 概述键盘是由若干按键组成的开关矩阵,它是微型计算机最常用的输入设备,用户可以通过键盘向计算机输入指令、地址和数据。
一般单片机系统中采用非编码键盘,非编码键盘是由软件来识别键盘上的闭合键,它具有结构简单,使用灵活等特点,因此被广泛应用于单片机系统。
按键开关的抖动问题组成键盘的按键有触点式和非触点式两种,单片机中应用的一般是由机械触点构成的。
如图7-1所示。
由于按键是机械触点,当机械触点断开、闭合时,会有抖动,P1.0输入端的波形如图7-2所示。
常用去抖动方法:(1)硬件方法增加去抖动电路。
(2)软件方法采用软件延时(10ms)躲过抖动7.1.2 独立式键盘接口独立式按键是指直接用I/O口线构成的单个按键电路。
每根I/O口线上按键的工作状态不会影响其他I/O口线的工作状态。
独立式按键电路如图7-3所示。
7.1.3 行列式键盘1.键盘工作原理在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,行列式键盘电路原理如图7-4所示。
列线通过电阻接正电源,并将行线所接的单片机的I/O 口(P1.4-P1.7)作为输出端,而列线所接的I/O口(P1.0-P1.3)则作为输入。
当按键没有按下时,所有的输出端都是高电平,代表无键按下。
行线输出是低电平时,一旦有键按下,则输入线就会被拉低,这样,通过读输入线的状态就可得知是否有键按下了。
2.键盘扫描方式行扫描法行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法。
(1)判断键盘中有无键按下将全部行线Y0-Y3置低电平,然后检测列线的状态。
只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。
MCS-51单片机IO口详解单片机I O口结构及上拉电阻MCS-51有4组8位I/O口:P0、P1、P2和P3口,P1、P2和P3为准双向口,P0口则为双向三态输入输出口,下面我们分别介绍这几个口线。
一、P0口和P2口图1和图2为P0口和P2口其中一位的电路图。
由图可见,电路中包含一个数据输出锁存器(D触发器)和两个三态数据输入缓冲器,另外还有一个数据输出的驱动(T1和T2)和控制电路。
这两组口线用来作为CPU与外部数据存储器、外部程序存储器和I/O扩展口,而不能象P1、P3直接用作输出口。
它们一起可以作为外部地址总线,P0口身兼两职,既可作为地址总线,也可作为数据总线。
图1单片机P0口内部一位结构图图2 单片机P0口内部一位结构图P2口作为外部数据存储器或程序存储器的地址总线的高8位输出口AB8-AB15,P0口由ALE 选通作为地址总线的低8位输出口AB0-AB7。
外部的程序存储器由PSEN信号选通,数据存储器则由WR和RD 读写信号选通,因为2^16=64k,所以MCS-51最大可外接64kB的程序存储器和数据存储器。
二、P1口图3为P1口其中一位的电路图,P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。
Newbuff图3 单片机P2口内部一位结构图作为输入口时,锁存器置1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低电平,也可由内部上拉电阻拉成高电平,正因为这个原因,所以P1口常称为准双向口。
需要说明的是,作为输入口使用时,有两种情况:1.首先是读锁存器的内容,进行处理后再写到锁存器中,这种操作即读—修改—写操作,象JBC(逻辑判断)、CPL(取反)、INC(递增)、DEC(递减)、ANL(与逻辑)和ORL(逻辑或)指令均属于这类操作。