您好,欢迎来到易妖游戏网。
搜索
您的当前位置:首页8279使用指南

8279使用指南

来源:易妖游戏网
键盘显示接口芯片8279使用指南—长沙学院电子设计小组

键盘显示接口芯片8279使用指南

8279是Intel公司设计生产的通用可编程键盘/显示器接口芯片,可代替微处理器完成键盘和显示器的控制,不仅可以大大节省CPU对键盘/显示器的操作时间,从而减轻CPU的负担,而且显示稳定,程序简单,不会出现误动作。

8279具有如下主要特征:能同时执行键盘和显示器操作;扫描式键盘工作方式;有8个键盘FIFO(先进先出)存储器;去抖动的二键锁定或N键巡回功能;两个8位或16位的数字显示器;可左/右输入的16字节显示用RAM;键盘输入可产生中断信号;具有扫描式传感器工作方式;用选通方式送入输入信号;单个16字符显示器;可编程扫描定时;工作方式可由CPU编程等。

一 8279的内部结构及引脚

8279包括键盘输入和显示输出两部分。键盘部分提供扫描工作方式,可以接键行列矩阵键盘,也可以与传感器阵列相连,能够自动去抖动,识别键盘上闭合键的键号,并具有双键同时按下保护及N键同时按下保护功能。显示部分可为LED或LCD七段显示器,提供了按扫描方式工作的接口,为显示器提供多路复用驱动信号,可显示8位和16位字符,属动态显示技术,省电、省元件,又可保证足够的显示时间,适合人眼观察和大脑记忆。

1、内部结构

图1为8279的内部结构图,各部件的作用简要说明如下:

RD WR CS A0 INT FIFO/传感器 RAM状态寄器 D0~D7 数据 缓冲器 I/O 控制 显 示 地 址 寄 存 器 显示 寄存器 RESET OUTA0~OUTA3 OUTB0~OUTB3 CLK 定时 与控制 BD16×8位 显示RAM 控制与定时 寄存器 8×8 FIFO 传感器RAM 键盘去抖 动及控制 扫描 计数器 CNTL/STB SHIFT RL0~RL7 回键 SL0~SL3 图1 8279的内部结构图

Rve.A | Page 1 of 10页

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

(1)I/O控制和数据缓冲器

AD0~AD7为地址/数据复用总线。双向三态数据缓冲器将内部总线和外部总线AD0~AD7连接,用于传送CPU和8279之间的命令、数据和状态。 (2)控制逻辑

定时控制含有一些计数器,其中有一个可编程的5位计数器,对外部输入时钟CLK进行分频,产生100kHz的内部定时信号。外部时钟输入信号的周期不小于500ns。

控制与定时寄存器用以存储键盘及显示器的工作方式,锁存操作命令,通过译码产生相应的控制信号,使8279的各个部件完成一定的控制功能。 (3)键输入控制

键输入控制部件完成对键盘的自动扫描,锁存RL0~RL7的键输入信息,搜索闭合键,去除键的抖动,并将键盘输入数据写入内部先进先出(FIFO)存储器RAM。 (4)扫描计数器

扫描计数器有两种输出方式。一种为外部译码方式(也称编码方式),计数器以二进制方式计数,4位计数状态从扫描线SL0~SL3输出,经外部译码器译码出16位扫描线;另一种为内部译码方式(也称译码方式),即扫描计数器的低二位经内部译码器后从SL0~SL3输出。

(5)FIFO RAM和显示缓冲RAM

8279具有8个先进先出(FIFO)的键输入缓冲RAM单元,并提供16字节的显示缓冲RAM。8279将段码写入显示缓冲RAM,自动对显示器扫描,将其内部显示缓冲RAM中的数据在显示器上显示出来。

2、引脚功能

图2为8279的引脚图,各部件的作用简要说明如下:

(1)CS为片选信号。当为低电平时,CPU才选中8279,并由WR、RD信号控制读写。

