微机原理题!急!

8253通道2接有一发光二极管要使二极管以点亮3秒熄灭3秒的方式工作请编程实现8253各通道地址分别为ffech——ffefh 注假设计时器1工作在方式2其输出频率为1khz

例10. 1 用8253监视一个生产流水线,每通过100个工件。蜂鸣器响6s。频率为1000HZ。

① 硬件连接:硬件接口示意图如图10. 20所示,工件从光源与光敏电阻之间通过时,在晶体管的发射极上会产生一个脉冲,此脉冲作为8253计数通道0的计数脉冲,当通道0计数满100后,由OUT0输出负脉冲,经反相后作为8259A的一个中断请求信号,在中断服务程序中,启动8253计数通道1工作,由OUT1连续输出1000HZ的方波,持续6s后停止输出。

② 控制字设置:通道0计数器工作于方式2,采用BCD计数,因计数初值为100,采用RL1RL0=10(读/写计数器的高8位),则方式控制字为00100101B。

通道1计数器工作于方式3,CLK1接2MHZ时钟,要求产生1000HZ的方波,则计数初值应为2000000÷1000=2000,采用RL1RL0=10(只读/写高8位),BCD计数,则方式控制字为01100111B。

③ 程序编制:假设8253通道0的地址为40H,通道1的地址为42H,控制口地址为46H。8255A的A口地址为80H,工作于方式0输出。

则主程序为:



MOV AL,25H ;通道0初始化

OUT 46H,AL

MOV AL,01H ;计数初值高8位,低8位自动清零

OUT 40H,AL

STI ;开中断

LOP: HLT ;等待中断

JMP LOP

中断服务程序为:

MOV AL,01H ;通道1的GATE1置1,启动计数

OUT 80H,AL

MOV AL,67H ;通道1初始化

OUT 46H,AL

MOV AL,20H ;计数初值高8位,低8位自动清零

OUT 42H,AL

CALL DL6s ;延时6s

MOV AL,00H ;通道1的GATE1置0,停止计数

OUT 80H,AL

┇ ;向8259A发中断结束命令

IRET

例10. 2 8253通道2接有一发光二极管,要使发光二极管以点亮2s,熄灭2s的间隔工作,8253各通道端口地址分别为40H、42H、44H、46H,其电路硬件图如图10. 21所示,试编程完成以上工作。
根据要求8253通道2输出一个周期为4s的方波。从图10. 21可知通道1的CLK1输入时钟周期为1μs,若通道1工作为定时,其输出最大定时时间为1×65536μs,仅为65.5ms,因而使用一个通道达不到定时时间4s的要求。此时,采用通道级连的办法,将通道1的输出OUT1作为通道2的输入脉冲。

8253的通道1工作于方式2,其输出端OUT1的输出为相对于1MHZ频率的分频脉冲,若选定OUT1输出脉冲周期为4ms,则通道1的计数初值应为4000。周期为4ms的脉冲作为通道2的输入,要求输出端OUT2的波形为方波且周期为4s,因此通道2应工作于方式3,计数初值为1000。通道1的控制字为01100101B,通道2的控制字为10100111B。

由于计数初值的低8位0,因此采用只读/写高8位的方法,初始化程序如下:



MOV AL,65H ;通道1控制字,只读/写高8位,BCD计数制

OUT 46H,AL

MOV AL,0A7H ;通道2控制字,只读/写高8位,BCD计数制

OUT 46H,AL

MOV AL,40H ;通道1计数初值高8位,低8位自动置0

OUT 42H,AL

MOV AL,10H ;通道2计数初值高8位,低8位自动置0

OUT 44H,AL



例10.3某系统利用8253-5定时器/计数器通道0产生1KHz的重复方波,问通道0应工作在什么工作方式?若CLK0=2MHz,试写出通道0的初始化程序。设8253-5端口地址为2F0H、2F2H、2F4H、2F6H。

解:(1)因为只有方式3可产生重复方波,所以计数通道0应工作在方式3。

(2)首先计算计数初值:

N = (2*106)/(1*103)= 2000

其次确定方式控制字,由于采用BCD计数,只读/写高八位,因而方式控制字为00100111B。

最后编写程序。注意:由于端口地址为2F0H、2F2H、2F4H、2F6H,是16位地址,因此必须采用端口寻址中的DX寄存器间接寻址。程序如下:

MOV DX,2F6H ;通道0初始化

MOV AL,00100111B

OUT DX,AL

MOV DX,2F0H ;写入计数初值高8位,低8位自动清零

MOV AL,20H

OUT DX,AL
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-01-10
现在我给你回答也晚了吧?给你推荐本书《pc机汇编语言与接口技术》,放假回家没事研究研究吧!祝你好运,考试别挂!本回答被提问者采纳

