典型的外围扩展技术.ppt
文本预览下载声明
第六章单片机的典型外围扩展技术;第一节键盘接口;键盘
单片机系统中完成控制参数输入及修改的基本输入设备,是人工干预系统的重要手段。;编码键盘: 采用专用的编码/译码器件,被按下的键由该器件译码输出相应的键码/键值。
特点:增加了硬件开销,编码因选用器件而异,编码固定,但编程简单。适用于规模大的键盘。;按键组连接方式:独立连接键盘与矩阵连接键盘;抖动时间
<20ms;&;独立连接式键盘例1:;独立连接式键盘例2;AT89C51;;矩阵式键盘名词注释;键扫描子程序框图;KEY1:LCALL KS1 ;查有无键闭合
JNZ LK1 ;有键闭合转消颤
LJMP LK8 ;无键闭合则退出
LK1:LCALL DL6ms ;消颤12ms
LCALL DL6ms
LCALL KS1 ;再查有无键闭合
JNZ LK2 ;的确有,转处理
LJMP LK8 ;确实无,退出去;KEY1:LCALL KS1 ;查有无键闭合
JNZ LK1 ;有键闭合转消颤
LJMP LK8 ;无键闭合则退出
LK1:LCALL DL6ms ;消颤12ms
LCALL DL6ms
LCALL KS1 ;再查有无键闭合
JNZ LK2 ;的确有,转处理
LJMP LK8 ;确实无,退出去;KEY1:LCALL KS1 ;查有无键闭合
JNZ LK1 ;有键闭合转消颤
LJMP LK8 ;无键闭合则退出
LK1:LCALL DL6ms ;消颤12ms
LCALL DL6ms
LCALL KS1 ;再查有无键闭合
JNZ LK2 ;的确有,转处理
LJMP LK8 ;确实无,退出去
LK2:MOV R2,#0FEH;(R2)←行扫描初值
MOV R4,#00H ;(R4)←行号初值
LK3:MOV DPTR #7F01H;指向8155 A口
MOV A, R2 ;取行扫描值
MOVX,@DPTR,A ;送到行线上去
INC DPTR
INC DPTR ;指向8155 C口
MOVX A,@DPTR ;读列线的电平
ANL A,#0FH ;保留C口低4位
CJNE A,#0FH,LK4;列值≠全“1”
表明此次送0的行有键按下,转LK4处理, 若=全1,表明此次送0的行无键按下。;KEY1:LCALL KS1 ;查有无键闭合
JNZ LK1 ;有键闭合转消颤
LJMP LK8 ;无键闭合则退出
LK1:LCALL DL6ms ;消颤12ms
LCALL DL6ms
LCALL KS1 ;再查有无键闭合
JNZ LK2 ;的确有,转处理
LJMP LK8 ;确实无,退出去
LK2:MOV R2,#0FEH;(R2)←行扫描初值
MOV R4,#00H ;(R4)←行号初值
LK3:MOV DPTR #7F01H;指向8155 A口
MOV A, R2 ;取行扫描值
MOVX,@DPTR,A ;送到行线上去
INC DPTR
INC DPTR ;指向8155 C口
MOVX A,@DPTR ;读列线的电平
ANL A,#0FH ;保留C口低4位
CJNE A,#0FH,LK4;列值≠全“1”
表明此次送0的行有键按下,转LK4处理, 若=全1,表明此次送0的行无键按下。;KEY1:LCALL KS1 ;查有无键闭合
JNZ LK1 ;有键闭合转消颤
LJMP LK8 ;无键闭合则退出
LK1:LCALL DL6ms ;消颤12ms
LCALL DL6ms
LCALL KS1 ;再查有无键闭合
JNZ LK2 ;的确有,转处理
LJMP LK8 ;确实无,退出去
LK2: MOV R2,#0FEH;(R2)←行扫描初值
MOV R4,#00H ;(R4)←行号初值
LK3:MOV DPTR #7F01H;指向8155 A口
MOV A, R2 ;取行扫描值
MOVX,@DPTR,A ;送到行线上去
INC DPTR
INC DPTR
显示全部