您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页微机原理实验学生实验指导书

微机原理实验学生实验指导书

来源:华佗小知识


微型计算机原理实验指导书

河北大学电子信息工程学院

2017年10月

目 录

实验一 系统认识及编程初步实验 .................................................................................... 1 实验二 输入输出程序设计实验 ........................................................................................ 7 实验三 实验四 实验五 实验六 8255并行接口实验 ............................................................................................... 9 8259中断控制实验 ............................................................................................. 13 8254定时/计数器应用实验 ................................................................................ 19 综合实验 .............................................................................................................. 24

实验一 系统认识及编程初步实验

一、实验目的

1. 掌握TD系列微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。

2. 掌握使用运算类指令编程及调试方法。 3. 学习使用软件监视变量的方法。

二、实验设备

PC机一台,TD-PITE实验装置一套。

三、实验内容

(一)基础实验

1. 系统认识实验

编写实验程序,将00H~0FH共16个数写入内存3000H开始的连续16个存储单元中。 2. 运算编程实验

80X86指令系统提供了实现加、减、乘、除运算的基本指令,可对表1-1所示的数据类型进行算术运算。本实验以二进制双精度加法运算为例,计算X+Y=Z,将结果Z存入某存储单元。

表1-1 数据类型算术运算表 二进制 数制 带符号 运算符 操作数

(二)提高实验

1. 在系统认识实验中,编写程序,将内存3500H单元开始的8个数据复制到3600H单元开始的数据区中。通过调试验证程序功能,使用E命令修改3500H单元开始的数据,运行程序后使用D命令查看3600H单元开始的数据。

2. 在运算编程实验中,求累加和程序设计,在偏移地址为1000H开始依顺序填入16个字(16个16位数),利用程序求和,存放在偏移地址2000H。

无符号 组合 +、- 非组合 +、-、×、÷ +、-、×、÷ 字节、字、多精度 BCD码 字节(二位数字) 字节(一位数字) 四、实验步骤

(一)系统认识实验

1

1. 运行Wmd86软件,进入Wmd86集成开发环境。

2. 根据程序设计使用语言的不同,通过在“设置”下拉列表来选择需要使用的语言和寄存器类型,这里我们设置成“汇编语言”和“16位寄存器”,如图1-1、图1-2所示。设置选择后,下次再启动软件,语言环境保持这次的修改不变。

图1-1 语言环境设置界面

图1-2 寄存器设置界面

3. 语言和寄存器选择后,点击新建或按Ctrl+N组合键来新建一个文档,如图1-3所示。默认文件名为Wmd861。

图1-3 新建文件界面

4. 编写实验程序,如图1-4所示,并保存,此时系统会提示输入新的文件名,输完后点击保存。

2

图1-4 程序编辑界面

5. 点击

,编译文件,若程序编译无误,则可以继续点击

进行链接,链接无误后方可以加载

程序。编译、链接后输出如图1-5所示的输出信息。

图1-5 编译输出信息界面

6. 连接PC与实验系统的通讯电缆,打开实验系统电源。

7. 编译、链接都正确并且上下位机通讯成功后,就可以下载程序,联机调试了。可以通过端口列表中的“端口测试”来检查通讯是否正常。点击

下载程序。

为编译、链接、下载组合按钮,通

过该按钮可以将编译、链接、下载一次完成。下载成功后,在输出区的结果窗中会显示“加载成功!”,表示程序已正确下载。起始运行语句下会有一条绿色的背景。如图1-6所示。

3

图1-6 加载成功显示界面

8. 将输出区切换到调试窗口,使用D0000:3000命令查看内存3000H起始地址的数据,如图1-7所示。存储器在初始状态时,默认数据为CC。

图1-7 内存地址单元数据显示

9. 点击按钮1-8所示。

运行程序,待程序运行停止后,通过D0000:3000命令来观察程序运行结果。如图

4

图1-8 运行程序后数据变化显示

10. 也可以通过设置断点,断点显示如图1-9所示,然后运行程序,当遇到断点时程序会停下来,然后观察数据。可以使用E0000:3000来改变该地址单元的数据,如图1-10所示,输入11后,按“空格”键,可以接着输入第二个数,如22,结束输入按“回车”键。

图1-9 断点设置显示 - 图1-10 修改内存单元数据显示界面

(二)运算编程实验

