微机实验报告标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-第一次实验实验01 I/O端口地址译码实验一、实验目的掌握I/O地址译码电路的工作原理。
二、实验原理1、实验电路如原理图所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。
译码输出端Y0~Y7在实验台上“I/O地址”输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,…… 当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。
例如:执行下面两条指令MOV DX,290HOUT DX,AL(或IN AL,DX)Y2输出一个负脉冲,执行下面两条指令:MOV DX,2A0HOUT DX,AL(或IN AL,DX)Y4输出一个负脉冲。
(II型机)2. 接线II型机:I/O 地址/Y2(290H---297H) 接 D 触发器/CLKI/O 地址/Y4(2A0H---2A7H) 接 D 触发器/CDD 触发器/D 接 D 触发器/SD 接+5VD 触发器/Q 接逻辑笔或L7I型机:I/O 地址/Y4 接 D 触发器/CLKI/O 地址/Y5 接 D 触发器/CD……三、实验内容利用负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。
四、实验内容实现分析分析实验连接图;说明实现该内容的原理;画出流程图。
五、实验程序DATA SEGMENTOUTPORT1 EQU 290HOUTPORT2 EQU 2A0HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXCNG: MOV DX,OUTPORT1OUT DX,ALCALL DELAY ;调延时子程序MOV DX,OUTPORT2OUT DX,ALCALL DELAY ;调延时子程序MOV AH,1INT 16HJE CNGMOV AX,4C00HINT 21HDELAY PROC NEAR ;延时子程序MOV BX,200LLL: MOV CX,0LL: LOOP LLDEC BXJNE LLLRETDELAY ENDPCODE ENDSEND START六、实验结果与分析试验中正确连线后,在软件中写好程序,当编译成功后运行。
这是会看到小灯闪烁,且闪烁时间由延时程序决定,当按下键盘时结束。
七、实验总结通过本次实验,基本掌握I/O地址译码电路的工作原理。
会写延时程序。
在实验中达到了预期灯泡一亮一灭的效果。
自己可以控制灯泡亮灭的速度。
实验02-1 简单并行接口输入输出一、实验目的掌握简单并行接口的工作原理及使用方法。
二、实验原理1、简单并行输入接口电路如图连接。
74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0~K7,8个数据输出端分别接数据总线D0~D7。
2、简单并行输出接口电路如图连接。
(74LS273插通用插座,74LS32用实验台上的“或门”)。
74LS273为八D触发器,8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电路L0~L7。
上述并行输出接口的地址为2A8H,并行输入接口的地址为2A0H,通过上述并行接口电路输出数据需要3条指令:MOV AL,数据MOV DX,2A8HOUT DX,AL通过上述并行接口输入数据需要2条指令:MOV DX,2ADHIN AL,DX3、接线244输入/CS 接 I/O译码/Y4(2A0H---2A7H)244输入/JP12(O7---O0) 接总线/JP14(D7---D0)244输入/JP11(IN7---IN0) 接逻辑开关/JP1(K7---K0)273输出/CS 接 I/O译码/Y5(2A8H---2AFH)273输出/JP12(O7---O0) 接 LED显示/JP2(L7---L0)273输出/JP9(IN7---IN0) 接总线/JP14(D7---D0)三、实验内容1、用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这个ASCⅡ码,并将其对应字母在屏幕上显示出来。
2、编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。
四、实验内容实现分析分析实验连接图;说明实现该内容的原理;画出流程图。
五、实验程序实验内容1:ls244 equ 2a0hcode segmentassume cs:codestart:mov dx,ls244 ;从2A0输入一数据 in al,dxmov dl,al ;将所读数据保存在DL中 mov ah,02int 21hmov dl,0dh ;显示回车符int 21hmov dl,0ah ;显示换行符int 21hmov ah,06 ;是否有键按下mov dl,0ffhint 21hjnz exitje start ;若无,则转startexit: mov ah,4ch ;返回int 21hcode endsend start实验内容2:inp=0ef00h-280h+2a0hcode segment assume cs:codestart: mov dx , inpin al ,dxmov dl , al 输入数据到dlmov ah , 2int 21h 显示单个字符{ mov dl , 0dhint 21h }jmp start 无键盘输入则转startmov ah , 4chint 21h 结束code endsend六、实验结果与分析试验中正确连线后,在软件中写好程序,当编译成功后运行。
此时改变开关的开通与关断组合,屏幕会显示对应的字符。
接通电路,运行实验程序1,当键盘输入不同值时,可以看到var cpro_psid = "u2787156";var cpro_pswidth = "966";var cpro_psheight = "120";实验箱上的LED灯与键盘输入的值对应的ASCII码值一一对应。
2、接通电路,运行实验程序2(不包括大括号里的),当拨动不同的开关(ASCII码值)作输入时可以看到与之对应的字符出现在屏幕上,且字符充满屏幕;运行试验程序2(包括大括号里的),当拨动不同的开关(ASCII码值)作输入时可以看到与之对应的字符出现在屏幕上,此时屏幕上只有一个字符。
七、实验总结实验过程中,可能会出现这样或那样的问题,当出现这些问题时,比如程序出错、连接线路出错等等。
当遇到这些问题时,首先应该自己解决,实在不行,再问老师。
通过解决问题,可以学到很多东西的。
实验十二系统中断控制器8259A一、实验目的1、掌握PC机中断处理系统的基本原理。
2、学会编写中断服务程序。
二、实验原理1、实验原理PC机用户可使用的硬件中断只有可屏蔽中断,由8259中断控制器管理。
中断控制器用于接收外部的中断请求信号,经过优先级判别等处理后向CPU发出可屏蔽中断请求。
IBMPC、PC/XT机内有一片8259中断控制器对外可以提供8个中断源:中断源中断类型号中断功能IRQ0 08H 时钟IRQ1 09H 键盘IRQ2 0AH 保留IRQ3 OBH 串行口2IRQ4 0CH 串行口1IRQ5 0DH 硬盘IRQ6 0EH 软盘IRQ7 0FH 并行打印机8个中断源的中断请求信号线IRQ0~IRQ7在主机的62线ISA总线插座中可以引出,系统已设定中断请求信号为“边沿触发”,普通结束方式。
对于PC/AT及286以上微机内又扩展了一片8259中断控制,IRQ2用于两片8259之间级连,对外可以提供15个中断源:中断源中断类型号中断功能IRQ8 070H 实时时钟IRQ9 071H 用户中断IRQ10 072H 保留IRQ11 O73H 保留IRQ12 074H 保留IRQ13 075H 协处理器IRQ14 076H 硬盘IRQ15 077H 保留TPC-USB实验板上,固定的接到了3号中断IRQ3上,即进行中断实验时,所用中断类型号为0BH。
TPC-USB实验板上,扩展中断固定的接到了10号中断IRQ10上,即进行中断实验时,所用中断类型号为072H。
2、接线单脉冲2/正脉冲接 IRQ/总线单脉冲1/正脉冲接 IRQ10/usb核心板三、实验内容1、中断IRQ3实验,实验电路如图12-1,直接用手动产单脉冲作为中断请求信号(只需连接一根导线)。
要求每按一次开关产生一次中断,在屏幕上显示一次“TPCA Interrupt3!”,中断10次后程序退出。
2、中断IRQ10实验,实验电路如图12-2,直接用手动产单脉冲作为中断请求信号(只需连接一根导线)。
要求每按一次开关产生一次中断,在屏幕上显示一次“TPCA Interrupt10!”,中断10次后程序退出。
3、中断嵌套实验,分别用手动产生单脉冲作为中断IRQ3和IRQ10的请求信号,申请中断IRQ3后,进入中断3程序,再申请高级中断IRQ10。
四、实验内容实现分析分析实验连接图;说明实现该内容的原理;画出流程图。
实验12_1_系统中断INT3:实验12_2_系统中断INT10:五、实验程序实验12_1_系统中断INT3:DATA SEGMENTMESS DB 'TPCA INTERRUPT3!',0DH,0AH,'$' DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,CSMOV DS,AXMOV DX,OFFSET INT3MOV AX,250BHINT 21HIN AL,21HAND AL,0F7HOUT 21H,ALMOV CX,10STILL: JMP LLINT3: MOV AX,DATAMOV DS,AXMOV DX,OFFSET MESSMOV AH,09INT 21HMOV AL,20HOUT 20H,ALLOOP NEXTIN AL,21HOR AL,08HOUT 21H,ALSTIMOV AX,4C00HINT 21HNEXT: IRETCODE ENDSEND START实验12_2_系统中断INT10:dATA SEGMENTMESS DB 'TPCA INTERRUPT10!',0DH,0AH,'$' DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA START: CLIMOV AX,CSMOV DS,AXMOV DX,OFFSET INT10MOV AX,2572HINT 21HIN AL,21HAND AL,0FBHOUT 21H,ALIN AL,0A1HAND AL,0FBHOUT 0A1H,ALMOV CX,10STILL: JMP LLINT10: MOV AX,DATAMOV DS,AXMOV DX,OFFSET MESSMOV AH,09INT 21HMOV AL,20HOUT 20H,ALOUT 0A0H,ALLOOP NEXTIN AL,21HOR AL,04HOUT 21H,ALSTIMOV AX,4C00HINT 21HNEXT: IRETCODE ENDSEND START六、实验结果与分析1、直接用手动产单脉冲作为中断请求信号,每按一次开关产生一次中断,在屏幕上显示一次“TPCA Interrupt3!”,中断10次后程序退出。