微机原理与接口技术

实验报告

姓 名 专 业 班 级 学 号 指导教师 计算机科学与技术

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

安徽工业大学计算机学院

20xx年5月21

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

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

实验一存贮器读写实验

一、实验目的

l、熟悉静态RAM的使用方法,掌握8088微机系统扩展RAM的方法。

2、掌握静态RAM读写数据编程方法。

二、实验内容

对指定地址区间的RAM(4000H~4FFH)先进行写数据55AAH,然后将其内容读出再写到5000H~5FFH中。

三、实验接线图(系统中已连接好)

四、实验步骤

l、将实验系统与PC机连接;

2、在PC机上启功DJ-8086k软件,实验系统进入联机状态;

3、在DJ-8086k软件环境下编辑、调试程序,将程序调试、编译通过;

4、运行程序。

5、稍后按RST键退出,用存贮器读方法检查4000H~43FFH中的内容和5000~53FFH中的内容应都是55AA。

五、本次实验总结(体会、感想与建议)

本次实验对DJ—8086k软件有了初步的了解,熟悉了DJ-8086k软件环境下编辑、调试程序,连续运行等内容,掌握了下位机和计算机的简单连接方式。

实验二 8259单级中断控制器实验

一、实验目的

⒈ 掌握8259中断控制器的接口方法。

2. 掌握8259中断控制器的应用编程。

二、实验内容

利用8259实现对外部中断的响应和处理,要求程序对每次中断进行计数,并将计数结果送数码显示。

三、实验程序框图

1

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

图6-2 主程序流程

IR3中断服务程序:

图6-3 IR3中断服务程序流程

IR7中断服务程序:

图6-4 IR7中断服务流程

四、实验步骤

1、按图6-1连好实验线路图。

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

2

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

⑴8259的INT连8088的INTR;⑵8259的INTA连8088的INTA;⑶“

插孔和8259的3号中断IR3插孔相连,“ ””端初始为低电平;⑷8259的CS端接FF80H孔。

2、输入并运行实验程序,系统显示8259-1。

3、按动AN开关按钮, 按满5次显示good。

五、思考题:

若用IR5产生中断,要求修改硬件和软件并调试成功。

修改代码如下:

CODE SEGMENT ;H8255-2.ASM

ASSUME CS:CODE

IOCONPT EQU 0FF2BH

IOAPT EQU 0FF28H

IOBPT EQU 0FF29H

IOCPT EQU 0FF2AH

ORG 11e0H

START: MOV AL,82H

MOV DX,IOCONPT

OUT DX,AL

MOV DX,IOBPT

IN AL,DX

MOV BYTE PTR DS:[0601H],AL

MOV DX,IOCONPT

MOV AL,80H

OUT DX,AL

MOV DX,IOBPT

MOV AL,DS:[0601H]

OR AL,0F0H

OUT DX,AL

MOV DX,IOCPT

MOV AL,0FFH

OUT DX,AL

MOV DX,IOBPT

MOV AL,00FH

OUT DX,AL

CALL DELAY1

IOLED0: MOV AL,01011111B

MOV DX,IOBPT

OUT DX,AL

MOV AL,11111010B

MOV DX,IOCPT

3

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

OUT DX,AL

CALL DELAY1

CALL DELAY1

OR AL,0FFH

OUT DX,AL

MOV CX,8H

IOLED1: MOV DX,IOCPT MOV AL,DS:[0601H] AND AL,10101111B OUT DX,AL

CALL DELAY2

OR AL,01011111B OUT DX,AL

CALL DELAY2

LOOP IOLED1

MOV DX,IOBPT MOV AL,00FH

OUT DX,AL

CALL DELAY2

MOV AL,10101111B MOV DX,IOBPT OUT DX,AL

MOV AL,11110101B MOV DX,IOCPT OUT DX,AL

CALL DELAY1

CALL DELAY1

OR AL,0FFH

OUT DX,AL

MOV CX,8H

IOLED2: MOV DX,IOCPT MOV AL,DS:[0601H] AND AL,01011111B OUT DX,AL

CALL DELAY2

OR AL,10100000B OUT DX,AL

CALL DELAY2

LOOP IOLED2

MOV DX,IOCPT MOV AL,0F0H

OUT DX,AL

CALL DELAY2

JMP IOLED0

4

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

DELAY1: PUSH AX

PUSH CX

MOV CX,0030H

DELY2: CALL DELAY2

LOOP DELY2

POP CX

POP AX

RET

DELAY2: PUSH CX

MOV CX,8000H

DELA1: LOOP DELA1

POP CX

RET

CODE ENDS

END START

六、本次实验总结

我认为,在学习中要考虑到“学以致用”,不能过分强调课程的系统性和基本理论的完整性,而应该侧重于基本方法和应用实例。从微机应用系统的应用环境和特点来看,微机系统如何与千变万化的外部设备、外部世界相连,如何与它们交换信息,是微机系统应用中的关键所在,培养一定的微机应用系统的分析能力和初步设计能力才是最终目的。

