微型计算机原理编程课实验报告,微机原理实验报告大汇总.doc

该实验报告详细介绍了如何使用8255并行接口控制拨动开关和LED显示,以及8259中断控制器的基本使用。在8255实验中,通过编程实现LED实时显示开关状态,而在8259实验中,利用中断程序编程技术,使得每次中断都会使7段数码管显示的“5”字左移一位。
摘要由CSDN通过智能技术生成

微机原理实验报告大汇总.doc

微机原理实验报告

课程名称: 计算机原理课程设计

学院(系): 电气工程学院

专 业: 电气工程及其自动化

班 级:

学 号:

学生姓名:

成 绩:

2012 年 4 月 10 日

一、接口训练

实验一 拨动开关和LED显示实验

实验目的和要求

掌握使用8255并行接口连接拨动开关,控制LED显示输出的技术。

实验内容

按图将8255端口A与8位拨动开关连接,8255端口B与8位LED连接,选择 8255 为方式0工作,编程序完成LED实时显示开关状态的功能,即每位LED对应一位开关状态。开关往下拨动,对应LED灭,开关往上拨动,对应LED点亮。

编程涉及8255端口地址有四个,由于8255片选信号线与地址译码区的200~2FH连接,即8255的I/O偏移地址为0~3,加上前一个实验所获知的I/O基址,两者相加之后才是最终访问8255的I/O地址。注意,该地址一定是一个16位数,所以I/O操作要使用IN AL,DX 和OUT DX, AL指令。

实验框图及电路图

程序清单

汇编程序代码如下:

.Model small

.386

io8255_a equ 200h

io8255_b equ 201h

io8255kz equ 203h

code segment

assume cs:code

start: mov dx,io8255kz

mov al,90h ;设置8255控制字,A口输入,B口输出

out dx,al

aa: mov dx,io8255_a

in al,dx ;输入开关状态

mov dx,io8255_b

out dx,al ;把A口数据送B口寄存器,用LED显示输出

jmp aa ;循环

code ends

end start

实验结果与分析

通过开关从PA口输入数据,观察灯可知,PB口输出。实现了设计的功能。

实验二 8259中断控制器实验

实验目的和要求

了解8259中断控制器的基本使用,掌握中断程序编程技术。

实验内容

使用单脉冲电路产生的脉冲信号作为386EX模块8259中断请求输入,每按一次单脉冲按键,触发一次中断,使7段数码管显示的“5”字左移一位,显示到最左端后再从最右端开始显示,如此重复。

实验框图与电路图

程序清单

Model small

.386

data segment

led_cs equ 200h

led_cs1 equ 201h

ledcode db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,67h

old dd ?

data ends

code segment

assume cs:code,ds:data

start: cli

mov ax,data

mov ds,ax

mov es,ax

in al,21h

and al ;mask byte

out 21h,al

push ds

mov bx,0

mov ds,bx

lea ax,cs:int_proc ;WRITE INTERRUPT PROGRAM EMTRY ADDRESS

mov bx,5 ;n=IRx

mov si,30h ;base =30H

add si,bx

sal si,2 ;type num X 4

mov ds:[si],ax

push cs

pop ax

mov

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微机原理与汇编语言-实验报告(中北大学大数据学院)(前4个实验都可以直接运行,后面的几个需要用到proteus,这个要自己根据自己的情况搞,咱就不能保证在你电脑上能不能运行了) 实验一 简单程序设计 1. 编制一个简单的运算程序,并且调试完成。 2. 编制一个计算x=a2+b2 3. 验证上述结果的正确 实验二 循环、分支程序设计 1. 编制一个统计数组中正负数个数及均值的程序,并且调试完成得到正确的结果。 2. 设计计算Y=1+2+3+....,直到累加和刚好大于10000的程序并且调试完成。 3. 对给定数组中的所有元素,按从大到小的顺序排序,并且加以验证。 实验三 系统功能调用实验 1.编制一个具有屏幕提示和键盘输入的程序,键盘输入一个人名,在屏幕上显示“Hello 人名!”; 2.通过键盘输入一串包含大小写字母和数字的字符串,统计其中大写、小写字母和数字字符的个数,并将结果显示在屏幕上。 实验四 8255并行接口实验 1.将8255一个端口接8个发光二极管,用不同工作方式控制其逐次点亮发光二极管。 2.将8255另一个端口接开关,用不同工作方式,编程将开关信息在发光二极管上显示出来。 3.验证上述操作的正确性,对实验结果进行解释 实验五 键盘、LED实验 1.在实验箱上,连接小键盘和LED显示器。 2.编程将键盘输入的数字,显示在显示器上,在按键时,原来显示的数字左移一位,新按的键值显示在最右端。 3.考虑两个键组合时的输入方法 4.对实验结果进行说明 实验六 中断实验 1.连接实验箱上的数码管,通过消抖开关作为中断源。 2.编写程序,完成在中断服务程序中记录中断次数,在主程序中显示按键次数。 3.将消抖开关换成一般开关,用同样的程序,再测试,仔细观察,发现了什么,为什么? 实验七 定时/计数器实验 1.使用计数器对消抖开关的按动次数进行计数,显示当前的计数值。 2.对实验箱中系统时钟进行计数,改变计数初值(两个初值要相差很大),观察有什么不同。 3.8253的初值用0和1,观察结果,并加以分析。 4.分析实验结果,并对实验结果进行说明。 实验八 综合实验 1.将实验箱设计成一个电子表,该表能分时(或按键切换)显示年月日、时分秒; 2.设置按键,通过按键可以修正日期和时间,在修正日期、时间时,电子表仍然可以继续工作。 3.AD实验,用显示器显示当前AD的输入电压值,要求精确到小数点后2位数(选做)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值