
Intel8279是通用可编程键盘和显示接口设备. 单个设备可以完成两个功能: 键盘输入和显示控制. 键盘部分提供扫描模式,可以将其连接到64键矩阵键盘,该键盘可以自动消除键抖动,识别键码并同时保护双键或n键. 显示部分以扫描模式工作,为LED数字管提供多路复用的信号,最多可显示16个字符或数字. 8279 FIFO /传感器RAM显示地址寄存器8279共享模块数据缓冲区是双向缓冲区,用于在CPU和8279之间传输命令或数据. 输入/输出控制器根据输入输出控制器控制数据缓冲区的输出或输入. CS(片选),WR(写),RD(读)和A0信号状态. 控制线A0用于区分信息状态. 当A0 = 1时,如CPU的写操作: 输入指令;如CPU读取操作: 输出FIFO状态字. 当A0 = 0时,如果CPU写操作: 输入显示数据;如果CPU读操作,它可以输出键值或在显示RAM中显示数据; 8279共享的模块控制和定时寄存器控制和定时寄存器用于注册键盘和显示工作模式以及其他由CPU编程的操作模式. 定时控制包括分频功能. 可以通过软件在2到31之间对分频值进行编程,以对外部时钟CLK进行分频以获得内部所需的100KHZ时钟信号,从而提供键盘逐行扫描频率和显示位扫描时间.

扫描计数器扫描器有两种工作模式: 编码和解码. 当扫描计数器工作时,从扫描线SL0-SL3输出计数值,以提供用于键盘和显示器的扫描信号. 常用的是代码扫描方法. 8279 —键盘功能模块FIFO /传感器RAM FIFO /传感器RAM是双功能8字节RAM,用于存储密钥数据. 每当按下一个键时,收集的键值便会按顺序写入FIFO /传感器RAM单元,并且每次读取时,总是按输入顺序读出第一个输入数据. FIFO状态寄存器FIFO状态寄存器用于记录FIFO /传感器RAM的工作状态. 它表示的状态信息包括: RAM已满还是空;其中存储了多少个字符;是否存在操作错误等,并根据检测情况输出中断请求信号. 8279 —键盘功能模块反馈缓冲区,键盘去抖动和编码控制来自8条反馈线RL0-RL7的反馈信号,这些反馈线由反馈缓冲区缓冲并存储在FIFO RAM中. 在键盘矩阵工作模式下,反馈线连续搜索闭合键. 当按键闭合时,将设置防抖电路,并在延迟100ms之后检查按键是否连续闭合. 如果关闭,则键的地址以及SHIFT和CTRL状态将形成键值,并将其发送到FIFO RAM. 8279 — FIFO存储器中键盘功能模块的键盘数据格式如下: D7 D6 D5 D4 D3 D2 D1 D0 CTRL / STB SHIFT扫描反馈CTRL和SHIFT(D7和D6)状态是由两个独立的输入信号线CTRL其他开关确定/ STB和SHIFT的状态,并且三个位D2,D1和D0来自列计数器. 它们是根据反馈信号确定的按钮的列代码.

8279-键盘功能模块反馈信号(RL7-RL0)与反馈信号代码(D2-D0)之间的对应关系如下: RL7 RL0D2 D011111110 111 8279-显示功能模块Display RAM Display RAM用于存储显示数据. 该区域有16个字节,并存储与16个数字显像管相对应的显示信息. 显示地址寄存器显示地址寄存器用于注册要由CPU读取/写入的显示RAM的地址. 它可以通过命令设置,也可以设置为在每次读取或写入后自动递增地址. 8279 8279 8279采用40引脚封装. 每个引脚的定义可以分为4组: CPU连接线,数字管连接线,键盘连接线和公共扫描信号线. 1. CPU连接线: RESET(复位): 输入,高电平有效. 8279 2.键盘连接线: RL0-RL7(反馈线): 输入. 它们是键盘矩阵的列信号输入线. SHIFT(移位信号): 输入,高有效. 可以用作键盘的向上和向下功能键. CTRL / STB(控制/闪光灯): 输入. 可以用作控制功能键; 8279 3.数字管连接线: BD(空白显示): 输出,低有效.

当数字开关显示或使用display blanking命令时,将显示空白显示. 消隐信号的功能是在显示数据改变时暂时关闭显示器,然后在数据改变时开启显示器,以消除显示数据改变过程中的乱码显示. 4.共享扫描信号线: SL0—SL3(扫描线): 输出. 提供用于键盘和显示器的扫描信号. 1111编码信号的循序渐进变化,此信号由4-16生成,以生成16个数字电子管位选择信号,对应于某个数字电子管位选择信号的代码,OUT A3 A0和OUT B3-B0输出显示管显示段代码依次循环执行,可以显示16位数字或字符. LS0信号通过3-8生成键盘行扫描信号. 8279通过RL0 RL7线连续收集键盘矩阵列信号. 当按下键时,8279将SL2 RL7列反馈代码值组合到键值中,并将其存储在FIFO RAM中. 并向CPU发送中断请求信号. CPU响应中断后,它将进入中断服务处理程序并读取存储在8279 FIFO RAM中的键值. 命令功能位: D7D6D5 = 000命令格式: 000DDKKK DD两位数字用于设置显示模式: 00 8个字符显示-左输入01 16个字符显示-左输入10 8个字符显示--右输入11 16个字符显示----右输入所谓的左输入是指在显示时,显示的字符从左到右一一排列.