编程提示:本实验是双精度(2个16位,即32位)加法运算,编程时可利用累加器AX,先求低16位的和,并将运算结果存入低地址存储单元,然后求高16位的和,将结果存入高地址存储单元中。由于低16运算后可能向高位产生进位,因此高16位运算时使用ADC指令,这样在低16位相加运算有进位时,高位相加会加上CF中的1。

1. 编写程序,经编译、链接无误后装入系统。

2. 程序装载完成后,点击“变量区”标签将观察窗切换到变量监视窗口。 3. 点击

,将变量XH,XL,YH,YL,ZH,ZL添加到变量监视窗中,然后修改XH,XL,

YH,YL的值,如图1-11所示,修改XH为0015,XL为65A0,YH为0021,YL为B79E。

5

图1-11 变量监视窗口

4. 在JMP START语句行设置断点,然后运行程序。

5. 当程序遇到断点后停止运行,查看变量监视窗口,计算结果ZH为0037,ZL为1D3E。

6. 修改XH,XL,YH和YL的值,再次运行程序,观察实验结果,反复测试几组数据,验证程序的功能。

五、实验报告要求

报告内容:实验名称、姓名、班级、学号、实验目的、实验步骤、完整的源程序代码、问题、收获及总结。

6

实验二 输入输出程序设计实验

一、实验目的

1. 了解INT 21H各功能调用模块的作用及用法。 2. 掌握Wmd86软件界面下数据输入和输出的方法。

二、实验设备

PC机一台,TD-PITE实验装置一套。

三、实验内容

(一)基础实验

编写实验程序,在显示器上的输出窗口显示A~Z共26个大写英文字母。 (二)提高实验

修改实验程序,在显示器上显示‘GOOD AFTERNOON’,要求使用AH=09功能(显示一字符串功能块)完成。

四、实验原理

INT 21H功能调用使用说明如下: (1)入口:AH=00H或AH=4CH

功能:程序终止。 (2)入口:AH=01H

功能:读键盘输入到AL中并回显。 (3)入口:AH=02H,DL=数据

功能:写DL中的数据到显示屏。 (4)入口:AH=08H

功能:读键盘输入到AL中无回显。

(5)入口:AH=09H,DS:DX=字符串首地址,字符串以 '$' 结束

功能:显示字符串,直到遇到 '$' 为止。

(6)入口:AH=0AH,DS:DX=缓冲区首地址,(DS:DX)=缓冲区最大字符数,

(DS:DX+1)=实际输入字符数,(DS:DX+2)=输入字符串起始地址。 功能:读键盘输入的字符串到DS:DX指定缓冲区中并以回车结束。

7

五、实验步骤

编写实验程序,在显示器上的输出窗口显示A~Z共26个大写英文字母。 (1)编写实验程序,经编译、链接无误后装入系统。 (2)运行实验程序,观察实验结果。

六、实验报告要求

报告内容:实验名称、姓名、班级、学号、实验目的、实验步骤、程序流程图、完整的源程序代码、问题、收获及总结。

8

实验三 8255并行接口实验

一、实验目的

1. 学习并掌握8255的工作方式及其应用。 2. 掌握8255典型应用电路的接法。

二、实验设备

PC机一台,TD-PITE实验装置一套。

三、实验内容

(一)基础实验

1. 基本输入输出实验。

编写程序,使8255的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。要求只要开关拨动,数据灯的显示就发生相应改变。

2. 流水灯显示实验。

编写程序,使8255的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。 (二)提高实验

1. 执行程序后,使发光二极管闪动。

2. 执行程序后,使发光二极管高八位和低八位亮灭相反。

四、实验原理

并行接口是以数据的字节为单位,与I/O设备或被控制对象之间传递信息。CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。8255的内部结构及引脚如图3-1所示。8255工作方式控制字和C口按位置位/复位控制字格式如图3-2所示。

9

A组控制部件A口(8位)I/OPA7-PA0双向数据总线数据总线D0-D7缓冲器C口(高4位)8位内总线C口(低4位)B组控制部件I/OPC7-PC4I/OPC3-PC0读/写RDWRA1A0RESETCS控制逻辑B口(8位)I/OPB7-PB0PA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC0PC1PC2PC3PB0PB1PB21234567101112131415161718192082554039383736353433323130292827262524232221PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VCCPB7PB6PB5PB4PB3

图3-1 8255内部结构及外部引脚图

