微机原理与接口技术实验报告格式
微机原理及接口技术实验报告

《微机原理与接口技术》实验报告姓名:学号:班级:专业:电气工程及其自动化学院:电气与信息工程学院目录实验一数据传送 (2)实验二算术运算 (4)实验三代码转换 (6)实验四程序的基本结构 (9)1、分支程序 (9)2、循环程序 (13)3、子程序 (16)实验五中断实验(8259) (19)实验六并行接口实验(8255) (25)实验七定时器/计数器实验(8235) (31)实验八D/A接口实验 (36)实验九A/D接口实验 (40)实验十串行通信实验 (43)实验一数据传送一、实验目的1. 掌握与数据有关的不同寻址方式。
2. 继续熟悉实验操作软件的环境及使用方法。
二、实验设备PC微机一台、TD-PIT + 或TD-PIT ++ 实验系统一套。
三、实验内容本实验要求将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上。
四、实验步骤(1) 运行Tdpit 集成操作软件,编写实验程序。
(2) 编译连接无误后,进入调试环境,进行程序的调试。
按F8 键单步运行程序,执行完MOV DS,AX 语句后,观察DS 寄存器中出现的段地址。
如图1-1所示可以看出DS数据段中MSR源数据串"HELLO,WORLD!$"。
图1-1 进入调试环境(3)继续单步运行程序,执行MOV ES,AX 语句后,可以看数据段出现的段地址,用同样的方法可以查看ES:0000 的数据。
数据传输还没开始进行,此时ES 段的数据为空,如图1-1所示。
继续单步运行程序如图1-2可以看出数据正在逐渐的进入ES段中。
图1-2 DS源数据段数据(4)直到数据传输完毕,可以看到ES 数据段中目的数据串MSD 已经被写入了数据串"HELLO,WORLD!$"。
如图1-3所示。
图1-3 根据ES值查看附加段的数据实验二算术运算一、实验目的1. 掌握运算类指令编程及调试方法。
2. 掌握运算类指令对各状态标志位的影响及测试方法。
微机原理及接口技术实验报告

微机原理及接口技术实验报告实验一实验日期实验时间1 实验名称:系统认知实验2 实验目的:了解汇编语言的设计、编写和调试程序的方法,掌握DEBUG的使用。
3 实验内容/原理:编程实现字符串“Hello World!”,用DEBUG调试程序。
实验要求:1、上机前做好充分准备,包括源程序清单、调试步骤等;2、用DEBUG来调试程序,熟悉DEBUG的使用。
实验步骤:1、编写程序并输入,检查无误后,经汇编、连接后运行,用DEBUG装入。
2、用U命令反汇编程序,应用R、G等命令,观看运行情况。
3、用D、E、A等命令查看、修改源数据,用G命令查看运行结果。
4、用Q命令退出DEBUG。
4 调试过程及结果DSEG SEGMENTSTRING DB 'HELLO,World!',0DH,0AH,'$'DSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXLEA DX,STRINGMOV AH,09HINT 21HMOV AH,4CHINT 21HCSEG ENDSEND START实验显示结果:-u13CB:0100 7403 JZ 010513CB:0102 E99700 JMP 019C13CB:0105 B80500 MOV AX,000513CB:0108 50 PUSH AX13CB:0109 FF363C21 PUSH [213C]13CB:010D FF363A21 PUSH [213A]13CB:0111 E84C14 CALL 156013CB:0114 83C406 ADD SP,+0613CB:0117 8946F8 MOV [BP-08],AX13CB:011A 895634 MOV [BP+34],DX13CB:011D 00BA130B ADD [BP+SI+0B13],BH-d13CB:0100 74 03 E9 97 00 B8 05 00-50 FF 36 3C 21 FF 36 3A t.......P.6<!.6:13CB:0110 21 E8 4C 14 83 C4 06 89-46 F8 89 56 34 00 BA 13 !.L.....F..V4...13CB:0120 0B 06 BA 17 75 1C 83 7E-0A FF 74 08 8B 46 06 0B ....u..~..t..F..13CB:0130 46 08 75 0E A1 3A 21 8B-16 3C 21 A3 B8 17 89 16 F.u..:!..<!.....13CB:0140 BA 17 C4 5E F8 2B C0 26-89 47 10 26 89 47 0E 8B ...^.+.&.G.&.G..13CB:0150 46 06 8B 56 08 26 89 47-0A 26 89 57 0C 8A 46 0A F..V.&.G.&.W..F.13CB:0160 26 88 47 22 8A 46 0C 26-88 47 05 A1 32 21 8B 16 &.G".F.&.G..2!..13CB:0170 34 21 89 46 FC 89 56 FE-A1 5E 27 8B 16 60 27 A3 4!.F..V..^'..`'.-tAX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=13CB ES=13CB SS=13CB CS=13CB IP=0102 NV UP EI PL NZ NA PO NC 13CB:0102 E99700 JMP 019C-rAX=6789 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=13CB ES=13CB SS=13CB CS=13CB IP=0102 NV UP EI PL NZ NA PO NC 13CB:0102 E99700 JMP 019C实验二实验日期实验时间1 实验名称:系统认知实验2 实验目的:了解汇编语言的设计、编写和调试程序的方法,掌握DEBUG的使用。
微机原理与接口技术软件实验报告

