接口技术人机接口课件.ppt

上传人:石*** 文档编号:39862029 上传时间:2022-09-08 格式:PPT 页数:61 大小:4.21MB
返回 下载 相关 举报
接口技术人机接口课件.ppt_第1页
第1页 / 共61页
接口技术人机接口课件.ppt_第2页
第2页 / 共61页
点击查看更多>>
资源描述

《接口技术人机接口课件.ppt》由会员分享,可在线阅读,更多相关《接口技术人机接口课件.ppt(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、接口技术人机接口第1页,此课件共61页哦一、键盘接口的功能和原理一、键盘接口的功能和原理1.1.接口功能接口功能 键盘接口键盘接口必须具有去抖动、防串键、按键识别和键码产生必须具有去抖动、防串键、按键识别和键码产生4 4个基本功能。个基本功能。(1 1)去抖动)去抖动 每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续时间与键的质量相关,一般为时间与键的质量相关,一般为520ms。所谓去抖动所谓去抖动是指在识别被按键和释放键时必须避开抖动状是指在识别被按键和释放键时必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误

2、。态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。去抖动问题可通过软件延时或硬件滤波电路(去抖动问题可通过软件延时或硬件滤波电路(RCRC滤波或滤波或RSRS去抖)解决。去抖)解决。第2页,此课件共61页哦(2 2)防串键)防串键 防串键防串键是为了解决多个键同时按下或者前一按键没有释放是为了解决多个键同时按下或者前一按键没有释放又有新下时产生的问题。又有新下时产生的问题。双键锁定:双键锁定:当检测到有两个或两个以上的键被按下时,当检测到有两个或两个以上的键被按下时,只把最后释放的键当作有效键,并产生相应键码。只把最后释放的键当作有效键,并产生相应键码。N N键轮回:键轮回:当检测到有

3、多个键被按下时,能根据发现它当检测到有多个键被按下时,能根据发现它们的顺序依次产生相应键的键码。们的顺序依次产生相应键的键码。(3 3)被按键识别)被按键识别 行扫描法:行扫描法:该方法的基本思想是,由程序对键盘进行逐该方法的基本思想是,由程序对键盘进行逐行扫描,通过检测到的列输出的列输出状态来确定闭合键。行扫描,通过检测到的列输出的列输出状态来确定闭合键。线反转法:线反转法:该方法的基本思想是通过行列颠倒两次扫描该方法的基本思想是通过行列颠倒两次扫描来识别闭合键。多用来识别闭合键。多用Z-80PIOZ-80PIO芯片实现芯片实现第3页,此课件共61页哦(4 4)键码产生)键码产生 一般在内存

4、区中键立一个键盘编码表,通过查表获得被按键的键码一般在内存区中键立一个键盘编码表,通过查表获得被按键的键码。2.2.接口原理接口原理 检查是否有键按下,其方法是:输出扫描码,使所有行线为检查是否有键按下,其方法是:输出扫描码,使所有行线为0 0。然后读入列线状态,检查是否有列线为。然后读入列线状态,检查是否有列线为0 0。若有,则表明有行线和。若有,则表明有行线和列线接通,意味着有键按下。列线接通,意味着有键按下。去抖动:当有键按下时,延时去抖动:当有键按下时,延时20ms20ms左右,待抖动消失后,在稳定状左右,待抖动消失后,在稳定状态下进行被按键识别。态下进行被按键识别。被按键识别:从第被

5、按键识别:从第0 0行第行第0 0列开始,顺序对所有按键编号。通过逐行列开始,顺序对所有按键编号。通过逐行扫描确定被按键的编号。扫描确定被按键的编号。产生键码:根据扫描得到的键编号查找键盘编码表,获得与被按键产生键码:根据扫描得到的键编号查找键盘编码表,获得与被按键功能对应的键码。功能对应的键码。第4页,此课件共61页哦 例如,例如,假定有一个假定有一个3434的矩阵键盘通过并行接口芯片的矩阵键盘通过并行接口芯片8255A8255A与与微机相连。微机相连。8255A8255A的的A A定义为输出口,与键盘行线相连;定义为输出口,与键盘行线相连;B B口定口定义为输入口,与键盘列线相连。接口硬件

6、如图义为输入口,与键盘列线相连。接口硬件如图10.110.1所示。所示。PA0PA1PA2PB3PB2PB1PB08255ACPU行0行1行2列0列3列1 列2图10.1 非编码键盘接口第5页,此课件共61页哦 设设8255AA8255AA口地址为口地址为60H60H,B B口地址为口地址为61H61H,控制寄存器地,控制寄存器地址为址为63H63H,则实现接口有关功能的程序如下:,则实现接口有关功能的程序如下:;8255A初始化初始化 MOV AL,82H ;方式;方式0,A口输出,口输出,B口输入口输入 OUT 63H,AL ;检查是否有键按下;检查是否有键按下BEGIN:MOV AL,0