D7D6D5D4D3D2D1D0C口低4位0 输出1 输入B口0 输出1 输入方式选择0 方式01 方式1C口高4位0 输出1 输入A口0 输出1 输入方式选择00 方式001 方式11x 方式21(a)工作方式控制字(b)C口按位置位/复位控制字D7D6D5不用D4D3D2D1D0置位复位0 复位1 置位C口的位选择位 D3D2D1 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 10

图3-2 8255控制字格式

8255实验单元电路图如图3-3所示。

10

D0D1D2D3D4D5D6D7RDWRA0A1CS343332313029282753698356D0D1D2D3D4D5D6D7RDWRA0A1RESETCSPA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5PC6PC743214039383718192021222324251415161713121110PA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5PC6PC7RST8255 图3-3 8255实验单元电路图

五、实验步骤

1. 基本输入输出实验

本实验使8255端口A工作在方式0,并作为输入口;端口B工作在方式0,并作为输出口。用一组开关信号接入端口A,端口B输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。具体实验步骤如下述:

(1)实验接线图如图3-4所示,按图连接实验线路图。 (2)编写实验程序,经编译、连接无误后装入系统。

(3)运行程序,改变拨动开关,同时观察LED显示,验证程序功能。

11

XD0D0......PA0K0......IOW#IOR#IOY1WRRDCSPB78255单元...D7系统总线...K7D0XD7D7开关及LEDPA7XA1XA2A0A1PB0显示单元 图3-4 8255基本输入输出实验接线图

2. 流水灯显示实验

使8255的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。实验接线图如图3-5所示。实验步骤如下所述:

(1)按图3-5连接实验线路图。

(2)编写实验程序,经编译、链接无误后装入系统。 (3)运行程序,观察LED灯的显示,验证程序功能。 (4)自己改变流水灯的方式,编写程序。

XD0D0......PA0D0......IOW#IOR#IOY1WRRDCSPB78255单元...D15系统总线...D7D8XD7D7开关及LEDPA7XA1XA2A0A1PB0显示单元 图3-5 8255流水灯实验接线图

六、实验报告要求

报告内容:实验名称、姓名、班级、学号、实验目的、实验步骤、程序流程图、完整的源程序代码、问题、收获及总结。

12

实验四 8259中断控制实验

一、实验目的

1. 掌握8259中断控制器的工作原理。 2. 学习8259的应用编程方法。

二、实验设备

PC机一台,TD-PITE实验装置一套。

三、实验内容

本实验的8259为单片工作,是单中断实验。以实验装置上的单次脉冲单元模拟外部设备,将单次脉冲输出与主片8259的IR7相连。 (一)基础实验

编写程序,实现每按动一次单次脉冲,产生一次外部中断,在显示屏上输出一个字符“7”。 (二)提高实验

1. 在上述实验基础上,实现每进一次中断记录中断次数,存放在3000H内存单元。 2. 若将上述实验中使用的IR7改到IR6,完成实验。

四、实验原理

在Intel 386EX芯片中集成有中断控制单元(ICU),该单元包含有两个级联中断控制器,一个为主控制器,一个为从控制器。该中断控制单元就功能而言与工业上标准的82C59A是一致的,操作方法也相同。从片的INT连接到主片的IR2信号上构成两片8259的级联。

在TD-PITE实验系统中,将主控制器的IR6、IR7以及从控制器的IR1开放出来供实验使用,主片8259的IR4供系统串口使用。8259的内部连接及外部管脚引出如图4-1所示。

13

INTR(内核)主片8259AIR2INTIR4CAS2:0IR6IR7串口0MIR6MIR7从片8259AINTCAS2:0IR1SIR1

图4-1 8259内部连续及外部管脚引出图

表4-1列出了中断控制单元的寄存器相关信息。

表4-1 ICU寄存器列表

