并行口的设计键盘讲课讲稿

合集下载

8 并行IO接口与键盘接口技术

8 并行IO接口与键盘接口技术
• ( 8155、8255等)/(74LS273、74LS244,74LS373等)
程控扫描法
程控扫描方法
判断是否有键按下
• 通过 PC口 使所有的行输出均为低电平,从端口A 读入列值。 • 如果读入值为 FFH, 无键按下。
• 如果读入值不为 FFH, 有键按下。
去除键抖动
• 若有键按下,延时 10~20ms,再一次判断有无键按下, • 如果此时仍有键按下,则认为键盘上确有一个键被按下。
程控扫描方法
求闭合键的键值
• 对键盘逐行扫描 • 使PC0=0,读入列值,若等于FFH,说明该行无键按下
• 再对下一行进行扫描(即令PC1=0)„„
• 直至发现列值不等于FFH,则说明该行有键按下。
求出其键值
• 键值= 8键×行值 +列值
定时扫描法
CPU 每隔一定的时间(如10ms)对键盘扫描一遍
• 编码键盘
• 需专用硬件电路支持
• 能自动识别按下的键并产生相应代码,以并行/串行方式送给CPU
• 使用方便,接口简单,响应速度快,但较贵
• 非编码键盘
• 无需专用硬件支持
• 通过软件来确定按键并计算键值 • 价格便宜,得到了广泛的应用
键盘设计需解决的几个问题
按键的确认
• 通过电平状态检测确定键的闭合与否
I/O数据的四种传送方式
并行I/O接口芯片—Intel 8255A
并行I/O接口芯片—Intel 8255A
并行I/O接口芯片—Intel 8255A
并行I/O接口芯片—Intel 8155
并行I/O接口芯片——Intel 8155
键盘接口技术
键盘的分类:
发现有键被按下时,读入键盘操作,以求出键值。 定时时间间隔

第八章并行接口与串行接口课件

第八章并行接口与串行接口课件

中断服务程序
识别与判优)。 及接口方法
从通道C读 方式1状态字
通道B? Y 通道B服务程序
N 通道A?
N
返回 Y
通道A服务程序
其他中断?
N
Y
返回
非法中断进 行出错处理
服务程序
返回
返回
8255方式1中断查询流程图
工作特点 C口各位与A口、 B口的挂靠关系 程序查询式接口 中断驱动式接口
back
27
8.2.3 三种工作方式及接口方法
D7 D0
D7 D0
PA7 PA
HGFE 显示
Ai-1 译 码
A2 器 A 1A0
IOR
4PA3
CS
8255
PA0
A1
PB7
A0
PB4
RD
DCBA 显示
DCBAB74IN93RRA00IN12
IOW
WR PB3
1 RESET
&
RESET
PB0 PPCC07
DCBA7B4I 93RRA00IN12
&
N
输出
数据总线 控制寄存器
端口输出为“高阻”
非法
禁止
端口输出为“高阻”
back 8
8.2.1 内部结构与引脚功能 8255与MPU总线的接口方法
DB7 - DB0
IOR/MEMR
IOW/MEMW
高电平有效
MPU
A0
A1
AB
A2
| Ai-1
地址译码
D7 - D0
RD 8255 WR RESET A0 A1
举例:
INTRA
PC3PA0-7 PC4 PC7

并行接口优秀课件

并行接口优秀课件