7、 ;低电平有效;低电平有效 OUT 60H,ALWAIT:IN AL,61H AND AL,0FH CMP AL,0FH ;低电平有效;低电平有效 JZ WAIT 第6页,此课件共61页哦 MOV CX,7FFH ;延时去抖动;延时去抖动L0:LOOP L0 ;识别被按下的键识别被按下的键ST:MOV BL,03H ;行数送行数送BL MOV BH,04H ;列数送列数送BH MOV AL,0FEH ;扫描码,扫描码,0行为行为0 MOV CL,0FH ;列线屏蔽码送列线屏蔽码送CL MOV CH,0FFH ;置键号初值为置键号初值为-1L1:OUT 60H,AL ;扫描一行扫描一行 ROL

8、AL DEC BL MOV AH,AL ;修改扫描码并送修改扫描码并送AH保存保存 IN AL,61H 第7页,此课件共61页哦 AND AL,CL CMP AL,CL ;读入列线值,检查是否有列填线为读入列线值,检查是否有列填线为0 JNZ L2 ;有列线为有列线为0时转去找该列线时转去找该列线 ADD CH,BH ;否则,指向该行末列键号否则,指向该行末列键号 MOV AL,AH ;取回扫描码取回扫描码 DEC BL JNZ L1 ;行数减行数减1,未完成转下一行,未完成转下一行 JMP BEGIN L2:INC CH ;该列非该列非0,检查下一列,检查下一列 RCR AL JC L2 ;

9、该列非该列非0,检查下一列,检查下一列 MOV AL,CH ;该列为该列为0,键号送,键号送AL第8页,此课件共61页哦 JMP KEYTABLE ;转查找键盘编码表子程序,;转查找键盘编码表子程序,获取与键功能对应的键码获取与键功能对应的键码二、可编程键盘二、可编程键盘/LED/LED接口芯片接口芯片827982791.1.内部结构及各部分功能内部结构及各部分功能 82798279芯片的内部结构框图如图芯片的内部结构框图如图10.210.2所示。图中各组成部所示。图中各组成部分功能如下:分功能如下:(1 1)I/OI/O控制及数据缓冲器控制及数据缓冲器(2 2)控制与定时寄存器及定时控制)控

10、制与定时寄存器及定时控制(3 3)扫描计数器)扫描计数器(4 4)键盘去抖与控制及返回缓冲器)键盘去抖与控制及返回缓冲器(5 5)FIFO RAM及状态寄存器及状态寄存器(6 6)显示)显示RAMRAM、显示寄存器、显示地址寄存器、显示寄存器、显示地址寄存器第9页,此课件共61页哦数据缓冲器I/O控制FIFO RAM的状态寄存器显示地址寄存器168显示RAM片选总线控制与定时寄存器88FIFORAM键盘去抖与控制显示寄存器定时控制扫描计数器返回缓冲器时钟CLK复位ResetOUTA03OUTB03BDSL03RL03SHIFTCNTL/STBD07RDWRCSA0IRQ图10.2 8279芯片

11、的内部结构框图第10页,此课件共61页哦2.外部特性外部特性 电信号连接示意图可知电信号连接示意图可知,4040条引线中与条引线中与CPUCPU一侧相关的共一侧相关的共15条,与键盘、显示接口相关的条,与键盘、显示接口相关的共共2323条,电源、地各一条。条,电源、地各一条。8279RL0RL7SHIFTCNTL/STBSL0SL3OUTA03OUTB03BDD0D7IRQRDWRCSA0CLKRESET+5VGND CPU键盘显示器第11页,此课件共61页哦D0D7:双向数据线,用于CPU和8279芯片之间传送数据、命令和状态信息。CLK:系统时钟,为8279芯片提供内部定时。RESET:复

12、位线,高电平时复位8279芯片到:16个字符显示(左进方式);编码扫描键盘(双键锁定);时钟设置为31.CS-:片选线,由I/O端口地址译码器产生低电平时8279芯片被选中。RD-:读信号,低电平有效。WR-:写信号,低电平有效。A0:地址线,为0时选中数据口;1时选中命令/状态口。IRQ:中断请求线,高电平有效,向CPU申请中断。第12页,此课件共61页哦SLSL0 0SLSL3 3:扫描线,用来扫描键盘或显示器,可编程设定为编码输出或译扫描线,用来扫描键盘或显示器,可编程设定为编码输出或译码输出。码输出。编码扫描:编码扫描:SLSL3 3-SL-SL0 0输出扫描计数,经外部译码器的译码后