第一篇软件实验实验一存储器块操作实验一、实验目的1. 熟悉KEIL集成调试环境和汇编程序的调试方法。
2. 掌握存储器读写方法;3. 了解内存块的移动方法;二、实验说明实验1 指定某存储器的其实地址和长度,要求能将其内容赋值。
通过该实验学生可以了解单片机读写存储器的方法,同时也可以了解单片机编程、调试方法。
块移动是单片机常用操作之一,多用于大量的数据复制和图像操作。
例程2给出起始地址,用地址加1方法移动块,将指定源地址和长度的存储块移到指定目标为起始地址的单元中去。
移动3000H起始的256个字节到4000H起始的256个字节。
三、实验内容1. 试编程将片内RAM中的数据依次复制到片外RAM。
假设源数据区的首地址为40H,目的数据区的首地址为1000H,数据块长度为10H。
流程图:程序:运行结果:Memory显示,片内RAM中40H开始数据为03 00 29 00 00 00 71 00 AB 00 00 00 1E 00 00 FF,说明测试数据已经成功输入片内RAM。
从片外RAM中1000H位置开始记录为03 00 29 00 00 00 71 00 AB 00 00 00 1E 00 00 FF,说明片内RAM从40H开始的数据已经成功复制到片外从1000H开始的地址。
2. 两个16位无符号二进制数分别存放在片外RAM首址为2000H和2002H单元内,将它们相加,结果存入RAM 30H(低8位)、31H(高8位)。
程序(以0506H+CDEFH为例):0506H和CDEFH已存入片外单元,运算结果D2F5已存入30H和31H中。
四、思考题1. 如何将存储块的内容置成某固定值(例全填充为0FFH)?请用户修改程序,完成此操作。
答:将源程序中的MOV A, #01H 改为MOV A,#0FFH即可。
2. 若源块地址和目标地址有重叠,该如何避免?答:先执行一次数据转移操作将源块地址中的数据先暂存入一块地址与目标地址和源块地址均不重叠的存储区,再执行一次数据转移操作将暂存区的数据移入目标地址区域。
合工大 微机原理 实验报告