D0~D7
RD WR
A引脚
A组 控制
A组 端口A
PA0~PA7
数据 总线 缓冲器
内部数据线
读写 控制 逻辑
B组 控制
内部控制线
A组 端口C 上部
B组 端口B
B组 端口C 下部
PC4~PC7 PB0~PB7 PC0~PC3
1. 外设数据端口
• 端口A:PA端0口~APA:7PA0~PA7
适用于对简单的I/O设备(如开关、LED显示器、 继电器等)的操作,或者I/O设备的定时固定或已 知的场合。 二、查询状态传送(异步传送)
效率低。
三、中断传送方式
效率大大提高。
四、直接存储器存取(DMA)方式
适于高速外设以及成组交换数据的场合 。
I/0接口的类型
• 串行I/0接口 • 并行I/0接口
中断请求信号 请求CPU接收数据
方式1输入引脚:B端口
PB7~PB0
数据选通信号 表示外设已经准备好数据
INTEB PC2
STBB
同方时式P还1需C1具借有用中端IB断F口B 请C用求输做和入联屏缓冲络蔽器信功满信号能号
表示A口已经接收数据
PC0
INTRB
中断允许触发器
中断请求信号 请求CPU接收数据
– A组,支持工常作作方数式据0端、口1、,2功能最强大
• 端口B:PB端0口~BP:B7PB0~PB7
– B组,支持工常作作方数式据0端、口1
• 端口C:P端C0口~CP:C7PC0~PC7
– 仅支持工作 可方作式数0 据、状态和控制端口 – A组控制高4分位两PC个44~位P,C7每位可独立操作 – B组控制低4控位制PC最0灵~活PC,3最难掌握

并行IO口ppt课件

并行IO口ppt课件

T
引脚
读引脚
单片机原理与应用
16
②P3的内部结构
一、作为通用I/O口与P1口类似----准双向口(W=1)
读锁存器
内部总线 写锁存器
读引脚
第二输出功能 VCC
W
DQ CLK Q
R
P3.n P3口
T
引脚
第二输入功能
单片机原理与应用
17
②P3的内部结构
二、P3第二功能(Q=1) 此时引脚部分输入(Q=1、W=1) , 输出(Q=1、W输出) 。
脚处于悬浮状态,变为高阻抗输入。这就是所谓的
准双向口。
地址/数据 VCC
读锁存器
控制
内部总线 写锁存器
DQ CLK Q
T1
P0.n P0口
T2
引脚
MUX
读引脚
单片机原理与应用
10
2、P0作为地址/数据总线
在系统扩展时,P0端口作为地址/数据总线使用时, 分为:
▪ P0引脚输出地址/输出数据信息。
读锁存器
delay();
/*延时*/
P1=0xB6; /*置P1口状态10110110*/
delay();
/*延时*/
}while(1);
}
单片机原理与应用
20
void delay() {
int x=20000; do {
x=x-1; } while(x>1); }
单片机原理与应用
21
问题:
1.MCS-51单片机的哪些端口,有两种功能?分别是什 么功能?
T1
P0.n P0口
T2
引脚
MUX
读引脚
单片机原理与应用

第9章并行接口ppt课件

第9章并行接口ppt课件
〔3〕端口A可任务于3种方式中的任—种。端口B只能任务 于方式0或方式1。在方式0时,端口C可以分成2个4位端口, 用作数据输入/输出端口;还可以分别用来为A端口、B端口 输入/输出时提供控制信号和形状信号。
方式控制字的格式如图9-4所示。
在对8255A进展初始化时,应向控制存放器写入方式控制 字,确定各端口的任务方式及功能。在系统复位时,复位信
假设将此控制字内容写入8255A的控制存放器,即实现了 对8255A任务方式的设定,就是完成了对8255A的初始化。 设控制口地址为303H,初始化的程序段为:
MOV DX,303H
;8255A的控制口地址
MOV AL,OAAH
;控制字
OUT DX,AL ;控制字写入控制端口
2.端口C按位置位/复位控制字 按位置位/复位控制字的作用是使端口C的某一位输出为高电 平或低电平,以用于控制或应对信号。
与CPU的接口信号:
D7~D0——数据线、双向、三态,可衔接CPU的数据总线。
CS ——片选信号、输入、低电平有效。只需当 为“0〞时, 8255A芯片才任务。通常, 接地址译码信号。
A1、A0——片内存放器选择CS 信号〔端口选择〕,输入。8255A 内部有3个数据端口和1个控制端口。规定当A1,A0为00时, 选中端口PA;为01时,选中端口PB;为10时,选中端口PC; 为11时,选中控制端口。
〔1〕方式1的输入
1〕方式1的输入组态。方式控制字选择A组、B组任务于方 式1输入时,其端口组态如图9-8所示。
2〕联络信号的定义
STB ——选通讯号,低电平有效。这是由外部设备提供的输
入信号,当其有效时,将输入设备送来的数据锁存输入锁存 器。
IBF——输入缓冲器满信号,高电平有效。这是8255A输出 的联络信号。当其有效时,表示数据己锁存在输入锁存器中。 它由前沿置高、信号的后沿置低。