13、最多可为输出扫描计数,经外部译码器的译码后最多可为键盘和显示器提供键盘和显示器提供1616个扫描信号。个扫描信号。译码扫描:译码扫描:SLSL3 3-SL-SL0 0输出可直接作为键盘和显示器的扫描信号,输出可直接作为键盘和显示器的扫描信号,此时键盘矩阵为此时键盘矩阵为4 4*8 8,显示字符为,显示字符为4 4位。位。RLRL0 0RLRL7 7:返回线,用作键盘矩阵列线的返回信号输入。返回线,用作键盘矩阵列线的返回信号输入。SHIFTSHIFT:移位信号,是键盘数据的移位信号,是键盘数据的D D6 6位,用于扩充键的功能,如作为上、位,用于扩充键的功能,如作为上、下档功能键。下档功能键。C

14、NTLCNTL:控制线。是键盘数据的控制线。是键盘数据的D D7 7位,用于扩充键的控制功能位,用于扩充键的控制功能-控制功能控制功能键。键。OUTAOUTA0 0OUTAOUTA3 3,OUTBOUTB0 0OUTBOUTB3 3:A/BA/B组显示信号输出线,与扫描线组显示信号输出线,与扫描线SLSL0 03 3同步,实现分时数据显示,即刷新各显示字符。同步,实现分时数据显示,即刷新各显示字符。BD-BD-:显示消隐线,显示数据切换时或收到消隐命令时,将显示消隐。显示消隐线,显示数据切换时或收到消隐命令时,将显示消隐。第13页,此课件共61页哦3.3.命令字命令字 当引脚当引脚A A0 0

15、=1=1时,时,CPUCPU向向82798279芯片写入命令字。芯片写入命令字。82798279芯片可芯片可执行的命令共有执行的命令共有8 8条,它们决定了条,它们决定了82798279芯片的操作方式。芯片的操作方式。命令字格式如下:命令字格式如下:特 征 位命 令 参 数D7 D6D5D4D3D2D1D0(1 1)设置键盘及显示方式)设置键盘及显示方式 设置键盘及显示方式命令字格式为:设置键盘及显示方式命令字格式为:0 0 00 0 0 D D2 2 D D1 1 K K2 2 K K1 1 K K0 0D D4 4D D3 3(D D2 2D D1 1):用来设定显示输出方式,定义如表):

16、用来设定显示输出方式,定义如表10.110.1所示。所示。D D4 4D D3 3(K K2 2K K1 1):设定键盘输入方式,定义如表):设定键盘输入方式,定义如表10.210.2所示。所示。D D0 0(K K0 0):键盘扫描方式。):键盘扫描方式。K K0 0=0=0为编码扫描;为编码扫描;K K0 0=1=1为译码扫描。为译码扫描。第14页,此课件共61页哦D2 D1 方 式 0 0 0 1 1 0 1 1 8个字符显示,左进方式16个字符显示,左进方式8个字符显示,右进方式16个字符显示,右进方式 K2 K1 方 式 0 0 0 1 1 0 1 1 扫描键盘输入,双键锁定扫描键盘

17、输入,N键轮回扫描传感器输入选通输入表10.1 显示输出方式表10.2 键盘输入方式D2D2:0-0-左进方式左进方式 1-1-右进方式右进方式D1D1:0-80-8个字符个字符 1-161-16个字符个字符左进:左进:显示位置从最左一位即最高位开始,逐个向右顺序输出显示位置从最左一位即最高位开始,逐个向右顺序输出右进:右进:显示位置从最右一位即最低位(个位)开始,高位从右边进显示位置从最右一位即最低位(个位)开始,高位从右边进入,逐次左移。入,逐次左移。=计算器显示方式计算器显示方式N N键轮回:键轮回:根据发现顺序依次将相应键盘数据送入根据发现顺序依次将相应键盘数据送入FIFO RAMFI

18、FO RAM第15页,此课件共61页哦 D D4 4D D0 0(PPPPPPPPPP):用来设定对外输入用来设定对外输入CLKCLK的分频系数的分频系数N N(N N值可为值可为2 23131),以便获得),以便获得82798279芯片内部要求的芯片内部要求的100kHz100kHz的基本频率的基本频率D7D6D5D4D3D2D1D0001AIA1A2A0D D4 4(AIAI):自动地址增量标志位。当):自动地址增量标志位。当AI=1AI=1时,每次读出后地址时,每次读出后地址 自动加自动加1 1指向下一存储单元指向下一存储单元AI=0AI=0时,读出后地址不变。时,读出后地址不变。D D

