计算机接口技术相关实验

目录

实验一 8255并行口实验

实验二 8255并行口实现十字路口红绿灯实验  

实验三 8253定时器/计时器接口实验

实验四 D/A实验


实验一 8255并行口实验

实验题目 8255并行口实验                                                                                                            

实验目的 掌握8255A的编程原理                                                                                                  

实验原理 两部分电路:开关量输入输出电路和8255可编程并口电路                                            

实验内容 8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来                                       

1.实验步骤:

(1)CS0<—>CS8255    PA0~PA7<—>平推开关的输K1~K8   PBO~PB7——发光二极管的输入LED1~LED8

(2)编程并全速或单步运行。

(3)全速运行时拨动开关,观察发光二极管的变化。当开关某位置于L时,对应的发光二极管点亮,置于H时熄灭。

(4)8255A是比较常用的一种并行接口芯片8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本实验也是如此。实验中,8255A工作于基本输入输出方式(方式0)。

2.程序流程图:

3.实验电路图:

4.程序源代码:

assume cs:code

code segment public

org 100h

start:

mov dx,04a6h

mov al,90h ;A口输入,B口输出

out dx,al

start1:

mov dx,04a0h

in al,dx ;A口输入

mov dx,04a2h

out dx,al ;B口输出

jmp start1

code ends

end start

5.实验结果分析:

程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来,将开关按钮全部打开,对应的LED1-LED8灯全部点亮。

实验二 8255并行口实现十字路口红绿灯实验  

实验题目 8255并行口实现十字路口红绿灯实验                                                                          

实验目的 掌握8255A的编程原理                                                                                                    

实验原理 两部分电路:开关量输入输出电路和8255可编程并口电路                                          

实验内容 8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来                                    

1.程序流程图:

2.实验电路图:

 

3.程序源代码:

DATA SEGMENT

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:

MOV AX,80H

MOV DX,04A6H

OUT DX,AX

F:

;状态1

MOV AX,24H

MOV DX,04A4H

OUT DX,AX



CALL  DELAY



;状态2

MOV CX,4

F1:

MOV AX,44H

MOV DX,04A4H

OUT DX,AX



CALL S



MOV AX,04H

MOV DX,04A4H

OUT DX,AX



CALL S

LOOP F1

;状态3

MOV AX,81H

MOV DX,04A4H

OUT DX,AX

CALL DELAY



;状态4

MOV CX,4

F2:

MOV AX,82H

MOV DX,04A4H

OUT DX,AX



CALL S



MOV AX,80H

MOV DX,04A4H

OUT DX,AX



CALL S

LOOP F2



JMP F

;长延迟

DELAY PROC NEAR

PUSH CX

PUSH DI

MOV CX,200H

Y1:

MOV DI,200H

X1:

DEC DI

JNE X1

LOOP Y1

POP DI

POP CX

RET

DELAY ENDP

;短延迟

S     PROC NEAR

PUSH CX

PUSH DI

MOV CX,150H

YY: MOV DI,150H

XX: DEC DI

JNE XX

LOOP YY

POP DI

POP CX

RET

S ENDP

MOV AH,4CH

INT 21H

CODE ENDS

END START

实验结果分析:

A口输出C口输出,南北口绿灯亮,东西口红灯亮,接着长延时,南北口黄灯闪烁三次,转换为红灯,东西口红灯转换为绿灯。短延迟后南北口红灯亮,东西口黄灯闪。按下结束按钮程序则结束,否则短延迟后十字路口红绿灯接着运行。

                                       

实验三 8253定时器/计时器接口实验

实验题目 8253定时器/计时器接口实验                                                                                    

实验目的 掌握8253定时器的编译原理,用示波器观察不同模式下的输出波形。                      

实验原理 两部分电路:脉冲产生电路、8253定时器/计数器电路                                                  

实验内容 8253计数器0,1,2工作于方波方式,观察其输出波形                                            

1.实验步骤:

(1)实验连线:

CS0<->CS8253, OUT0<->8253CLK2,OUT2<->发光二极管的输入LED1,示波器<->0UT1,CLK3<->8253CLK0,CLK3<->8253CLK1

(2)编程调试程序

(3)全速运行,观察实验结果

2.程序流程图:

3.实验电路图:

3.程序源代码:

assume cs:code

code segment public

org 100h

start:

mov dx,04a6h ;控制口

mov al,36h ;T0,方式3 927CH

out dx,al



mov dx,04a0h

mov al,7Ch

out dx,al



mov dx,04a0h

mov al 92h

out dx,al



mov dx,04a6h

mov al,76h ;T1,方式3 32h

out dx,al



mov dx,04a2h

mov al,32h

out dx,al



mov dx,04a6h

mov ax,0b6h ;T2,方式3 04h

out dx,al



mov dx,04a4h

mov al,04h

out dx,al



next:

nop

jmp next

code ends

end start

4.实验结果及分析:

程序全速运行后,LED1闪烁(周期为0.25s),OUT1示波器观察为方波,频率为15KHZ。

本次实验使用工作方式3完成循环往复的灯亮灭操作。由于接收到的是随机的单脉冲信号,不是有准确时间规律的信号,因此8253完成的是计数功能,而不是计时功能。

综上所述,8253定时器/计数器接口实验的结果分析主要是针对工作方式、信号类型和计数初值等方面进行的实验。

实验四 D/A实验

实验题目: D/A实验                                                                            

实验目的: 熟悉数模转换的基本原理,掌握D/A的使用方法                                          

实验原理: 本实验用A/D、D/A电路                                                                               

实验内容: 利用D/A转换器产生锯齿和三角波。                                                 

1.实验步骤:

(1)实验接线

CSO <—>CS0832 示波器<—>DOUT    DS 跳线:1<->2

(2)用实验箱左上角的“VERF.ADJ”电位器调节0832的8脚上的参考电压至5V。

(3)调试程序并全速运行,产生不同波形。

(4)用示波器观察波形。

(5)利用电位器“ZERO.ADJ”可以调零,“RANGE.ADJ”电位器调整满偏值。DAC0832在本实验中,工作在双缓冲接口方式下。当地址线A1=0时可锁存输入数据;当A1=1时,可起动转换输出。所以要进行D/A转换需分二步进行。

2.程序流程图:

3.实验电路图:

4.程序源代码:

(1)产生锯齿波:

assume cs:code

code segment public

org 100h

start: mov  dx,04a0h

up1: mov  bx,0

up2: mov  ax,bx

out  dx,ax    ;锁存数据

mov  dx,04a2h

out  dx,ax    ;输出使能

mov  dx,04a0h

inc  bx ;数据加一

jmp  up2

code ends                

end  start       

(2)产生三角波:

assume cs:code

code segment public

org 100h

start: mov dx,04a0h

mov bx,0

up: mov ax,bx

out dx,ax ;锁存数据

mov dx,04a2h

out dx,ax ;输出使能

inc bx

mov dx,04a0h

cmp bx,0ffh

jne up ;产生三角波上升沿

down: mov ax,bx

out dx,ax ;锁存数据

mov dx,04a2h

out dx,ax ;输出使能

dec bx

mov dx,04a0h

cmp bx,0

jne down ;产生三角波下降沿

jmp up

code  ends             

end   start        

5.实验结果及分析:

(1)产生锯齿波:

(2)产生三角波:

通过本次实验,我深入了解了D/A转换器的工作原理及其性能特点。这些知识不仅有助于我更好地理解电子系统中的数字与模拟信号转换,还为今后更深入的学习提供了基础。

                                                                 

                               

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值