寄存器 ICW1(主) ICW1(从) (只写) ICW2(主) ICW2(从) (只写) 口地址 功能描述 0020H 00A0H 0021H 00A1H 初始化命令字1: 决定中断请求信号为电平触发还是边沿触发。 初始化命令字2: 包含了8259的基址中断向量号,基址中断向量是IR0的向量号,基址加1就是IR1的向量号,依此类推。 初始化命令字3: 用于识别从8259设备连接到主控制器的IR信号,内部的从8259连接到主8259的IR2信号上。 初始化命令字3: 表明内部从控制器级联到主片的IR2信号上。 初始化命令字4: 选择特殊全嵌套或全嵌套模式,使能中断自动结束方式。 操作命令字1: 中断屏蔽操作寄存器,可屏蔽相应的中断信号。 操作命令字2: 改变中断优先级和发送中断结束命令。 操作命令字3: 使能特殊屏蔽方式,设置中断查询方式,允许读出中断请求寄存器和当前中断服务寄存器。 中断请求: 指出挂起的中断请求。 当前中断服务: 指出当前正在被服务的中断请求。 ICW3(主) 0021H (只写) ICW3(从) 00A1H (只写) ICW4(主) ICW4(从) (只写) OCW1(主) OCW1(从) (读/写) OCW2(主) OCW2(从) (只写) OCW3(主) OCW3(从) (只写) IRR(主) IRR(从) (只读) ISR(主) ISR(从) (只读)

0021H 00A1H 0021H 00A1H 0020H 00A0H 0020H 00A0H 0020H 00A0H 0020H 00A0H 14

POLL(主) POLL(从) (只读)

0020H 0021H 00A0H 00A1H 查询状态字: 表明连接到8259上的设备是否需要服务,如果有中断请求,该字表明当前优先级最高的中断请求。 初始化命令字1寄存器(ICW1)说明见图4-2所示。

7ICW10001LS00:边沿触发1:电平触发010

图4-2 初始化命令字1寄存器

初始化命令字2寄存器(ICW2)说明见图4-3所示。

7ICW2T7T6T5T4T30000中断向量地址

图4-3 初始化命令字2寄存器

初始化命令字3寄存器(ICW3)说明,主片见图4-4,从片见图4-5。

7ICW3(主片)S7S6S5S4S3S2S100 S7-S3:0表示无8259被连接到主片上 1表示有8259被连接到主片上 S2:0表示内部从片没被使用 1表示内部从片被级联到主片的IR2上 S1:0表示无8259通过IR1连接到主片上 1表示有8259通过IR1连接到主片上

图4-4 主片初始化命令字3寄存器

7ICW3(从片)000000100

图4-5 从片初始化命令字3寄存器

初始化命令字4寄存器(ICW4)说明见图4-6。

15

7ICW4000SNFM00AEOI10SNFM:0=选择全嵌套模式 1=选择特殊全嵌套模式,仅主8259能够工作在特殊全嵌套模式AEOI:0=禁止中断自动结束 1=使能中断自动结束,仅主8259能够工作在中断自动结束方式

图4-6 初始化命令字4寄存器

操作命令字1寄存器(OCW1)说明见图4-7。

7OCW1M7M6M5M4M3M2M1M00M7--M0:0=对应IR信号上的中断请求得到允许 1=对应IR信号上的中断请求被屏蔽注意:设置屏蔽位不影响各自中断挂起位

图4-7 操作命令字1寄存器

操作命令字2寄存器(OCW2)说明如图4-8所示。

7OCW2RSLEOI00L2L1L00R SL EOI 命令0 0 0 取消优先级自动循环 *0 0 1 一般的中断结束命令0 1 0 无操作0 1 1 特殊的中断结束命令 **1 0 0 中断优先级自动循环 *1 0 1 在一般中断结束方式中优先级循环1 1 0 优先级特殊循环方式 **1 1 1 在特殊中断结束方式中优先级循环 *** 当8259工作在中断自动结束方式下时,这些情况可以改变优先级结构。** 在这些情况下优先级由L2:L0指定。L2、L1、L0:在给出特殊的中断结束命令时,L2、L1、L0指出了具体要清除当前中断服务寄存器的哪一位;当给出特殊的优先级循环方式命令时,L2、L1、L0指出了循环开始时哪个中断的优先级最低。

图4-8 操作命令字2寄存器

操作命令字3寄存器(OCW3)说明如图4-9所示。

16

7OCW30ESMMSMM01PRRRIS0ESMM SMM0 0 无影响0 1 无影响1 0 禁止特殊屏蔽模式1 1 使能特殊屏蔽模式P:设置该位使8259工作在中断查询方式RR RIS0 0 无影响0 1 无影响1 0 读中断请求寄存器IRR1 1 读当前中断服务寄存器ISR

图4-9 操作命令字3寄存器

查询状态字(POLL)说明如图4-10所示。

7POLLINT----L2L1L00INT:0=无请求 1=连接在8259上的设备请求服务L2、L1、L0:当INT为1时,这些位指出了需要服务的最高优先级的IR;当INT为0时这些位不确定。图4-10 程序状态字寄存器