19、2 2D D1 1D D0 0(A A2 2A A1 1A A0 0):在键盘方式中无意义,都写):在键盘方式中无意义,都写0.0.(2 2)设置时钟频率)设置时钟频率D7D6D5D4D3D2D1D0010PPPPP(3 3)读)读FIFO RAMFIFO RAMD7D6D5D4D3D2D1D0CNTLSL2ShiftSL1SL0RL1RL2RL0键盘数据格式:键盘数据格式:第16页,此课件共61页哦(4 4)读显示)读显示RAMRAMD7D6D5D4D3D2D1D0011AIA3A1A2A0 D D4 4(AIAI):自动地址增量标志。):自动地址增量标志。AI=1AI=1时读后地址自动增时

20、读后地址自动增1 1;AI=0AI=0时,读后地址不变。时,读后地址不变。(5 5)写显示)写显示RAMRAM 100 AI A 100 AI A3A A0(6 6)禁写显示)禁写显示RAM/RAM/消隐消隐 101 101 IW IWA IW IWB BL BLA BL BLB IW=1 IW=1时,显示时,显示RAMRAM禁止写入该组,禁止写入该组,CPUCPU写数据不影响该组显示写数据不影响该组显示 BL=1BL=1时,该组显示被消隐,时,该组显示被消隐,=0=0时显示恢复时显示恢复(7 7)清除)清除 110 CD110 CD2 CD CD1 CD CD0 C CF C CA C CF

21、:清空清空FIFO RAMFIFO RAM,使,使IRQIRQ复位复位 C CA总清位,显示总清位,显示RAMRAM清除方式清除方式CDCD1-0CD2 CD1 CD0 方 式1 0 1 0 11 1 0 全部清除(为00)置成20H(为)置成全1(为FF)不清除,CA=1,则CD1-0仍有效表10.3 显示RAM清除方式第17页,此课件共61页哦(8)结束中断)结束中断/设置错误方式设置错误方式 111 E N N键轮回方式下,当键轮回方式下,当E=1E=1时,设置一种特殊错误方式:在时,设置一种特殊错误方式:在82798279消抖周期内发现多件消抖周期内发现多件同时按下时,将状态字中同时按

22、下时,将状态字中S/ES/E位置位置1 1,并产生中断请求信号和阻止写入,并产生中断请求信号和阻止写入FIFO RAMFIFO RAM4.4.状态字状态字主要用来指示主要用来指示FIFO RAMFIFO RAM中的字符数和有无错误发生。其格式为:中的字符数和有无错误发生。其格式为:Du:Du:显示无效,当执行显示无效,当执行RAMRAM清除时置位清除时置位S/ES/E:多键同时按下:多键同时按下O O:FIFOFIFO满时,再写入即置位满时,再写入即置位U U:FIFOFIFO空,即字符个数空,即字符个数=0=0F F:FIFOFIFO满,即字符个数满,即字符个数=8=8NNNNNN:FIFO

23、FIFO有几个字符待取走有几个字符待取走 0-70-7D7D6D5D4D3D2D1D0Du0S/EUFNNN5.82795.8279芯片应用举例芯片应用举例 TP86ATP86A单板微型计算机使用单板微型计算机使用82798279芯片作为键盘及芯片作为键盘及LEDLED显显示器接口,电路原理图如图示器接口,电路原理图如图10.410.4所示。所示。第18页,此课件共61页哦8279RL0SHIFTCNTLOUTA03OUTB03D0D7RDWRCSA0CLKRESETTP86SL0SL1SL2SL3RL0键盘矩阵A74LS45BCD74LS45段驱动器(反相)A B CY0Y1Y20007+5

24、V译码器74LS156图10.4 TP86单板机键盘/显示器接口电路译码器第19页,此课件共61页哦 键盘输入程序段,执行下面程序段后可在内存键盘输入程序段,执行下面程序段后可在内存400H400H单元中找到单元中找到被按下键的代码。被按下键的代码。MOV DX,0FFEAH MOV AL,00H ;设定键盘输入,编码扫描方式;设定键盘输入,编码扫描方式 OUT DX,AL MOV AL,39H ;扫描频率扫描频率 OUT DX,AL MOV AL,0D3H ;OUT DX,AL ;显示;显示RAM清清0LOOP1:MOV DX,0FFEAH IN AL,DX 第20页,此课件共61页哦 TE