第七章 单片机并行接口技术PPT课件

第七章  单片机并行接口技术PPT课件

键按下
前沿抖动
后沿抖动
闭合 稳定
图7.2 按键触点的机械抖动
在触点抖动期间检测按键的通与断状态,可能导致 判断出错,即按键一次按下或释放被错误地认为是多次 操作,这种情况是不允许出现的。为了克服按键触点机 械抖动所致的检测误判,必须采取去抖动措施。这一点 可从硬件、软件两方面予以考虑。在键数较少时,可采 用硬件去抖,而当键数较多时,采用软件去抖。
第七章 单片机并行接口技术
7.1 单片机与键盘接口 7.2 单片机与显示器接口 7.3 D/A转换器接口 7.4 A/D转换器接口
7.1 键盘接口
7.1.1 键盘工作原理
1.按键的分类
按键按照结构原理可分为两类,一类是触点式开关按 键,如机械式开关、导电橡胶式开关等;另一类是无触点 式开关按键,如电气式按键,磁感应按键等。前者造价低, 后者寿命长。目前,微机系统中最常见的是触点式开关按 键。
按键按照接口原理可分为编码键盘与非编码键盘两类, 这两类键盘的主要区别是识别键符及给出相应键码的方法。 编码键盘主要是用硬件来实现对键的识别,非编码键盘主要 是由软件来实现键盘的定义与识别。
全编码键盘能够由硬件逻辑自动提供与键对应的编码, 此外,一般还具有去抖动和多键、窜键保护电路。这种键盘 使用方便,但需要较多的硬件,价格较贵,一般的单片机应 用系统较少采用。非编码键盘只简单地提供行和列的矩阵, 其它工作均由软件完成。由于其经济实用,较多地应用于单 片机系统中。下面将重点介绍非编码键盘接口。
(2) 有可靠的逻辑处理办法。每次只处理一个按键, 其间对任何按键的操作对系统不产生影响,且无论一次按 键时间有多长,系统仅执行一次按键功能程序。
(3) 准确输出按键值(或键号),以满足跳转指令要 求。

键盘接口技术讲稿

键盘接口技术讲稿

键盘接口技术♦线反转连接方式♠电路特点:列线和行线都通过上拉电阻连接到VCC♠使用特点:先令行线作为输出口线,列线作为输入口线再令列线作为输出口线,行线作为输入口线♠编程特点:①行线输出全“0”,查列线是否有“0”,若有进入②②列线输出全“0”,查行线是否有“0”,找到对应按键。

