您好,欢迎来到飒榕旅游知识分享网。
搜索
您的当前位置:首页微机原理与系统设计实验四

微机原理与系统设计实验四

来源:飒榕旅游知识分享网
西安电子科技大学 微机原理与系统设计 课程实验报告 实验名称 继电器控制(综合实验);电子琴(综合实验) 学院 班 姓名 学号 同作者 实验日期 年 月 日 成 绩 指导教师评语: 指导教师: 年 月 日 实验1 继电器控制实验

一、实验目的

1、了解微机控制直流继电器的一般方法。 2、进一步熟悉使用8255、8253。 二、实验所用仪器(或实验环境)

计算机、微机原理实验箱、USB接口模块、汇编语言开发软件等 三、实验原理

将8253 计数器0 设置为方式3、计数器1 设置为方式0 并联使用,CLK0 接1MHZ 时钟,设置两个计数器的初值(乘积为5000000)启动计数器工作后,经过5秒钟OUT1 输出高电平。通过8255 的PA0口查询OUT1的输出电平,用C 口PC0输出开关量控制继电器动作。 继电器开关量输入端输入“1”时,继电器常开触点闭合,发光二极管接通,指示灯亮,输入“0”时断开,指示灯灭。

四、实验内容

1、使用82定时,让继电器周而复始的闭合5 秒钟(指示灯灯亮),断开5 秒钟(指示灯灯)。

2、改变指示灯亮灭的周期为2s,改用PC7口控制继电器。 五、方案设计

1、实验接线及分析 接线:

8255/CS 接 I/O 地址译码/Y1(288H---28FH) 8255/PC0 接 继电器 8255/PA0 接 82/OUT1

82/CS 接 I/O 地址译码/Y0(280H---287H) 82/CLK0 接 时钟/1MHz 82/OUT0 接 82/CLK1 82/GATE0,1 接 +5V 硬件电路分析:

(包括端口地址分析)

2、实现该内容的方案(或原理)

3、画出流程图

六、实验程序设计

;***************************; ;* 继电器控制 *; ;***************************; io8253a equ 280h io8253b equ 281h io8253c equ 283h io8255a equ 288h io8255c equ 28ah io8255ctl equ 28bh code segment

assume cs:code

start: mov dx,io8255ctl mov al,90h lll: out dx,al

mov dx,io8255c

mov al,01 ;将PC0置位 out dx,al

call delay ;延时5s

mov al,0 ;将PC0复位 out dx,al

call delay ;延时5s jmp lll ;转lll

delay proc near ;延时子程序 push dx

mov dx,io8253c ;设82计数器为方式3 mov al,36h out dx,al

mov dx,io8253a

mov ax,10000 ;写入计数器初值10000 out dx,al mov al,ah out dx,al

mov dx,io8253c

mov al,70h ;设计数器1为工作方式0 out dx,al

mov dx,io8253b

mov ax,500 ;写入计数器初值500 out dx,al mov al,ah out dx,al

ll2: mov ah,06 ;是否有键按下 mov dl,0ffh int 21h

jne exit ;若有则转exit mov dx,io8255a

in al,dx ;查询8255的Pa0是否为高电平 and al,01h

jz ll2 ;若不是则继续 pop dx

ret ;定时时间到,子程序返回 exit: mov ah,4ch int 21h delay endp code ends end start

七、实验结果分析及回答问题

八、实验总结与心得体会

实验2 电子琴实验

一、实验目的

1、通过8253 产生不同的频率信号,使PC 机成为简易电子琴。 2、了解利用8255 和8253 产生音乐的基本方法。 二、实验所用仪器(或实验环境)

计算机、微机原理实验箱、USB接口模块、汇编语言开发软件等 三、实验原理

利用8255 的PA0 口来施加控制信号给与门,用来控制扬声器的开关状态。再利用设置 不同的计数值,使8253 产生不同频率的波形,使扬声器产生不同频率的音调,达到类似与音阶的高低音变换。对于音乐,每个音阶都有确定的频率。各音阶标称频率值:

四、实验内容

1、使计算机的数字键1、2、3、4、5、6、7 作为电子琴按键,按下即发出相应的音阶。 *2、实现一句音乐的播放。 五、方案设计

1、实验接线及分析 接线:

8255/CS 接 I/O 地址译码/Y1(288H---28FH) 8255/PA0 接 与门/A

82/CLK0 接 时钟/1MHz

82/CS 接 I/O 译码/Y0(280H---287H) 82/OUT0 接 与门/B 82/GATE0 接 8255/PA 与门/Y 接 喇叭 硬件电路分析:

(包括端口地址分析)

2、实现该内容的方案(或原理)

3、画出流程图

六、实验程序设计

;*******************************; ;* 电子琴实验 *; ;*******************************; ;此实验接线如下:

;82 CLK0接1MHZ时钟,GATE0接8255的PA1,OUT0接与门输入端1,CS接280H~287H, ;8255 PA0接与门输入端2,CS接288H~28FH, data segment

io8255a equ 288h io8255ctl equ 28bh io8253a equ 280h io8253b equ 283h

table dw 524,588,660,698,784,880,988,1048;高音的 ;table dw 262,294,330,347,392,440,494,524;低音的 msg db 'Press 1,2,3,4,5,6,7,8,ESC:',0dh,0ah,'$' data ends

code segment

assume cs:code,ds:data start:

mov ax,data mov ds,ax

mov dx,offset msg mov ah,9

int 21h ;显示提示信息 sing: mov ah,7

int 21h ;从键盘接收字符,不回显 cmp al,1bh

je finish ;若为ESC键,则转finish cmp al,'1' jl sing cmp al,'8'

jg sing ;若不在'1'-'8'之间转sing

sub al,31h

shl al,1 ;转为查表偏移量 mov bl,al ;保存偏移到bx mov bh,0

mov ax,4240H ;计数初值 = 1000000 / 频率, 保存到AX mov dx,0FH

div word ptr[table+bx]

mov bx,ax

mov dx,io8253b ;设置82计时器0方式3, 先读写低字节, 再读写高字节 mov al,00110110B out dx,al

mov dx,io8253a mov ax,bx

out dx,al ;写计数初值低字节

mov al,ah

out dx,al ;

mov dx,io8255ctl ; mov al,10000000B out dx,al

mov dx,io8255a mov al,03h

out dx,al ; call delay ; mov al,0h

out dx,al ;

jmp sing finish:

mov ax,4c00h int 21h

delay proc near ; push cx push ax mov ax,15 x1: mov cx,0ffffh x2: dec cx jnz x2 dec ax jnz x1 pop ax pop cx ret delay endp code ends end start

写计数初值高字节 设置8255 A口输出 置PA1PA0 = 11(开扬声器) 延时 置PA1PA0 = 00(关扬声器) 延时子程序

七、实验结果分析及回答问题

八、实验总结与心得体会

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务