25、ST AL,10H ;检查是否有键入代码 JNZ LOOP1 ;无再查 MOV AL,40H ;有键入代码,指定读FIFO OUT DX,AL MOV DX,0FFE8H IN AL,DX ;读出数据 MOV DI,400H ;DI指向存放按键代码的 内存单元 MOV DI,AL ;存入内存400H单元 HLT ;暂停显示输出程序段,执行下面程序段后从0位开始显示19991208八个字符,假定八个字符的字形码存于内存300H开始的8个单元中。第21页,此课件共61页哦 MOV SI,300H ;设置显示字符内存区地址指针;设置显示字符内存区地址指针 MOV CX,08H ;设置显示字符数;设置

26、显示字符数 MOV DX,0FFEAH MOV AL,00H ;设置显示输出工作方式;设置显示输出工作方式 OUT DX,AL MOV AL,39H ;分频系数为;分频系数为25,产生,产生 100kHz 扫描频率扫描频率 OUT DX,AL MOV AL,0D1H ;D3H OUT DX,AL ;显示;显示RAM清清0 MOV AL,90H ;写显示;写显示RAM命令,从命令,从0号单元起,号单元起,地址自动加地址自动加1 OUT DX,ALL:MOV DX,0FFE8H MOV AL,SI OUT DX,AL ;从内存中取显示代码送显示;从内存中取显示代码送显示RAM INC SI ;修改

27、地址指针;修改地址指针第22页,此课件共61页哦 DEC CX ;修改计数器值;修改计数器值 JNZ L HLT 300H DB 7FH,3FH,5BH,06H,67H,67H,67H,06H三、三、PC微机键盘及接口微机键盘及接口 键盘由单片机、译码器和键盘由单片机、译码器和1616行行8 8列的键开关矩阵三大部分组成。列的键开关矩阵三大部分组成。按键采用电容开关,即按键时的上下动作使电容量发生变化,从而实按键采用电容开关,即按键时的上下动作使电容量发生变化,从而实现开关接通或断开的目的。现开关接通或断开的目的。它是一种由单片机扫描、编码的智能化键盘。它是一种由单片机扫描、编码的智能化键盘。

28、它是一个与主机箱分开的独立部件,通过一根五芯电缆与主机相连接。它是一个与主机箱分开的独立部件,通过一根五芯电缆与主机相连接。硬中断程序硬中断程序:中断号为中断号为09H09H,当按键动作引发,当按键动作引发IRQ1IRQ1时,该时,该第23页,此课件共61页哦程序负责把键盘扫描码转换成程序负责把键盘扫描码转换成ASCIIASCII码,然后存入键盘缓冲区。码,然后存入键盘缓冲区。软中断程序软中断程序INT 16HINT 16H:ROM BIOSROM BIOS中的键盘功能调用程序,该调的功中的键盘功能调用程序,该调的功能是从键盘缓冲区取出按键产生的能是从键盘缓冲区取出按键产生的ASCIIASCI

29、I码。码。2.2.键盘接口电路键盘接口电路(1 1)接口功能)接口功能串行接收键盘送来的扫描码,完成串行转换后保存;串行接收键盘送来的扫描码,完成串行转换后保存;收妥一个键盘扫描码后,立即产生一个中断请求信号;收妥一个键盘扫描码后,立即产生一个中断请求信号;保存的扫描码可供保存的扫描码可供CPUCPU读取,并通过软件进行相应转换处理;读取,并通过软件进行相应转换处理;接收接收CPUCPU的命令,输出到键盘,并接收键盘回送的响应信号。的命令,输出到键盘,并接收键盘回送的响应信号。(2 2)接口电路)接口电路 根据接口电路应完成的功能,接口电路可由串行并转换电路、时钟根据接口电路应完成的功能,接口

30、电路可由串行并转换电路、时钟同步电路、中断请求触发器及一些门电路组成。同步电路、中断请求触发器及一些门电路组成。第24页,此课件共61页哦Keyboard(5 PC)PinNameDescriptionTechnicalCLOCKClock CLK/CTS,DATADataRxD/TxD/RTS,n/c4GNDGroundVCC+5 VDC口朝上 1 3 4 5 26 PIN(PS/2 STYLE)PinNameDescription1DATAKey Datan/c-GND4VCC+5 VDC5CLKClockn/c-6 5 4 3 2 1第25页,此课件共61页哦SEDSS/PD0OECLR

31、CLKGOAOBOHOHD11DCLKCLRPR+5VQQDCLKRQDCLKRQ+5VLS3228255APB7PB6CLKDATARESETGND+5VPCLKRESET8255APA7PA6PA0IRQ1图10.5 微机键盘接口电路第26页,此课件共61页哦初始化程序中对初始化程序中对8255A8255A的设置:的设置:MOV AL,99H ;模式;模式0,A口,口,C口输入,口输入,B口输出口输出 OUT 63H,AL ;将方式控制字写控制寄存器;将方式控制字写控制寄存器 MOV AL,40H ;PB7=0,PB6=1,允许允许LS322工作方式输出工作方式输出 OUT 61H,AL

