1、1 实验 一 可编程并行接口 一、 实验目的 1、 掌握8255方式0的工作原理及使用方法 二、 实验内容 1、 实验电路如下图8255C口接逻辑电 平开关K0 K7A口接LED 显示电路L0 L7。 2、 编程从8255C口输入数据再从A 口输出。 三、 编程提示 1、8255控制寄存器端口地址 28BH A口的地址 288H C口的地址 28AH 2、参考流程图如流程图 2 四、程序清 单 CSEG SEGMENT ASSUME CS:CSEG START: MOV DX28BH MOV AX10001001B OUT DXAX NEXT: MOV DX28AH IN ALDX MOV D
2、X288H OUT DXAL CMP AL00H JNZ NEXT jmp NEXT CSEG ENDS END START 五、实验步骤 1把A口C口的电路与PAPC连接好在运行程序 六、实验结果 改变逻辑电平开关K0K7的值LED显 示对应的结果从而实现数据从C口输入从A 口输出。 七、实验分析与总结 1 微机计算机接口电路普遍采用大规模集成电路芯片知道了使用灵活通用性强是8255的最大的特性。 2 知道如何在DOS 下运行程序认识了8255的工作方式。 3 实验二 串行通讯 一、 实验目的 1、 了解界串行通讯的基本原理 2、 掌握串行接口芯片8251的工作原理和编程方法 二、 实验内容
3、 1、 按图接好电路8251插通用插座其中8253计数器用于产生8251的发送和接收时钟TXT和RXD连在一起。 2、 编程从键盘输入一个字符将其ASCII码加一后发送出来在接收回来在屏幕上显示实现自发自收。 三、 实验提示 1、 图示电路 8251的控制口地址为2B9H数据口地址为2B8H。 2、 8253 计数器的计数初值时钟频率/波特率波特率因子这里的 时钟频率接1MHZ波特率若选1200波特率因子若选1200波特率因子16则计数器初值52。 3、 收发采用查询方式。 4、 参考流程图 4 四、程序清单 DSEG SEGMENT DATA DB 1310HOW ARE YOU 1310
4、DSEG ENDS CSEG SEGMENT ASSUME CS:CSEGDS:DSEG BEGIN: MOV DX283H MOV AL00011111B OUT DXAL MOV DX280H MOV AL52H OUT DXAL MOV DX2B9H MOV AL00H OUT DXAL OUT DXAL 5 OUT DXAL MOV AL40H OUT DXAL MOV AL01111010B OUT DXAL MOV AL00010101B OUT DXAL MOV AXDSEG MOV DSAX MOV DXOFFSET DATA MOV AH09H INT 21H SEND: M
5、OV DX2B9H IN ALDX TEST AL01H JZ SEND MOV AH07H INT 21H CMP AL1BH JE EXIT MOV AH0EH INT 10H ADD AL1 MOV DX28BH OUT DXAL RECEIVE:MOV DX2B9H IN ALDX TEST AL02H JZ RECEIVE MOV DX2B8H IN ALDX MOV AH0EH INT 10H JMP SEND EXIT: MOV AH4CH INT 21H CSEG ENDS END BEGIN 五、 实验步骤 1、 打开实验箱按 实验电路图连接好电路打开电源 2、 输入汇编源程
6、序并编译执行 3、 从键盘中输入字符观察显示结果 4、 验证结果进行总结 5、 实验结束整理实验仪器 6 六、 实验结果 从键盘输入一个字符其ASCII码加一后发送出来接收回来在屏幕上显示实现自发自收。 七、 实验分析和总结 1 知道了8251的工作方式与并行通信相比串行通信的传输速度慢信息 低。 2 在一些不懂的问题上经过老师和同学的讲解终于明白了8251的功能和代 码的意思。 7 实验三 可编程定时器/计数器 一、 实验目的 掌握8253的基本工作原理和编程方式。 二、 实验内容 1、 按图虚线连接电路将计数器0设置为方式0计数器初值为NN0FH用手动逐个输入单脉冲编程使计数值在屏幕上显示
7、并同时用逻辑笔观察OUT0电平变化当输入N1个脉冲后OUT0变高电平。 2、按图15连接电路将计数器1设置为方式3计数器初值为1000用逻辑笔观察OUT1 输出电平变化频率1HZ 。 三、 编程提示 1、8253控制寄存器地址 283H 计数器0地址 280H 计数器1地址 281H CLK0连接时钟 1MHZ 2、参考流程图 8 四、程序清单 DSEG SEGMENT ZERO DSEG ENDS CSEG SEGMENT ASSUME CS:CSEGDS:DSEG START: MOV AXDSEG MOV DSAX MOV AL10H MOV DX283H OUT DXAL MOV DX
8、280H MOV AL05H OUT DXAL MOV BLAL LABLE1: MOV DX280H IN ALDX CMP AL05H JNZ LABLE1 MOV DL05H ADD DLZERO MOV AH02H INT 21H 9 LABLE: MOV DX280H IN ALDX CMP BLAL JZ LABLE MOV BLAL ADD ALZERO MOV DLAL MOV AH02H INT 21H CMP AL00H JNZ LABLE MOV AL20H INT 21H CSEG ENDS END START 五、实验步骤 1、打开实验箱按实验电路图连接好电路打开电源
9、 2、输入汇编源程序并编译执行 3、每手动逐个输入单脉冲观察显示结果 4、 验证结果进行总结 5、 实验结束整理实验仪器 六、 实验结果 在示波器上显示一串方波 七、 实验分析和总结 1 知道每个操作在严格的时序控制下完成。有时要求能对外部事件计数。 2 通过老师和同学的帮助终于完成了实验为I/O设备有提供精确的定时信号作为一个可编程的波率器实现时间延迟。 10 实验四 中断 一、 实验目的 1、 掌握PC机中断处理系统的基本原理。 2、 会编写中断服务程序。 二、 实验原理和内容 1、实验原理 PC 机用户可使用的硬件中断只有可屏蔽由8259中断控制器管理。中断控制器用于接收外部的中断请求信
10、号经过优先级辨别等处理后向CPU发出可屏蔽中断 请求。 IBMPC、PC/XT机内有一片8259中断控制器对外可以提供8个中断源 中断源 中断类型 中断功能 IRQ0 08H 时钟 IRQ1 09H 键盘 IRQ2 0AH 保留 IRQ3 0BH 串行口2 IRQ 4 0CH 串行口1 IRQ5 0DH 硬盘 IRQ6 0EH 软盘 IRQ7 0FH 并行打印机 8个中断源的中断请求信号线IRQ0-IRQ7在主机的62线总线插座中可以引出系统已经社 顶中断请求信号为“ 边沿触发”普通结束方式。对于286以上的微机又扩展了一片8259中断控制器IRQ2已用于两片8259之间级连考虑到仪器通用性在
11、本仪器接口卡上设有一个跳线开关JP可以选择IRQ2、IRQ3、IRQ4、IRQ7引到实验台的IRQ插座上跳线方法已经介绍安装部分出厂设置的是IRQ7。 1、 实验内容 2、 实验电路如图直接用手动产生单脉冲作为中断请求信号只需要连接一根导线要求每按一次开关产生依次中断在屏幕上显示一次“This is a IRQ7 intrupt”中断10 次后退出。 11 三、 编程提示 1、 PC机中断控制器8259的地址 为20H21H编程时要根据中断类型型号设置中断矢量。8259中断屏蔽寄存器IMR对应位清零允许中断中断服 务程序结束返回前要使用中断结束命令 MOV AL20H OUT 20HAL 中断
12、结束返回DOS时对应将IMR对应位置置1以关闭中断。 2、 参考流程图 四、 程序清单 data segment mess db this is a irq7 interupt 0AH0DH data ends code segment assume cs:codeds:data start:mov axcs mov dsax mov dxoffset int7 mov ax250fh int 21h 设中断程序int7的类型号为0fh cli 清中断标志位 12 in al21h 读中断屏蔽寄存器 and al7fh 开放IRQ7中断 out 21hal mov cx10 记中断循环次数为1
13、0次 sti 置中断标志位 ll: jmp ll int7: mov axdata 中断服 务程序 mov dsax mov dxoffset mess mov ah09 显示每次中断的提示信息 int 21h mov al20h out 20hal 发出EOI结束中断 loop next in al21h or al80h 关闭IR7中断 out 21hal sti 置中断标志位 mov ah4ch 返回DOS int 21h next: iret code ends end start 五、 实验步骤 1、打开实验箱按实验电路图连接好电路打开电源 2、输入汇编源程序并编译执行 3、手动产生
14、单脉冲作为中断请求信号观察显示结果 4、验证结果进行总结 5、实验结束整理实验仪器 六、 实验结果 每按一次开关产生依次中断在屏幕上显示一次“this is a irq7 interupt”中断10次后退出。 七、 实验分析和总结 1、 懂得中断是提高计算机工作效率的一种重要的技术可编程中断控制器8259A 可管理8级优先权中断 2、 中断请求信号采用边沿触发方式学习了在VC下如何操作中断的信息 13 微机原理及接口实验报告 题 目可编程并行接口 系 别计算机与通信工程 专 业计算机科学与技术 班 级02级1班 学 号31号 姓 名朱祖彪 指导老师张杰 2005.5 14 微机原理及接口实验报告 题 目串行通讯 系 别计算机与通信工程 专 业计算机科学与技术 班 级02级1班 学 号31号 姓 名朱祖彪 指导老师张杰 2005.6 15 微机原理及接口实验报告 题 目可编程定时器/计数器 系 别计算机与通信工程 专 业计算机科学与技术 班 级02级1班 学 号31号 姓 名朱祖彪 指导老师张杰 2005.6 16 微机原理及接口实验报告 题 目中断 系 别计算机与通信工程 专 业计算机科学与技术 班 级02级1班 学 号31号 姓 名朱祖彪 指导老师张杰 2005.6