12345671011121314151617181920RL2RL3CLKINTRL4RL5RL6RL7RESET/RD/WDAD0AD1AD2AD3AD4AD5AD6AD7VssVccRL1RL0CNTL/STBSHIFTSL3SL2SL1SL0OUTB0OUTB1OUTB2OUTB3OUTA0OUTA1OUTA2OUTA3/BD/CSA04039383736353433323130292827262524232221AD0~AD7为地址/数据复用总线。CLK为外部时钟输入端,用于8279内部定时。

(2)A0用以区分信息的特性。当A0为1时,CPU写入8279的信息为命令,从8279读出的数据为8279的状态字;当A0为0时I/O信息都为数据。

(3)INT为中断请求输出线,高电平有效。当FIFO RAM缓冲器中有数据时,INT变高。向CPU请示中断。响应中断读取数据后,INT变低。若FIFO RAM中信息未读完仍有数据,

图2 8279的引脚图 INT重新变高。当CPU将缓冲器中的输入键数

的数据全部读取时,中断请求线下降为低电平。在传感器工作方式中,每当传感器信号变化时,INT就变为高电平。

Rve.A | Page 2 of 10页

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

(4)SHIFT、CNTL/STB为控制键输入线,一般可作为扩充键开关的控制信号。它们由内部拉高电阻拉成高电平,也可由外部控制按键拉成低电平。SHIFT为换档,CNTL为控制,STB为先通。

(5)RL0~RL7、SL0~SL3、OUTA0~OUTA3、OUTB0~OUTB3:RL0~RL7为反馈输入线,作为键盘输入线,由内部拉高电阻拉成高电平,也可由键盘上按键拉成低电平。SL0~SL3为扫描信号输出线,用于对键盘和显示器扫描。OUTA0~OUTA3,OUTB0~OUTB3分别为A组、B组显示器数据输出线,可分别作为两个半字节输出,也可作为8位段数据输出口,此时OUTB0为最低位,OUTA3为最高位。

(6)BD为消隐输出线,低电平有效,当显示器切换时或使用消隐命令时,将显示消隐。

(7)RESET为复位输入线高电平有效。复位后工作于如下方式:左端输入16个8位字符显示;编码的扫描为两键连锁,时钟前置分频器被置为31。

二 8279的操作命令字

CPU通过将命令字写入8279进行初始化来选择其工作方式。8279的各操作命令字简述如下:

1 键盘/显示器方式设置命令字

D7 0 D6 0 D5 0 D4 D D3 D D2 K D1 K D0 K

D4、D3两位用来设定显示方式,D2,D1,D0为键盘工作方式设定控制位,高三位在D7、D6、D5为特征位000。

(1)显示器工作方式

D4、D3两位用来设定显示方式,其定义如下:

D4 D3 显示器方式

0 0 8个字符显示-左边输入 0 1 16个字符显示-左边输入

1 0 8个字符显示-右边输入

1 1 16个字符显示-右边输入

8279最多可用来控制16位LED显示器,显示器的每一位对应一个8位的显示缓冲RAM单元。CPU将显示数据写入缓冲器时有左边输入和右边输入两种方式。

①左边输入

左边输入是比较简单的方式,地址为0~15的显示缓冲RAM单元分别对应于显示器的0(左)位~15(右)位。CPU依次从0地址或某一地址开始将段数据写入显示缓冲RAM。

Rve.A | Page 3 of 10页

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

当16个显示缓冲RAM都写满时(从0地址开始写,写16次),第17次写,再从0地址开始写入,写入过程如下:

RAM地址 第1次写入 第2次写入 0 Data1 Data1 1 Data2 2 … … … … … 13 15 16 … … 第16次写入 第17次写入 … … … Data1 Data17 Data2 Data2 Data3 Data3 … … … Data14 Data14 Data15 Data15 Data16 Data16 (从0地址开始输入)

②右边输入

右边输入方式是移位方式,输入数据总是写入右边的显示缓冲RAM,数据写入显示缓冲RAM后,原来缓冲器的内容左边移一个字节,原最左边显示缓冲RAM的内容被移出。写入过程如下。