EQU
0263H
;控制字
.STACK
100
.DATA
Receive_Buffer
DB
10 DUP(0)
;接受缓冲器
Send_Buffer
EQU
Receive_Buffer
;发送缓冲器
.CODE
START:
MOV
AX,@DATA
MOV
DS,AX
MOV
ES,AX
NOP
CALL
INIT_8253
MOV
CX,60000
DL500ms1:
LOOP
DL500ms1
POP
CX
RET
DL500ms
ENDP
DL3S
PROC
NEAR
PUSH
CX
MOV
CX,6
DL3S1:
CALL
DL500ms
LOOP
DL3S1
POP
CX
RET
ENDP
DL5S
PROC
NEAR
PUSH
CX
MOV
CX,10
DL5S1:
CALL
二、实验内容(包括实验步骤和代码)
(一)实验内容
1、编写程序:使用8255的PA0..2、PA4..6控制LED指示灯,实现交通灯功能。
2、连接线路验证8255的功能,熟悉它的使用方法。
(二)实验步骤
1、连线说明:
D3区:CS、A0、A1
——
A3区:CS1、A0、A1
D3区:JP23(PA口)
——
F4区:JP18
二、实验内容(包括实验步骤和代码)
(一)实验内容
微机原理与接口技术实验报告_6

《微机原理与接口技术》实验报告班级:组员:实验二 74HC138译码器实验1、编写程序:使用82C55的PC0、PC1、PC2控制74HC138的数据输入端,通过译码产生8选1个选通信号,轮流点亮8个LED指示灯。
2、运行程序,验证译码的正确性。
实验源程序:.MODEL TINYCon_8255 EQU 0F003H ;8255控制口PC_8255 EQU 0F002H ;8255 PC口.STACK 100.CODESTART: MOV DX,Con_8255MOV AL,80HOUT DX,AL ;8255初始化,PC口作输出用MOV DX,PC_8255MOV AL,0START1: OUT DX,ALCALL DelayINC ALJMP START1Delay PROC NEAR ;延时Delay1: XOR CX,CXLOOP $RETDelay ENDPEND START实验三 8259A 中断控制器实验一、实验目的与要求了解8259A 的内部结构、工作原理;了解8259A 与8088的接口逻辑;掌握对8259A 的初始化编程方法,了解8088是如何响应中断、退出中断的。
复习本节实验内容,可尝试自行编写程序,做好实验准备工作,填写实验报告。
二、实验设备STAR 系列实验仪一套、PC 机一台 三、实验内容1、编制程序:拨动单脉冲开关,“”送给8259A 的IR0,触发中断,8088计数中断次数,显示于G5区的数码管上四、实验原理图45CS 1WR 2RD 3D74D65D56D47D38D29D110D011CAS012CAS113GND 14CAS215SP/EN 16INT 17IR018IR119IR220IR321IR422IR523IR624IR725INTA 26A027VCC 288259U28CS RD WR D7D0D1D2D3D4D5D6SP/EN INTIR0IR1IR7IR2123487651KR96A0VCC INTA(0F000H)CS1INTA(B2)INTR五、实验步骤1、连线说明:B3区:CS 、A0 —— A3区:CS1、A0 B3区:INT 、INTA —— ES8688:INTR 、INTA B3区:IR0 —— B2区:单脉冲E5区:CS 、A0 —— A3区:CS5、A0 E5区:CLK —— B2区:2M E5区:A 、B 、C 、D—— G5区:A 、B 、C 、D2、运行程序3、上下拨动单脉冲开关,拨动二次,产生一个“”,观察结果,数码管上显示的次数与拨动开关次数是否对应。
《微机原理与及接口技术》课程硬件实验报告

