8253问答题
第六部分 8255与8253
并行接口8255A一、单项选择题1.8255A既可作数据输入、出端口,又可提供控制信息、状态信息的端口是( D )。
(A)B口(B)A口(C)A、B、C三端口均可以(D)C口2.8255A的方式选择控制字为80H,其含义是( D )。
(A)A、B、C口全为输入(B)A口为输出,其他为输入(C)A、B为方式0 (D)A、B、C口均为方式0,输出3.8255A引脚信号WR=0,CS=0,A1=1,A0=1时,表示( B )。
(A)CPU向数据口写数据(B)CPU向控制口送控制字(C)CPU读8255A控制口(D)无效操作4.一微机化仪器采用8255A芯片作数据传送接口,并规定使用接口地址的最低两位作芯片内部寻址,已知芯片的A口地址为0F4H,则当CPU执行输出指令访问0F7H端口时,其操作为()。
(A) 数据从端口C送数据总线(B) 数据从数据总线送端口C(C) 控制字送控制字寄存器(D) 数据从数据总线送端口B5.当8255A的端口A、端口B均工作在方式0的输入方式时,端口C可以作为()用。
(A)两个4位I/O端口或1个8位I/O端口(B) 状态端口(C)部分引脚作端口A、端口B的联络信号(D)全部作联络信号6.当并行接口芯片8255A被设定为方式2时,其工作的I/O口()。
(A)既能作输入口、也能作输出口使用(B) 仅能作输入口使用(C)仅能作不带控制信号的输入口或输出口使用(D) 仅能作输出口使用7.当并行接口芯片8255A被设定为方式2时,其工作的I/O口()。
(A) 仅能作不带控制信号的输入口或输出口使用(B)仅能作输入口使用(C) 既能作输入口、也能作输出口使用(D) 仅能作输出口使用8.intel公司生产的用于数据并行传送的可编程接口芯片是( D )。
(A)8218 (B)8251 (C)8253 (D)82559.一片1ntel8255A需占用(B )个端口地址。
(A)2 (B)4 (C)6 (D)810.8255的A口中断输出时,应将A口工作方式初始化为()才能满足。
计数器8253练习题
3)计数器2工作于方式4,用OUT1输出作计数脉冲 CLK2,计数值为1000,计数器计到0,给出一个 控制脉冲沿。
解:计数器2的计数初值 N=1000=03E8H 初始化程序段: MOV AL,0B8H ;控制字=1011 1000,计数器2方式4, 先低字节后高字节,二进制计数 MOV DX,0F283H ;大于8位的控制器端口送DX OUT DX,AL;控制字送控制器端口,完成初始化 MOV DX,0F282H ;计数器2的端口地址送DX MOV AL,0E8H ;低字节送计数器2 OUT DX,AL MOV AL,03H ;高字节送计数器2 OUT DX,AL ;完成送计数初值
频率方波信号,初始化写入计数寄存器
的初值应是________ A 。
A) 0
C) 9999
B) 1
D) 0FFFFH
5.已知某系统中8253芯片所占用的I/O 地址为330H--333H,则该8253芯片
内控制字寄存器口地址为_______ C 。
A)331H C)333H B)332H D)无法确定
6. 8253内每个计数通道的计数过程均
B 为________ 。 A) 加法计数 B) 减法计数
C) 加一计数
D) 加法或减法计数
7.可编程计数器/定时器电路8253的 D ,共有_____ 工作方式共有_____
个I/O地址。
(完整版)8253练习题
1.8253包括3个独立的,但结构相同的计数电路,它们分别是计数0,1,2通道,共占用 3 I/O地址,并由D7,D6 选择。
2.已经加在8253上的外部计数时钟频率为1MHZ,试说明若在不增加硬件芯片的情况下,使8253产生周期为1s的对称方波应如何实现?方式3,二进制计数,00110110,n=10^6,分为n1=1000,n2=1000,1端口的输出作为2端口的时钟输入。
参见P1593.8253端口地址为40H~43H,CH0作为计数器,计数时钟频率1MHZ,下列程序执行后,输出脉冲的宽度是0.02sMOV AL,36HOUT 43H,ALMOV AX,20000OUT 40H,ALMOV AL,AHOUT 40H,AL10^6/20000=50hzT=0.02s4.有如图所示的接口简化图,要使发光二极管亮2秒,熄灭2秒,但该过程共进行20秒即终止,设OUT0输入频率为100HZ。
8253端口地址为40H~43H 编写出程序。
A1A20端口Mov al,35hOut 43h,alMov al,00hOut 40h,alMov al,50hOut 40h,al1端口Mov al,77hOut 43h,al Mov al,00h Out 41h,al Mov al,04h Out 41h,al2端口Mov al,b1h Out 43h,al Mov al,00h Out 42h,al Mov al,20h Out 42h,al5.已知某8086微型计算机系统中包括8255A,8253两个可编程接口电路,其中,8253为A/D转换器提供可编程的采样频率和采样时间;8255A的PB0用于检测按键开关的位置,PA7可根据PB0的状态决定是否点亮LED指示灯。
8255A,8253可编程接口电路如图所示。
+5V1.写出接口初始化程序片断8255mov al,82hOut 63h,al2.图中给出了8253各个计数器要求的工作方式:设外部时钟频率为F;计数器0的计数初值为L(字节型),工作在方式2;计数器1的计数初值为M(字节型),工作在方式1;计数器2的计数初值为N (字型),工作在方式3。
微机原理及应用答案CH05(定时与计数 8253)
CH05 定时与计数习题与思考题1.什么叫端口? 端口通常有哪几种? 各有什么特点?解答:为了提供CPU 与扩展部件和接口电路直接进行操作的“通道”,每个部件或接口内部都包含有一组寄存器,这些寄存器通常称为端口,每个端口有一个端口地址。
当CPU 与它们进行通信时,不同的信息通过不同的端口地址与不同的寄存器进行交互。
端口通常分为三类:用来传输数据的称为数据端口;用来存放设备或者部件状态的称为状态端口;用来存放CPU 发出的命令的称为控制端口。
CPU 通过数据端口完成数据传输,因此,数据端口一般是可读可写的;CPU 通过状态端口可以检测外设和接口部件当前的状态,因此,状态端口一般是只读的;CPU 通过控制端口传输命令以便控制接口和设备的动作,因此,控制端口一般是只写的。
2.试说明8253 的内部结构包括哪几个主要功能模块?解答:(1) 数据总线缓冲器。
这是8253 与CPU 数据总线连接的8 位、双向、三态缓冲器。
CPU 用输入输出指令对8253 进行读写的所有信息都是通过该缓冲器传送的,内容包括:. CPU 在初始化编程时写入8253 的控制字。
. CPU 向8253 的某一通道写入的计数值。
. CPU 从某一个通道读取的计数值。
(2) 读/写控制逻辑。
这是8253 内部操作的控制部分。
它接收输入的信号(CS 、WR 、RD 、A1、A0),以实现片选、内部通道选择(见表5-1)以及对相关端口的读/写操作。
(3) 控制字寄存器。
在对8253 进行初始化编程时,该寄存器存放由CPU 写入的控制字,由此控制字来决定所选中通道的工作方式。
此寄存器只能写入不能读出。
(4) 计数器0,计数器1,计数器2。
这是三个独立的计数器/定时器通道,各自可按不同的工作方式工作。
每个通道内部均包含一个16 位计数初值寄存器、一个16 位减法计数器和一个16 位锁存器。
其中,计数初值寄存器用来存放初始化编程时由CPU 写入的计数初值。
8253练习题
计数器选择: 00-计数器0 01-计数器1 10-计数器2 11-无意义
读写格式: 00-计数值进行锁存 01-只读/写低8位 10-只读/写高8位 11-先读/写低8位,后高8位
数制选择: 0-二进制格式 工作方式选择: 1 - BCD 格 式 ( 十 进制) 000-方式0 001-方式1 ×10-方式2 ×11-方式3 100-方式4 101-方式5
D4
D3
D2
D1
D0
读写格式: 00-计数值进行锁存 01-只读/写低8位 10-只读/写高8位 11-先读/写低8位,后高8位
数制选择: 0-二进制格式 工作方式选择: 1 - BCD 格 式 ( 十 进制) 000-方式0 001-方式1 ×10-方式2 ×11-方式3 100-方式4 101-方式5
将计数器0设为模式3(方波发生器),计数初值为500,用二进制计数. 计数器1设为模式2(分频器),计数初值为10,用二进制计数.计数器0的 输出脉冲作为计数器1的时钟输入。请编写程序,且画出计数器0和1的输 出波形及其相位关系.其中8253的计数器0的地址为280h, 8253的计数 器0的地址为281h, 8253的控制口的地址为283h 分析:由将计数器0设为模式3(方波发生器),计数初值为500,用二进 制计数.可知计数器0的控制字为36h,初值为1f4h 计数器1设为模式2(分频器),计数初值为10,用二进制计数.可知计数 器0的控制字为54h,初值为0ah
8253的编程 8253的编程
编程原则: ① 设置初值前必须先写控制字 ② 初值设置要符合控制字中的格式规定 编程命令有两类: ① 读出命令 ② 写入命令 设置控制字命令 设置初始值命令 锁存命令
8253习题
习题一、单项选择题1.8253哪种工作方式能产生连续方波输出( )。
A.方式OB.方式1C.方式2D.方式32.8253某计数器的最大计数初值是( )。
A.65536B.FF0OHC.0000HD.FFFFH3.8253某计数器工作在方式1时,在计数中途OUT为( )。
A.由低变高B.由高变低C.高电平D.低电平4.对8253的定时与计数( )。
A.有两种不同的工作方式B.定时只加时钟脉冲,不设计数值C.实质相同D.从各自的控制端口设置5.若8253定时/计数器处于计数过程中,当CPU对它装入新的计数初值时,其结果将是( )。
A.8253定时/计数器禁止编程;B.8253定时/计数器允许编程,并改变当前的计数过程;C.8253定时/计数器允许编程,但不改变当前的计数过程;D.8253定时/计数器允许编程,是否影响当前计数过程随工作方式而变。
6.当8253定时/计数器工作在( )下时,需要由外部脉冲触发开始计数。
A.方式O 、方式4B.方式2、方式3C.方式1、方式5D.方式1、方式47、8253共有()种工作方式。
A、5B、6C、4D、38、当8253可编程计数器/定时器工作在方式0时,门控信号GATE变为低电平后,对计数器的影响是()A、结束本次计数循环,等待下一次的计数的开始B、暂时停止现行计数工作C、不影响本次计数,即计数器的计数工作不受该信号的影响D、终止本次计数过程,立即开始新的计数循环。
9、若8253定时器/计数器工作在方式0,在初始化编程时一旦写入控制字后()A、输出信号OUT变为高电平B、立即开始计数C、输出信号保持原来的电位值D、输出信号OUT变为低电平二、分析:8253的端口地址为:40H-43H,门控和时钟的输入信号如下图,执行下列程序段:MOV AL,01010011BOUT 43H,AL Array MOV AL,10HOUT 41H,AL后,问输出脉冲的宽度T是多少?2、用8253做为某数据采集系统的定时器,每隔10ms用中断方式采集一次数据,已知输入时钟频率为10KHZ,8259端口地址为20H-21H,中断类型号为16H,8253端口地址为40H-43H,画出硬件连接并编写程序。
微机接口课后作业答案C
(1)根据图中接线,写出8255芯片、8253芯片各端口的地址。
(2)编写8255芯片和8253芯片的初始化程序。其中,8253芯片的OUT 1 端输出100Hz方波,8255芯片的A 口为输出, B 口 和 C 口为输入。
(3)为8255芯片编写一个I/O控制子程序,其功能为:每调用一次,先检测PC0的状态,若PC0 = 0,则循环等待; 若PC0 = 1,可从 PB 口读取当前开关 K 的位置(0~7 ),经转换计算从 A 口的 PA0~PA3输出该位置的二进 制编码,供LED显示。
MOV DX,0A383H
;内部控制寄存器地址送DX
MOV AL,80H
;方式控制字
OUT DX,AL
MOV AL,08H
;PC4置0
4
OUT DX,AL
MOV AL,0FH
;PC7置1
OUT DX,AL
7.11 设8255芯片的接口地址范围为03F8H~03FBH,A 组 B 组均工作于方式0,A 口作为数据输出口,C 口低 4 位作 为控制信号输入口,其他端口未使用。试画出该片8255芯片与系统的电路连接图,并编写初始化程序。
解:
(1)8255芯片的地址范围为:8000H~FFFFH
8253芯片的地址范围为:0000H~7FFFH
(2)
;初始化8255芯片
MOV DX,8003H
MOV AL,8BH
;方式控制字,方式0,A 口 输出,B 口 和 C 口 输入
OUT DX,AL
;初始化8253
MOV DX,0003H
;内部寄存器口地址
;C 口 地址 ;C 口 状态 ;读 B 口 的开关位置
;没有接地则移动 ;查表,CX 为开关位置 ;
8253计数器练习
一、选择题(每小题3分,共39 分)1.8253工作于方式1时,输出负脉冲的宽度等于()A.计数初值N-1个CLK脉冲宽度B.计数初值N+1个CLK脉冲宽度C.计数初值N个CLK脉冲宽度D.计数初值(2N-1)/2个CLK脉冲宽度2.在8253某计数器工作方式1时,在计数中途OUT为()A.高电平 B.低电平 C.由高变低 D.由低变高3.8253引脚CS、RD、WR、A1、A0为()时,表示对计数2设置计数初值。
A.00010B B.10010B C.01010B D.10011B4.8253工作于方式1时,欲使输出负脉冲加宽,则可以在输出计数期间()A.改变计数值 B.改变控制字 C.复位 D.重新加入带有上升沿的GA TE信号5.8253的工作方式有()A.2种 B.3种 C.4种 D.6种6.8253工作在()时,需要由外部脉冲触发开始计数A.方式0 B.方式1 C.方式2 D.方式37.当8352可编程定时/计数器工作于方式0时,在初始化编程时,一旦写入控制字后()A.输出信号OUT变为高电平B.输出信号OUT变为低电平C.输出信号OUT保持原来的电平D.立即开始计数8.8253是可编程的()接口芯片。
A.总线控制B.DMA C.中断控制器D.定时器/计数器9.8253是可编程定时、计数芯片,它内部有()A.三个定时器 B.四个定时器 C.二个定时器 D.四个计数器10.设8253可编程定时/计数为可编程BCD码的减法计数器,其计数值最大时应置时间常数(计数初值)为()A.0FFFFH B.9999H C.7FFFH D.0000H11.启动8253的计数器开始或计数的方式有()A.软件方式 B.硬件方式 C.软件和硬件方式 D.门控信号12.在对8253进行任何操作前,都必须先向8253写入一个(),以确定8253的工作方式。
A.控制字 B.计数初值 C.状态字 D.指令13.可以从8253的()寄存器中读出减计数器的值。
8253问答题
8253问答题阅读使人快乐,成长需要时间1、8253可编程计数器有两种启动方式,在软件启动时,要使计数正常进行,GATE端必须为()电平,如果是硬件启动呢?答:8253可编程计数器有两种启动方式,在软件启动时,要使计数正常进行,GATE端必须为(高)电平;如果是硬件启动,则要在写入计数初值后使GA TE端出现一个由低到高的正跳变,以启动计数。
2、某个计算机应用系统采用8253的计数器0作频率发生器,输出频率为500Hz;用计数器1产生1000Hz的连续方波信号,输入8253的时钟频率为1.19MHz。
试问:初始化时送到计数器0和计数器1计数初值分别为多少?计数器工作在什么方式下?解:计数器0工作在方式2,其计数初值为=1.19MHz/500Hz=2380计数器1工作在方式3,其计数初值为=1.19MHz/1000Hz=11903、若要求8253用软件产生一次性中断,最好采用哪种工作方式?现在用计数器0对外部脉冲计数,每计满10 000个产生一次中断,请写出工作方式控制字及计数值。
解:若8253用软件产生一次性中断,最好采用方式0,即计数结束后产生中断的工作方式。
但若要求每计满10 000个产生一次中断,则表示具有重复中断的功能,因此,此时应使用计数器0工作于方式3,即连续方波输出方式。
其工作方式控制字为0011X111B,计数初值=10 0004、试编写一段程序,按下列要求设置如下图中8254的三个计数器计数器0:二进制计数,在操作方式0下操作,计数初值为1234H计数器1:BCD计数,在操作方式2下操作,计数初值为100H计数器2:二进制计数,在操作方式4下操作,计数初值为1FFFH解:计数器0的方式字=00110000B 计数器1的方式字=01010101B计数器2的方式字=10111000B MOV AL , 30HOUT 4CH , ALMOV AL , 55HOUT 4CH , ALMOV AL , 0B8HOUT 4CH , ALMOV AL , 34HOUT 40H , ALMOV AL , 12HOUT 40H , ALMOV AL , 00HOUT 44H , ALMOV AL , 01HOUT 44H , ALMOV AL , 0FFHOUT 48H , ALMOV AL , 1FHOUT 48H , AL5、试编写一个在计数进行的过程中进行读计数器2内容的程序段,并把读取的值放入AX 寄存器中,假设8253定位在I/O地址40H上,其中芯片输入线A1、A0分别接到A3、A2。
8253总结 习题
武汉理工大学机电学院《机械系统计算机接口技术》 武汉理工大学机电学院《机械系统计算机接口技术》教学课件
MOV DX,323H DX, MOV AL,0B4H AL, OUT DX,AL DX, MOV DX,322H DX, MOV AL, 20H AL, OUT DX,AL DX, MOV AL,4EH AL, OUT DX,AL DX, ;写入通道2初值20000的高8位 写入通道2初值20000的高 的高8 ;写入通道2初值20000的低8位 写入通道2初值20000的低 的低8 ;10110100B,通道2,写入16位初值,方式2, 10110100B 通道2 写入16位初值 方式2 位初值, ;二进制计数 写入通道2 ;写入通道2方式字
2012年 13日星期日 2012年5月13日星期日
武汉理工大学机电学院《机械系统计算机接口技术》 武汉理工大学机电学院《机械系统计算机接口技术》教学课件
13
8253应用实例 应用实例
例 监视一个生产流水线, 个工件, 用8253监视一个生产流水线,每通过 个工件,扬声器 监视一个生产流水线 每通过50个工件 秒钟, 响5秒钟,频率为 秒钟 频率为2000HZ。 。
《机械系统计算机控制课件》 机械系统计算机控制课件》
1
2012年 13日星期日 2012年5月13日星期日
总结性应用举例
1. 8253定时功能的应用 8253定时功能的应用
在计算机应用中, 在计算机应用中,经常会遇到隔一定时间重复某一 个动作的应用。 个动作的应用。
例1
设某应用系统中,系统提供一个频率为10kHz的时 10kHz 设某应用系统中,系统提供一个频率为10kHz的时 钟信号,要求每隔100ms采集一次数据。 钟信号,要求每隔100ms采集一次数据。 100ms采集一次数据 在系统中,采用8253定时器的通道 定时器的通道0 在系统中,采用8253定时器的通道0来实现这一 要求。将8253芯片的CLK0接到系统的10kHz时钟上, 要求。 8253芯片的 芯片的CLK 接到系统的1 kHz时钟上, 时钟上 OUT0输出接到CPU的中断请求线上,8253的端口地 输出接到CPU的中断请求线上 8253的端口地 的中断请求线上, 址为10H~13H, 图所示。 址为10H~13H,如下图所示。 图所示
8353练习题及答案
8353练习题及答案一、简答题1、8253的功能作用是什么?它有哪些工作方式?答案:8253起着计数或定时的作用,提供可编程的三个16位定时/计数器通道.它有方式0到方式5共6种工作方式,分别是:计数结束中断方式,可编程单程方式,频率发生器,方波发生器,软件触发的选通信号,硬件触发的选能信号.2、8253定时/计数器的定时与计数方式有什么区别?8254在方式0工作时,各通道的CLK、GATE信号有什么作用?各通道的控制字地址都相同,8254是怎样区分的?解:(1)8254作为计数器和定时器使用时的区别:用途不同:定时器用于产生连续的、周期恒定的信号;计数器用于对输入脉冲进行计数。
对CLK输入的信号要求不同:用作定时器时,CLK输入的信号必须有相同的周期;用作计数器时,允许CLK输入的信号没有固定的周期;使用方式不同:定时器方式下计数的过程周而往复,重复进行;计数器方式下计数的过程只进行一次,除非重新初始化,或者用GA TE重新触发;(2)8254工作在方式0时,CLK端输入计数用的脉冲信号;GATE信号为高电平时,对CLK端输入的脉冲进行计数;GATE信号为低电平时,暂停计数;GATE信号重新为高电平后,恢复原先的计数。
(3)由8254的方式控制字中的D7、D6两位来选择计数通道。
3、设8253计数器的时钟输入频率为1.91MHz,为产生25KHz的方波输出信号,应向计数器装入的计数初值为多少?4、、设8253的计数器0,工作在方式1,计数初值为2050H;计数器1,工作在方式2,计数初值为3000H;计数器2,工作在方式3,计数初值为1000H。
如果三个计数器的GATE都接高电平,三个计数器的CLK 都接2MHz时钟信号,试画出OUT0、OUT1、OUT2的输出波形。
5、试简述微机系统中定时器/计数器的必要性和重要性,以及定时实现的常用方法。
6、、可编程定时器/计数器8253/8254有几个通道?各通道有几种工作方式?各种工作方式的主要特点是什么?8254与8253有什么区别?7、8253芯片有哪几个计数通道?每个计数通道可工作于哪几种工作方式?这些操作方式的主要特点是什么?答:8253内部具有三个独立的16位计数通道:通道0、通道1、通道2.8253每个计数通道可工作于6中不同的工作方式:(1)方式0——计数结束中断方式(Interrupt on Terminal Count),在写入控制字后,输出端即变低,计数结束后,输出端由低变高,常用该输出信号作为中断源。
微型计算机原理作业第八章 习题与思考题
第八章习题与思考题典型例题解析一、填空题1. 当8253工作在周期性方波输出方式时,若计数初值为偶数,则输出①方波,若计数初值为奇数,则输出②方波。
分析:8253工作于方式3时输出连续方波,当计数初值n为偶数时,输出方波的高、低电平持续时间均为nT CLK/2,当计数初值n为奇数时,输出方波的高电平持续时间为(n+1)T CLK/2,低电平持续时间为(n+1)T CLK/2。
答:①对称②非对称2.8253内部寄存器地址有①个I/O端口,其中②个是定时/计数通道端口。
分析:8253有两条地址线A1、A0,用来选中片内4个端口,其中3个是计数通道地址。
答:①4 ②33.8253的计数通道0(端口地址为POTR0)用于计数,要求计满30输出一信号,假定计数器工作于BCD计数方式,则写入计数初值的指令为MOV L,和OUT PORT0,AL分析:8253在初始化写入计数初值时,若采用BCD码计数,计数初值必须以计数结果的十进制数加上“H”表示。
例如计数值为10,必须写为10H。
答:30H二、选择题1.8253的哪种工作方式能产生连续方波输出()。
A. 方式0B. 方式1C. 方式2D. 方式3分析:8253有6种工作方式,其中产生连续波形的是方式2和方式3,方式3产生连续方波答:D2.8253每个计数器的最大计数初值是()。
A. 65536B. FF00HC. 0000HD. FFFFH分析:8253每个计数器的计数范围是1~65536,当计数初值为0000H时,计满65536,减1计数器减为0。
答:C3. 若8253定时/计数器处于计数过程中,当CPU对它装入新的计数初值时,其结果将是()。
A. 8253定时/计数器禁止编程B. 8253定时/计数器允许编程,并改变当前的计数过程C. 8253定时/计数器允许编程,但不改变当前的计数过程D. 8253定时/计数器允许编程,是否影响当前的计数过程随工作方式而变分析:8253定时/计数器具有3个独立的16位计数通道,它们可以分别工作在6种不同的工作方式。
第9章_4 8253的应用(习题)
40H~ 40H~43H
CS
8253
61H 0FCH AL
8255(60H~63H) 8255(60H~63H)PBA0 GATE2 OUT2 驱 动
DEBUG PC8253
P376 8.22 定时计数器8253输入时钟频率为1MHZ 并设定为按BCD码计数, 8253输入时钟频率为1MHZ, BCD码计数 定时计数器8253输入时钟频率为1MHZ,并设定为按BCD码计数,若写 入的计数值为0080H 则该通道定时时间是多少? 0080H, 入的计数值为0080H,则该通道定时时间是多少? 解: 对于BCD码计数则0080H表示计数值为80 BCD码计数则0080H表示计数值为 对于BCD码计数则0080H表示计数值为80 通道的输出频率为: 通道的输出频率为:1M/80=12500HZ 定时时间为:1/12500=8× 定时时间为:1/12500=8×10-5(S)=80(μS)
CLK0 GATE0 OUT0 CLK1 GATE1 OUT1 CLK2 GATE2 OUT2 +5V +5V 2.5Mz OUT
P339 8253应用举例 应用举例 8253的应用电路如图所示,三个通道分别设置为:通道0为方式2,计数初值 为1000;通道1为方式1,计数初值为500;通道2为方式3计数初值为2000。外 接时钟为2.5Mz。在开关打到+5V后,计算OUT脉冲的重复周期和波形的持续 时间。设端口地址为80H~83H,写出初始化程序。 通道0为方式2 通道0为方式2 0011 0100B=34H 通道1为方式1 通道1为方式1 0111 0010B=72H 通道2为方式3 通道2为方式3 1011 0110B=B6H MOV AL,34H OUT 83H,AL MOV AX,1000 OUT 80H,AL MOV AL,AH MOV AL,B6H OUT 80H,AL OUT 83H,AL MOV AL,72H OUT 83H,AL MOV AX,2000 MOV AX,500 OUT 82H,AL OUT 81H,AL MOV AL,AH MOV AL,AH OUT 82H,AL OUT 81H,AL
设8253三个计数器的端口地址为201H[试题]
1、设8253三个计数器的端口地址为201H,202H,203H,控制寄存器端口地址200H.试编写程序片段,读出计数器2的内容,并把读出的数据装入寄存器AX. 答:MOV AL,80HOUT 200H,ALIN AL,203HMOV BL,ALIN AL,203H,MOV BH,ALMOV AX,BX2、设8253三个计数器的端口地址为201H,202H,203H,控制寄存器端口地址200H.输入时钟为2MHz,让1号通道周期性的发出脉冲,其脉冲周期为1ms,试编写初化程序段.答:要输出脉冲周期为1ms,输出脉冲的频率是,当输入时钟频率为2MHz时,计数器初值是使用计数器1,先读低8位,后读高8位,设为方式3,二进制计数,控制字是76H.设控制口的地址是200H,计数器0的地址是202H.程序段如下:MOV DX,200HMOV AL,76HOUT DX,,ALMOV DX,202HMOV AX,2000OUT DX,ALMOV AL,AHOUT DX,AL3、设8253计数器的时钟输入频率为1.91MHz,为产生25KHz的方波输出信号,应向计数器装入的计数初值为多少答:= 76.4应向计数器装入的初值是76.4、设8253的计数器0,工作在方式1,计数初值为2050H;计数器1,工作在方式2,计数初值为3000H;计数器2,工作在方式3,计数初值为1000H.如果三个计数器的GATE都接高电平,三个计数器的CLK都接2MHz时钟信号,试画出OUT0,OUT1,OUT2的输出波形.答:计数器0工作在方式1,即可编程的单脉冲方式.这种方式下,计数的启动必须由外部门控脉冲GATE控制.因为GA TE接了高电平,当方式控制字写入后OUT0变高,计数器无法启动,所以OUT0输出高电平.计数器1工作在方式2,即分频器的方式.输出波形的频率f= = =666.7HZ,其周期为1.5ms,输出负脉冲的宽度等于CLK的周期为0.5 s.计数器2工作在方式3,即方波发生器的方式.输出频率f= = 2000Hz的对称方波.三个OUT的输出波形如下:5、8255A的3个端口在使用上有什么不同答:8255A的A端口,作为数据的输入,输出端口使用时都具有锁存功能.B端口和C端口当作为数据的输出端口使用时具有锁存功能,而作为输入端口使用时不带有锁存功能.6、当数据从8255A的C端口读到CPU时,8255A的控制信号,,,A1,AO分别是什么电平答:当数据从8255A的C 端口读入CPU时,8255A的片选信号应为低电平,才能选中芯片.A1,A0为10,即A1接高电平,A0接低电平,才能选中C端口.应为低电平(负脉冲),数据读入CPU,为高电平.7、如果串行传输速率是2400波特,数据位的时钟周期是多少秒答:数据位的时钟周期是= 4.17×10-4 秒8、在远距离数据传输时,为什么要使用调制解调器答:在远距离传输时,通常使用电话线进行传输,电话线的频带比较窄,一般只有几KHz,因此传送音频的电话线不适于传输数字信号,高频分量会衰减的很厉害,从而使信号严重失真,以致产生错码.使用调制解调器,在发送端把将要传送的数字信号调制转换成适合在电话线上传输的音频模拟信号;在接收端通过解调,把模拟信号还原成数字信号.9、全双工和半双工通信的区别是什么在二线制电路上能否进行全双工通信为什么答:全双工和半双工通信,双方都既是发送器又是接收器.两者的区别在于全双工可以同时发送和接收.半双工不能同时双向传输,只能分时进行.在二线制电路上是不能进行全双工通信的,只能单端发送或接收.因为一根信号线,一根地线,同一时刻只能单向传输.10、同步传输方式和异步传输方式的特点各是什么答:同步传输方式中发送方和接收方的时钟是统一的,字符与字符间的传输是同步无间隔的.异步传输方式并不要求发送方和接收方的时钟完全一样,字符与字符间的传输是异步的.11、在异步传输时,如果发送方的波特率是600,接收方的波特率是1200,能否进行正常通信为什么答:不能进行正常通信,因为发送方和接收方的波特率不同,而接收端的采样频率是按传输波特率来设置.12、8251A在编程时,应遵循什么规则答:8251在初始化编程时,首先使芯片复位,第一次向控制端口(奇地址)写入的是方式字;如果输入的是同步方式,接着向奇地址端口写入的是同步字符,若有2个同步字符,则分2次写入;以后不管是同步方式还是异步方式,只要不是复位命令,由CPU向奇地址端口写入的是命令控制字,向偶地址端口写入的是数据.13、试对一个8251A进行初始化编程,要求工作在同步方式,7位数据位,奇校验,1个停止位.答:对原题目的补充改动,要求工作在内同步方式,2个同步字符.方式字是:00011000B=18H程序段如下:XOR AX,AXMOV DX,PORTOUT DX,ALOUT DX,ALOUT DX,AL ;向8251的控制口送3个00HMOV AL,40HOUT DX,AL ;向8251的控制口送40H,复位MOV AL,18HOUT DX,AL ;向8251送方式字MOV AL,SYNC ;SYNC为同步字符OUT DX,ALOUT DX,AL ;输出2个同步字符MOV AL,10111111BOUT DX,AL ;向8251送控制字一个异步串行发送器,发送具有8位数据位的字符,在系统中使用一位作偶校验,2个停止位.若每秒钟发送100个字符,它的波特率和位周期是多少答:每个字符需要的发送位数是12位(数据位8位,校验位1位,停止位2位,起始位1位).每秒发送100个字符共1200位.因此波特率为1200波特,位周期=≈83314、简述行列式键盘矩阵的读入方法.答:将行线接输出口,列线接输入口,采用行扫描法,先将某一行输出为低电平,其它行输出为高电平,用输入口来查询列线上的电平,逐次读入列值,如果行线上的值为0时,列线上的值也为0,则表明有键按下.否则,接着读入下一列,直到找到该行有按下的键为止.如该行没有找到有键按下,就按此方法逐行找下去,直到扫描完全部的行和列.15、简述用反转法实现键的识别的基本方法.答:将题目中的键改为闭合键.用反转法识别闭合键,需要用可编程的并行接口.行线和列线分别接在PA和PB 2个并行口上,首先让行线上的PA口工作在输出方式,列线上的PB口工作在输入方式,通过编程使PA口都输出低电平,然后读取PB口的列线值,如果某一列线上的值为0,则判定改列有某一键按下.为了确定是哪一行要对PA和PB 进行反转,即对PA口重新进行初始化工作在输入方式,列线上的PB口工作在输出方式,并将刚读取的列线值从列线所接的PB口输出,再读取行线所接的PA 口,取得行线上的输入值,在闭合键所在的行线上的值必定为0.这样,当一个键被按下时,必定可读得一对唯一的行值和列值.根据这一对行值和列值就可判断是哪一行哪一列的键被按下.16、LED数码管显示器共阴极和共阳极的接法主要区别是什么答:LED数码管显示器共阴极的接法是发光二极管的阴极接地,当数码管的笔划发光二极管的阳极为高电平时,该笔划被点亮.共阳极的接法是发光二极管的阳极接高电平,当数码管的笔划发光二极管的阴极为低电平时,该笔划被点亮.总之,主要区别在于LED数码管的接法和驱动笔划的数据电平的不同.17、试绘图说明LED数码管显示器的动态显示原理.答:使用书上的图7.8在图中LED数码管是共阴极的,总共可带动8位这样的LED数码管.动态驱动显示接口与静态驱动显示接口的一个明显特点是:动态驱动法将多位LED同名段的选择线都并联在一起,即8位中的所有同名段a接在一起,所有b段都接在一起……,这样只要一个8位的锁存器来控制段码a,b,c,d,e,f,g就够了.另外用一个锁存器来控制点亮的位.因此需要2个8位的I/O端口.由于所有位的位选择码是用一个I/O端口控制,所有段的段选择码也是用一个I/O 端口控制,因此在每个瞬间,8位LED只可能显示相同的字符.要想每位显示不同的字符,必须要采用扫描的显示方式.即在每一瞬间只能使某一位显示相应的字符,在此瞬间,由位选择控制的I/O端口在要显示的位上送入选通电平(共阴极接法送入低电平,共阳极接法送入高电平),以保证让该位显示字符;再由段选择控制的I/O端口输出相应字符的段选择码.如此循环下去,使每一位都显示该位应显示的字符,并保持延时一段时间,然后再选中下一位,利用发光显示器的余辉及人眼的视觉暂留特点,给人一种显示器同时被点亮的效果.段选择码,位选择码在每送入一次后一般需要延时1~5ms时间.18、A/D和D/A转换在微机应用中分别起什么作用答:在微机应用中A/D转换器完成输入模拟量到数字量的转换,供微机采集数据.D/A 转换器完成微机输出数字量到模拟量的转换,实现微机控制.19、D/A转换器和微机接口中的关键问题是什么对不同的D/A芯片应采用何种方法连接答:D/A转换器和微机接口时主要注意两点:第一要了解所选用的D/A转换器本身是否带有数据锁存器,如果芯片内部带有锁存器可以直接和CPU的数据总线相连接;如果芯片内部不带有锁存器,在接口电路中需要通过数据锁存器来连接CPU 的数据总线和D/A转换器的数据线.第二是要注意D/A转换器的位数和所要连接的微机数据总线的位数是否一致.以便决定在需要加数据锁存器时,加几级锁存器,如果CPU的数据总线是8位,使用的是大于8位的D/A转换器,通常采用两级缓冲结构和CPU数据总线相连.20、什么叫D/A转换器的分辨率答:D/A转换器的分辨率指它所能分辨的最小输出电压与最大输出电压的比值.通常用D/A转换器输入数字量的位数来表示.21、若一个D/A转换器的满量程(对应于数字量255)为10V.若是输出信号不希望从0增长到最大,而是有一个下限2.0V,增长到上限8.0V.分别确定上下限所对应的数.答:因为满量程为10V,则每一步的电压变化量为= 0.039V/步于是,下限是=51.3步取51,即33H.上限是= 205.1步取205,即CDH.DAC与8位总线的微机接口相连接时,如果采用带两级缓冲器的DAC芯片,为22、什么有时要用三条输出指令才能完成10位或12位的数据转换答:因为在使用内部不带数据寄存器的DAC时,常常需要在DAC前面增加数据缓冲器,用来锁存CPU通过数据总线发出的数字.如果总线为8位,而DAC超过8位(例如10位或12位)时,CPU必须分2次才能把控制数字送入数据缓冲器,例如先送数据的低8位,然后送剩下的高位,因此需要执行2条输出指令.另外,为了避免DAC在得到局部输入时,其输出端输出并不是最后结果的模拟量,通常采用2级数据缓存结构,相应地CPU也需要再增加执行一次输出指令,使在第一级缓冲器中锁存的数据经第二级缓冲器后能一次加到DAC输入端.第三条输出指令仅仅是使第二级缓冲器得到一个选通信号.23、已知某DAC的输入为12位二进制数,满刻度输出电压V om=10V,试求最小分辨率电压VLSB和分辨率.答:12位D/A的分辨率最小分辨率电压VLSB24、已知某DAC的最小分辨电压VLSB=5mV,满刻度输出电压V om=10V,试求该电路输入二进制数字量的位数n应是多少答:25、A/D转换器和微机接口中的关键问题有哪些答:A/D转换器和微机接口时的关键问题主要有6个.①A/D转换器输出和CPU的接口方式,主要有2种连接方式:一种是A/D芯片输出端直接和系统总线相连;另一种是A/D芯片输出端通过接口电路和总线相连.②A/D转换器的分辨率和微机数据总线的位数匹配:当10位以上的A/D转换器和8位数据总线连接时,由于数据要按字节分时读出,因此从8位数据线上需分2次来读取转换的数据.设计接口时,数据寄存器要增加读写控制逻辑.③A/D转换的时间和CPU的时间配合问题:要注意A/D转换的启动方式,通常启动信号分为电平控制启动和脉冲启动两种.其中又有不同的极性要求.还要注意转换后信号的处理.④A/D的控制和状态信号.因为A/D转换器的控制和状态信号的类型与特征对接口有很大影响,在设计时必须要注意分析控制和状态信号的使用条件.⑤输入模拟电压的连接,特别是多路模拟电压的切换控制. ⑥接地问题,为了减轻数字信号脉冲对模拟信号的干扰,数字地和模拟地要正确连接.26、A/D转换器为什么要进行采样采样频率应根据什么选定答:因为被转换的模拟信号在时间上是连续的,瞬时值有无限多个,转换过程需要一定的时间,不可能把每一个瞬时值都一一转换成模拟量.因此对连续变化的模拟量要按一定的规律和周期取出其中的某一瞬时值,这个过程就是将模拟量离散化,称之为采样,采样以后用若干个离散的瞬时值来表示原来的模拟量.通常为了使A/D输出信号经过D/A还原后能更好地反映输入模拟信号的变化,根据采样定理,采样频率一般要高于或至少等于输入信号中最高频率分量的2倍,就可以使被采样的信号能够代表原始的输入信号.在输入信号频率不是太高的实际应用中,一般取采样频率为最高频率的4~8倍.27、若ADC输入模拟电压信号的最高频率位20KHz,取样频率的下限是多少完成一次A/D转换时间的上限是多少答:取样频率的下限为20kHZ×2=40 kHZ 完成一次转换的最长时间是。
8253习题参考答案
2021/6/7
10
补充3:下图为秒信号发生器硬件电路,试设计程序实现其功能。
解:分析:1M→1HZ需要106分频,106>65536,两片级联 选择0通道,方式3,初值1000;选择1通道,方式3,初值 1000;端口地址未知,设控制口PORTCTL、0#计数器 PORT0、1#计数器PORT1、2#计数器PORT2
8253习题参考答案
题5-12 可编程计数/定时器8253的控制字可以设定一种“数 值锁存操作”,这种操作有何必要。
答:计数时数值锁存寄存器的值随着减1计数器的值的变化 而变化,当执行锁存命令后,数值锁存器所存当前减1计数 器的值,直到读出数值锁存器的内容后,它继续跟着减1计 数器的值的变化而变化。若果没有锁存功能,因为8253是16 位定时器计数器,计数值需要分两次读出,读出结果可能会 出错。例如某时刻计数值为1000H,读出低位00H后,这是正 赶上来一脉冲计数器减1,计数值变成了0FFFH,这时再读高8 位读出的就是0FH了,这样分两次读出的16位数据变成了 0F00H,而非希望的1000H。所以读出前必须锁存,才可以正 确读出。
分析:
2021/6/7
6
计数器0的初值:5000 MOV AL,34H MOV DX,0FFF3H OUT DX,AL MOV AX,5000 MOV DX,0FFF0H
OUT DX,AL
MOV AL,AH
OUT DX,AL
计数器1初值:1000 MOV AL,78H MOV DX,0FFF3H OUT DX,AL MOV AX,1000 MOV DX,0FFF1H
GATE0
GATE1
GATE2 8253
CLK0 OUT0 CLK1
INT 21H
8253习题
8253习题一、填空题1、82533-5是芯片,也称为片。
2、采用可编程定时/计数器,其定时与计算功能可由设定,设定后与微处理器工作。
3、8253-5内部有个结构完全相同的4、8253-5内部计数器是互相的,它们的输人和输出都取决于控制寄存器中的5、8253-5内部计数器的执行部件CE,实际上是16位计数器,它的初始值是由提供的。
6、8253计数,实际上是对信号线上的信号进行计数。
7、在PC机中,用8253的通道3向系统定时提出动态RAM刷新刷新请求,考虑在PC中选用128K某1位的动态RAM,因此要求在8m内完成芯片256行的刷新。
已确定通道工作在方式2,则要求计数器的负脉冲输出周期为m,若CLK3的输入频率为1.216MHZ,则置入通道3的计数初值为8、某8253的端口地址为40H~43H,若对计数器0进行初始化,则工作方式控制字应写入,计数初始值应写入9、8253在计数过程中,改变计数初始值,必须当外部信号触发后,新的计数值才能有效的工作方式有10、8253工作于方式2时,能产生定时信号,称为速率发生器,又称为11、当8253-5引脚CSA1A0为或等表示无效。
12、8253-5控制寄存器D5D4位为10时,表示读写位。
13、8253-5控制寄存器D5D4位为11时,表示先读写位,后读写位。
信号的,才将写入CR中的计数初值装入计数执行单元CE。
14、8253-5工作于方式2时,当计数结束输出一负脉冲后,时间,又把CR内容装入CE中,开始下一轮计数过程。
15、8253-5工作于方式3时,当计数初值为数时,输出OUT为对称方波;当计数初值为数时,输出OUT为近似对称方波。
二、选择题1、在IBM-PC系统中,8253-5三个通道的计数脉冲信号中()A、取自不同的信号源,具有不同的频率。
B、取自相同的信号源,具有相同的频率。
C、CLK0和CLK1取自同一信号源,而CLK2取自另一信号源。
D、CLK1和CLK2取自同一信号源,而CLK0取自另一信号源。
8253定时器练习1 微型计算机原理及应用课件
A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 2C0H 0 1 1 1 0 0 0 0 0 0 2C6H 0 1 1 1 0 0 0 1 1 0
…… …… ……
A0 M / IO A9
A8
A3 A4 A5 A6
8086A7
A2 A1
D7
AND
LS138
G1
G2 A
G2B
C
B A
Y3
13
中断触发信号产生如图,PCLK是频率为2.385MHz的时 钟脉冲。要求每隔20ms发一次中断请求,8253的端口地 址为2C0H~2C3H。
PCLK
D SET Q Q CLR
CLK0 OUT0 中断请求 +5V
GATE0
分析:利用定时器0, 方式2,计算初值: 将初值用二进制表示: 5D02H
D0
VCC
CS
CLK1 OUT1
A1 A0 CLK2
D7 OUT2
D0 GATE1 GATE2
2MHz
VCC22
计1:方式2,初值2000,控制字65H 计2:方式3,初值4000,控制字A7H,地址2C0H~2C6H
MOV DX, 2C6H; 外口超过FFH用DX寻址
MOV AL, 65H ; 计1控制字
LEA SI, BUF MOV AL, 00H OUT 4CH, AL IN AL, 40H MOV [SI], AL INC SI IN AL, 40H MOV [SI], AL
计0 0 0 0 0 0 0 0 0 00H
;将锁存命令写入计0控制字 ;读8253的计0口,取低字节
;读8253的计0口,取高字节
A) 结束本次结束循环,等待下一次计数的开 始 BB)) 暂暂时时停停止止现现行行计计数数工工作作
8253选择题
1、8253/8254为可编程定时/计数器,包含有(B)计数通道A、3个8位B、3个16位C、4个8位D、4个16位2、8253/8254为可编程定时/计数器,每个计数器通道具有(D)种工作方式A、3B、4C、5D、63、8253/8254为可编程定时/计数器,具有(B)种触发启动计数方式A、1B、2C、3D、44、8253只采用软件触发启动计数的工作方式为(B)A、方式0和方式1B、方式0和方式4C、方式0和方式5D、方式0和方式25、8253只采用硬件触发启动计数的工作方式为(C)A、方式1和方式2B、方式2和方式4C、方式1和方式5D、方式3和方式56、8253可采用软件或硬件触发启动计数器的工作方式为(B)A、方式0和方式1B、方式2和方式3C、方式4和方式5D、方式0和方式57、8253能够自动循环计数的工作方式为(B)A、方式0和方式1B、方式2和方式3C、方式4和方式5D、方式0和方式58、8253/8254为可编程定时/计数器,其占有(D)个口地址A、1B、2C、3D、49、当8253的控制线引脚,WR=L,A0=H,A1=H,CS=L时,完成的工作为(D)A、写计数器0B、写计数器1C、写计数器2D、写控制字10、当8253的控制线引脚,RD=L,A0=H,A1=L,CS=L时,完成的工作为(B)A、读计数器0中的计数值B、读计数器1中的计数值C、读计数器2中的计数值D、读控制字的状态11、若对8253写入控制字的值为96H,说明设定8253的(C)A、计数器1工作在方式2且将只写低8位计数初值B、计数器1工作在方式2且将一次写入16位计数初值C、计数器2工作在方式3且将只写低8位计数初值D、计数器2工作在方式3且将一次写入16位计数初值12、当8253控制字设置为3AH时,CPU将向8253(C)初值A、一次写入8位B、一次写入16位C、先写入低8位后写入高8位D、上述三种情况均不对13、8253能通过门控信号GA TE=H产生连续波形的方式有(B)A、方式1和方式2B、方式2和方式3C、方式4和方式5D、方式0和方式514、8253可以实现定时功能,若计数器脉冲为1kHz则定时1s的计数初值应为(B)A、100B、1000C、10000D、10000015、若使8253计数器1发出1kHz的方波(设输入时钟周期为T i=2MHz),其控制字为(B)A、36HB、76HC、B6HD、56H16、8253工作在方式1下,输出负脉冲的宽度等于(A)A、计数初值N个CLK脉冲宽度B、计数初值N+1个CLK脉冲宽度C、计数初值N-1个CLK脉冲宽度D、计数初值(2N-1)/2个CLK脉冲宽度值17、8253工作于方式1时,欲使输出负脉冲加宽,则可在输出计数期间(C)A、改变计数值B、改变控制字C、重新加入带上升沿的GATE信号D、复位18、在下列8253工作方式中,即使GA TE保持为高电平,处于(B)的8253在写入初值以后也不开始定时或计数A、方式0B、方式1C、方式2D、方式3。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、8253可编程计数器有两种启动方式,在软件启动时,要使计数正常进行,GATE端必须为()电平,如果是硬件启动呢?答:8253可编程计数器有两种启动方式,在软件启动时,要使计数正常进行,GATE端必须为(高)电平;如果是硬件启动,则要在写入计数初值后使GA TE端出现一个由低到高的正跳变,以启动计数。
2、某个计算机应用系统采用8253的计数器0作频率发生器,输出频率为500Hz;用计数器1产生1000Hz的连续方波信号,输入8253的时钟频率为1.19MHz。
试问:初始化时送到计数器0和计数器1计数初值分别为多少?计数器工作在什么方式下?解:计数器0工作在方式2,其计数初值为=1.19MHz/500Hz=2380计数器1工作在方式3,其计数初值为=1.19MHz/1000Hz=11903、若要求8253用软件产生一次性中断,最好采用哪种工作方式?现在用计数器0对外部脉冲计数,每计满10 000个产生一次中断,请写出工作方式控制字及计数值。
解:若8253用软件产生一次性中断,最好采用方式0,即计数结束后产生中断的工作方式。
但若要求每计满10 000个产生一次中断,则表示具有重复中断的功能,因此,此时应使用计数器0工作于方式3,即连续方波输出方式。
其工作方式控制字为0011X111B,计数初值=10 0004、试编写一段程序,按下列要求设置如下图中8254的三个计数器计数器0:二进制计数,在操作方式0下操作,计数初值为1234H计数器1:BCD计数,在操作方式2下操作,计数初值为100H计数器2:二进制计数,在操作方式4下操作,计数初值为1FFFH解:计数器0的方式字=00110000B计数器1的方式字=01010101B计数器2的方式字=10111000BMOV AL , 30HOUT 4CH , ALMOV AL , 55HOUT 4CH , ALMOV AL , 0B8HOUT 4CH , ALMOV AL , 34HOUT 40H , ALMOV AL , 12HOUT 40H , ALMOV AL , 00HOUT 44H , ALMOV AL , 01HOUT 44H , ALMOV AL , 0FFHOUT 48H , ALMOV AL , 1FHOUT 48H , AL5、试编写一个在计数进行的过程中进行读计数器2内容的程序段,并把读取的值放入AX 寄存器中,假设8253定位在I/O地址40H上,其中芯片输入线A1、A0分别接到A3、A2。
解:MOV AL , 1000XXXXBOUT 4CH , ALIN AL ,48HMOV BL ,ALIN AL ,48HMOV AH , ALMOV AL , BL6、设8253芯片的端口地址为230H~233H.要求通道0工作在方式3,计数器初值01F0H。
通道1工作在方式2,计数器初值0064H。
试编制初始化程序解:MOV DX , 233HMOV AL , 36HOUT DX , ALMOV DX , 230HMOV AL , 0F0HOUT DX , ALMOV AL , 01HOUT DX , ALMOV DX , 233HMOV AL , 74HOUT DX , ALMOV DX , 231HMOV AL , 64HOUT DX , ALMOV AL , 00HOUT DX , AL7、要求8253输出周期为100ms的方波。
设系统时钟为2MHz,口地址为1E0H~1E3H,CPU 为8088解:计数器初值N=100ms /(1/ 2MHz )=20×10000>65535,故需要两个计数通道协助完成,设选用通道0和通道1MOV AL , 17HMOV DX , 1E3HOUT DX , ALMOV AL , 20HMOV DX , 1E0HOUT DX , ALMOV AL , 57HMOV DX , 1E3HOUT DX , ALMOV AL , 00MOV DX , 1E1HOUT DX , AL8、若要用8253通道0,工作在方式1,按二-十进制计数,计数值为5080,初始化编程为什么?(若端口地址为F8H~FBH)解:确定通道控制字00 11 001 1MOV AL , 33HOUT 0FBH , ALMOV AL , 80HOUT 0F8H , ALMOV AL , 50HOUT 0F8H , AL9、编程将8253计数器0设置为模式1,计数初值为3000H;计数器1设置为模式2,计数初值为2010H;计数器2设置为模式4,计数初值为4030H;口地址为80H~83H,CPU为8088.解:计数通道0 控制字00 10 001 0=22H计数通道1 控制字01 11 010 0=74H计数通道2 控制字10 11 100 0=B8HMOV AL , 22HOUT 83H , ALMOV AL , 30HOUT 80H , ALMOV AL , 74HOUT 83H , ALMOV AL , 10HOUT 81H , ALMOV AL , 20HOUT 81H , ALMOV AL , 0B8HOUT 83H , ALMOV AL , 30HOUT 82H , ALMOV AL , 40HOUT 82H , AL10、PC/XT中的8253的通道0为系统提供恒定的时钟基准。
通道0的工作方式控制字是36H,规定以方式3工作,计数初值为216(即0000H)。
OUT0输出频率为18.2Hz(1.193/216)基准方波信号。
该信号送给中断控制器8259A的中断请求端IRQ0,申请中断,中断周期为55ms,CPU在中断服务子程序中,对该基准信号进行处理,计算出当前时间。
在ROM-BIOS对8253通道0的编程?解:MOV AL , 00 11 011 0BOUT 43H , ALMOV AL , 0OUT 40H , ALOUT 40H , AL11、若要读取通道1的16位计数值,其程序为什么?(若端口地址为F8H~FBH)解:MOV AL , 40HOUT 0FBH , ALIN AL , 0F9HMOV CL , ALIN AL , 0F9HMOV CH , AL12、设8253的口地址为0C8H~0CBH,计数脉冲为1MHz,试说明下述程序段的作用:MOV AL , 35HOUT 0CBH , ALMOV AL , 00OUT 0C8H , ALMOV AL , 50HOUT 0C8H , ALMOV CX , 100LP: NOPLOOP LPMOV AL , 00HOUT 0CBH , ALIN AL , 0C8HMOV AH , ALIN AL , 0C8H解:设置8253计数通道0工作在方式2,每5ms(=(1/1MHz)*5000)发一个负脉冲。
延时一段时间后读出当前计数值,并存入在AX中。
13、设某8088系统中,8253占用口地址40H~43H。
其实现产生电子时钟基准(定时时间为50ms)和产生方波用作扬声器音调控制(频率为1kHz)。
试为其编制8253的初始化程序(设系统中提供计数时钟为2MHz)解:产生电子时钟基准可采用方式2,计数初值N=50ms*(1/2MHz)=100000>65535,故需要2个计数通道协作完成,设选用通道0和通道1通道0:控制字=00 11 010 0B,计数初值=1000通道1:控制字=01 01 010 0B,计数初值=100产生方波采用方式2,计数初值=(1/1kHz)*(1/1MHz)=1000<65535,故需要一个计数通道完成,设选用通道2.计数初值=1000H,控制字=10 10 011 1BMOV AL , 00 11 010 0BOUT 43H , ALMOV AX , 1000OUT 40H , ALMOV AL , AHMOV AL , 01 01 010 0BOUT 43H , ALMOV AL , 100OUT 41H , ALMOV AL , 10 10 011 1BOUT 43H , ALMOV AL , 10HOUT 42H , AL14、试用PC系统的8254组成一个时钟系统。
0通道作为秒计数器,1通道作为分计数器,2通道作为时计数器。
设系统提供的计数脉冲频率已被分频为50kHz,口地址为90H~93H。
编制初始化程序并画出连线图。
解:计数器0 计数初值=1s/(1/50kHz)=50000 控制字=00 11 010 0 B计数器1 计数初值=60 控制字=01 01 010 0 B计数器2 计数初值=60 控制字=10 01 010 1 B8254CLK0OUT0CLK1OUT1CLK2OUT250kHzMOV AL , 34HOUT 93H , ALMOV AX , 50000OUT 90H , ALMOV AL , AHOUT 90H , ALMOV AL , 54HOUT 93H , ALMOV AL , 60OUT 91H , ALMOV AL , 95HOUT 93H , ALMOV AL , 60HOUT 92H , AL15、设8253的4个端口地址分别为210H、211H、212H、213H,其计数器0的时钟CLK0端输入1MHz脉冲,编程使其实现:1)将计数器0设置为连续产生20kHz方波;2)将1)中计数器0的输出OUT0作为计数器1的时钟CLK1,使其连续产生20ms定时中断解:要计数器0设置为连续产生20kHz方波,需设置方式3,方式控制字00 01 011 0B 计数器初值=1MHz/20kHz=50=32H初始化程序如下:MOV DX , 213HOUT DX , ALMOV DX , 210HMOV AL , 32HOUT DX , AL将OUT0作为计数器1的时钟CLK1 计数器初值=20kHz/50Hz=400=190H 方式控制字01 11 011 0BMOV AL , 01 11 011 0BMOV DX , 213HOUT DX , ALMOV DX , 211HMOV AX , 190HOUT DX , ALMOV AL , AHOUT DX , AL16、若8253芯片的接口地址为D0D0H~D0D3H,时钟信号频率为2MHz。
现利用计数器0、1、2分别产生周期为10μs的对称方波及每1ms和1s产生一个负脉冲,试画出连接图,编写初始化程序。
8253CLK0OUT0CLK1OUT1CLK2OUT22MHz解:计数器0 计数初值=10μs /0.5μs =20计数器1 计数初值=1ms /0.5μs=2000计数器2 计数初值=(1s /0.5μs)/2000=2*106/2000=1000MOV DX , 0D0D3HMOV AL , 16HOUT DX , ALMOV AL , 74HOUT DX , ALMOV AL , 0B4HOUT DX , ALMOV DX , 0D0D0HMOV AL , 20OUT DX , ALMOV DX , 0D0D1HMOV AX , 2000OUT DX , ALOUT DX , ALMOV DX , 0D0D2HMOV AX , 1000OUT DX , ALMOV AL , AHOUT DX , AL17、PC/XT中8253产生声音3个程序,见PPT,回答问题18、Stack segment stackDw 64 dup(?)Stack endsCode segmentAssume cs:codeStart: in al , 21hand al , 7fhout 21h , almov al , 90hout 43h , almov al , 05hout 42h , alhlta1: stijmp a1irq7: mov ax , 014dhint 10hmov ax , 0120hint 10hin al , 20hout 20h , aliretcode endsend start(1)试验步骤(3)中在内存中填入IRQ 7中断矢量,请描述如何完成?使用反汇编U 命令,查找irq7: mov ax , 014dh 地址(IP=1220H CS=0000H ),然后使用E 命令将0000:003CH 单元填写IRQ 7中断程序入口地址。