1 2 第1写入 第2写入 第3次写入 14 15 16 … … … Data1 ←RAM地址 2 3 3 4 … … 0 1 15 0 1 Data1 Data2 0 1 2 Data1 Data2 Data3 ←RAM地址 ←RAM地址 … … 第16次写入 第17次写入 … … … 13 15 16 ←RAM地址 ←RAM地址 Data1 Data2 Data2 Data3 … … Data14 Data15 Data16 1 2 14 15 0 Data15 Data16 Data17

在右边输入方式中,显示器的各位和显示缓冲RAM的地址并不是对应的。若选用内部译码的扫描方式,字符显示器只能接4位。 (2)键盘工作方式

D2、D1、D0为键盘工作方式设定控制位,如表1所示。 ① 编码工作方式

内部计数器作二进制计数,四位二进制计数器的状态从扫描线SL0~SL3输出,最多可为键盘/显示器提供16根扫描线(16选1)。

② 译码工作方式

内部扫描计数器的低2位被译码后,再由SL0~SL3输出,即此时SL0~SL3已经是4选1的译码信号了。显然,当设定译码方式时,扫描位数最多为4位。

Rve.A | Page 4 of 10页

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

③ 双键锁定

当键盘中同时有两个或两个以上的键被按下时,任何一个键的编码信息均不能进入FIFO RAM中。仅当剩下一键保持闭合时,该键的编码信息方能进入FIFO RAM,主这方式可以避免误操作信号进入计算机。

④ N键轮回

当多键一起按下时,可依照键盘被按下的顺序,依次将键盘数据送入FIFO RAM中。

表1 键盘工作方式设定控制

D2 0 0 0 0 1 1 1 1

⑤选通输入

RL0~RL7作为选通输入口,CNTL/STB作为选通信号输入端,这是只选用显示器而没有键盘工作方式。

⑤ 扫描传感器矩阵工作方式

指片内的去抖动逻辑被禁止掉,传感器的开关直接输入FIFO RAM中,其优点是CPU能知道传感器闭合多久,何时释放。

⑥ 传感器扫描工作方式

每当检测到传感器信号(开或闭)改变时,中断线上的IRQ就变为高电平。在编码扫描时,可对8×8矩阵开关状态进行扫描;在内部译码扫描时,可对4×8矩阵开关的状态进行扫描。

D1 0 0 1 1 0 0 1 1 D0 0 1 0 1 0 1 0 1 键盘工作方式 编码扫描键盘,双键锁定 译码扫描键盘,双键锁定 编码扫描键盘,N键轮回 译码扫描键盘,N键轮回 编码扫描传感器矩阵 译码扫描传感器矩阵 选通输入,编码扫描显示器方式 选通输入,译码扫描显示器方式 2 时钟编码命令字

时钟编码命令字格式如下:

D7 0

Rve.A | Page 5 of 10页

D6 0 D5 1 D4 P D3 P D2 P D1 P D0 P

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

高3位D7、D6、D5=001为时钟编码命令字的特征位。D4~D0为分频系数,可在2~31次分频系数中进行选择。8279的内部定时信号由外部的输入时钟经过分频后产生,分频系数由时钟编码命令字确定,进入8279的时钟频率进行N=P PPPP次分频后,可获得8279内部所需的(100KHz)的时钟。

内部时钟频率的高低控制着扫描时间和键盘去抖动时间的长短,在8279内部时钟为100KHz时,则扫描时间为5.1ms,去抖动时间为10.3ms。

3 读FIFO/传感器RAM命令字

D7 0 D6 1 D5 0 D4 AI D3 × D2 A D1 A D0 A

D2~D0(AAA)为FIFO/传感器RAM起始地址;D4(AI)为多次读出时的自动增址控制位,“1”自动增址,“0”为地址不自动增加,高3位010为特征位。