图3-4双色LED结构原理图
4.基础型实验
如图 3-5 所示是采用 P1 口控制 4 个双色 LED 的接口电路。在 Keil 环境运行并调程程序,观察结果。
图3-5交通灯显示接口电路
分析:设4个双色LED为东南西北四个方向的交通指示灯,从上到下4个分别代表东南西北方向;设双色LED的1脚控制红色LED,3脚控制绿色LED
延时一段时间后(0.5s),再切换到东西路口的绿灯亮,南北路口的红灯亮;
不断重复以上过程,实现模拟交通灯控制。
硬件实验6八段数码管显示实验
1.实验目的
1)了解数码管实现显示字符的7段码编制方法;
2)掌握查表法获得0-F的7段码的方法;
3)掌握静态显示和动态显示的原理,硬件连接方式和程序编写方法。
2.预习要求
设流经每个LED的电流为3mA,则P0中每条口线上拉出的最大电流是3mA;而灌入P1口线的最大电流是一个数码管的8个LED全部显示的情况,即有24mA。
因此应该在P1口与数码管之间加入驱动芯片(该芯片要求至少能够灌入24mA电流,本图中未画出,实验箱设计图中是加了一个74573)。
5.设计型实验
(1)一个静态数码管的电路如3-14所示,编写程序,在该数码管上依次显示0-9数字,每个数字显示时间为1s。
当红色 LED 点亮、绿色 LED 不点亮时,发光二极管显示红色; 当绿色 LED 点亮、红色 LED 不点亮时,发光二极管显示绿色; 当红色 LED、绿色 LED 同时点亮时,发光二极管呈现的是黄色。
另外,当控制双色 LED 红、绿两个 PN 结流过不同比例的电流时,可以使其发出粉红、淡绿、淡黄、黄色等不同的色彩,达到简单的“彩色”显示效果。
微机原理实验报告

校区实验报告课程名称____________________________ 专业班级_____________________________ 学生及学号____________________________指导教师____________________________实验地点————————————————2015 ~2016 学年第二学期《微机原理与接口技术》实验一(1)实验名称存贮器部数据传送姓名系院专业电子信息类班级学号实验日期2016.6.14 指导教师成绩一、实验目的和要求1、初步掌握星研集成环境工具软件的使用方法。
2、掌握存储器部不同位置间数据传送的方法。
3、认真预习本节实验容,尝试自行编写程序,填写实验报告。
二、实验容(包括实验步骤和代码)1、编写源程序,要求将数据段中3000H~30FFH 单元的容传送给6000H~60FFH 单元中。
2、编译、连接所编写的源程序。
3、执行程序前,利用存贮器窗口将DS:3000H~300FH 中的数据改为11、22、33、44、55、66、77、88、99、AA、BB、CC、DD、EE、FF、00,存贮器窗口支持数据的直接修改功能,在相对应的地址中直接输入数据即可。
4、进入调试状态后,分别以“全速运行”、“全速断点”、“单步”、“单步进入”等方式运行程序,同时在工作区窗口的CommonRegister 视图中查看本程序所使用的寄存器(CX、DI、SI)容的变化。
5、在如下图所示的存贮器窗口中检查程序运行结果是否正确。
程序如下:.MODEL TINY ;memory mode : tiny.STACK 100 ;堆栈.CODE ;开始程序段START: MOV AX,DATAMOV DS,AXMOV ES,AXNOPMOV CX,100HMOV SI,3000HMOV DI,6000HCLDREPE MOVSBMOV CX,100HMOV SI,3000HMOV DI,6000HREPE CMPSBJNE ERRORTRUE: JMP $ERROR: JMP $END START三、实验结果及其分析1、通过该实验,成功地将数据段中3000H~30FFH 单元的容传送到了6000H~60FFH 单元中。
微机原理与接口技术实验报告二