在对8259进行编程时,首先必须进行初始化。一般先使用CLI指令将所有的可屏蔽中断禁止,然后写入初始化命令字。8259有一个状态机控制对寄存器的访问,不正确的初始化顺序会造成异常初始化。在初始化主片8259时,写入初始化命令字的顺序是:ICW1、ICW2、ICW3、然后是ICW4,初始化从片8259的顺序与初始化主片8259的顺序是相同的。本实验的8259为单片工作,是单中断实验。

系统启动时,主片8259已被初始化,且4号中断源(IR4)提供给与PC联机的串口通信使用,其它中断源被屏蔽。中断矢量地址与中断号之间的关系如下表4-2所示。

表4-2 中断矢量地址与中断类型号对应关系表

主片中断序号 功能调用 矢量地址 说明 0 1 2 3 4 08H 09H 0AH 0BH 0CH 20H~24H~28H~2CH~30H~23H 27H 2BH 2FH 33H 未开放 未开放 未开放 未开放 串口 5 6 0DH 0EH 34H~38H~37H 3BH 未开放 可用 7 0FH 3CH~3FH 可用 17

从片中断序号 功能调用 矢量地址 说明

0 1 30H 31H C0H~C4H~C3H C7H 未开放 可用 2 3 4 5 6 7 32H 33H 34H 35H 36H 37H C8H~CCH~D0H~D4H~D8H~DCH~CBH CFH D3H D7H DBH DFH 未开放 未开放 未开放 未开放 未开放 未开放 五、实验步骤

本实验的8259为单片工作,是单中断实验。实验接线图如图4-11所示,单次脉冲输出与主片8259的IR7相连,每按动一次单次脉冲,产生一次外部中断,在显示屏上输出一个字符“7”。

系统总线MIR7主8259单次脉KK1+冲单元 图4-11 8259单中断实验接线图

(1)按图4-11连接实验线路。

(2)编写实验程序,经编译、链接无误后装入系统。

(3)运行程序,重复按单次脉冲开关KK1+,显示屏会显示字符“7”,说明响应了中断。

六、实验报告要求

报告内容:实验名称、姓名、班级、学号、实验目的、实验步骤、程序流程图、完整的源程序代码、问题、收获及总结。

18

实验五 8254定时/计数器应用实验

一、实验目的

1. 掌握8254的工作方式及应用编程。 2. 掌握8254典型应用电路的接法。

二、实验设备

PC机一台,TD-PITE实验装置一套。

三、实验内容

(一)基础实验

1. 计数应用实验

编写程序,应用8254的计数功能,使用单次脉冲模拟计数,使每当按动‘KK1+’5次后,产生一次计数中断,并在屏幕上显示一个字符‘M’。

2. 定时应用实验

编写程序,应用8254的定时功能,产生一个1s的方波。 (二)提高实验

1. 编写程序使8254计数器0工作于方式0,OUT0接到发光二极管,使其闪动。

2. 编写程序利用8254计数器0和计数器1分别作为8259IR6,IR7的中断请求信号;将8255PA0接到发光二极管D0,8255PA7接到发光二极管D1;使DO,D1闪动,D0每闪动10次D1闪动一次。

四、实验原理

8254是Intel公司生产的可编程间隔定时器。是8253的改进型,比8253具有更优良的性能。8254具有以下基本功能:

(1)有3个的16位计数器。

(2)每个计数器可按二进制或十进制(BCD)计数。 (3)每个计数器可编程工作于6种不同工作方式。

(4)8254每个计数器允许的最高计数频率为10MHz(8253为2MHz)。

(5)8254有读回命令(8253没有),除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容。

(6)计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数初值公式为:

nfCLKifOUTi,其中fCLKi是输入时钟脉冲的频率,fOUTi是输出波形的频率。

19

图5-1是8254的内部结构框图和引脚图,它是由与CPU的接口、内部控制电路和三个计数器组成。8254的工作方式如下述:

(1)方式0:计数到0结束输出正跃变信号方式。 (2)方式1:硬件可重触发单稳方式。 (3)方式2:频率发生器方式。 (4)方式3:方波发生器。

(5)方式4:软件触发选通方式。 (6)方式5:硬件触发选通方式。

