第 6章 键盘、显示接口技术
6.1 键盘及其与计算机接口
6.2 独立式按键接口设计
6.3 矩阵式键盘接口设计
6.4 LED显示器及接口设计
6.5 LCD显示器及接口设计
6.1 键盘、显示与计算机接口
键盘输入数据和命令,显示用于计算机的状态、命
令和计算结果。
一、键盘
单片机键盘有两种:
一种是全编码键盘,其键码全由硬件提供,但是这
种方式硬件结构复杂,成本高;
另一种是非编码键盘,这种键盘多采用矩阵方式,
利用软件识别键码及完成各种键功能处理。
单片机系统中多采用非编码键盘。
二、显示器
1,LED显示器
内部由发光二极管组成段显示。
数码管结构又分为共阳极型和共阴极型。
2,LCD液晶显示器
常用的 LCD可分为字符型和点阵型两大类。
字符型可用来显示字符和数字,
点阵型可用来显示汉字及图形。
6.2 独立式按键接口设计
一、独立式键盘接口电路
P1.0
P1.1
P1.7
+5v1,接口与数据
每个按键单独占有一根 I/O
接口引线 。
输入每根 I/O接口引线的信号
对应某个数据 。
2,键盘的可靠性
消除抖动电路
& I/O
接
口
&
+5v
+5v
消除抖动电路
开关 单
片
机
抖动时间
< 10ms
开关动作时间
> 100ms
,1,
,0
” < 10ms
二,独立式按键接口程序设计
键盘处理程序任务
1)键输入
检查键盘是否有键被按下,消除按
键抖动。确定被按键的键号,获取键号。
硬件电路消除抖动或软件消除抖动。
2)键译码
键号为键盘位置码,根据键号查表
得出被按键的键值。键值:数字键 0~ 9、
字符键 0AH~ 0FH,功能键 10H~ 。
3)键处理
根据键值转移到不同程序段。 若键
值属于数字、字符键,则调用显示数字
和字符的子程序。若键值属于功能键,
则进行多分支转移,执行各个功能程序
段。
延时等待 10ms
仍有按键信号?
Y
有按键信号? N
Y
N
键盘处理
按键释放? N
Y
三,单键管理程序
KEY,SETB P1.0
JB P1.0,KEY ; 有键按下 P1.0=0
KEY1,ACALL DELAY ; 延时, 防止抖动
SETB P1.0
JB P1.0,KEY1 ; 键是否释放
JNB P1.0,KEY1 ; 消除了连击功能
JB P1.0,KEY1 ;连击功能
ACALL PROGRAM ;
AJMP KEY
6.3 矩阵式键盘
0 1
+5vP1.0 P
1.1
P1.4
P1.5
键盘
I/O接口
由多条 I/O接口引线组成矩
阵式键盘 。
1,扫描法
列线输出,行线输入。
列线逐行输出 0,某行有按键,行线输入有 0,若
无按键,行线输入全部为 1。
2,反转法
行列线交换输入、输出,两步获取按键键号。
3,中断扫描方式
有按键按下时发出中断请求信号,提高 CPU的效
率。
一,键的输入方法
二,按键处理
程序:
延时消抖
键扫描求键号
延时等待
键译码求键值
修改显示缓冲区 跳转各功能程序
有按键输入?
确有按键?
按键释放?
是数字键?
三,中断扫描方式
图 7-5 中断式键盘电路
6.4 LED显示器及接口设计
一,LED显示器结构和字段码关系
由发光二极管组成,不同的发光段亮,可组成不
同字型,电流太大,耗电量大,电流太小,发光度不
够,一般各管电流在 10mA较合适。
1,LED显示器结构
(Light-Emitting Diode)
共阳极 共阴极 外形图
2,7段 LED字型码(段码)
显示
字形
h a b c d e f g 共阳极段
选码
共阴极段
选码
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
“灭”
1 1 0 0 0 0 0 0
1 1 1 1 1 0 0 1
1 0 1 0 0 1 0 0
1 0 1 1 0 0 0 0
1 0 0 1 1 0 1 0
1 0 0 1 0 0 1 0
1 0 0 0 0 0 1 0
1 1 1 1 1 0 0 0
1 0 0 0 0 0 0 0
1 0 0 1 0 0 0 0
1 0 0 0 1 0 0 0
1 0 0 0 0 0 1 1
1 1 0 0 0 1 1 0
1 0 1 0 0 0 0 1
1 0 0 0 0 1 1 0
1 0 0 0 1 1 1 0
1 1 1 1 1 1 1 1
C0H
F9H
A4H
B0H
99H
92H
82H
F8H
80H
90H
88H
83H
C6H
A1H
86H
8EH
FFH
3FH
06H
5BH
4FH
06H
6DH
7DH
07H
7FH
6FH
77H
7CH
39H
5EH
79H
71H
00H
二,LED 显示器接口
LED显示器用于显示工业控
制参数、过程状态。
1,LED数码管
共阴极 LED和共阳极 LED
当 LED字段引线与数据线连
接,每个显示字形对应一个字形
码。
COMP1.0~ 1.7
MCS-51
a
f b
g
e c
d h
a
b
h
a b h
COM
LED 的字形码 ( 字段码 )
显示字符 共阴极 共阳极
0 3F H C 0H
1 06H F 9 H
8, FFH 00H
‘灭’ 00 FFH
F 71H 84H
U 3E H C 1H
P, F 3 H 02H
D7 D6 D5 D4 D3 D2 D1 D0
h g f e d c b a
显示程序任务:
1)设置显示缓冲区, 存放待
显示数据 。
2)显示译码:程序存储器中
建立字形码常数表, 查表得出对
应数据的字形码 。
3)输出显示:输出字形码到
显示端口 。
例,MOV DPTR,#WTAB ; 指向字形码表首地址
MOV A,@R0 ; 取显示缓冲区中数据
MOVC A,@A+DPTR ; 查表显示译码
MOV P1,A ; 输出显示
…
WTAB,DB 3FH,06H,5BH ; 字形码表
…
COMP1.0~ 1.7
MCS-51
a
f b
g
e c
d h
a
b
h
2,LED接口电路
显示多位数据的两种电路:
1)静态显示
多位 LED分别用一组 8位字段口,各位 LED公共端接地,
分别输出显示不同字形。
a b h
COM
a
f b
ge c
d h
a b h
COM
a b h
COM
显示多位数据的两种电路:
1)动态显示
COM
h
COM
D7
…
D1D
0
D0
D1
D2
h bbh
COM
a
f b
g
e c
d h
a ab a
对应字位线,D0 D1 D2 D3 D4 D5 显示缓冲区
地址 内容
7A H
7B H
7C H
7D H
7E H
7FH
每个 LED需要一个 8位并行口
多位 LED共用一个 8位字段
口,各位 LED公共端用字位口
控制,扫描输出显示不同字形。
显示缓冲区与多位 LED对应
关系:
显示程序:
DIS,MOV R0,#7AH ; 指向显示缓冲区起始单元
MOV R3,#01H ; 字位码初值 → R3
MOV A,R3 ; 取字位码
DLP,MOV DPTR,#PAAR; 指向字位口 (PA口 )
MOVX @DPTR,A ; 输出字位码,显示其中 1位
MOV A,@R0 ; 取一个显示数据
ADD A,#0CH ; 查表偏移量
MOVC A,@A+PC ; 取出字形码
INC DPTR ; 指向字段口 (PB口 )
MOVX @DPTR,A ; 输出字形码
ACALL DLY1MS ; 延时 1ms
INC R0 ; 指向显缓区下一单元
MOV A,R3 ; 修改字位码
RL A ; 显示下一位
MOV R3,A
JNB ACC.6,DLP ; 未显示到最右边 LED,继续显示
RET ; 全部扫描一遍,结束
DTAB,DB 0C0H,0F9H,0A4H ; 字形表
DB 0B0H,99H,
DLY1MS … ; 延时 1ms子程序
( 3)多位静态显示方式及其接口电路
多位静态显示电路
( 4)多位动态显示方式及其接口电路
6.5 LCD显示器及接口设计
一,LCD的原理与分类
1,LCD的原理
LCD是一种被动显示器,本身不发光利用电场效
应 ——液晶的扭曲向列效应
具有功耗低,显示信息大,寿命长和抗干扰能力
强等优点
2,LCD的分类
显示类型:笔段型,字符型点、阵图形型
采光分类:自然采光、背光源采光
驱动分类:静态驱动、动态驱动、双频驱动法
二,LCD液晶显示的接口技术
三、单片机与字符型 LCD显示模块的连接方法
直接访问和间接访问两种
1,直接访问方式:把字符型液晶显示模块作为存储
器或 I/ O接口设备直接连到单片机总线上。
2,间接控制方式:把字符型液晶显示模块作为终端
设备连接到单片机的并行口上或使用扩展并行接口电路
来连接。
6.1 键盘及其与计算机接口
6.2 独立式按键接口设计
6.3 矩阵式键盘接口设计
6.4 LED显示器及接口设计
6.5 LCD显示器及接口设计
6.1 键盘、显示与计算机接口
键盘输入数据和命令,显示用于计算机的状态、命
令和计算结果。
一、键盘
单片机键盘有两种:
一种是全编码键盘,其键码全由硬件提供,但是这
种方式硬件结构复杂,成本高;
另一种是非编码键盘,这种键盘多采用矩阵方式,
利用软件识别键码及完成各种键功能处理。
单片机系统中多采用非编码键盘。
二、显示器
1,LED显示器
内部由发光二极管组成段显示。
数码管结构又分为共阳极型和共阴极型。
2,LCD液晶显示器
常用的 LCD可分为字符型和点阵型两大类。
字符型可用来显示字符和数字,
点阵型可用来显示汉字及图形。
6.2 独立式按键接口设计
一、独立式键盘接口电路
P1.0
P1.1
P1.7
+5v1,接口与数据
每个按键单独占有一根 I/O
接口引线 。
输入每根 I/O接口引线的信号
对应某个数据 。
2,键盘的可靠性
消除抖动电路
& I/O
接
口
&
+5v
+5v
消除抖动电路
开关 单
片
机
抖动时间
< 10ms
开关动作时间
> 100ms
,1,
,0
” < 10ms
二,独立式按键接口程序设计
键盘处理程序任务
1)键输入
检查键盘是否有键被按下,消除按
键抖动。确定被按键的键号,获取键号。
硬件电路消除抖动或软件消除抖动。
2)键译码
键号为键盘位置码,根据键号查表
得出被按键的键值。键值:数字键 0~ 9、
字符键 0AH~ 0FH,功能键 10H~ 。
3)键处理
根据键值转移到不同程序段。 若键
值属于数字、字符键,则调用显示数字
和字符的子程序。若键值属于功能键,
则进行多分支转移,执行各个功能程序
段。
延时等待 10ms
仍有按键信号?
Y
有按键信号? N
Y
N
键盘处理
按键释放? N
Y
三,单键管理程序
KEY,SETB P1.0
JB P1.0,KEY ; 有键按下 P1.0=0
KEY1,ACALL DELAY ; 延时, 防止抖动
SETB P1.0
JB P1.0,KEY1 ; 键是否释放
JNB P1.0,KEY1 ; 消除了连击功能
JB P1.0,KEY1 ;连击功能
ACALL PROGRAM ;
AJMP KEY
6.3 矩阵式键盘
0 1
+5vP1.0 P
1.1
P1.4
P1.5
键盘
I/O接口
由多条 I/O接口引线组成矩
阵式键盘 。
1,扫描法
列线输出,行线输入。
列线逐行输出 0,某行有按键,行线输入有 0,若
无按键,行线输入全部为 1。
2,反转法
行列线交换输入、输出,两步获取按键键号。
3,中断扫描方式
有按键按下时发出中断请求信号,提高 CPU的效
率。
一,键的输入方法
二,按键处理
程序:
延时消抖
键扫描求键号
延时等待
键译码求键值
修改显示缓冲区 跳转各功能程序
有按键输入?
确有按键?
按键释放?
是数字键?
三,中断扫描方式
图 7-5 中断式键盘电路
6.4 LED显示器及接口设计
一,LED显示器结构和字段码关系
由发光二极管组成,不同的发光段亮,可组成不
同字型,电流太大,耗电量大,电流太小,发光度不
够,一般各管电流在 10mA较合适。
1,LED显示器结构
(Light-Emitting Diode)
共阳极 共阴极 外形图
2,7段 LED字型码(段码)
显示
字形
h a b c d e f g 共阳极段
选码
共阴极段
选码
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
“灭”
1 1 0 0 0 0 0 0
1 1 1 1 1 0 0 1
1 0 1 0 0 1 0 0
1 0 1 1 0 0 0 0
1 0 0 1 1 0 1 0
1 0 0 1 0 0 1 0
1 0 0 0 0 0 1 0
1 1 1 1 1 0 0 0
1 0 0 0 0 0 0 0
1 0 0 1 0 0 0 0
1 0 0 0 1 0 0 0
1 0 0 0 0 0 1 1
1 1 0 0 0 1 1 0
1 0 1 0 0 0 0 1
1 0 0 0 0 1 1 0
1 0 0 0 1 1 1 0
1 1 1 1 1 1 1 1
C0H
F9H
A4H
B0H
99H
92H
82H
F8H
80H
90H
88H
83H
C6H
A1H
86H
8EH
FFH
3FH
06H
5BH
4FH
06H
6DH
7DH
07H
7FH
6FH
77H
7CH
39H
5EH
79H
71H
00H
二,LED 显示器接口
LED显示器用于显示工业控
制参数、过程状态。
1,LED数码管
共阴极 LED和共阳极 LED
当 LED字段引线与数据线连
接,每个显示字形对应一个字形
码。
COMP1.0~ 1.7
MCS-51
a
f b
g
e c
d h
a
b
h
a b h
COM
LED 的字形码 ( 字段码 )
显示字符 共阴极 共阳极
0 3F H C 0H
1 06H F 9 H
8, FFH 00H
‘灭’ 00 FFH
F 71H 84H
U 3E H C 1H
P, F 3 H 02H
D7 D6 D5 D4 D3 D2 D1 D0
h g f e d c b a
显示程序任务:
1)设置显示缓冲区, 存放待
显示数据 。
2)显示译码:程序存储器中
建立字形码常数表, 查表得出对
应数据的字形码 。
3)输出显示:输出字形码到
显示端口 。
例,MOV DPTR,#WTAB ; 指向字形码表首地址
MOV A,@R0 ; 取显示缓冲区中数据
MOVC A,@A+DPTR ; 查表显示译码
MOV P1,A ; 输出显示
…
WTAB,DB 3FH,06H,5BH ; 字形码表
…
COMP1.0~ 1.7
MCS-51
a
f b
g
e c
d h
a
b
h
2,LED接口电路
显示多位数据的两种电路:
1)静态显示
多位 LED分别用一组 8位字段口,各位 LED公共端接地,
分别输出显示不同字形。
a b h
COM
a
f b
ge c
d h
a b h
COM
a b h
COM
显示多位数据的两种电路:
1)动态显示
COM
h
COM
D7
…
D1D
0
D0
D1
D2
h bbh
COM
a
f b
g
e c
d h
a ab a
对应字位线,D0 D1 D2 D3 D4 D5 显示缓冲区
地址 内容
7A H
7B H
7C H
7D H
7E H
7FH
每个 LED需要一个 8位并行口
多位 LED共用一个 8位字段
口,各位 LED公共端用字位口
控制,扫描输出显示不同字形。
显示缓冲区与多位 LED对应
关系:
显示程序:
DIS,MOV R0,#7AH ; 指向显示缓冲区起始单元
MOV R3,#01H ; 字位码初值 → R3
MOV A,R3 ; 取字位码
DLP,MOV DPTR,#PAAR; 指向字位口 (PA口 )
MOVX @DPTR,A ; 输出字位码,显示其中 1位
MOV A,@R0 ; 取一个显示数据
ADD A,#0CH ; 查表偏移量
MOVC A,@A+PC ; 取出字形码
INC DPTR ; 指向字段口 (PB口 )
MOVX @DPTR,A ; 输出字形码
ACALL DLY1MS ; 延时 1ms
INC R0 ; 指向显缓区下一单元
MOV A,R3 ; 修改字位码
RL A ; 显示下一位
MOV R3,A
JNB ACC.6,DLP ; 未显示到最右边 LED,继续显示
RET ; 全部扫描一遍,结束
DTAB,DB 0C0H,0F9H,0A4H ; 字形表
DB 0B0H,99H,
DLY1MS … ; 延时 1ms子程序
( 3)多位静态显示方式及其接口电路
多位静态显示电路
( 4)多位动态显示方式及其接口电路
6.5 LCD显示器及接口设计
一,LCD的原理与分类
1,LCD的原理
LCD是一种被动显示器,本身不发光利用电场效
应 ——液晶的扭曲向列效应
具有功耗低,显示信息大,寿命长和抗干扰能力
强等优点
2,LCD的分类
显示类型:笔段型,字符型点、阵图形型
采光分类:自然采光、背光源采光
驱动分类:静态驱动、动态驱动、双频驱动法
二,LCD液晶显示的接口技术
三、单片机与字符型 LCD显示模块的连接方法
直接访问和间接访问两种
1,直接访问方式:把字符型液晶显示模块作为存储
器或 I/ O接口设备直接连到单片机总线上。
2,间接控制方式:把字符型液晶显示模块作为终端
设备连接到单片机的并行口上或使用扩展并行接口电路
来连接。