32、IRQ1中断服务程序中扫描码的读取与控制:中断服务程序中扫描码的读取与控制:IN AL,60H ;读;读8255AA口获口获 取扫描码取扫描码 PUSH AX ;将;将AL中的扫描码入栈保存中的扫描码入栈保存 IN AL,61H ;读;读B口原输出状态口原输出状态 MOV AH,AL ;暂存于;暂存于AH OR AL,80H ;置;置PB7=1,清除,清除LS322T和中断请求触发器和中断请求触发器 第27页,此课件共61页哦 OUT 61H,AL POP AX ;弹出扫描码至;弹出扫描码至AL中中 MOV AH,AL ;AH中也为键扫描码中也为键扫描码键处理键处理 10.2 CRT10.2

33、CRT显示器接口显示器接口 显示器显示器是计算机系统的基本设备,主要用于程序是计算机系统的基本设备,主要用于程序输入、程序调试、信息显示、结果显示等。(如:输入、程序调试、信息显示、结果显示等。(如:MDAMDA单显示器、低分辩率的单显示器、低分辩率的CGACGA、EGAEGA等)当前流行等)当前流行的都分辨率可达的都分辨率可达10241024768768、1280128010421042等的高等的高分辨率分辨率Super VGASuper VGA显示器显示器.第28页,此课件共61页哦第29页,此课件共61页哦一、显示器文本方式一、显示器文本方式I/OI/O 显示的文本方式(显示的文本方式(

34、TEXT MODETEXT MODE)对于所有类型的显示器()对于所有类型的显示器(MDAMDA、CGACGA、EGAEGA、VGAVGA、Super VGASuper VGA等)的操作方法和显示原理都基本等)的操作方法和显示原理都基本相同。相同。在文本方式下,显示器的屏幕一般被分成在文本方式下,显示器的屏幕一般被分成80802525(8080列,列,2525行行)的网络,所有的字符就在这)的网络,所有的字符就在这20002000个(个(80802525)的网格上显示,)的网格上显示,屏幕上显示的每个字符都在显示缓冲区(屏幕上显示的每个字符都在显示缓冲区(VRAMVRAM)中对应一个存储单元)

35、中对应一个存储单元,即屏幕的存储器映象。,即屏幕的存储器映象。在彩色文本方式下,显示文本的视频缓冲区首地址为在彩色文本方式下,显示文本的视频缓冲区首地址为B800B800:000H000H,每,每个字符占用两个存储器单元,其中每一具单元为显示字符的个字符占用两个存储器单元,其中每一具单元为显示字符的ASCIIASCII码,第二个单元为该显示字符的属性。码,第二个单元为该显示字符的属性。第30页,此课件共61页哦1.字符显示原理 显示器字符的方法以点阵为基础。这种方式将字符分解成m n个点阵组成阵列,将点阵存入由ROM构成的字符发生器中,在CRT进行光栅扫描的过程中,从字符发生器中依次读出点阵,

36、按照 点阵的0和1控制扫描电了束开关,在屏幕中形成字符。字符字符点阵的多少取决于字符显示质量和字符块大小,在PC机中字符窗口为914点阵,字符为7 9点阵。在PC机中,整个屏幕的字符共占用4000字节的视频存储器空间(B800:0H-B800:F9FH),彩色文本显示的视频缓冲区首地址为B800:0H,单色文本为B000:000H。第31页,此课件共61页哦移位寄存器SL视频信号字符发生器ROMVRAMRA3RA0ASCII码OSCI/9I/(80+18)I/(9+5)I/(25+1)点振荡器(16.257MHz)点计数器水平地址计数器加载控制水平消隐行间消隐垂直消隐光栅地址计数器 垂直地址计

37、数器水平同步电路垂直同步电路水平同步信号垂直同步信号CPU控制字符时钟定时控制电路VRAM与显示屏的对应关系第32页,此课件共61页哦2.2.字符属性字符属性 显示器上的每个字符在视频缓冲区(显示器上的每个字符在视频缓冲区(VRAMVRAM)由)由2 2个字节表示,个字节表示,第一个字节是显示字符的第一个字节是显示字符的ASCIIASCII码,而第二具字节是该显示字符的码,而第二具字节是该显示字符的司性。字符的必性确定了该显示字符的特性,如显示字符的颜色、司性。字符的必性确定了该显示字符的特性,如显示字符的颜色、背景颜色、闪铄等,在彩色文本方式下,字符的属性定义如图所示背景颜色、闪铄等,在彩色