D[7:0]数据总线缓冲器计数器0CLK0GATE0OUT0内部总线RDWRA0A1CSR/W逻辑电路计数器1CLK1GATE1OUT1控制寄存器计数器2CLK2GATE2OUT2D7D6D5D4D3D2D1D0CLK0OUT0GATE0GND12345671011128254242322212019181716151413VCCWRRDCSA1A0CLK2OUT2GATE2CLK1GATE1OUT1图

5-1 8254的内部接口和引脚

8254的控制字有两个:一个用来设置计数器的工作方式,称为方式控制字;另一个用来设置读回命令,称为读回控制字。这两个控制字共用一个地址,由标识位来区分。控制字格式如表5-1—5-3所示。

表5-1 8254的方式控制字格式

D7 D6 D5 D4 D3 D2 D1 工作方式选择 000-方式0 001-方式1 010-方式2 011-方式3 100-方式4 101-方式5 D0 计数码制选择 0-二进制数 1-十进制数 计数器选择 00-计数器0 01-计数器1 10-计数器2 11-读出控制 字标志 读/写格式选择 00-锁存计数值 01-读/写低8位 10-读/写高8位 11-先读/写低8位 再读/写高8位 表5-2 8254读出控制字格式

D7 D6 1 1 D5 D4

20

D3 D2 D1 D0 0-锁存计数值 0-锁存状态信息 计数器选择(同方式控制字) 0 表5-3 8254状态字格式

D7 D6 D5 D4 D3 D2 D1 D0 OUT引脚现行状态 计数初值是否装入 1-高电平 1-无效计数 计数器方式(同方式控制字) 0-低电平 0-计数有效

8254实验单元电路图如下图5-2所示:

87654321212223192010119D0D1D2D3D4D5D6D7CSRDWRA0A1D0D1D2D3D4D5D6D7CSRDWRA0A1OUT0GATE0CLK0OUT0GATE0CLK04.7kVCCOUT1GATE1CLK1131415OUT1GATE1CLK18254OUT2GATE2CLK2171618OUT2GATE2CLK28251-TRCLKVCCCLK1.8432MHz 图5-2 8254实验电路原理图

五、实验步骤

(一)计数应用实验

编写程序,将8254的计数器0设置为方式3,计数值为十进制数4,用单次脉冲KK1+作为CLK0时钟,OUT0连接MIR7,每当KK1+按动5次后产生中断请求,在屏幕上显示字符“M”。

(1)实验接线如图5-3所示。

(2)编写实验程序,经编译、链接无误后装入系统。 (3)运行程序,按动KK1+产生单次脉冲,观察实验现象。 (4)改变计数值,验证8254的计数功能。

21

XD0D04.7KVCCGATE0...XD7...D7系统总线CLK0XA1XA2A0A1OUT0IOW#IOR#IOY3WRRDCSKK1+单次脉冲单元8254单元MIR7 图5-3 8254计数应用实验接线图

(二)定时应用实验

编写程序,将8254的计数器0和计数器1都设置为方式3,用信号源1MHz作为CLK0时钟,OUT0为波形输出1ms方波,再通过CLK1输入,OUT1输出1s方波。

(1)接线图如图5-4所示。

(2)根据实验内容,编写实验程序,经编译、链接无误后装入系统。 (3)单击

按钮,运行实验程序,8254的OUT1会输出1s的方波。

按钮或直接单击工具栏的

(4)用示波器观察波形的方法:单击虚拟仪器菜单中的钮,在新弹出的示波器界面上,单击

按钮运行示波器,就可以观测出OUT1输出的波形。

22

XD0XD7XA1XA2IOW#IOR#IOY0D0......D7A0A1系统总线WRRDCSCLK0...OUT0CLK1GATE1OUT1VCC1s方波输出CLK8254单元XD0XD7IOW#IOR#IOY3D0D7 IN0CLK...图5-4 8254定时应用实验接线图

...WRRDCSCLKABCA/D转换单元

六、实验报告要求

报告内容:实验名称、姓名、班级、学号、实验目的、实验步骤、程序流程图、完整的源程序代码、问题、收获及总结。

23

实验六 综合实验

一、实验目的

提高综合运用与解决实际问题的能力。

二、实验设备

PC机一台,TD-PITE实验装置一套。

三、实验内容

以下2个题目中任选一个完成。主要工作包括电路设计、电路实现、驱动程序设计、实验调试和实验报告撰写。

(一)题目1 计算机钢琴 1. 要求:

根据实验提供的音乐频率表和时间表,编写程序控制 8254,使其输出连接到扬声器上能发出相应的乐曲。 2. 编程提示:

一个音符对应一个频率,将对应一个音符频率的方波通到扬声器上,就可以发出这个音符的声音。将一段乐曲的音符对应频率的方波依次送到扬声器,就可以演奏出这段乐曲。利用8254的方式3——方波发生器‛,将相应一种频率的计数初值写入计数器,就可产生对应频率的方波。计数初值的计算如下:

计数初值 = 输入时钟 ÷ 输出频率

例如输入时钟采用1MHz,要得到800Hz 的频率,计数初值即为1000000÷800。音符与频率对照关系如表6-1所示。对于每一个音符的演奏时间,可以通过软件延时来处理。首先确定单位延时时间程序(根据CPU的频率不同而有所变化)。然后确定每个音符演奏需要几个单位时间,将这个值送入DL中,调用DALLY子程序即可。

24

表6-1 音符与频率对照表(单位Hz)

乐曲《友谊地久天长》曲谱中的音符对应的频率值依次记录如下(B 调、四分之二拍),时间表是将各个音符发音的相对时间记录下来(由曲谱中节拍得出)。

FREQ_LIST DW 371,495,495,495,624,556,495,556,624 ;频率表 DW 495,495,624,742,833,833,833,742,624 DW 624,495,556,495,556,624,495,416,416,371 DW 495,833,742,624,624,495,556,495,556,833 DW 742,624,624,742,833,990,742,624,624,495 DW 556,495,556,624,495,416,416,371,495,0

TIME_LIST DB 4, 6, 2, 4, 4, 6, 2, 4, 4 ;时间表 DB 6, 2, 4, 4, 12, 1, 3, 6, 2

DB 4, 4, 6, 2, 4, 4, 6, 2, 4, 4 DB 12, 4, 6, 2, 4, 4, 6, 2, 4, 4 DB 6, 2, 4, 4, 12, 4, 6, 2, 4, 4 DB 6, 2, 4, 4, 6, 2, 4, 4, 12

频率表和时间表是一一对应的,频率表的最后一项为0,作为重复的标志。根据频率表中的频率算出对应的计数初值,然后依次写入8254的计数器。将时间表中相对时间值带入延时程序来得到音符演奏时间。计算机钢琴参考程序流程如图6-1所示。计算机钢琴发声电路图如图6-2所示。

25

图6-1 计算机钢琴程序流程图

图6-2 计算机钢琴发声电路图

3. 实验步骤:

(1)参考图6-3所示连接实验线路。

(2)编写实验程序,经编译、连接无误后装入系统。 (3)运行程序,听扬声器发出的音乐是否正确。

26

图6-3 计算机钢琴实验接线图

4. 实验报告要求

(1)以论文形式完成实验报告。

(2)报告内容包括:题目、完成者姓名及单位、摘要、关键词、设计思路及原理、外设电路图及各部分电路的说明、实验步骤或现象介绍、结论及参考文献。

(3)附录为实验完整的源程序代码。

(二)题目2 步进电机控制 1. 要求:

编写实验程序,利用8255的B口来控制步进电机的运转。 2. 编程提示:

使用开环控制方式能对步进电机的转动方向、速度和角度进行调节。所谓步进,就是指每给步进电机一个递进脉冲,步进电机各绕组的通电顺序就改变一次,即电机转动一次。根据步进电机控制绕组的多少可以将电机分为三相、四相和五相。本实验系统所采用的步进电机为四相八拍电机。励磁线圈如图6-4所示,励磁顺序如表6-2所列。

图6-4 励磁线圈

27

表6-2 励磁顺序

实验中PB端口各线的电平在各步中的情况如表6-3所示。

表6-3 PB端口各线的电平在各步中的情况表

驱动电路原理图如图6-5所示。

图6-5 驱动电路原理图

3. 实验步骤:

(1)按图6-6步进电机实验参考接线图进行接线。

28

(2)编写实验程序,编译、链接后装入系统。 (3)运行程序,观察实验现象。

注意:步进电机不使用时请断开连接器,以免误操作使电机过热损坏。

图6-6 步进电机实验参考接线图

4. 实验报告要求

(1)以论文形式完成实验报告。

(2)报告内容包括:题目、完成者姓名及单位、摘要、关键词、设计思路及原理、外设电路图及各部分电路的说明、实验步骤或现象介绍、结论及参考文献。

(3)附录为实验完整的源程序代码。

29

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

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

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

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