在键扫描方式中,AI、AAA均被忽略,CPU读键输入数据时,总是按先进先出的规律读出,每次读出后地址自动加1;AI=0时,CPU仅能读出一个单元的内容。

4 读显示缓冲RAM命令字

D7 0 D6 1 D5 1 D4 AI D3 A D2 A D1 A D0 A

4位二进制代码AAAA用于寻址显示缓冲RAM的一个缓冲单元。8279内部有16×8位显示RAM,CPU在读显示数据之前必须先送出读缓冲RAM的命令字。AI为地址自动增量标志,AI=1,则CPU每次读出后,地址自动加1。D7D6D5=011是该命令字的特征位。

5 写显示缓冲RAM命令字

D7 1 D6 0 D5 0 D4 AI D3 A D2 A D1 A D0 A AAAA可用来寻址显示缓冲RAM的16个存储单元。AI为自动增址控制位,若AI=1,则CPU除在第一次定时须给出地址外,以后每次定入,地址自动加1,直至所有显示缓冲RAM全部写毕。高3位100为该命令字的特征位。 该命令给出了显示缓冲RAM地址信息,当CPU执行写显示缓冲RAM时,首先用该命令字给出要定入的显示缓冲RAM地址— 4位二进制代码。

6 显示屏蔽消隐命令字

D7 1 D6 0 D5 1 D4 × D3 IWA D2 IWB D1 BLA D0 BLB BLA、BLB分是A组和B组显示输出是否被消隐的控制位,BLA和BLB=1时对应组的显示输出被消隐;BL=0不消隐。要消隐两组显示输出,必须使D0、D1同时为1,BL=0时则恢复显示。

Rve.A | Page 6 of 10页

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

IWA和IWB分别用以屏蔽(控制禁止写入)A组和B组缓冲RAM,“1”禁止写入。在双4位显示使用时,即OUTA0~3地作为2个半字节输出时,可改变显示缓冲RAM中的低半字节而不影响高半字节的状态(D3=1),反之,D2=1时可改变高半字节而不影响低半字节。高3位101为该命令字的特征位。

7 清除命令字

D7 1 该命令字用来清除FIFO RAM和显示缓冲RAM。其中D4D3D2(CD)3位用来设定清除显示缓冲RAM的方式,其定义如下:

D4 1 1 1 0 D3 0 1 1 × D2 × 0 1 × 清除显示RAM的方式 将显示RAM全部清0 将显示RAM清成20H(A组=0010,B组=000) 将显示RAM全部置1 不清除(CA=0);若CA=0,则D3、D2仍有效 D6 1 D5 0 D4 CD D3 CD D2 CD D1 CF D0 CA

CF(D1)位用来设定FIFO RAM,当D1=1时,执行清除命令后,FIFO RAM被置空,使中断请求线IRQ复位为低电平,同时传感器RAM的读出地址也被置0。

CA(D0)是总清的特征位,它兼有CD和CF的联合作用。当CA=1,对显示RAM的清除方式由D3和D2的编码确定。

清除显示缓冲RAM大约需要160µs的时间,在此期间,FIFO状态字的最高位为1,表示写显示无效,CPU不能向显示缓冲器RAM写入数据。

三 8279的状态字

8279的状态字节用于键输入和选通方式中,指出FIFO RAM中的字符个数是否出错,状态字的格式如下:

D7 DU D6 S/E D5 O D4 U D3 F D2 N D1 N D0 N D2~D0:表示FIFO RAM中数据个数(0~8)。

D3:在F=1时,表示FIFO RAM已满(存有8个键入数据)。

D4:在FIFO RAM已空时,若CPU对FIFO RAM进行读操作,则置U标志为“1”。 D5:当FIFO已满,又输入一个字符发生溢出时置O标志位为“1”。 D6:S/E用于传感器矩阵输入方式,几个传感器同时闭合时置“1”。 D7:在清除命令执行期间该位为“1”,D7为1时对显示RAM的写操作无效。

Rve.A | Page 7 of 10页

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