38、文本方式下,字符的属性定义如图所示。其中:其中:1 1)BI=1BI=1:表示该显示的字符闪烁;:表示该显示的字符闪烁;2 2)D D6 6D D4 4:表示该显示字符的背景颜色:表示该显示字符的背景颜色RGBRGB;3 3)D D3 3D D0 0:表示该显示字符的前景颜色:表示该显示字符的前景颜色RGBRGB;第33页,此课件共61页哦BIRed GreenBlueIRed Green Blue闪烁位背景颜色背景颜色D7D6D5D4D3D2D1D0彩色文本方式字符属性 如把8025模式的整个屏幕全部刷成字符A,属性为红色前景、蓝色背景、显示字条款闪烁的程序段为:MOV AX,0B800H

39、;彩色文本方式VRAM首址MOV ES,AXMOV DI,0MOV CX,2000MOV AH,10010100B ;显示属性:闪烁,蓝色背景,红色前景REP STOSW ;AXVRAM单元中,相当于显示到屏幕上 第34页,此课件共61页哦 在上述程序中,如果把字符属性改为08(黑色背景,灰白色前景,不闪烁),同时把显示的字符A改为20H(空格),上述程序则是一个清屏程序。在彩色文本方式下,视频缓冲区(VRAM)的首地址为B800:0H,屏幕上显示的字符依次与B800:0H后的存储器单元相应,因此,直接写屏就是把需显示的字符及属性直接写入VRAM中,就达到了彩色文本显示的目的。直接写屏的子程序

40、如下:WRITE_SCREEN PROC NEAR PUSH ES PUSH DI SHL DX,1 SHL DX,1第35页,此课件共61页哦SHL DX,1SHL DX,1 ;行坐标16MOV DI,DXSHL DX,1SHL DX,1 ;行坐标 64ADD DI,DX ;行坐标(64+16)ADD DI,CX ;视频缓冲区偏移=行 80+列MOV DX,0B800H ;VRAM首地址MOV ES,AX STOSW ;字符和属性 VRAMPOP DIPOP ESRETWRITE-SCREEN ENDP第36页,此课件共61页哦In early 2001,.and researchCorpo

41、ration completed Another year of80 x25 CRTVRAM0行1行i 行B800:00B800:A7Hf2行7列第37页,此课件共61页哦 在彩色文本直接写屏中,显示位置在视频缓冲区VRAM的偏移地址可由公式:VRAM偏移地址=80 行坐标+列坐标,来进行计算。屏幕字符的显示通常使用中断(如INT 10H、INT 21H等)来进行,中断字符显示方式速度较慢,但通用性和兼容性好。二、显示器图形接口 显示器的图形方式就是利用显示器的像点(Pixel)来构成图形、图像、各种显示适配器有不同的显示模式和分辨率,在下表中主要列出了标准的显示适配器的各种显示模式的图形分辨

42、率、颜色数和视频缓冲区地址。各种显示适配器(显示卡)都是向下包含的,如TVGA显示适配器包含VGA以下的所有显示适配器的各种显示模式。第38页,此课件共61页哦显示类型模式号 显示分辨率VRAM首地址MDA07720 350(2C)B000:0HCGA0406320 200(4C)640 200(2C)B800:0H B800:0HEGA0D0E0F10320 200(16C)640 200(16C)640 350(4C)640 350(16C)A000:0H A000:0H A000:0H A000:0HVGA111213640 480(2C)640 480(16C)320 200(256C

43、)A000:0H A000:0H A000:0HTVGA5B5C5D5E5F62800 600(16C)640 400(256C)640 480(256C)800600(256C)1024 768(16C)1024 768(256C)A000:0H A000:0H A000:0H A000:0H A000:0H A000:0H显示器各种图形模式下的分辨率第39页,此课件共61页哦 MDA、CGA、EGA都是数字式的显示适配器,这类显示器由于颜色数较少,VGA、Super VGA均是采用RGB三基色分量的模拟显示器,由于计算机送出颜色索引值,通过查找索引寄存器取得DAC表中的RGB分量亮度值,再