实验三8255A并行口实验

一、实验目的

掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。

二、实验内容

用8255做输出口,控制十二个发光管亮灭,模拟交通灯管理。

三、实验程序框图

5

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

四、实验步骤

⒈ 在系统显示监控提示符“P.”时,按SCAL键。

⒉ 按图6-5连好实验线路

8255A:PC0->L3,PC1->L6,PC2->L9,PC3->L12,PC4->L2,PC5->L5,

PC6->L8,PC7->L11;

PB4->L1,PB5->L4,PB6->L7,PB7-

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

>L10

6

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

⒊ 在“P.”态时,输入11E0后,按EXEC键;系统显示执行符“┌”,同时Ll-Ll5发光二极管模拟交通灯显示。

五、思考题

如果通过8255A控制发光二极管,PB4-PB7对应红灯, PC0-PC3对应绿灯, PC4-PC7对应黄灯, 以模拟交通路灯的管理,将如何实现。

硬件连接如下:

8255A:PC0->L3,PC1->L6,PC2->L9,PC3->L12,红

PC4->L2,PC5->L5,PC6->L8,PC7->L11;绿

PB4->L1,PB5->L4,PB6->L7,PB7->L10

代码修改如下:

CODE SEGMENT ;H8255-2.ASM

ASSUME CS:CODE

IOCONPT EQU 0FF2BH

IOAPT EQU 0FF28H

IOBPT EQU 0FF29H

IOCPT EQU 0FF2AH

ORG 11e0H

START: MOV AL,82H

MOV DX,IOCONPT

OUT DX,AL

MOV DX,IOBPT

IN AL,DX

MOV BYTE PTR DS:[0601H],AL

MOV DX,IOCONPT

MOV AL,80H

OUT DX,AL

MOV DX,IOBPT

MOV AL,DS:[0601H]

OR AL,0F0H

OUT DX,AL

MOV DX,IOCPT

MOV AL,0FFH

OUT DX,AL

MOV DX,IOBPT

MOV AL,00FH

OUT DX,AL

CALL DELAY1

IOLED0: MOV AL,01011111B

MOV DX,IOBPT

OUT DX,AL

MOV AL,11111010B

MOV DX,IOCPT

7

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

OUT DX,AL

CALL DELAY1

CALL DELAY1

OR AL,0FFH

OUT DX,AL

MOV CX,8H

IOLED1: MOV DX,IOCPT MOV AL,DS:[0601H] AND AL,10101111B OUT DX,AL

CALL DELAY2

OR AL,01011111B OUT DX,AL

CALL DELAY2

LOOP IOLED1

MOV DX,IOBPT MOV AL,00FH

OUT DX,AL

CALL DELAY2

MOV AL,10101111B MOV DX,IOBPT OUT DX,AL

MOV AL,11110101B MOV DX,IOCPT OUT DX,AL

CALL DELAY1

CALL DELAY1

OR AL,0FFH

OUT DX,AL

MOV CX,8H

IOLED2: MOV DX,IOCPT MOV AL,DS:[0601H] AND AL,01011111B OUT DX,AL

CALL DELAY2

OR AL,10100000B OUT DX,AL

CALL DELAY2

LOOP IOLED2

MOV DX,IOCPT MOV AL,0F0H

OUT DX,AL

CALL DELAY2

JMP IOLED0

8

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

DELAY1: PUSH AX

PUSH CX

MOV CX,0030H

DELY2: CALL DELAY2

LOOP DELY2

POP CX

POP AX

RET

DELAY2: PUSH CX

MOV CX,8000H

DELA1: LOOP DELA1

POP CX

RET

CODE ENDS

END START

六、本次实验总结

虽然实验箱只是一个小型的模拟平台,但是通过对它的学习和操作,我们对有关接口的知识将会有一个更广泛的认识,而且它对我们以后的学习也会有帮助的。而且实验也教会我们在团队中要善于与人相处,与人共事,为以后出去工作与人合作打下一定的基础。

实验四8250串口实验

一、实验目的

(1)系统扩展以8250为核心的可编程串行异步通讯接口芯片。

(2)对扩展的串行通讯接口实现自发自收。

二、实验内容

将寄存器AH的内容从10H开始通过8250发送、接收,每次收发后AH的内容自动增1直到FFH为止,同时将每次接收到的数据,依次写到内存4000H~40EFH单元中,实现自发自收。

三、实验步骤

1.用扁平线连JX0(BUS)到JX3(D0~D7),连FF80H孔到CS7,连TXD到RXD(8250实验区)。

2.编辑、调试、运行程序。

9

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

3.当系统显示“8250——good”表示自发自收结束,按RST键,系统返回P态,用内存读写命令检查4000H~40EFH内容是否为10H~FFH,验证其正确性。

四、思考题

如果使用通讯协议:1个起始位,7位数据位,2个停止位,波特率:9600。 系统将如何实现。

实验实现代码如下:

CODE SEGMENT ;H8250.ASM

ASSUME CS: CODE ;H8250.ASM

DATA EQU 0ff80H ;BTS-LSB

MSB EQU 0ff81H

LINE EQU 0ff83H

LSTAT EQU 0ff85H

PA EQU 0FF20H ;字位口

PB EQU 0FF21H ;字形口

PC EQU 0FF22H ;键入口

ORG 29A0H

START: JMP START0

BUF DB ?,?,?,?,?,?

data1:

db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0

c6h,0a1h

db 86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH

START0: MOV AL,80H ;DLAB=1

MOV DX,LINE

OUT DX,AL

MOV AL,0cH ;BTS=9600

MOV DX,DATA ;ff80H

OUT DX,AL

MOV DX,MSB

MOV AL,00

OUT DX,AL

;—————————————————–

MOV AL,06H ;7- BIT ,2-STOP

MOV DX,LINE

OUT DX,AL

;————————————————–

MOV AL,00 ;NO-INT

MOV DX,MSB ;8001H

OUT DX,AL

MOV AH,10H

MOV BX,4000H

MAIN: CALL TXD

10

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

CALL RCV

MOV [BX],AL

INC BX

INC AH

CMP AH,00H

JNZ MAIN

CALL BUF1

MOV CX,00FFH

S3: PUSH CX

CALL DISP

POP CX

LOOP S3

CALL BUF3

S1: CALL DISP

JMP S1

TXD: MOV DX,LSTAT

WAIT1: IN AL,DX

TEST AL,20H

JZ WAIT1

MOV AL,AH

MOV DX,DATA

OUT DX,AL

RET

RCV: MOV DX,LSTAT

WAIT2: IN AL,DX

TEST AL,01H

JZ WAIT2

TEST AL,0EH

JNZ ERR

MOV DX,DATA

IN AL,DX

RET

ERR: CALL BUF2

S2: CALL DISP

JMP S2

;—————————————————— DISP: MOV AL,0FFH ;00H

MOV DX,PA

OUT DX,AL

MOV CL,0DFH ;20H ;显示子程序 ,5ms MOV BX,OFFSET BUF

DIS1: MOV AL,[BX]

MOV AH,00H

PUSH BX

11

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

MOV BX,OFFSET DATA1

ADD BX,AX

MOV AL,[BX]

POP BX

MOV DX,PB

OUT DX,AL

MOV AL,CL

MOV DX,PA

OUT DX,AL

PUSH CX

DIS2: MOV CX,00A0H

DELAY: LOOP DELAY

POP CX

CMP CL,0FEH ;01H

JZ LX1

INC BX

ROR CL,1 ;SHR CL,1

JMP DIS1

LX1: MOV AL,0FFH

MOV DX,PB

OUT DX,AL

RET

BUF1: MOV BUF,08H

MOV BUF+1,02H

MOV BUF+2,05H

MOV BUF+3,00H

MOV BUF+4,17H

MOV BUF+5,17H

RET

;————————————————————- BUF2: MOV BUF,08H

MOV BUF+1,02H

MOV BUF+2,05H

MOV BUF+3,00H

MOV BUF+4,0EH

MOV BUF+5,18H

RET

BUF3: MOV BUF,09H

MOV BUF+1,00H

MOV BUF+2,00H

MOV BUF+3,0DH

MOV BUF+4,10H

MOV BUF+5,10H

RET

12

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

CODE ENDS

END START

五、本次实验总结

实验过程中把学过的计算机编译原理的知识强化,能够把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。以前对与计算机操作系统的认识是模糊的,概念上的,现在通过自己动手做实验,从实践上认识了操运行,对计算机编译原理的认识更加深刻.。

实验五 A/D转换实验

一、实验目的

了解模/数转换基本原理,掌握ADC0809的使用方法;

二、实验内容

A/D转换实验

利用实验系统上电位器提供的可调电压作为0809模拟信号的输入,编制程序,将模拟量转换为数字量,通过数码管显示出来。

三、实验流程图

图6-10 A/D转换流程

四、实验步骤

① 将0809 CS4插孔连到译码输出FF80H插孔。

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

13

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

② 将通道0模拟量输入端IN0连电位器W1的中心插头AOUT1(0-5V)插孔,8MHZ→T。

③ 运行实验程序,系统上显示“0809 XX”。“XX”表示输入模拟量转换后的数字量。

④ 调节电位器Wl, 显示器上会不断显示新的转换结果。

模拟量和数字量对应关系的典型值为:

0V→00H

五、心得体会

在实验过程中我觉得我在芯片编程方面,特别是在初始化方面是我最大的困难,或许是我的汇编语言学得不够好,我只能借助参考资料,查每一条指令的作用与功能,这样一来又巩固了我的对汇编语言的了解,而且在设计中,把死板的课本知识变得生动有趣,激发了学习的积极性。把学过的计算机编译原理的知识强化,能够把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。 +2.5V→80H +5V→FFH ⑤ 按RST键退出。

类似文章