右输入表示显示字符从右移到左. 相应的SL3 SL0代码的最小位是显示的最高位. 命令和状态字-键盘/显示模式设置命令命令和状态字-键盘/显示模式设置命令使用三位数字KKK设置键盘工作模式: 000码扫描键盘-双键锁定001解码scan键盘----双键锁定010代码扫描键盘---- N键转世011解码扫描键盘---- N键转世100代码扫描传感器矩阵101解码扫描传感器矩阵110选通输入,代码显示扫描111频闪输入,解码显示扫描命令和状态字-键盘/显示模式设置命令双键锁定和N键循环是两种不同的多键同时按下保护模式. 两键锁定可保护同时按下两个键. 在反跳期间,如果同时按下两个键,则只有一个键会弹起,而另一个键在被识别之前处于按下位置. N键循环为同时按下N键提供了保护. 当同时按下多个键时,键盘扫描可以根据找到它们的顺序将它们的状态发送到FIFO RAM. 命令和状态字时钟编程命令命令功能位: D7D6D5 = 001命令格式: 001PPPPP来自CLK的外部时钟除以PPPPP(2-31). 8279内部时钟频率等于外部时钟频率除以分频数.
命令和状态字-读取FIFO /传感器RAM命令的命令功能位: D7D6D5 = 010命令格式: 010 AI AAA该命令字仅在传感器矩阵模式下使用,设置要在读取传感器数据RAM之前读取的传感器地址,AI是自动递增功能位. 如果AI = 1,则每次读取传感器RAM时,地址将自动加1,以便地址指针指向序列中的下一个存储单元. 这样,将从指针指向的地址中读取下一个读数,而不必复位读取的FIFO /传感器RAM命令. 在键盘矩阵工作模式下,由于键值的读取操作严格遵循先进先出的顺序,因此不需要此命令. 命令和状态字读取display RAM命令命令功能位: D7D6D5 = 011命令格式: 011 AI AAAA在CPU读取显示RAM之前,设置要读取的显示RAM的地址. AAAA是显示地址的二进制代码. 如果自动递增功能位AI = 1,则每次读取后地址都会自动递增1,以便地址指针指向下一个地址单元. 这样,将从指针指向的地址中读取下一个读数,而无需复位读取的显示RAM命令. 命令和状态字-写显示RAM命令命令功能位: D7D6D5 = 100. 命令格式: 100 AI AAAA在CPU写入显示RAM之前,设置要写入的显示RAM的地址. 四位二进制代码AAAA用于寻址显示RAM中的存储单元.
如果自动递增功能位AI = 1,则每次写入后地址将自动加1,因此地址指针指向下一个地址单元. 这样,下一个写数据将从指针指向的地址写入,而无需复位写显示RAM命令. 命令和状态字-显示RAM禁止写/空白命令. 命令功能位: D7D6D5 = 101. 命令格式: 1 IWaIWb BLa BLb IWa和IWb用于屏蔽A组和B组的显示RAM的写入. BLa和BLb位是消隐功能位,消隐组A(B)显示输出. 如果BLa(b)= 1,则组A(B)的显示输出为空白. 如果BLa(b)= 0,则相应的组将恢复显示. 命令和状态字-清除命令命令功能位: D7D6D5 = 110. 命令格式: 1 CD2CD1 CD0 CF CA D4D3D2清除方法10X将所有显示的RAM清除为“ 0” 110将显示的RAM设置为20H(即A组= 0010 B组= 0000)111将所有显示的RAM设置为1 0XX不清除(如果CA = 1,则D3和D2仍然有效)该命令字用于清除FIFO RAM和显示RAM. CD0)用于设置清除显示RAM的方式. 其含义如下: 命令和状态字清除命令D1(CF)位用于清除FIFO存储器. 当D1 = 1时,执行清除命令后,将FIFO RAM清除并中断IRQ.
同时,传感器RAM的读取地址也被清除为0. D0(CA)位是总清除的特征位,它具有CD和CF的组合作用. 当CA = 1时,清除显示RAM的方式由D3D2(CD1 CD0)的代码确定. 清除显示RAM大约需要100uS. 在此期间,FIFO状态字的最高位Du = 1,指示显示无效. CPU无法将数据写入显示RAM. 命令和状态字-结束中断/错误模式设置命令命令功能位: D7D6D5 = 111. 命令格式: 1作为结束中断命令. 在传感器工作模式下,将E = 1设置为结束传感器RAM的中断请求. 作为特定错误模式的设置命令. 在键盘扫描N键循环模式下,如果设置E = 1,如果同时按下多个键,则FIFO状态字中的错误功能位S / E将被置位,并且将产生中断请求信号并进行写操作. 阻止了FIFO RAM. 只有在CF = 1的情况下执行清除命令后,才能复位错误标志S / E. 8279(FIFO状态字)8279状态寄存器的端口地址(也称为FIFO状态字)与控制命令(A0 = 1)相同. 它主要用于键盘和选通模式,以指示FIFO RAM中的字符数以及是否有错误. 发生时,字位置的含义如下: Du NNNDu: Du = 1表示无效F = 1表示FIFORAM已满. NNN: FIFO RAM中的字符数是8279(FIFO状态字)FIFO RAM的操作中可能会发生两个错误: 溢出和不足.
当FIFORAM已满时,如果尝试写入键盘数据,则会发生溢出错误,并且状态字位“ O”将置位. 清空FIFORAM后,如果CPU仍尝试读取,则会发生“不足”错误,并且状态字位“ U”将置位. 对于状态字的S / E位,在传感器工作模式下,如果S / E = 1,则表示传感器的最后一个信号进入传感器RAM. 当8279在特定错误模式下工作时,如果S / E = 1,则表示存在同时按下多个键的错误. 当显示RAM清除命令尚未完成时,将设置状态字的最高位Du. 在8279运行之前,需要使用键盘/显示模式设置命令,时钟编程命令和清除命令对其进行初始化.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/bofangqi/article-291040-1.html
充满了正能量呀
渔民们走
那我想问一下官网一共才卖了多少手机