44、由DAC(数/模转 换器)输出RGB的模拟信号供显示器显示。采用RGB模拟信号的显示器的颜色数多,颜色过渡平滑,色彩鲜艳,更接近自然颜色。1.VGA图形显示原理 VGA(Video Graphics Array)显示适配器是采用RGB模拟显示的接口卡,VGA 显示适配器的视频存储器VRAM与显示器屏幕上的像点有两种映射方式:彩色位面法和压缩像素法。(1)彩色位面法 从EGA(Enhance Graphics Adapter-增强型图形适配器)适配器开始首先采用了彩色位面显示方式,所谓彩色位面第40页,此课件共61页哦 就是把视频缓冲区VRAM按照一定的大小(与显示模式有关,不同的显示模式一页的

45、大小也不同)划分为几个独立的位面(页)每个页面被用来控制一种颜色分量(RGB),每个显示像至少在页面中占一位。如图10.7所示。3210IRGBVGA16色显示模式.101000000100图10.7 VGA 显示器VRAM与显示屏映射关系第41页,此课件共61页哦 在VGA显示适配器中,彩色位面法用于16色模式。图形16色显示时把VRAM划分为4个彩色位面。屏幕上的像点特征由4个位面的值共同确定。在12H(64048016C)模式下,一页的大小为640/8480=38400B,因此一屏图形或图像共占VRAM 空间为384004=153600字节。VRAM与物理显示屏的对应关系(省去了颜色索引

46、和DAC处理)如图10.7所示。一个彩色位面上的一个字节对应屏幕上的8个像点Pixel),在缺省调色板一个位面实际上代表某一基色(RGB),因此4个位面共可以表示16种颜色。一般来说,由03位面合成的值是一个颜色索引值,而不是真正显示器所显示的颜色值,真正显示的颜色必须通过索引寄存器查到,再通过DAC表产生,如图10.8所示。第42页,此课件共61页哦0111 颜色索引寄存器 001001 模 块 寄存器 颜色选择寄存器D0D1D2D3D4D5D6D7Red000000Green000000Blue000000063 D/A D/A D/A到模拟显示器DAC转换表VRAM01110715图10

47、.8 VGA位面法VRAM内存映像第43页,此课件共61页哦 下面是采用直接写点的下面是采用直接写点的640640 480 480(1616色)子程序,在应用程色)子程序,在应用程序中可以直接调用序中可以直接调用 入口参数:入口参数:AX=AX=行坐标;行坐标;BX=BX=列坐标;列坐标;CH=CH=颜色值颜色值VGA-COLOR16 PROC NEARMOV DX,0A000H ;视频缓冲区首地址;视频缓冲区首地址MOV ES,DX MOV DX,80 ;一行字节数;一行字节数MUL DX ;行;行 80MOV DI,AXMOV AX,BXMOV CL,3SHR AX,3 ;列;列/8第44

48、页,此课件共61页哦ADD DI,AX ;VRAM偏移偏移=行行 80+列列/8;分离字处理;分离字处理MOV CL,BLAND CL,7XOR CL,7MOV BL,80HSHL BL,CL ;BL=图形点分离字图形点分离字;寄存器设置;寄存器设置MOV DX,3C4H ;定序器;定序器MOV AL,2OUT DX,AL ;选映射模式寄存器;选映射模式寄存器INC DXMOV AL,OFH ;开放;开放4个彩色位面个彩色位面OUT DX,AL 第45页,此课件共61页哦MOV DX,3CEH ;图形控制器端口MOV AL,5 ;5号:写模式寄存器OUT DX,ALINC DXMOV AL,2

49、 ;设置写模式2:锁存写点OUT DX,ALDEC DXMOV AL,8 ;选择8号:分离字寄存器OUT DX,ALINC DXMOV AL,BLOUT DX,AL ;写入分离字第46页,此课件共61页哦MOV AL,ES:DI ;读出数据MOV ES:DI,CH ;写入新的颜色数据RET ;返回(2)压缩像素法 在压缩像素法中,VRAM中的一个字节对应屏幕上的一个像点(Pixel),由于一个字节取值0-255,所以屏幕上的点就有256种颜色的变化(256色)。VRAM与屏幕的映射关系如图10.9所示。为了与彩色位面法和真彩色的彩色位面相对应,在习惯上把256色的显示方式也称为8位的彩色位面,

50、相对应256色下生成的图像、图形文件称为8位面的图像或图形。第47页,此课件共61页哦 A000:00000100101010100111 111010010001 0002VGA256色显示模式.VRAM.图10.9 VGA压缩像素法VRAM内存映象 在压缩像素法中,VRAM的一个字节的内容直接通过DAC表查出对应的屏幕显示颜色值,通过RGB三基色的D/A转换器显示到屏幕上。压缩像素法与彩色位面法一样,在不同的分辨率模式下,其一屏图形或图你所占的VRAM的大小也不相同,第48页,此课件共61页哦如模式为13H(320 200 256C)时,一屏图像大小为64000字节,为5DH(640 48

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