3. 键盘接口功能●键扫描,判定是否有键按下●键识别,判定按键位置●产生闭合按键键码(键值)●去抖动♦开关动作示意前后沿抖动时间<20ms稳定时间>100ms♦去抖动硬件电路双稳态消抖电路4. 独立按键接口设计♠并行口扩展三个独立按键●硬件设计●软件设计(按键识别及处理子程序)ORG 2000HKEYS:MOV P1, # 0FFH ; 置P1口为输入态MOV A , P1; 读键值CPL A ; 取反ANL A , # 00000111B ; 屏蔽高5位JZ GORET ; A=0, 说明无键闭合,返回LCALL DELAY ; 有键闭合,延时去抖JB ACC.0, KEY0; (ACC.0 = 1) S0 按下JB ACC.1, KEY1; (ACC.1 = 1) S1 按下JB ACC.2, KEY2; (ACC.2 = 1) S2 按下GORET:RETKEY0:LCALL S0AJMP GORETKEY1: LCALL S1AJMP GORETKEY2:LCALL S2AJMP GORETEND●关键语句分析若没有任何键按下,则P1口及读进累加器A的内容为:取反后的结果为:同数据00000111B相与后的结果为:●8个独立按键连接的通用软件结构-分支结构START:MOV P1, #0FFHMOV A, P1CPL AJZ STARTJB ACC.0, KEY0JB ACC.1, KEY1JB ACC.2, KEY2JB ACC.3, KEY3JB ACC.4, KEY4JB ACC.5, KEY5JB ACC.6, KEY6SJPM KEY7KEY0 :…LJMP STARTKEY1 :…LJMP STARTKEY7 :…LJMP STARTEND● 8独立按键连接的通用软件结构—子程序嵌套结构 KEYS: MOV P1, #0FFH MOV A, P1CPL AJZ GORETJB ACC.0, KEY0 JB ACC.1, KEY1 JB ACC.2, KEY2 JB ACC.3, KEY3 JB ACC.4, KEY4 JB ACC.5, KEY5 JB ACC.6, KEY6JB ACC.7, KEY7GORET: RETKEY0 : LCALL SUB0 AJMP GORET KEY1 : LCALL SUB1 AJMP GORET KEY7 : LCALL SUB7 AJMP GORET SUB0 : …RETSUB1 : …SUB7 : RETEND♠利用外中断信号输入口线扩展两个独立按键A8H88HB8H主程序中的设置MAIN:SETB EA ; 开放中断总开关SETB EX0 ;INT0开放中断SETB EX1 ;INT1开放中断CLR IT0 ;设INT0电平触发,低有效CLR IT1 ;设INT1电平触发,低有效SETB PX0 ; 设INT0中断优先级为高优先级SETB PX1 ;设INT1中断优先级为高优先级这种方法的特点是: 不需进行键扫描,速度快,但由于外中断源个数有限,只适合于按键极少且外中断源无它用的情况下使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4
5
6
7
ED DD DD 7D
8
9
A
B
EB DB BB 7B
C
D
E
F
E7 D7 B7 77
行扫描法
0 00
4 10
8 20
C 30
1Байду номын сангаас
2
3
01
02
03
5
6
7
21
22
23
9
A
B
21
22
23
D
E
F
31
32
33
行反转法
定义符 键值
定义符 键值
表5-1 可能的元件清单
元件名称
所属类
AT89C51
Microprocessor ICs
(1)行扫描法 按上图的接法可以得出键值 表,如下图。键值可以通过 扫描法获得,由键值通过查 表法编程得到定义值。
(2)行反转法 用反转法识别闭合键,分别 对行列进行输入,当一个键 被按下时,必定可读得一对 唯一的行值和列值。根据这 一对行值和列值就可判断是 哪一行哪一列的键被按下。
0
1
2
3
EE DE BE 7E
此课件下载可自行编辑修改,仅供参考! 感谢您的支持,我们努力做得更好!谢谢
有两个或两个以上按键同时处于闭合状态的处理问题。在软件 上,处理重键问题通常有连锁法与巡回法。
4×4键盘与单片机接法示例
VDD 单片机 内部上拉电阻
行线m1 m2 m3 m4
0
1
23
4
5
67
8
9
AB
CD
EF
列线 n1
n2
n3
n4
单片机P口引脚 Px.0
Px.1
Px.2
Px.3 Px.7 Px.6 Px.5 Px.4
RES
Resistor
CAP
Capacitors
CAP-ELEC
Capacitors
BUTTON
Switch & Relays
7SEG-COM-CATGRN
74LS164
Optoelectronics TTL 74LS Series
所属子类 8051 family
Generic Generic Generic Switches 7-Segment Displays Registers
并行口的设计键盘
键盘的基本问题
(1)键的识别 如何知道键盘上哪个键被按下就是键盘识别问题。键盘识别主
要有行扫描法与行反转法。 (2)抖动问题
当按下一个键时,会出现所按的键在闭合位置和断开位置之间 跳几下才稳定到闭合状态的情况,当释放一个按键时也会出现类似 的情况,这就是抖动问题。解决抖动的方法通常是延迟等待抖动的 消失或多次识别判定。 (3)重键问题
相关文档
最新文档