




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、? ?微型计算机接口技术课微型计算机接口技术课件件? ?第第1010章章 根本人机交根本人机交互设备接口互设备接口2022-4-14计算机接口技术210.1 人机交互设备人机交互设备 人机交互设备人机交互设备:人和计算机之间人和计算机之间建立联系、交流信息的输入建立联系、交流信息的输入/输出设备,是输出设备,是计算机系统的根本配置。计算机系统的根本配置。10.2 键盘键盘 10.2.1 键盘的类型键盘的类型键盘是微型计算机系统中最根本的人机对键盘是微型计算机系统中最根本的人机对话输入设备。键盘按键,话输入设备。键盘按键,有机械式、电容式、导电橡胶式、薄膜式有机械式、电容式、导电橡胶式、薄膜式等
2、多种,但不管何种形式等多种,但不管何种形式,其作用都是一个使电路接通与断开的开,其作用都是一个使电路接通与断开的开关。关。键盘的结构有线性键盘和矩阵键盘两种形键盘的结构有线性键盘和矩阵键盘两种形式。式。2022-4-14计算机接口技术53.线性键盘接口程序线性键盘接口程序线性键盘接口程序是配合线性键盘实现键盘功能的组成线性键盘接口程序是配合线性键盘实现键盘功能的组成局部,其主要作用有两点,一是判断是否有键按下,通局部,其主要作用有两点,一是判断是否有键按下,通过查询接口输入数据是否为全过查询接口输入数据是否为全1。假设是全。假设是全1,无键按下;,无键按下;假设不是全假设不是全1,那么有键按下
3、。,那么有键按下。二是确定按下的是哪一个键,根据哪一个数据位是逻辑二是确定按下的是哪一个键,根据哪一个数据位是逻辑0,那么与此位数据线相连的键被按下。至于每个按键,那么与此位数据线相连的键被按下。至于每个按键的功能,可由用户定义,以便当按下某个键时,就可转的功能,可由用户定义,以便当按下某个键时,就可转去执行相应的操作。例如,在上图中要求当按下去执行相应的操作。例如,在上图中要求当按下S0键键时报警,按下时报警,按下S1键时解除报警,按下键时解除报警,按下S2键时退出。线键时退出。线性键盘寻键程序流程如图性键盘寻键程序流程如图10.2所示。所示。2022-4-14计算机接口技术6图10.2 线
4、性键盘的程序流程2022-4-14计算机接口技术7线性键盘的汇编语言程序段线性键盘的汇编语言程序段 MOV DX,303H ;初始化82C55A MOV AL,10010000B ;82C55A方式命令方式命令 OUT DX,ALKB: MOV DX,300H ;查3个键(S0S1S2)是否键按下 IN AL, DX ;读键状态(闭合/断开状态) AND AL,07H ;查低3位 CMP AL,07H ;查有无键按下查有无键按下 JZ KB ;无键按下,返回 CALL DELAY1 ;有键按下,延时去抖延时去抖 MOV DX,300H ;再读键状态 IN AL,DX AND AL,07H ;查
5、低3位 CMP AL,07H ;再查有无键按下 JZ KB ;无键按下,返回2022-4-14计算机接口技术8 TEST AL,01H ;有键按下,有键按下,是否S0键JZ BJ ;是,转报警子程TEST AL,02H ;是否S1键JZ JBJ ;是,转解除报警TEST AL,03H ;是否S2键JZ STP ;是,停止,退出JMP KB ;不是,返回DELAY:延时子程序(略) BJ:报警子程序(略) JBJ: 解除报警子程序(略) STP: MOV AX,4C00H ;退出INT21H2022-4-14计算机接口技术9线性键盘线性键盘C C语言程序段如下语言程序段如下unsigned ch
6、ar tmp;outportb(0 x303,0 x90); /初始化82C55dotmp=inportb(0 x300);/读键状态if(tmp&0 x07!=0 x07)/查低3位,判断有无键按下delay(10);/延时去抖tmp=inportb(0 x300);/再读键状态if(tmp&0 x07!=0 x07)/查低3位, 查有无键按下if(tmp&0 x01=0 x00)/是否S0键BJ();/是,转报警子程if(tmp&0 x02=0 x00)/是否S1键JBJ();/是,转解除报警if(tmp&0 x03=0 x00)/是否S2键STP(
7、);/是,停止,退出while(!kbhit();2022-4-14计算机接口技术1010.2.3 矩阵键盘工作的动态扫描技术矩阵键盘工作的动态扫描技术1.矩阵键盘的工作原理矩阵键盘的工作原理矩阵键盘的结构是将按键排成矩阵键盘的结构是将按键排成n行行m列的矩阵列的矩阵形式,并且在行线形式,并且在行线或列线上通过电阻接高电平或列线上通过电阻接高电平+5V。按键的。按键的行线与列线交叉行线与列线交叉点互不相通,是通过按键来接通的。下面以点互不相通,是通过按键来接通的。下面以44键盘为例说明键盘为例说明矩阵键盘的工作原理,。矩阵键盘的工作原理,。图10.3 矩阵键盘的结构及接口列扫描2022-4-1
8、4计算机接口技术11 矩阵键盘与线性键盘一样,也是首先确定是否有按键按下,然后再识别按下的是哪一个键。这个工作是采用一种扫描的方法进行,扫描分逐行扫描行扫描和逐列扫描列扫描两种方式,称为动态扫描技术。行扫描方式的特点是,矩阵键盘的列线一头接输入端口,另一头固定接高电平+5V,矩阵键盘的行线接输出端口,轮流对列线输出低电平0V,即对列线进行逐列扫描,然后从列线读取扫描的结果。列扫描方式的特点是,其行线与列线的连接及方向刚好与行扫描方式的相反,即行线一头接输入端口,另一头固定接高电平+5V,列线接输出端口,轮流对行线输出低电平0V,即对行线进行逐行扫描然后从行线读取扫描的结果。 2.矩阵键盘的接口
9、电路矩阵键盘的接口电路如下图。它是采用列扫描方式的并行接口电路,其工作过程分析如下:2022-4-14计算机接口技术12图中,PA0PA3与0列3列连接,PB0PB3与0行3行连接。采用列扫描方式找出被按下的键在矩阵中的位置,其过程是: 先从0列开始,通过PA端口,向0列输出0(PA0=0),向其他列输出1 (PA1=PA2=PA3=1),然后从PB端口读入,检测PB0PB3的电平:假设PB0=0,表示是S1键按下;假设PB1=0,表示是S5键按下;.;假设PB03=0,表示是S13键按下。如果PB0PB3的电平都为1,那么说明这一列没有键按下,就对第二列进行扫描,于是向1列输出0,向其它列输
10、出1,再检测PB0PB3的电平。 依次逐列检测,直到找出被按下的键为止。2022-4-14计算机接口技术1310.3 LED显示器显示器 10.3.1 LED显示器工作原理显示器工作原理7段数码显示器是将多个段数码显示器是将多个LED管组成一定字管组成一定字形的显示器,因此也可以叫做字形显示形的显示器,因此也可以叫做字形显示器,有共阴极和共阳极两种结构,。器,有共阴极和共阳极两种结构,。 共阴极:阴极连在一起,并接地,根据二共阴极:阴极连在一起,并接地,根据二极管导通的条件,分别对每只极管导通的条件,分别对每只LED管的管的阳极加不同的电平使其导通点亮或阳极加不同的电平使其导通点亮或截止熄灭,
11、阳极加高电平点亮,加截止熄灭,阳极加高电平点亮,加低电平熄灭,如图低电平熄灭,如图10.4所示。所示。 共阳极:阳极连在一起,接高电平,对每共阳极:阳极连在一起,接高电平,对每只阴极加不同的电平,阴极加低电平点只阴极加不同的电平,阴极加低电平点亮,加高电平熄灭。亮,加高电平熄灭。2022-4-14计算机接口技术14图中的电阻是限流电阻,以防发光二极管烧毁,其阻值一般取为使流经LED管的电流在1020mA。2022-4-14计算机接口技术1510.3.2 LED显示器的字形码显示器的字形码7段数码显示器实际为段数码显示器实际为8段,另一段用来显示段,另一段用来显示小数点小数点P。字形码格式。字形
12、码格式。由字形码构成的由字形码构成的LED显示器字符如表所示。显示器字符如表所示。其中包括共阴极与共阳极两种不同显示器所其中包括共阴极与共阳极两种不同显示器所显示的字符与字形码,表中的两种字形码虽显示的字符与字形码,表中的两种字形码虽然不同,但所表示的字符那么相同。然不同,但所表示的字符那么相同。2022-4-14计算机接口技术1610.3.3 LED显示器动态显示的扫描方式显示器动态显示的扫描方式LED显示器采用扫描的方法使多位显示器逐显示器采用扫描的方法使多位显示器逐位轮流循环显示,为此,首先把各位显示器位轮流循环显示,为此,首先把各位显示器的的8根段线并联在一起,作为一组根段线并联在一起
13、,作为一组“段控信段控信号线,同时给每位显示器分配号线,同时给每位显示器分配1根根“位控信位控信号线。号线。在接口电路中设置两个端口,一个用于发送在接口电路中设置两个端口,一个用于发送“位控信号,控制显示器的哪一位显示,即位控信号,控制显示器的哪一位显示,即显示哪一位;另一个用于发送显示哪一位;另一个用于发送“段控信号,段控信号,控制显示器发光二极管的那些段点亮,即显控制显示器发光二极管的那些段点亮,即显示字形码。示字形码。2022-4-14计算机接口技术17扫描过程:“段控端口发出一个字形码,送到每个显示器的段线上,“位控端口发出一个控制信号,指定某一位显示器显示,该位显示器就点亮,并持续1
14、5ms,然后熄灭所有的显示器。依次从“段控端口发字形码信息,再从“位控端口发位控信号,去点亮某一位显示器并持续一段时间,然后熄灭。从第1位到最末位把要显示的不同字符显示一遍,即为一个扫描周期。当扫描周期符合视觉暂留效应的要求时,人们就觉察不出字符的变动与闪烁,而感觉每位显示器都在同时显示。显示器“位控信号线相当于键盘的行扫描线。2022-4-14计算机接口技术1810.4 键盘键盘/LED接口电路解决方案接口电路解决方案 方案采用专用接口芯片构成外置式的键方案采用专用接口芯片构成外置式的键盘盘/LED接口。接口。 82C79A是双功能专用接口芯片,兼有是双功能专用接口芯片,兼有键盘输入接口和字
15、符显示器输出接口两种用键盘输入接口和字符显示器输出接口两种用途。途。 作为键盘输入接口时,扫描方式,可连作为键盘输入接口时,扫描方式,可连接接64(88)个键的矩阵键盘,经扩充可个键的矩阵键盘,经扩充可128( 882)个键,并具有自动去抖动功能。个键,并具有自动去抖动功能。 作为字符显示器输出接口时,可连接作为字符显示器输出接口时,可连接16个个7段数码显示器。数码显示器,采用动态扫描段数码显示器。数码显示器,采用动态扫描方式,实现动态显示。方式,实现动态显示。10.4.1 82C79A的外部特性的外部特性82C79A芯片是一种具有芯片是一种具有40条引脚的双列直插条引脚的双列直插式芯片,。
16、式芯片,。由于由于82C79A是双功能接口,可以同时为两种是双功能接口,可以同时为两种不同外部设备的接口提供支持,因此所设置不同外部设备的接口提供支持,因此所设置的外部引脚信号比较多,按功能可分为面向的外部引脚信号比较多,按功能可分为面向CPU、面向键盘和面向显示器、面向键盘和面向显示器3组,如表组,如表10.2所示。所示。2022-4-14计算机接口技术19图10.6 82C79A芯片引脚功能及引脚信号分类2022-4-14计算机接口技术202022-4-14计算机接口技术2110.4.2 82C79A的编程模型的编程模型1、存放器功能、存放器功能82C79A内部存放器分为共用存放器和键盘专
17、用及显内部存放器分为共用存放器和键盘专用及显示器专用的存放器示器专用的存放器3种,分别介绍如下。种,分别介绍如下。(1)显示器显示器/键盘共用存放器键盘共用存放器共用模块主要是扫描计数器,其输出可同时作为键共用模块主要是扫描计数器,其输出可同时作为键盘的行扫描和显示器的位扫描盘的行扫描和显示器的位扫描(“位控信号位控信号),扫描,扫描方式分编码扫描和译码扫描两种,由编程命令选定。方式分编码扫描和译码扫描两种,由编程命令选定。编码扫描:编码扫描:4位扫描线输出线位扫描线输出线SL0SL3,由外部译,由外部译码器译码产生码器译码产生16根扫描信号线,供键盘和显示器使根扫描信号线,供键盘和显示器使用
18、。故编码扫描方式能够扫描用。故编码扫描方式能够扫描168的矩阵键盘和的矩阵键盘和16位数码显示器。位数码显示器。译码扫描:由内部译码器译码后,产生的译码扫描:由内部译码器译码后,产生的4根扫描线根扫描线SL0SL3,直接作为键盘和显示器扫描信号。可见,直接作为键盘和显示器扫描信号。可见,译码扫描方式只能扫描译码扫描方式只能扫描48的矩阵键盘和的矩阵键盘和4位数码显位数码显示器,并且不需要设置外部译码器。示器,并且不需要设置外部译码器。2022-4-14计算机接口技术22(2)键盘专用存放器键盘专用存放器键盘接口模块包括返回缓冲器、键盘接口模块包括返回缓冲器、FIFO RAM及状态存放器。及状态
19、存放器。返回缓冲器返回缓冲器作为键盘接口芯片实现行扫描方式。在行扫描时,返回缓作为键盘接口芯片实现行扫描方式。在行扫描时,返回缓冲器用于锁存来自冲器用于锁存来自RL0RL2的键盘列线返回值,即按键的键盘列线返回值,即按键的列值。另外,行扫描时所搜寻到闭合键所在的按键行值的列值。另外,行扫描时所搜寻到闭合键所在的按键行值SL0SL2,两者合起来就形成键盘上按键的行号、列号,两者合起来就形成键盘上按键的行号、列号编码。如果在加上用于键功能扩展的两位编码。如果在加上用于键功能扩展的两位CTRL、SHIFT一起组成一个完整的键盘按键数据。键盘按键的数据格式。一起组成一个完整的键盘按键数据。键盘按键的数
20、据格式。2022-4-14计算机接口技术23表中各位的含义:表中各位的含义:SL0SL2是按键的行编码是按键的行编码,由行扫描计数器的值确定由行扫描计数器的值确定;RL0RL2是是按键的列编码按键的列编码,由返回缓冲器的值确定由返回缓冲器的值确定。从6位行列编码可知,82C79A支持64个键的键盘矩阵。再加上CTRL和SHIFT两位附加按两位附加按键参加编码键参加编码,可以扩展到128个键。2022-4-14计算机接口技术24 FIFO RAM及状态存放器及状态存放器 FIFO RAM是一个是一个88 的先进先出片内存储器,用的先进先出片内存储器,用于于暂存从键盘输入的按键数据,供暂存从键盘输
21、入的按键数据,供CPU读取。读取。 为了报告为了报告FIFO RAM中有无数据和空、满等的状态,中有无数据和空、满等的状态,设置设置FIFO RAM状态存放器。只要状态存放器。只要FIFO RAM存储器有存储器有数据未取走,状态存放器就产生数据未取走,状态存放器就产生IRQ信号请求中断,信号请求中断,要求要求CPU读取数据。读取数据。(3)用于用于LED显示器的存放器显示器的存放器LED显示器接口模块包括显示存储器显示器接口模块包括显示存储器RAM、显示字符、显示字符存放器和显示地址存放器。存放器和显示地址存放器。显示存储器显示存储器RAM显示存储器显示存储器RAM用来存储显示数据,容量为用来
22、存储显示数据,容量为168位,位,对应对应16个数码显示器。显示存储器内容在显示过程个数码显示器。显示存储器内容在显示过程中保持不变。中保持不变。2022-4-14计算机接口技术25 显示字符存放器显示字符存放器 显示字符存放器用于存放将要显示的字符的字形码。显示字符存放器用于存放将要显示的字符的字形码。显示字符存放器的内容是动态变化的,在显示过程中显示字符存放器的内容是动态变化的,在显示过程中它与显示扫描配合,轮流从显示它与显示扫描配合,轮流从显示RAM中读出要显示中读出要显示的信息并依次送到被选中的显示器,循环不断地刷新的信息并依次送到被选中的显示器,循环不断地刷新显示字符,使显示器件呈现
23、稳定的显示字符。显示字符,使显示器件呈现稳定的显示字符。 显示字符存放器分为显示字符存放器分为A、B两组两组OUTA03和和OUTB03,构成一个,构成一个8段的字形码,作为段的字形码,作为“段控段控信号送到每位显示器。信号送到每位显示器。2022-4-14计算机接口技术26显示地址存放器显示地址存放器显示地址存放器用于存放读显示地址存放器用于存放读/写显示存储器写显示存储器RAM的地的地址指针,指出显示字符从哪一位开始以及每次读出址指针,指出显示字符从哪一位开始以及每次读出或写入之后地址是否自动加或写入之后地址是否自动加1。(4)存放器端口地址存放器端口地址82C79A只分配了两个端口地址,
24、一个数据端口只分配了两个端口地址,一个数据端口(30CH),一个命令,一个命令/状态端口状态端口(30DH)。但它有。但它有8个命令个命令字,因此出现端口地址共享的问题。为此,采用在字,因此出现端口地址共享的问题。为此,采用在命令字中加特征位的方法识别共享端口中的命令字。命令字中加特征位的方法识别共享端口中的命令字。2022-4-14计算机接口技术272.编程命令与状态字编程命令与状态字82C79A芯片可执行的命令共有芯片可执行的命令共有8条,命令字中的条,命令字中的0,1,2,4号命令带号命令带*号是必须使用的,它们用于初号是必须使用的,它们用于初始化。其中,始化。其中,0号设置键盘及显示方
25、式,号设置键盘及显示方式,1号设置扫号设置扫描频率,描频率,2号指定读号指定读FIFO RAM,4号指定写显示存储号指定写显示存储器器RAM。 而初始化后的实际输入而初始化后的实际输入/输出操作是从输出操作是从向向82C79A 的数据口读写数据来实现的。的数据口读写数据来实现的。2022-4-14计算机接口技术28命令字的一般格式。其中,高命令字的一般格式。其中,高3位位 为特征位,产生为特征位,产生8种编码种编码对应着对应着8个不同的命令字。低个不同的命令字。低5位是命令参数位,表示不同位是命令参数位,表示不同命令字的含义。命令字的含义。(注:标有注:标有“的位无用的位无用)2022-4-1
26、4计算机接口技术2910号命令:设置键盘及显示器工作方式号命令:设置键盘及显示器工作方式000:命令特征码。命令分:命令特征码。命令分3个字段,个字段,K0,K2K1,DD。K0:用来设定扫描方式,为键盘和显示器共用。:用来设定扫描方式,为键盘和显示器共用。其含义:其含义: K0=0,为编码扫描;,为编码扫描;K0=1,为译码扫描。,为译码扫描。K2K1:用来设定键盘输入方式。有:用来设定键盘输入方式。有4种键盘输入种键盘输入方式,方式,。2022-4-14计算机接口技术30表中,双键锁定,双键锁定,N键轮回键轮回,是处理多键是处理多键同时按下同时按下的方式的方式。双键锁定双键锁定:两个键同时
27、按下时,只把后释放的键当作有效键N键轮回键轮回:多个同时按下时,键盘扫描能根据它们被发现的顺序依次将相应键盘数据送入FIFO RAM中DD:用来设定显示输出方式用来设定显示输出方式。有有4种显示输出方式种显示输出方式,。2022-4-14计算机接口技术31n在表中,左进方式是指显示字符从最左一位最高位开始,逐在表中,左进方式是指显示字符从最左一位最高位开始,逐个向右顺序输出,左进方式也是个向右顺序输出,左进方式也是 拨号的显示方式;右进方式是指显拨号的显示方式;右进方式是指显示字符从最右一位开始,最高位从右边进入,以后逐个左移。右进示字符从最右一位开始,最高位从右边进入,以后逐个左移。右进方式
28、也是计算器的显示方式。方式也是计算器的显示方式。n例如,要求扫描键盘输入,双键锁定;例如,要求扫描键盘输入,双键锁定;8个字符显示,右进方式;个字符显示,右进方式;键盘和键盘和LED显示器的扫描方式为编码扫描,那么显示器的扫描方式为编码扫描,那么82C79A的工作方式的工作方式命令为命令为00010000B。2022-4-14计算机接口技术3221号命令:设置扫描频率号命令:设置扫描频率001:命令特征码。命令包含:命令特征码。命令包含5个有效位个有效位PPPPP。PPPPP:用来设定对外部输入:用来设定对外部输入CLK的分频系数的分频系数NN值可为值可为231,以便获得,以便获得82C79A
29、内部要求的内部要求的100kHz的扫描频率。的扫描频率。PPPPP分频系数的分频系数的5位二进制位二进制数。数。例如,外部提供的时钟例如,外部提供的时钟LCK为为,要求产生要求产生100kHz的扫的扫描频率,那么设置扫描频率的命令为描频率,那么设置扫描频率的命令为00111001B。32号命令:读号命令:读FIFO RAM 010:命令特征码。命令分:命令特征码。命令分2个字段,个字段,A2A0,AI。A2A0:用来指定读取键盘:用来指定读取键盘FIFO RAM中字符的中字符的起始地址,起始地址,A2A0 可有可有8种编码,以指定种编码,以指定FIFO RAM中的中的8个地址单元任意一个作为读
30、取的起始地个地址单元任意一个作为读取的起始地址。址。2022-4-14计算机接口技术33AI:自动地址增量标志位。当AI=1时,每次读出FIFO RAM后,地址自动加1指向下一存储单元;当AI=0时,读出后地址不变即不自动加,但可由人工改变地址。 需要特别指出的是,该命令并不是实际从FIFO RAM中读取数据,仅仅指定是读取键盘的FIFO RAM,而不是读取显示器RAM,因此,假设要实现读键盘的数据,还必须接着在该命令后面从数据端口读数。2022-4-14计算机接口技术34例如,要求从键盘从键盘FIFO RAM读读1个字节数据个字节数据,从0位开始读位开始读取,读数据后地址不自动加不自动加1,
31、其程序段为如下。MOV DX,30DH ;82C79A命令端口MOV AL,01000000B ;2号命令,读号命令,读FIFO RAMOUT DX,ALMOV DX,30CH ;82C79A数据端口IN AL,DX ;从从FIFO RAM读读1个字节数据个字节数据2022-4-14计算机接口技术3544号命令:写显示号命令:写显示RAM 100:命令特征码。命令字分:命令特征码。命令字分2个字段,个字段,A0A3,AI。A0A3:用来指定写显示:用来指定写显示RAM中字符的起始地中字符的起始地址,址,A0A3可有可有16种编码,以指定显示种编码,以指定显示RAM中的中的16个地址单元任意一个
32、作为写的起始地址。个地址单元任意一个作为写的起始地址。AI:自动地址增量标志。当:自动地址增量标志。当AI=1时,每次写后地时,每次写后地址自动增址自动增1,当,当AI=0时,写后地址不变。一旦数据时,写后地址不变。一旦数据写入,写入,82C79A的硬件便自动管理显示的硬件便自动管理显示RAM的输出的输出并同步扫描信号。并同步扫描信号。同样,需要特别指出的是,该命令并不是实际向显同样,需要特别指出的是,该命令并不是实际向显示器示器 RAM中写入数据,仅仅指定是写入显示器的中写入数据,仅仅指定是写入显示器的RAM,而不是写入键盘的,而不是写入键盘的FIFO RAM,因此,假设要因此,假设要实现写
33、入显示器数据,还必须接着在该命令后面从实现写入显示器数据,还必须接着在该命令后面从数据端口写入数据。数据端口写入数据。2022-4-14计算机接口技术36例如,如果要求向显示器向显示器RAM写入数据写入数据,并且从从0位起位起,地址自动加址自动加1,其程序段如下。MOV DX,30DH ;82C79A的命令口MOV AL,10010000B ;4号命令,写显示号命令,写显示RAMOUT DX,ALMOV SI,OFSET BUFMOV DX,30CH ;82C79A的数据口MOV AL,SI OUT DX,AL ;向显示向显示RAM写入数据写入数据 2022-4-14计算机接口技术375状态字
34、状态字状态字主要用来指示状态字主要用来指示FIFO RAM中待取走的字符数和有中待取走的字符数和有无无错误发。错误发。8位状态字中的位状态字中的D0D4 5位是常用的,用于查询方式,位是常用的,用于查询方式,其中,其中,D5位表示位表示“超出,超出,D4位表示位表示“空,空,D3位表位表示示“满,满,D2D0位表示键盘存储区里是否尚有未取走位表示键盘存储区里是否尚有未取走的字符。的字符。O:超出标志位。当向已满的:超出标志位。当向已满的FIFO RAM中写入,使中写入,使FIFO RAM中的字符个数中的字符个数n8而产生重叠时,而产生重叠时,O被置为被置为1。 2022-4-14计算机接口技术
35、38U:“空标志位。当空标志位。当FIFO RAM中的字符个数中的字符个数n=0时时U被置为被置为1。 F:“满标志位。当满标志位。当FIFO RAM中的字符个数中的字符个数n=8时,时,F被置为被置为1。NNN:表示:表示FIFO RAM中待中待CPU取走的字符个数为取走的字符个数为n。例如,当要求采用查询方式从键盘例如,当要求采用查询方式从键盘FIFO RAM读取数据时,先应该读取数据时,先应该查状态存放器是否有数据可读。这可以查标志位查状态存放器是否有数据可读。这可以查标志位“空、空、“满或者满或者查待查待CPU取走的字符个数取走的字符个数n,其程序段为。,其程序段为。LOOP1:MOV
36、 DX,30DH ;状态口;状态口IN AL,DX ;读状态字;读状态字TEST AL,00000111B ;检查是否有待取走的字符;检查是否有待取走的字符JZ LOOP1 ;无,再查;无,再查2022-4-14计算机接口技术3910.5 LED显示器接口设计显示器接口设计例例10.1 LED显示器接口设计显示器接口设计1要求要求 设计一个8位LED显示器,要求要求从0位开始位开始显示13579H六个字符,显示方式为左进显示方式为左进,采用编码扫描编码扫描。2分析分析 采用采用82C79A作为作为LED显示器接口显示器接口可以实现上述要求。另外,为了实现编码扫描要外加扫描译码器外加扫描译码器和
37、提供LED显示器的驱动电路显示器的驱动电路。2022-4-14计算机接口技术403设计设计1硬件设计硬件设计 接口电路由接口电路由82C79A芯片、扫描译码器芯片、扫描译码器7445和段驱动和段驱动器器7406组成,如下图。图中的组成,如下图。图中的82C79A为接口的核心,为接口的核心,主管显示器与主管显示器与CPU之间的连接,执行控制命令;扫描译之间的连接,执行控制命令;扫描译码器码器7445负责负责LED显示器的动态扫描,作为显示器的动态扫描,作为“位控信位控信号控制号控制8位显示器的哪一位点亮;反向器驱动器位显示器的哪一位点亮;反向器驱动器7406为为LED的的8段字型码提供电流驱动,
38、作为段字型码提供电流驱动,作为“段控信号控制段控信号控制8段显示器的哪一段发光。段显示器的哪一段发光。2022-4-14计算机接口技术41图图10.8 LED接口电路接口电路2022-4-14计算机接口技术42图中,8个LED显示器相同的段连到一起,由7406驱动,实现段控。LED显示器为共阳极,每个阳极通过开关三极管及限流电阻与+5V连接,三极管的导通与截止由7445的8个输出端控制,实现8位显示器的位控。当82C79A的扫描信号SL03经7445译码所产生的输出信号循环变化时,就可以使各位显示器轮流点亮或熄灭,实现LED显示器的动态扫描。 2软件设计下面是从0位开始显示13579H六个字符
39、的程序,六个字符的字形码存放在内存的BUF区。2022-4-14计算机接口技术43LED显示器的汇编语言程序段如下显示器的汇编语言程序段如下。CODE SEGMENTASSUME CS:CODE,DS:CODEORG 100HBEGIN:JMP STARTBUF DB 06H,4FH,6DH,07H,67H,76H ;六个字符的字形码START:MOV AX,CODEMOV CS,AXMOV DS,AX ;82C79A初始化MOV DX,30DH ;82C79A的命令口MOV AL,00000000B ;0号命令号命令,显示方式命令显示方式命令MOV DX,ALMOV AL,001110001
40、B ;1号命令号命令,设置分频系数设置分频系数252022-4-14计算机接口技术44 OUT DX,ALMOV AL,10010000 B ;4号命令号命令,写显示写显示RAM命令命令OUT DX,AL MOV SI,OFSET BUF ;显示字符首址MOV CX,06H ;显示字符数L:MOV DX,30CH ;82C79A的数据口MOV AL,SI OUT DX,AL ;向显示向显示RAM写数据写数据INC SI ;缓存地址加1DEC CX ;字数减1JNZ L ;未完,继续MOV AX,4C00H ;已完,返回INT 21HCODE ENDSEND BEGIN2022-4-14计算机接
41、口技术45/LED显示器的C语言程序如下。 unsigned char display6=0 x06,0 x4f,0 x6d,0 x07,0 x67,0 x76;outportb(0 x30d,0 x00); /显示方式:8字符显示,左端输入,编码扫描outportb(0 x30d,0 x39);/分频系数25,产生100kHz扫描频率outportb(0 x30d,0 x90); /指定写显示RAM命令,从0位起,地址自动加1for(i=0;i6;i+)outportb(0 x30c,displayi);/从内存单元中取显示代码送显示RAMdelay(50);/延时2022-4-14计算机接
42、口技术4610.6 矩阵键盘接口设计矩阵键盘接口设计例例10.2 键盘接口电路设计键盘接口电路设计1要求要求设计一个24键的键盘接口。要求要求键盘采用编码扫描采用编码扫描、双键锁定双键锁定工作方式。从键盘读取从键盘读取10个字符个字符代码。外部时钟CLK=。2分析分析为了实现24键的键盘矩阵,采用采用3行行8列的结构形式列的结构形式。同时为了满足编码扫描工作方式,故使用使用82C79A的3根扫描输出信号根扫描输出信号SL0SL2,接至译码器74LS156的输入端,经译码后,产生产生低电平有效的3根输出线根输出线Y0Y2,作为键作为键盘矩阵的3个行扫描信号个行扫描信号。键盘矩阵的8个列线个列线的
43、一端一端与82C79A的返回信号返回信号RL0RL7相连接,另一端另一端通过电阻接高电平接高电平(+5V)。2022-4-14计算机接口技术473设计设计1硬件设计硬件设计 根据上述分析,根据上述分析,24键的键盘矩阵接口电路原理。键的键盘矩阵接口电路原理。图10.9 键盘接口电路2022-4-14计算机接口技术482软件设计软件设计 键盘输入汇编语言程序段如下。键盘输入汇编语言程序段如下。CODE SEGMENTASSUME CS:CODE, DS:CODEORG 100HSTART:JMP BEGIN ;从;从0100H处执行第处执行第一条指令一条指令BUF DB 10 DUP(0)BEG
44、IN:MOV AX,CODEMOV DS,AX ;设置数据段的段地;设置数据段的段地MOV DX,30DH ;82C79A初始化初始化MOV AL,00000000B ;0号命令,键盘输号命令,键盘输入工作方式入工作方式OUT DX,ALMOV AL,00111001B ;1号命令,设置分号命令,设置分频系数为频系数为25,OUT DX,AL2022-4-14计算机接口技术49 MOV DI,OFSETBUF MOV CX,10LOOP1: MOV DX,30DH ;读状态字 IN AL,DX TEST AL,00000111B ;检查是否有待取走检查是否有待取走的字符的字符 JZ LOOP1
45、 ;无,再查 MOV AL,01000000B ;2号命令号命令,读读FIFO RAM OUT DX,AL MOV DX,30CH ;读数据 IN AL,DX ;从键盘读从键盘读取数据取数据 MOVDI,AL ;存入内存BUF INC DI DEC CX JNZ LOOP1 MOV AX,4C00H ;退出 INT21H2022-4-14计算机接口技术50 CODE ENDS END START/键盘输入C语言程序段如下。unsigned char buf10;unsigned char i;outportb(0 x30d,0 x00);/设定键盘输入工作方式编码扫描、双键锁定outportb
46、(0 x30d,0 x39);/设置分频系数为25,产生100kHz扫描频率for(i=0;i10;i+)while(inportb(0 x30d)&0 x07=0 x00); /检查是否有待CPU取走的字符outportb(0 x30d,0 x40);/有,指定读FIFO RAMbufi=inportb(0 x30c);/读键盘,并存入内存BUF2022-4-14计算机接口技术514讨论讨论 HELLO五个字符的字形码在内存区的存放顺序与在显示器上的顺序相反,这是什么原因? 如果显示的字符不是从第0位,而是从第2位或第3位开始显示,程序要如何修改?2022-4-14计算机接口技术52
47、10.7 打印机接口打印机接口 打印机是微型计算机系统中一种常用的输出打印机是微型计算机系统中一种常用的输出设。目前打印机技术设。目前打印机技术正朝着高速度、低噪声、美观清晰和彩色打正朝着高速度、低噪声、美观清晰和彩色打印的方向开展。打印机印的方向开展。打印机的种类很多,性能差异也很大。当前流行的的种类很多,性能差异也很大。当前流行的有针式打印机、激光打印机、喷墨式打印机有针式打印机、激光打印机、喷墨式打印机等。等。10.7.1 并行打印机接口标准并行打印机接口标准1信号线定义信号线定义Centronics标准定义了标准定义了36芯插头芯插头/座,。座,。最主要的是最主要的是8根并行数据线根并
48、行数据线DATA1 DATA8,2根握手联络信号线根握手联络信号线 、 及及1根状态线根状态线BUSY,应重点,应重点了解。了解。STROBEA C K2022-4-14计算机接口技术532022-4-14计算机接口技术542工作时序工作时序Centronics标准标准对打印机接口的工作时序的工作时序,即打印机与CPU之间传送数据的过程传送数据的过程作了规定,。图图10.10 并行打印机接口标准工作时序并行打印机接口标准工作时序2022-4-14计算机接口技术55打印机与打印机与CPU之间传送数据的过程:之间传送数据的过程:是按照是按照Centronics打印机接口标准的工作时序进行的,打印机
49、接口标准的工作时序进行的,以查询方式为例,其工作步骤如下。以查询方式为例,其工作步骤如下。 当当CPU要求打印机打印数据时,要求打印机打印数据时,CPU首先查询首先查询BUSY。假设假设BUSY=1,打印机忙,那么等待;当,打印机忙,那么等待;当BUSY=0,打,打印不忙时,才送数据。印不忙时,才送数据。 CPU 通过并行接口,把数据送到通过并行接口,把数据送到DATA1DATA8数数据线上,此时数据并未进入打印机。据线上,此时数据并未进入打印机。 CPU再送出一个数据选通信号再送出一个数据选通信号 负脉冲,负脉冲,把数据线上的数据打入到打印机的内部缓冲器。把数据线上的数据打入到打印机的内部缓
50、冲器。 打印机在收到数据后,向打印机在收到数据后,向CPU发出发出“忙信号,说忙信号,说明打印机正在处理输入的数据。等到输入的数据处理明打印机正在处理输入的数据。等到输入的数据处理完毕,打印机撤销完毕,打印机撤销“忙信号,置忙信号,置BUSY=0。 接着,打印机送出一个答复信号接着,打印机送出一个答复信号 给给CPU,表,表示一个字符已经处理完毕。示一个字符已经处理完毕。ACKSTROBE2022-4-14计算机接口技术563打印机连接器打印机连接器 Centronics接口标准接口标准对打印机连接器打印机连接器规定为D-36芯芯插头/插座。而台式台式PC机机配置的打印机接口插座打印机接口插座
51、简化为D-25芯芯,去掉了Centronics中的一些未使用信号和地线。很明显,打印机接口标准打印机接口标准的连接器的连接器与与PC机的打印机接口插座机的打印机接口插座不兼容不兼容,因此要对两者信号线的排列作一些调整,要特别注意两者相应信号线的对接,按照所按照所示的信号线连接示的信号线连接。2022-4-14计算机接口技术57图图10.11 打印机与打印机与PC机并口信号线连接图机并口信号线连接图2022-4-14计算机接口技术5810.7.2 并行打印机接口设计并行打印机接口设计例例10.3 并行打印机接口电路设计并行打印机接口电路设计1要求要求 要求为某应用系统配置一个并行打印机接口,要求
52、为某应用系统配置一个并行打印机接口,通过接口采用查询方式把存放在通过接口采用查询方式把存放在BUF缓冲区的缓冲区的256个字符个字符ASCII码送去打印。码送去打印。2分析分析 由于打印机接口面向的对象是打印机接口标由于打印机接口面向的对象是打印机接口标准而不是打印机本身,因此打印机接口硬件电准而不是打印机本身,因此打印机接口硬件电路设计要以标准所定义的信号线为依据,而软路设计要以标准所定义的信号线为依据,而软件设计应以接口标准所规定的工作时序为依据。件设计应以接口标准所规定的工作时序为依据。3设计设计1打印机接口电路设计打印机接口电路设计打印机接口电路原理框图。打印机接口电路原理框图。2022-4-14计算机接口技术59图图10.12 并行打印机接口电路框图并行打印机接口电路框图2022-4-14计算机接口技术60该电路的设计思路是:该电路的设计思路是:按照按照Centronics标准对打印机接口信号线的定义,标准对打印机接口信号线的定义,最根本的信号线需要最根本的信号线需要8根数据线根数据线DATA1D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 用工管理面试题及答案
- 门诊内科出科总结
- 中国教育的目的
- 月字旁写字课课件
- 2025年中国男士牛仔裤行业市场全景分析及前景机遇研判报告
- 综合能源服务培训
- 怎样做好日常培训
- EHS基础知识培训
- 花山岩画的群体性活动元素融入舞蹈课堂教学的实践与探究
- 特殊关键工序培训
- 2025年云南省中考语文试卷(含答案)
- 中医药与老年病科课件
- 2025春季学期国开电大本科《人文英语4》一平台机考真题及答案(第三套)
- 国家开放大学《人文英语4 》期末机考题库
- 道教考试试题及答案
- 2025年全国I卷作文讲评
- 车位租赁备案合同
- 森林草原防火 无人机巡查技术规范 征求意见稿
- 2025年中考英语考前冲刺卷(广东卷)(解析版)
- 信息安全设备性能评测-洞察阐释
- 农村抗震农房装配式施工安全监理合同
评论
0/150
提交评论