急.!!!微机原理: 用1024*1位RAM芯片设计一个128KB的存储器系统,需要多 ...
答案:128K*8b\/(1024*1)=128*8 这种题目就好像搭积木,存储单元个数不够,就字扩展;位数不够就位扩展;字扩展和位扩展的相乘,就是答案了。本题目标系统是128KB,也就是128K*8,而芯片是1024*1,即1K*1 本题存储单元个数不够,目标系统是128K,而原有芯片才1024也就是1K,所以需要128个进...

微机原理的问题。求助。。。0ABCDH和1234H
偏移地址 = 物理地址 – 段地址 (1) = 3FF85H – 3FB00H = 0485H。(2) = 40AFEH – 3FB00H = 0FFEH。1234是十进制数。1234h是十六进制数。1234h =4066。h是十六进制数后缀,d是十进制数后缀。含义 由于表示方式没有单一、已协定的标准,所以以上的表示方式都有被使用,有时甚至在同一...

关于微机原理的一些问题,急求解答,若答案全,会追加悬赏
1.数据总线 数据总线是CPU与存储器、CPU与I\/O接口设备之间传送数据信息(各种指令数据信息)的总线,这些信号通过数据总线往返于CPU与存储器、CPU与I\/O接口设备之间,因此,数据总线上的信息是双向传输的。2.地址总线 地址总线上传送的是CPU向存储器、I\/O接口设备发出的地址信息,寻址能力是CPU特有的功能...

请高手帮忙解决下有关微机原理的问题
要求加分。太多题了,累死我了。14、8088系统中,一个I\/O或存储器读写的基本总线周期包含 4 个状态。为了解决CPU和存储器或外设速度不匹配的问题,在CPU中设计了一条 READY 输入线。在存贮器或外设速度较慢时,要在 T3 状态后插入一个或几个 TW 状态周期。13、8088微机系统中,存贮器采用了分段...

关于微机原理的问题
2.将十进制数46用分离BCD码形式定义到BCDWORD字单元的伪指令定义语句为 BCDWORD EQU 0406 .这个应该叫是非组合BCD码吧。我们学的反正是这样的。3.若给某微机系统配置16K字节的SRAM电路,SRAM芯片选用Intel2114,则共需___16*2=32片___ 片2114芯片。 2114 1k*4 ---> 16K*8 4. 在8086系...

微机原理的一道题,求过程
根据题目中的信息,计数器的时钟频率为2MHz,也就是说,计数器每计数1次所需的时间为1\/2MHz=0.5us。如果要在计数到0时发出中断请求信号,则需要设置计数器的初值为计数器计数到0所需的计数次数,即所需的时间除以计数器的时钟频率,即:计数次数 = 所需的时间 \/ 计数器的时钟频率 程序中使用了...

微机原理问题谢谢回答
1、INT 21H 为何就可以显示一行hello,什么原理呢?回答:看这个语句,MESG DB 'HELLO',0DH,0AH,'$'.这一句就像C语言里的定义一个字符串,这个字符串的前5个字节是H、E、L、L、O,然后是0DH、OAH最后是$.其中,$是字符串结束标志,就像C语言里的\\0。而INT 21 这个语句调用DOS中断程序,...

微机原理的题目,高手帮下忙,说说怎么做
1,一个字为两个字节,双字就是四个字节,10个双字也就是占40个单元,其起始地址为1200H:2EF0H,也就是段地址为1200H,偏移地址为2EF0H,物理地址=段地址*16+偏移地址;所以起始物理地址为:1200H*16+2EF0H=14EF0H,末单元的物理地址为:14EF0H+40-1=14F17H;2,有效地址为:0206H+100H...

微机原理问题
2.物理地址=DS*16+DI+VAR=20000H+0500H+0100H 3.MOV AX,56 AAA AX 4. 0100 0000 + 1110 1011 =10010 1011 CF=OF=1 5.这个问题你没问清楚 6.复位地址寄存器分别为(cs)=OFFFFH 其它寄存器都为0,故为0FFFF0H 7.此题方法是先写控制字,再对地址顺写低位和高位。具体数值查书 8....

微机原理问题
第5题:物理地址 =段基址x10H +偏移量 段基址=(物理地址 -段内偏移址)\/10H 若该存储单元逻辑地址在代码段:则 CS =(3FA0A-3A0AH)\/10H =3C00H 若该存储单元逻辑地址在数据段:则 DS =(3FA0A-047AH)\/10H =3F59H 若该存储单元逻辑地址在堆栈段:则 SS =(3FA0A-F0AAH)\/10H =3096H...

相似回答