在键扫描方式中,键输入数据格式如下: D7 CNTL D6 SHIFT D5 SCAN D4 SCAN D3 SCAN D2 D1 D0 RETURN RETURN RETURN SL0~SL3编码值 RL0~RL3编码

D2~D0:指出输入键输所在列号,键盘列扫描RL0~RL7编码数据。“000”-RL0;“001”-RL1;…;“111”-RL7。

D5~D3:指出输入键所在的行号,键盘行扫描SL0~SL3计数值的编码数据。“000”-SL0;“001”-SL1;…;“111”-SL7。 D6:控制键SHIFT的状态。 D7:控制键CNTL的状态。

控制键CNTL、SHIFT为单独的开关键。CNTL与其它键边用作特殊命令键,SHIFT可作为上下挡控制键。SHIFT键与键盘配合,可使键盘具有上、下键功能,这样键盘可扩充到128个键。CNTL线可接一键用作组合控制键,这样,最多可扩充到256键。 在传感器扫描方式或选通输入方式中,输入数据即为RL0~RL7的输入状态。

D7 RL7

D6 RL6 D5 RL5 D4 RL4 D3 RL3 D2 RL2 D1 RL1 D0 RL0 Rve.A | Page 8 of 10页

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

附:8279显示测试汇编程序

STATE_8279 EQU 0301H ;命令口地址 DATA_8279 EQU 0300H ;数据口地址 TIME_STATE_8279 EQU 32H ;20分频

KEY_DISP_STATE EQU 00H ;显示方式命令字,8字符左边输入,编码扫描键盘,双键锁定 CLR_STATE EQU 0D1H ;清除命令字 READ_FIFO_RAM EQU 40H ;

ORG 0000H MOV 7FH , #0 MOV 7FH , #0 MOV 7EH , #1 MOV 7DH , #2 MOV 7CH , #3 MOV 7BH , #4 MOV 7AH , #5 MOV 79H , #6 MOV 78H , #7 CALL INIT8279

LOOP: CALL DISP CALL SCAN_KEY SJMP LOOP

;##################初始化程序################# INIT8279: MOV DPTR, #STATE_8279 MOV A, #CLR_STATE MOVX @DPTR,A WAIT: MOVX A, @DPTR JB ACC.7,WAIT

MOV A, #TIME_STATE_8279 MOVX @DPTR,A

MOV A, #KEY_DISP_STATE MOVX @DPTR,A RET

;##################按键扫描程序################# SCAN_KEY: MOV DPTR, #STATE_8279 MOVX A, @DPTR

ANL A, #07H ;屏蔽D7---D3位 JNZ KEY_1 ;判断是否有键按下 RET

;----------------------------------------------- KEY_1: MOV DPTR ,#STATE_8279

MOV A, #READ_FIFO_RAM ;读FIFO RAM命令 MOVX @DPTR,A

Rve.A | Page 9 of 10页

键盘显示接口芯片8279使用指南—长沙学院电子设计小组

MOV DPTR, #DATA_8279 ;读键 MOVX A, @DPTR

ANL A, #0FH ;屏蔽高四位,SHFIT AND MOV 7FH , A ;将键值送入显示缓冲单元 RET

;##################显示子程序################# DISP: MOV R1, #7FH MOV R7, #08H

MOV DPTR, #STATE_8279 MOV A, #90H MOVX @DPTR,A DISP_LOOP:MOV A, @R1 MOV DPTR, #LEDSEG MOVC A, @A+DPTR MOV DPTR, #DATA_8279 MOVX @DPTR,A DEC R1

DJNZ R7, DISP_LOOP RET

LEDSEG: DB 03FH,06H,5BH,4FH,66H,6DH,7DH,07H,07FH,6FH,77H,7CH,39H,5EH,79H,40H ;0 1 2 3 4 5 6 7 8 9 A B C D F - END

Rve.A | Page 10 of 10页

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- vipyiyao.com 版权所有 湘ICP备2023022495号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务