微机原理与接口技术实验报告(二)1、实验内容一:实验目的:(1) 阅读《实验操作.ppt》, 学习汇编工具的使用(2) 学习附录的程序代码, 理解并输入、编译和查错3) 学习利用编译错误信息进行附录的程序修改;(程序包含一个语法错误和一个逻辑错误)4)学习程序流程控制: (条件跳转指令ja jb (call指令, 观察程序执行时堆栈的变化(学会用debug –g命令设置断点);5 )学习程序中有限的寄存器的使用。
2.实验内容:(1)打开masm for windows软件, 在其中输入实验要求附给的程序, 保存后运行, 程序报错:(2)经分析发现, “noneeded”没有定义, 改为“notneeded”后正常运行(3)运行过程中发现当字母或数字个数达到两位数时, 统计结果的各位与十位对调了。
如下图, 字母数应为13, 但显示为31(4)经检查, 发现第80行程序有误, inc指令应改为dec指令。
运行后程序正常, 调试完毕。
如下图程序框图如下:实验内容二:1.实验目的及内容:编写完整程序, 实现功能:统计以下字符串STR中空格的数目, 结果保存在COUNT中, 并把个数在屏幕上显示出来。
STR DB ' AB CDE FG H I J K L MNOPQ RST UV W XYZ 12 34 56 78 9'L EQU $-STRCOUNT DB ?(字符串STR可以从这里直接拷贝到程序中)实验结果:程序如下:dispmsg macro messgemov ah,9lea dx,messgeint 21hendmDATA segmenttishi db 0dh,0ah,'the original string is:' string db ' AB CDE FG H I J K L MNOPQ RST UV W XYZ 12 34 56 78 9' STRINGLEN= $-stringnewline db 0dh,0ahNspace db 0dH,0aH,'Number of char space is:',?,?Nsp db ?,'$'DATA endsSTACK segment stack 'stack'sta db 100 dup(?)stack endsCODE segmentASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AX,seg DATAMOV DS,AXxor cx,cxxor dl,dlmov cl,stringlenlea bx,stringcnt:mov al,[bx]cmp al,' 'jz yesspinc blloop cnt jmp shijinzhiyessp:inc dlinc blloop cntjmp shijinzhishijinzhi:lea bx,Nspmov ah,02hint 21hcall char2asc dispmsg tishiMOV AH,4CHINT 21Hchar2asc procmov dl,10 next: xor ah,ahdiv dladd ah,'0'mov [bx],ahdec bxor al,aljnz nextretchar2asc endpcode endsend startEND START运行结果如下:程序流程图如下:实验中遇到的问题及解决方法:1.汇编语言中寄存器有限, 在使用时注意是否保存寄存器中原有的值, 防止在使用寄存器时将原值改变。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理与接口技术实验
实验一 熟悉汇编语言程序开发过程 一、实验目的 1.熟悉与实验有关的系统软件(如编辑程序、汇编程序、连接程序和调试器等)的 使用。 2.在程序调试过程中,学习及掌握调试器CodeView的各种操作命令,掌握程序 的调试方法及技巧。 二、实验内容 1.用查表法求0~9之间某个整数的平方,设该数x及结果y均放在内存中,在数据 段定义一个平方表table。 „„ 2.Buffer单元有一字节数据,将它拆开,低四位送L单元,高四位送H单元,编 写程序实现以上功能,调试通过。 „„ 三、实验总结 1.总结汇编语言程序的编辑、汇编、连接、执行的方法。 „„ 2.总结调试器CodeView调试的方法。 „„
微机原理与接口技术实验
实验十五 8253定时器/计数器应用编程 一、实验目的 1.熟悉8253在系统中的典型接法。 2.掌握8253的工作方式及应用编程。 二、实验内容 1.8253计数器应用实验 设定8253计数器2的工作方式为方式0,用于事件计数,当计数值为5时,发出中 断请求信号,中断服务程序中显示“Ir…*”,*为响应中断的次数,中断9次后, 关中断。 „„ 2. 8253定时器应用实验 编程将8253的计数器0设置为方式2(分频),计数器1设置为方式2(分频), 计数器2设置为方式3(方波),输出频率为0.5Hz。 „„ 三、实验总结 1.总结8253可编程计数器/定时器芯片的编程方法。 „„ 2.画出8253计数器应用实验程序流程图。 „„ 3.记录实验中观察到的现象,并加以解释。 „„
微机原理与接口技术实验
实验三 循环程序设计
一、实验目的 1.进一步熟悉调试器CodeView的各种操作命令,掌握程序的调试方法及技巧。 2.加深对循环结构的理解。 3.掌握循环结构程序设计和调试的方法。 二、实验内容 1.用计数器控制循环 统计某数据区内负数的个数,设数据区的第一个单元存放数据区内单元数据的 个数,从第二个单元开始存放数据,结果存入NUMB单元。 „„ 修改程序,使其能分别统计数据区中正数、零和负数的个数,调试通过该程序。 „„ 2.按问题的条件控制循环 编制程序,使S=1+2×3+3×4+4×5+„N(N+1),直到N(N+1)项大于200为止。 „„ 三、实验总结 1.画出用计数器控制循环,统计数据区内负数个数的程序流程图。 „„ 2.总结循环程序中控制循环的方法。 „„
微机原理与接口技术实验
实验十一 存储器接口实验 一、实验目的 1.了解62256 RAM特性。 2.掌握存储器扩展和存储器读/写方法,通过硬件电路的分析,掌握地址译码的 方法。 3.熟悉EAT598实验教学系统的基本操作。 二、实验内容 利用62256扩充RAM,地址为00000-07FFFH,编写一个程序,将62256的前十 个存储单元依次送数据0~9,再对其进行读操作校验。
微机原理与接口技术实验
实验二十一 接口电路综合设计实验 一、实验目的 1.加深对中断技术、定时器、并行接口等相关知识的理解与运用。 2.培养学生对接口芯片的综合应用设计及一组开关K0~K7, 端口A接一组发光二极管L0~L7,用8253 产生1秒钟定时中断,在中断服务程序中,读入开关状态送发光二极管显示。 1.硬件设计线路图
„„
三、实验总结 1.总结地址译码和存储器接口方法。 „„ 2.总结实验教学系统调试软件LCA88ET的使用方法。
„„
微机原理与接口技术实验
实验十二
一、实验目的 1.掌握8259A中断控制器的工作原理和应用编程。 2.了解PC机中断的原理和过程。 3.学习在接口实验单元上构造连接实验电路的方法。 4.进一步熟悉EAT598实验教学系统的基本操作。 二、实验内容 1.8259A应用实验(1) 编写程序,主程序显示“good”,每次响应外部中断INT0时,显示字符“ir0”,中断 方式为边沿触发、单片、全嵌套中断方式,且中断号从中断8开始。 2.8259A应用实验(2) 在8259A应用实验(1)的基础上,单脉冲触发器电路模块中的-PULSE1和-PULSE2分别接 8259A扩展板上的INT0和INT1,编写程序,完成要求:当无中断请求时,执行主程序, 显示“good”,若有中断请求,则执行其中断服务程序,先延时,然后显示该中断号 “ir0”或“ir1”;若正在执行较低级的中断服务程序,则允许比它优先级高的中断被响 应。 主程序、IR0中断服务程序和8259A应用实验(1)相同 , IR1中断服务程序如下:„„ 三、实验总结 1.总结8259A中断控制器的编程方法。
中断技术及8259A应用编程
„„
„„ „„ „„
2.记录实验中观察到的现象,并加以解释。
3.在实验(2)中,若先按动单脉冲触发按钮K2(发出-PULSE2),尚未显示“ir1”,再按动 单脉冲触发按钮K1(发出-PULSE1) ,显示结果会是什么?为什么? 微机原理与接口技术实验
实验十三 8255A并行接口实验 一、实验目的 1.学习并掌握8255A的各种工作方式及其应用。 2.学习在接口实验单元上构造实验电路。 3.掌握8255A 工作于中断方式的应用。 二、实验内容 1.8255A接口实验(1) 编写程序,使8255A端口B工作在方式0并作为输入口,端口A工作在方式0并 作为输出口。 „„ 2.8255A接口实验(2) 编写程序,使8255A端口A工作在方式0并作为输出口,端口B工作于方式1并 作为输入口。 „„ 三、实验总结 1.总结8255A可编程并行接口芯片的编程方法。 „„ 2.画出8255A接口应用实验(2)的程序流程图。 „„ 3.记录实验中观察到的现象,并加以解释。 „„