《《用户交互接口》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《用户交互接口》PPT课件.ppt(63页珍藏版)》请在三一办公上搜索。
1、第七章 用户交互接口,7.1 键盘接口7.2 打印机接口7.3 显示器接口,本章学习目标,键盘和键盘接口工作原理 打印机接口工作原理 MC6845 CRT控制器 CGA的显示模式和逻辑结构、显示程序,7.1 键盘接口,键盘:是微型计算机系统中最基本的人机对话输入设备。键盘按键:有机械式、电容式、导电橡胶式、薄膜式等多种,但不管何种形式,其作用都是一个使电路接通与断开的开关。键盘是矩阵式结构,键盘的矩阵式结构,7.1,键盘的分类,1.编码键盘 键盘本身带有实现接口主要功能所必需的硬件电路。2.非编码键盘 键盘只简单地提供按键开关的行列矩阵。,键盘接口必须具有去抖动、防串键、按键识别和键码产生4个
2、基本功能。(1)去抖动 每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续时间与键的质量相关,一般为520ms。,键盘接口的功能,所谓去抖动是指在识别被按键和释放键时必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。去抖动问题可通过软件延时或硬件电路解决。,7.1,(2)防串键 防串键是为了解决多个键同时按下或者前一按键没有释放又有新键按下时产生的问题。双键锁定:当检测到有两个或两个以上的键被按下时,只把最后释放的键当作有效键,并产生相应键码。N键轮回:当检测到有多个键被按下时,能根据发现它们的顺序依次产生相应键的键码。,键盘接口的功能,7.1,(3)按键识别 行列扫
3、描法:该方法的基本思想是,由程序对键盘进行逐行扫描,通过检测到的列输出的列输出状态来确定闭合键。,键盘接口的功能,先列步进信号在第一列,后发行步电信号扫描一遍,查按键;没有时,列步进一次,然后行步进信号再扫描一遍,行反转法:该方法的基本思想是通过行列颠倒两次扫描来识别闭合键。,先行全1,后列全0,读行值 先列全1,后行全0,读列值,7.1,(4)键码产生 一般在内存区中键立一个键盘编码表,通过查表获得按键的键码。,键盘接口的功能,7.1,标准键盘及其接口 1.标准键盘电路,工作原理:行列扫描法,CNT64=0:行扫描 CNT32 CNT16 CNT08 CNT04:00001111循环计数 7
4、4159行译码器:送脉冲步进信号16根行线上,CNT64=1CNT32=0:列扫描 CNT04 CNT08 CNT16:000111循环计数 74156列译码器:送脉冲步进信号8根列线上,工作原理:行列扫描法,键按下:T1=1 8048停止扫描,行列当前计数值扫描码,工作原理:行列扫描法,键按下:T1=1 8048停止扫描,行列当前计数值扫描码P21:CLOCK OUT 同步用键盘脉冲 P22:DATA OUT 按键串行扫描码 P10:监视时钟线状态 P11:监视数据线状态,2.键盘接口电路,(1)串行接收键盘送来的扫描码,完成串并转换后保存。(2)收妥一个键盘扫描码后,立即产生一个中断请求信
5、号。(3)保存的扫描码可供CPU读取,并通过软件进行相应转换 处理。(4)接收CPU的命令,输出到键盘,并接收键盘回送的响应信号。,接口功能:,工作原理,(1)组成器件,移位REG:74LS322 串行扫描码并行扫描码,工作原理,(1)组成器件,时钟FF:74LS157 键盘时钟DIN1 移位时钟CLOCK,同步、适时、反向,PCLK,工作原理,(1)组成器件,中断FF:74S74串行扫描码转换成并行扫描码时产生中断请求IRQ1,工作原理,(1)组成器件,8255:PA7PA0,PB2,PB6,PB7 把并行扫描码送到CPU,(2)工作过程,清键盘,PB7=1,封锁时钟,PB6=0,&,OC门
6、输出 禁止键盘时钟,(2)工作过程,允许键盘,(2)工作过程,PB7=0,解除LS322、74S74 清零端,PB6=0 键盘输入时钟经PCLK同步、延时、反相后作移位,中断时钟,接收扫描码,DIN2,中 间,DI,8位扫描码“0”,初始化程序对8255A的设置:MOV AL,99H;模式0、A口、C口输入,B口输出OUT 63H,AL;将方式控制字写控制寄存器MOV AL,80H;PB7=1,PB6=0,清除LS322和中断请求触发器OUT 61H,AL MOV AL,40H;PB7=1,PB6=1,允许LS322工作并输出OUT 61H,ALIRQ1中断服务程序中扫描码的读取与控制IN A
7、L,60H;读8255AA口获取扫描码PUSH AXIN AL,61H;读B口输出状态MOV AH,ALOR AL,80H;置PB7=1OUT 61H,ALXCHG AH,ALOUT 61H,ALPOP AXMOV AH,AL.,本小节作业,假定有一个34的矩阵键盘通过并行接口芯片8255A与微机相连。8255A的A口定义为输出口,与键盘行线相连;B口定义为输入口,与键盘列线相连。接口硬件如图所示。设8255AA口地址为40H,B口地址为41H,控制寄存器地址为43H,编写实现接口有关功能的程序。,111111101111110111111011,PA,1.检查是否有键:其方法是:输出扫描码,
8、使所有行线为0。然后读入列线状态,检查是否有列线为0。若有,则表明有行线和列线接通,意味有键按下。2.去抖动:当有键按下时,延时20ms左右,待抖动消失后,在稳定状态下进行被按键识别。3.被按键识别:从第0行第0列开始,通过逐行扫描确定被按键的编号。4.产生键码:根据扫描得到的键编号查找键盘编码表,获得与被按键功能对应的键码。,实现的功能,DATA0DATA7:8位并行数据输出打印。4位输入/输出口STROBE:打印机接收数据选通AUTO FD XT:打印机自动走纸一行INIT:打印机初始化SLCT IN:CPU要送数据到打印机5位输入口ACK:数据已接收,可送新数据 SLCT:打印机处于联机
9、状态BUSY:打印机忙不能接收数据PE:打印机检测到设备没有纸 ERROR:打印机检测到错误,7.2 打印机接口(通用并行接口Centronics),A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 00 1 1/0 0 1 1 1 1 X 0 0 0 1 2Y0 378H WPA 1 1 0 1 1 1 1 X 1 0 0 1 2Y2 37AH WPC 1 1 0 1 1 1 1 X 0 0 1 0 1Y0 378H RPA 1 1 0 1 1 1 1 X 0 1 1 0 1Y1 379H RPB 1 1 0 1 1 1 1 X 1 0 1 0 1Y2 37AH RPC,A9 A8
10、 A7 A6 A5 A4 A3 A2 A1 A0 00 1 1/0 0 1 1 1 1 X 0 0 0 1 2Y0 378H WPA 1 1 0 1 1 1 1 X 1 0 0 1 2Y2 37AH WPC 1 1 0 1 1 1 1 X 0 0 1 0 1Y0 378H RPA 1 1 0 1 1 1 1 X 0 1 1 0 1Y1 379H RPB 1 1 0 1 1 1 1 X 1 0 1 0 1Y2 37AH RPC,7.3 显示器接口,7.3.1 光栅扫描图形显示系统概述,主机,图像/图形生成器,VRAM,作图,存图,彩色表,CRT,CRTC,命令,像素值,颜色(亮度),R,HSYN
11、CVSYNC,R/W,主机,图像/图形生成器,VRAM,CRTC,彩色表,CRTC,CRT,VRAM,1.图像/图形生成器,根据主机画图命令在VRAM中生成图形的位图(bitmap)把图像输入设备输入的数字信息直接或间接(经过主存)送入VRAM,2.显示缓存(VRAM),(1)VRAM中位图数据(像素值)作为彩色表的地址,找出R、G、B、三原色亮度值CRT直接作为三原色的亮度值CRT,(2)VRAM组织 图形与字符方式:图形位图和字符ASCII码存放在VRAM中,7.3,单色显示:每个像素1位 单色多灰度和彩色显示:每个像素用多位二进制表示 组合像素(packed-pixel):每个像素所有位
12、在单个bank中 位平面(bit-plane)结构:像素每一位在不同的bank中(位平面)位平面:224个,单显与彩显VRAM,3.彩色表,高速RAM,把像素值转换为R、G、B三原色的亮度值,即图像/视频信号,控制CRT电子束的通、断、强弱,形成与VRAM所存映像对应的可视画面。,4.CRT,(1)复合监视器(RGB监视器):接收模拟信号由R、G、B和同步信息组成复合信号在适配器中形成,由一根电缆传送到CRT,然后在CRT中分开。精确分离彩色信号限制了分辨率EGA不直接支持复合监视器(2)数字RGB监视器:CD和ECD,ECD,RGB,一条传送低亮度电子束信号,一条传送中亮度电子束信号,混合产
13、生:高、中、低亮度及全暗,(3)模拟RGB监视器在三根导线上分别传送RGB信号信号亮度由导线上电压控制色彩的数量基本无限,取决于适配器产生不同电压能力和眼睛区分不同 颜色的能力多(同步)扫描频率监视器:可调整其扫描频率以适应适配器的频率。这样的CRT最高频率在30KHz之内ECD支持两种频率:15.74KHz(标准彩显),21.8KHz,4.CRT,5.CRTC,通用图形控制芯片 一般功能:帧存储体的R、W、刷新控制,行、帧同步及消隐信号。智能功能:线、弧、多边形,填区图形原语及窗口、视口控制。例如,图形时序控制芯片 MC 6845(1MHz),CRTC 6845,与微处理器接口的信号,CRT
14、C 6845,连接刷新存储器和字符发生器的信号,CRTC 6845,CRT监视信号,MC 6845 功能,产生RAM地址:MA0MA13 VRAM 16MB产生ROM地址:RA0RA4 光栅地址信号 字符ROM低地址选字符点阵上一排点水平同步信号:HSYNC 控制画面水平位置 水平回扫时间垂直同步信号:VSYNC 控制画面垂直位置 垂直回扫时间显示允许信号:DISPEN 光栅扫描处于有效显示区光标输出信号:CURSOR 光标(R14 R15)光笔选通输入:LPSSTB 当前RAM地址送入光笔R:R16R17编程监示器扫描方式:隔行或逐行扫描硬件滚屏:编程改变VRAM中刷新起始地址,7.3.2
15、显示方式和显示标准,MDA mode 7CGA mode 0,1,2,3,4,5,6,7EGA mode DH,EH,FH,10H,兼容CGAVGA mode 11H,12H,13H,兼容EGATVGA mode 50H5AH,5BH62H,兼容VGA,1、显示方式,(1)字符显示方式(A/N)(2)图形显示方式(APA)显示模式见课本286页表7.4,2.显示标准,显示器的显示标准,CGA工作原理与编程,1、字符模式 显示器上的每个字符在视频缓冲区(VRAM)由2个字节表示,第一个字节是显示字符的ASCII码,而第二个字节是该显示字符的属性。CGA的显存首址:B8000H,空间:16KB,偶
16、字节地址(字符的ASCII)=B8000H+页起始偏移地址+160X行号+2X列号奇字节地址(字符的属性)=B8000H+页起始偏移地址+160X行号+2X列号+1,下面是80 x25字符显示子程序。AX:字符的属性和代码;DX:行号;BX:列号;CX:页起始偏移地址。,DIS_CHC PROC NEAR PUSH AX MOV AX,160 MUL DX SHL BX,1 ADD BX,AX ADD BX,CX MOV AX,B800H MOV ES,AX MOV DX,3DAH CLI,WAIT1:IN AL,DXTEST AL,1JNZ WAIT1WAIT2:IN AL,DXTEST A
17、L,1JZ WAIT2POP AXMOV ES:BX,ALSTIRETDIS_CHC ENDP,(1)640X200分辨率640X200=128000 16KB=128000 一位像素值对应一个像素点,而其像素位置由(行号、列号)表示,即(y,x)行号:0199 列号:0639偶行像素放在显示缓存的前8KB,奇行像素放在其后8KB,2、图形方式,字节地址=B8000H+2000H X(行号mod2)+(行号/2)X50H+(列号/8)位地址=7-(列号 mod 8)列号 0 1 2 3 4 5 6 7 位号 D7 D6 D5 D4 D3 D2 D1 D0,编写按高分辨率模式显示一个像素的子程序
18、。AX:行号;BX:列号。设像素显示信息是白色。,DIS_PIEXL PROC NEARPUSH BXPUSH AXSHR BX,1SHR BX,1SHR BX,1SHR AX,1MOV CX,50HMUL CXADD BX,AXMOV DX,BXPOP AX,AND AX,1JZ THEREADD DX,2000HTHERE:POP BXAND BX,007HMOV AL,CS:TABLEBXMOV BX,B800HMOV ES,BXOR ES:DX,ALRETTABLE DB 80H,40H,20H,10H,08H,04H,02H,01HDIS_PIXEL ENDP,(2)320X200分
19、辨率320X200=64000像素 16KB=128000位 每个像素用2位表示 D7 D6 D5 D4 D3 D2 D1 D0 像素0:C1 C0 1:C1 C0 2:C1 C0 3:C1 C0 行号:0199 列号:0319,字节地址=B8000H+2000H X(行号 mod 2)+(行号/2)X50H+(列号/4)位地址=6-2X(列号 mod 4)列号 0 1 2 3 位号 D6 D4 D2 D0 像素 0:C0 1:C0 2:C0 3:C0,2、图形方式,3.CGA编程,(1)模式控制寄存器MR(写,3D8H),3.CGA编程,(1)模式控制寄存器MR(写,3D8H),3.CGA编
20、程,(1)模式控制寄存器MR(写,3D8H),3.CGA编程,(1)模式控制寄存器MR(写,3D8H),3.CGA编程,(2)彩色选择寄存器CR(写,3D9H),320X200图形方式:CR4 C1 C0 CR5 CR3 CR2 CR1 CR0 I R G B BI BR BG BB 16色前景 16色背景,3.CGA编程,(3)状态寄存器SR(3DAH,只读),3.CGA编程,(1)选定操作模式;(2)把模式控制寄存器第3位清0,即暂不允许视频信号输出;(3)把所选模式对应的一组参数,置入参数寄存器;(4)设置操作模式;(5)设置彩色选择寄存器;(6)向显示缓存写入显示信息。,对彩色图形显示
21、器进行程序设计的一般步骤:,4.CGA组成,7.3.4 EGA/VGA工作原理,EGA 兼容MDA、CGA 增加 640X350/16色图形显示VGA 兼容EGA 增加 640X480/16色和320X200/256色图形显示,1.EGA/VGA字符显示,2.EGA/VGA图形显示,VGA 信号类型为模拟类型,显示卡端的接口为 15 针母插座:,显示器连线端的接口为 15 针公插头:,显示器编程的各种层次,1、ROM BIOS提供了显示器驱动程序,可通过INT 10H调用。AH的内容表示特定的功能。如:00H:置显示模式;0CH:写点。,MOV AH,00HMOV AL,12HINT 10H;设置640X480/16色的显示模式MOV DX,80H;起始行号ROW:MOV CX,80H;起始列号MOV AL,01H;像素值MOV AH,0CHCOL:INT 10H,INC CXCMP CX,0200HJL COLINC DX CMP DX,0160HJL ROW,2、用DOS系统调用编程完全独立于硬件,是最高级的编程方法。通过INT 21H调用。09H:显示字符串;02H:输出字符;40H:写文件或外设。可以在不同的机型上运行。,显示器编程的各种层次,
链接地址:https://www.31ppt.com/p-5554195.html