资源描述
资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。
《微机原理与接口技术》
实验指导书
编写人: 梁绒香
电子电气工程系
9月
前 言
《微机原理与接口技术》是继《计算机应用基础》、 《模拟电子技术》、 《数字电子技术》、 《计算机程序设计》等课程之后开设的专业技术基础课。为《单片机技术》、 《计算机控制》的学习奠定基础。
在学习本课程之后, 要求学生能了解计算机的基本组成及工作原理, 汇编语言指令系统及程序设计, 接口技术及芯片的选择、 硬件连接、 软件编程, 为进一步学习后续专业课程及应用打好基础。
微机原理及接口技术是一门有一定的理论性, 同时实践性和实用性都很强的专业基础课。只有经过实践才有可能掌握微型计算机的结构组成和工作原理、 内存储器的结构组成和工作原理、 汇编语言程序设计的方法以及微型计算机的中断技术、 内存扩充技术、 典型接口芯片的接口设计及其应用。为了使学生更好地理解和深刻地把握这些知识, 并在此基础上, 训练和培养学生的科研能力、 创新能力。
本实验指导书共分为三部分, 第一部分为软件实验部分, 具体实验项目包括: 汇编语言上机练习、 DEBUG命令使用、 两位多位十进制数相加、 循环程序、 分支程序; 第二部分为硬件部分具体实验项目包括: LED显示、 双色灯、 开关状态显示、 8259中断、 交通灯、 存储器、 定时器数器、 A/D、 D/A等。 第三部分为附录部分, 主要包括DEBUG命令、 实验台介绍、 实验报告要求等。
不同专业可根据具体专业需要选择实验项目。
由于编者水平有限, 在编写过程中难免会有不足之处, 敬请谅解, 若您有好的建议, 请及时告知本人。谢谢!
目 录
软件部分实验
一、 实验一 数据块搬运 --------------------------- - 4
二、 实验二 两个多位十进制数相加 ---------------------5
三、 实验三 分支程序设计 -----------------------------7
硬件部分实验
一、 实验一 LED实验 ------------------------------9
二、 实验二 双色灯实验----------------------------13
三、 实验三 开关状态显示--------------------------16
四、 实验四 定时器计数器实验----------------------19
五、 实验五 A/D转换实验 --------------------------20
六、 实验六 D/A转换实验 --------------------------23
七、 实验七 8259A中断实验 ------------------------24
八、 实验八 8251串行通讯实验 ---------------------27
九、 实验九 8279键盘显示实验 ---------------------30
十、 实验十 RAM读写实验 --------------------------33
十一、 实验十一 步进电机驱动实验 -----------------35
附 录---------------------------------------------37
软件部分实验
实验一 数据块搬运实验
一.实验学时: 2
二、 实验类型: 验证性
三、 开出要求: 必修
四、 实验目的
(一) 1、 熟悉在PC机上编辑、 汇编、 连接、 调试和运行汇编语言程序的过程。
2、 熟悉星研集成环境软件。
3、 编写程序, 实现数据段的传送、 校验。
(二) 熟悉汇编过程中一些常见出错信息。
(三) 经过本实验学习, 使学生掌握汇编语言指令及上机调试知识, 为后续实验操作奠定基础
(四) 培养学生认真、 踏实的学习习惯。
五、 实验内容、 实验原理、 方法和手段及实验组织运行要求:
( 一) 实验内容
将DS段内3000H开始的连续100个单元的数据, 搬运到I/O口地址为 H开始的地址上, 再将其搬运到数据段下以6000H为首地址的内存单元。熟悉查看特殊功能寄存器、 CS段、 DS段的各种方法。熟悉掌握寻址方式、 传送类指令以及循环程序的编程。
( 二) 实验原理:
( 三) 实验组织运行要求:
先由教师演示, 再由学生每人一台机子操作。
六、 实验条件:
硬件条件: 高档PC机。
软件条件:
1、 DOS 操作系统。
2、 任意一种编辑程序, 如EDIT。
3、 宏汇编程序MASM。
4、 连接程序LINK。
七、 实验步骤:
(一) 编辑源程序, 建立一个以后缀为 .ASM的文件.
(二) 汇编源程序, 检查程序有否错误, 有错时回到编辑状态, 修改程序中错误行。无错时继续第3步。
(三) 连接目标程序, 产生可执行程序, 有错时回到编辑状态, 无错时继续第4步。
(四) 在操作系统状态下, 运行程序, 有错时找错, 然后回到编辑状态。无错时成功。
八、 实验报告:
(一) 简单叙述你的上机步骤。
(二) 写出在上机过程中遇到的问题以及是如何解决的。
(三) 写出正确的源程序清单和执行结果。
(四) 实验过程中遇到的问题、 实验心得、 建议等
实验二 两个多位十进制数相加的实验
一、 实验学时: 2
二、 实验类型: 验证性
三、 开出要求: 选修
四、 实验目的
(一) 学习数据传送和算术运算指令的用法。
(二) 熟悉在PC机上建立、 汇编、 链接、 调试和运行8088汇编语言程序的过程。
(三) 巩固DEBUG的使用方法。
五、 实验内容、 实验原理、 方法和手段及实验组织运行要求:
( 一) 实验内容:
将两个多位十进制数相加。要求被加数均以ASCII码形式各自顺序存放在以DATAl和DATA2为首的5个内存单元中(低位在前), 结果送回DATAl处。
( 二) 实验原理说明:
程序框图
( 三) 实验方法、 手段
运行预先编写好的源程序并与预期结果对照
( 四) 实验组织运行要求:
1、 实验前要做好充分准备, 包括汇编程序清单、 调试步骤、 调试方法, 以及对程序结果的分析等。
2、 采用集中授课形式
六、 实验条件:
硬件条件: 高档PC机。
软件条件: 星研实验环境软件
七、 实验步骤:
(一) 开机进入软件环境
(二) 在编辑状态下输入预先编好的源程序
(三) 汇编成目标文件, 有错则回到编辑状态修改
(四) 连接形成可执行文件
(五) 运行程序, 查看结果
八、 实验报告要求:
(一) 写出实验步骤、 实验流程图、 程序以及运行结果
(二) 思考题: 若编写两个带符号的多位十进制数相加的程序, 如何实现? 。
(三) 编写、 运行程序的过程以及调试所中遇到的问题是如何解决的, 并对调试过程中的问题 进行分析, 对执行结果进行分析。
(四) 实验过程中遇到的问题、 实验心得、 建议等
九、 实验成绩评定办法:
实验流程10%; 操作过程20%; 解决问题的能力40%、 资料搜集5%; 实验结果及分析25%
实验三 分支程序设计
一.实验学时: 2
二、 实验类型: 验证性
三、 开出要求: 必修
四、 实验目的
( 一) 掌握分支程序的设计、 调试方法。
( 二) 掌握8086/8088条件测试指令。
( 三) 学并掌握分支程序结构程序的设计方法。
( 四) 熟练掌握源程序中语法错误的检查方法。
五、 实验内容、 实验原理、 方法和手段及实验组织运行要求:
( 一) 实验内容:
假设有一组数据: 15, 4, 0, 10, 9, 21。编一程序, 判断: 每个数大于10等于10还是小于10, 输出判断结果。
即: 1 当x>10
y= 0 当x=10
-1 当x<10
( 二) 实验说明:
编程提示:
1、 首先将原始数据装入起始地址为XX的字节存储单元中。
2、 将判断结果以字符串的形式存放在数据区中, 以便在显示输出时调用。
3、 其中判断部分可采用CMP指令, 得到一个分支结构, 分别输出”y=0”, ”y=1”, ”y=-1”。
4、 程序中存在一个循环结构, 循环6次, 调用6次分支结构后结束。
( 三) 实验方法、 手段
输入并调试运行预先编写好的源程序并与预期结果对照
( 四) 实验组织运行要求:
1、 实验前要做好充分准备, 包括汇编程序清单、 调试步骤、 调试方法, 以及对程序结果的分析等。
2、 以学生自主训练为主的开放模式组织教学
六、 实验条件:
硬件条件: 高档PC机。
软件条件:
1、 DOS 操作系统。
2、 任意一种编辑程序, 如EDIT。
3、 宏汇编程序MASM。
4、 连接程序LINK。
七、 实验步骤:
( 一) 开机进入软件环境
( 二) 在编辑状态下输入预先编好的源程序
( 三) 汇编成目标文件, 有错则回到编辑状态修改
( 四) 连接形成可执行文件
( 五) 运行程序, 查看结果
八、 思考题:
程序中的原始数据是以怎样的形式存放在数据区中的? 请用DEBUG调试程序观察并分析。
九.实验报告要求:
1、 程序说明。说明程序的功能、 结构。
2、 调试说明。包括上机调试的情况、 上机调试步骤、 调试所遇到的问题是如何解决的, 并对调试过程中的问题进行分析, 对执行结果进行分析。
3、 画出程序框图。
4、 写出源程序清单和执行结果。
5、 回答思考题。
6、 实验过程中遇到的问题、 实验心得、 建议等
十、 实验成绩评定办法:
实验流程10%; 操作过程20%; 解决问题的能力40%、 资料搜集5%; 实验结果及分析25%
接口技术实验
实验一 74HC138译码器实验
一、 实验学时: 3
二、 实验类型: 验证性
三、 开出要求: 必修
四、 实验目的:
(一) 掌握74HC138译码器的工作原理, 熟悉74HC138译码器的具体运用连接方法, 了解74HC138是如何译码的。学习扩展简单I/O接口的方法。
(二) 掌握8255的硬件连接和控制字的设置方法
(三) 学习编制数据输出程序的设计方法。
五、 实验内容、 实验原理、 方法和手段及实验组织运行要求:
( 一) 实验内容:
编写程序: 使用82C55的PC0、 PC1、 PC2控制74HC138的数据输入端, 经过译码产生8选1个选通信号, 轮流点亮8个LED指示灯。
( 二) 实验原理:
1、 Intel 8255A是可编程接口芯片, 能够用程序设定或改变其工作方式, CPU经过它与外设连接。
8255有三个8位的并行口, 端口既能够编程为普通I/O口, 也能够编程为选通I/O口和双向传输口。其中, 口地址取决于片选CS和A1、 A0。
选择如下
A1A0 00 端口A
A1A0 01 端口B
A1A0 10 端口C
A1A0 11 控制寄存器
2、 8255经过控制字设置能够规定各个口的工作方式以及输入输出方向, 具体格式如下:
( 三) .实验电路及连线
1、 连线说明:
C3区: A、 B、 C
→
B4区: PC0、 PC1、 PC2
C3区: G1、 G2A、 G2B
→
C1区: VCC、 GND、 GND
C3区: JP35
→
G6区: JP65( LED指示灯)
B4区: CS、 A0、 A1
→
A3区: CS1、 A0、 A1
由于各PC机速度不同,为达到较好的实验效果, 可适当调节LED亮灭的延时时间。
( 四) 实验方法、 手段:
教师讲解实验板的相关情况以及实验运行环境的使用。
( 五) 实验组织运行要求:
采用集中授课形式
六、 实验条件:
(一) 高档PC机和星研实验机以及导线若干。
(二) 串口路径
C: 〉CD 星研
C: 〉CD COM
C: 〉U8688ET
(三) 资料: 8255相关知识; 地址译码。
七、 实验步骤:
(一) 按要求接好线路
(二) 进入汇编环境, 编写、 汇编、 连接程序
(三) 运行程序, 查看结果
八、 思考题
(一) 如果改用其它口输出, 程序要做哪些修改?
(二) 8255的片选线改接CS5, 程序要做哪些修改?
(三) 8088CPU内哪些寄存器能够和I/O端口打交道, 它们各有什么作用?
九、 实验报告要求:
(一) 调试说明。包括实验的情况、 调试步骤、 调试所遇到的问题是如何解决的, 并对调试过程中的问题进行分析, 对结果进行分析。
(二) 画出硬件连线图、 程序框图。
(三) 写出源程序清单和执行结果。
(四) 回答思考题。
(五) 实验过程中遇到的问题、 实验心得、 建议等
十、 实验成绩评定办法:
实验流程10%; 操作过程20%; 解决问题的能力40%、 资料搜集5%; 实验结果及分析25%。
实验二 LED控制实验
一、 实验学时: 3
二、 实验类型: 设计性
三、 开出要求: 选修
四、 实验目的
(一) 学习单板方式下扩展简单I/O接口的方法以及双色灯的使用。
(二) 进一步学习微处理器的编程技术、 延时子程序的应用。
(三) 3、 理解交通灯工作原理
五、 实验内容、 实验原理、 方法和手段及实验组织运行要求:
( 一) 实验内容:
采用方式0, 编写程序, 以8255的某个数据口作为输出口, 控制8个LED灯(可发红,绿,黄光), 模拟十字路口交通灯管理
( 二) 实验原理:
1、 Intel 8255A是可编程接口芯片, 能够用程序设定或改变其工作方式, CPU经过它与外设连接。
8255有三个8位的并行口, 端口既能够编程为普通I/O口, 也能够编程为选通I/O口和双向传输口。其中, 口地址取决于片选CS和A1、 A0。
选择如下
A1A0 00 端口A
A1A0 01 端口B
A1A0 10 端口C
A1A0 11 控制寄存器
2、 8255经过控制字设置能够规定各个口的工作方式以及输入输出方向, 具体格式如下:
( 三) 实验电路及连
( 四) 实验方法、 手段:
教师讲解双色灯工作原理以及实验要求, 学生完成程序编写及调试运行
( 五) 实验组织运行要求:
以学生自主训练为主的开放模式组织教学
六、 实验条件:
(一) 高档PC机和星研实验机以及导线若干。
(二) 串口路径
C: 〉CD 星研
C: 〉CD COM
C: 〉U8688ET
(三) 资料: 8255相关知识; 地址译码。
七、 实验步骤及要求
( 一) 实验步骤
1、 按要求接好线路
2、 进入汇编环境, 编写、 汇编、 连接程序
3、 运行程序, 查看结果
( 二) 实验要求
1、 编程, 实现LED的静态亮灭控制( 0亮, 1灭) ;
2、 修改程序, 实现灯的两种状态的闪烁控制。(能够采用延时子程序方式);
3、 运用循环移位指令, 实现LED的流水灯控制
八、 实验说明
(一) 连线说明:
B4区: CS、 A0、 A1
——
A3区: CS1、 A0、 A1
B4区: JP56( PA口)
——
G6区: JP65
(二) 观察实验结果, 是否能看到灯控制过程。
九、 思考题
(一) 怎么修改灯的闪烁时间?
(二) 如果连接8255的PC口, 该如何修改程序?
十.实验报告要求:
(一) 调试说明。包括实验的情况、 调试步骤、 调试所遇到的问题是如何解决的, 并对调试过程中的问题进行分析, 对结果进行分析。
(二) 画出硬件连线图、 程序框图。
(三) 写出源程序清单和执行结果。
(四) 回答思考题。
(五) 实验过程中遇到的问题、 实验心得、 建议等
十一、 实验成绩评定办法:
实验流程10%; 操作过程20%; 解决问题的能力40%、 资料搜集5%; 实验结果及分析25%。
实验三 开关状态显示实验
一、 实验学时: 3
二、 实验类型: 设计性
三、 开出要求: 选修
四、 实验目的
8255可编程并行接口芯片有三个通道和三种工作方式。其中A、 B通道和外设交换数据, C通道和外设交换状态信息。8255并行I/O接口于外设交换的方式由软件预先设置, 该过程称为初始化。包括
(一) 学会正确使用8255各个口的不同工作方式。
(二) 8255与CPU及外设的接口方法。
(三) 掌握8255的编程原理。
(四) 熟悉外设的信息经过8255和CPU的交换过程。
五、 实验内容、 实验原理、 方法和手段及实验组织运行要求:
( 一) 实验内容:
编写程序, 设定8255的PA口为开关量输入, PC口为开关量输出, 要求能随时将PA口的开关状态经过PC口的发光二极管显示出来。
( 二) 实验原理:
1、 Intel 8255A是可编程接口芯片, 能够用程序设定或改变其工作方式, CPU经过它与外设连接。
8255有三个8位的并行口, 端口既能够编程为普通I/O口, 也能够编程为选通I/O口和双向传输口。其中, 口地址取决于片选CS和A1、 A0。
选择如下
A1A0 00 端口A
A1A0 01 端口B
A1A0 10 端口C
A1A0 11 控制寄存器
2、 8255经过控制字设置能够规定各个口的工作方式以及输入输出方向, 具体格式如下:
( 三) .实验电路及连线
1、 将K0~K7用连线连至8255的PB0~PB7, 将L0~L7用连线连至8255的PA0~PA7, 8255CS用连线连至译码处的200H-207H孔。
2、 根据自己的具体连线画出实验原理接线图。
( 四) .实验说明
本实验要求8255工作于方式0, PA口设置为输入, PC口设置为输出, 输入量为开关量, 经过8255可实时显示在LED灯上。
开始
设置8255工作状态
PA口读入八位开关
PC口输出至八位二极管
( 五) 实验程序框图
六、 实验器材:
硬件条件: 高档PC机和星研实验箱以及导线若干。
软件条件:
(一) DOS 操作系统。
(二) 任意一种编辑程序, 如EDIT。
(三) 宏汇编程序MASM。
(四) 连接程序LINK。
(五) 调试程序DEBUG。
七、 实验步骤:
(一) 按要求接好线路
(二) 进入汇编环境, 编写、 汇编、 连接程序
(三) 运行程序, 查看结果
八、 思考题
(一) 8088CPU内哪些寄存器能够和I/O端口打交道, 它们各有什么作用?
(二) 如果对8位开关状态的采集受总开关Kc的控制, Kc闭合时才允许采样, 否则不显示, 该如何实现? ( 提示: 选择 C口某一位接一开关, 查询其状态做条件判断, 决定显示与否)
九.实验报告要求:
(一) 调试说明。包括实验的情况、 调试步骤、 调试所遇到的问题是如何解决的, 并对调试过程中的问题进行分析, 对结果进行分析。
(二) 画出硬件连线图、 程序框图。
(三) 写出源程序清单和执行结果。
(四) 回答思考题。
(五) 实验过程中遇到的问题、 实验心得、 建议等
十、 实验成绩评定办法:
实验流程10%; 操作过程20%; 解决问题的能力40%、 资料搜集5%; 实验结果及分析25%
实验四 定时器/计数器实验
一、 实验学时: 3
二、 实验类型: 设计性
三、 开出要求: 必修
四、 实验目的
(一) 了解8253定时器的硬件连接方法及时序关系。
(二) 掌握8253各种工作方式的特点、 编程及原理。
(三) 掌握8253控制字及计数初值的设置方法
(四) 学习8253多级串联实现大时间常数的定时方法。
五、 实验内容、 实验原理、 方法
( 一) 实验内容:
编程将8253定时器0设定为方式3, 定时器1设定在方式2, 定时器2设定在方式2, 定时器0输出作为定时器1的输入, 定时器1的输出作为定时器2的输入, 定时器2的输出接在一个LED上, 运行后可观察到该LED在不停闪烁。
( 二) 实验原理:
1、 8253是可编程定时计数器, 是16位二进制/10进制减计数器, 有3个通道6种工作方式, 输出波形不一样。能够用程序设定或改变其工作方式, CPU经过它与外设连接。
8253具有3个独立的16位计数器,6种不同的工作方式, 能够二进制计数也能够十六进制计数。地址取决于片选CS和A1、 A0。选择如下
A1A0 00 计数器0
A1A0 01 计数器1
A1A0 10 计数器2
A1A0 11 控制寄存器
2、 8255经过控制字设置能够规定各个口的工作方式以及输入输出方向, 具体格式如下:
( 四) 实验电路及连线
GATE0~GATE2连至电源+5V, 将25模块中的频率插孔( 153.6K HZ) 用线连至CLK0, OUT0用线连至CLK1, OUT1用线连至CLK2, OUT2用线连至一个发光管( L1) , CS8253片选孔用线连至译码处228H-22FH孔。
( 五) 实验说明
1、 编写程序: 使用8253的计数器0和计数器1实现对输入时钟频率的两级分频, 得到一个周期为1秒的方波, 用此方波控制蜂鸣器, 发出报警信号, 也能够将输入脚接到逻辑笔上来检验程序是否正确。
2、 连接线路, 验证8253的功能, 熟悉它的使用方法。
( 六) 实验程序框图
六、 实验器材:
硬件条件: 高档PC机和星研实验箱以及导线若干。
软件条件:
(一) DOS 操作系统。
(二) 任意一种编辑程序, 如EDIT。
(三) 宏汇编程序MASM。
(四) 连接程序LINK。
七、 实验步骤:
(一) 按要求接好线路
1、 连线说明:
C5区: CS、 A0、 A1
——
A3区: CS5、 A0、 A1
C5区: CLK0
——
B2区: 2M
C5区: OUT0
——
C5区: CLK1
C5区: OUT1
——
D1区: Ctrl(蜂鸣器)
C5区: GATE0、 GATE1
——
C1区的VCC
2、 测试实验结果: 蜂鸣器发出时有时无的声音; 用逻辑笔测试蜂鸣器的输入端口, 红绿灯交替点亮。
(二) 进入汇编环境, 编写、 汇编、 连接程序
(三) 运行程序, 查看结果
八、 思考题:
(一) 改变8253的计数方式, 看其结果有什么变化?
(二) 有一流水线, 要求经过10个工件后, 蜂鸣器响6秒, 频率为1KHz, 如何实现?
九、 实验报告要求:
(一) 调试说明。包括实验的情况、 调试步骤、 调试所遇到的问题是如何解决的, 并对调试过程中的问题进行分析, 对结果进行分析。
(二) 画出硬件连线图、 程序框图。
(三) 写出源程序清单和执行结果。
(四) 回答思考题
(五) 实验过程中遇到的问题、 实验心得、 建议等
十、 实验成绩评定办法:
实验流程10%; 操作过程20%; 解决问题的能力40%、 资料搜集5%; 实验结果及分析25%。
实验五 8259A中断控制器实验
一、 实验目的与要求
了解8259A的内部结构、 工作原理; 了解8259A与8088的接口逻辑; 掌握对8259A的初始化编程方法, 了解8088是如何响应中断、 退出中断的。
复习本节实验内容, 可尝试自行编写程序, 做好实验准备工作, 填写实验报告。
二、 实验设备
STAR系列实验仪一套、 PC机一台
三、 实验内容
1、 编制程序: 拨动单脉冲开关, ””送给8259A的IR0, 触发中断, 8088计数中断次数, 显示于G5区的数码管上
四、 实验原理图
五、 实验步骤
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、 D
2、 运行程序
3、 上下拨动单脉冲开关, 拨动二次, 产生一个””, 观察结果, 数码管上显示的次数与拨动开关次数是否对应。
六、 演示程序
.MODEL
TINY
EXTRN
Display8:NEAR
IO8259_0
EQU
0F000H
IO8259_1
EQU
0F001H
.STACK
100
.DATA
BUFFER
DB
8 DUP(?)
Counter
DB
?
ReDisplayFlag
DB
0
.CODE
START:
MOV
AX,@DATA
MOV
DS,AX
MOV
ES,AX
NOP
CALL
Init8259
CALL
WriIntver
MOV
Counter,0
;中断次数
MOV
ReDisplayFlag,1
;需要显示
STI
;开中断
START1:
CMP
ReDisplayFlag,0
JZ
START1
CALL
LedDisplay
MOV
ReDisplayFlag,0
JMP
START1
Init8259
PROC
NEAR
MOV
DX,IO8259_0
MOV
AL,13H
OUT
DX,AL
MOV
DX,IO8259_1
MOV
AL,08H
OUT
DX,AL
MOV
AL,09H
OUT
DX,AL
MOV
AL,0FEH
OUT
DX,AL
RET
Init8259
ENDP
WriIntver
PROC
NEAR
PUSH
ES
MOV
AX,0
MOV
ES,AX
MOV
DI,20H
LEA
AX,INT_0
STOSW
MOV
AX,CS
STOSW
POP
ES
RET
WriIntver
ENDP
LedDisplay
PROC
NEAR
MOV
AL,Counter
MOV
AH,AL
AND
AL,0FH
MOV
Buffer,AL
AND
AH,0F0H
ROR
AH,4
MOV
Buffer + 1,AH
MOV
Buffer + 2,10H
;高六位不需要显示
MOV
Buffer + 3,10H
MOV
Buffer + 4,10H
MOV
Buffer + 5,10H
MOV
Buffer + 6,10H
MOV
Buffer + 7,10H
LEA
SI,Buffer
CALL
Display8
RET
LedDisplay
ENDP
INT_0:
PUSH
DX
PUSH
AX
MOV
AL,Counter
ADD
AL,1
DAA
MOV
Counter,AL
MOV
ReDisplayFlag,1
MOV
DX,IO8259_0
MOV
AL,20H
OUT
DX,AL
POP
AX
POP
DX
IRET
END
START
七、 实验扩展及思考
1、 从8259A收到上升沿, 到8088响应中断, 试画这个过程的时序图。
八: 执行中断, 在屏幕上显示0`9
C8259 EQU 20H
CODE SEGMENT 'CODE'
ASSUME CS:CODE
START: XOR AX,AX
MOV DS,AX
LEA AX,IRQ3
MOV DS:2CH,AX
MOV AX,CS
MOV DS:2EH,AX
MOV DX,C8259
MOV AL,00010011B ; ICW1
OUT DX,AL
INC DX
MOV AL,00001010B ; ICW2
OUT DX,AL
MOV AL,00001101B ; ICW4
OUT DX,AL
MOV AL,11111011B ; OCW1
OUT DX,AL
MOV AL,20H ; EOI
OUT 20H,AL
MOV BL,'a'
STI
JMP $
IRQ3: CLI
MOV AH,2
MOV DL,BL
INT 21H
INC BL
CMP BL,'z'
JLE NEXT
MOV DX,21H
IN AL,DX
OR AL,04H
OUT DX,AL
MOV AH,4CH
INT 21H
NEXT: MOV AL,20H ;EOI
OUT 20H,AL
STI
IRET
CODE ENDS
END START
实验六 AD实验(数字电压表实验)
一、 实验学时: 3
二、 实验类型: 设计性
三、 开出要求: 必修
四、 实验目的
(一) 掌握A/D芯片AD0809的转换性能及编程方法。
(二) 学习A/D芯片与其它芯片( 如8279) 接口的方法, 初步建立系统的概念。
五、 实验内容、 实验原理、 方法和手段及实验组织运行要求:
( 一) 实验内容:
编程用查询方式采样电位器输入电压, 并将采样到的结果实时地经过8279显示在数码管上。( 只须显示一位即可。用0~F表示0~+5V电压) 。
( 二) 实验原理: ADC0809的单极性输入电压与数字量关系为:
N=256 ╳ VIN/5
( 三) 实验电路及连线
1、 1、 连线说明:
G4区: CS、 ADDA、 ADDB、 ADDC
——
A3区: CS1、 A0、 A1、 A2( 选择通道)
G4区: CLK
——
B2区: 500K
G4区: IN0
——
D2区: 0~5V
E5区: CLK
——
B2区: 2M
E5区: CS
——
A3区: CS5
E5区: A0
——
A3区: A0
E5区: A、 B、 C、 D
——
G5区: A、 B、 C、 D
2、 调节0~5V电位器( D2区) 输出电压, 显示在LED(最右边2位)上的电压数字量会随之改变。用万用表验证AD转换的结果。
( 四) 实验说明
本实验中所用A/D转换芯片为逐次逼近型, 精度为8位, 每转换一次约100微秒, 因此程序若为查询式,则在启动后要加适当延时。另外, 0809芯片提供转换完成信号( EOC) , 利用此信号可实现中断采集。有兴趣者可自行编制程序。
( 五) 实验程序框图
开 始
50->采样次数
0->AX
A/D转换子程序
AX+AD转换结果
采样次数-1=0
N
Y
取50次AD转换结果的平均值
调用显示子程序
六、 实验器材:
硬件条件: 高档PC机和星研实验箱以及导线若干。
软件条件:
(一) DOS 操作系统。
(二) 任意一种编辑程序, 如EDIT。
(三) 宏汇编程序MASM。
(四) 连接程序LINK。
(五) 调试程序DEBUG。
七、 实验步骤:
(一) 按要求接好线路
(二) 进入汇编环境, 编写、 汇编、 连接程序
(三) 运行程序, 查看结果
八、 思考题
改动电路, 利用发光二极管, 来显示A/D转换后的效果。
九、 实验报告要求:
(一) 调试说明。包括实验的情况、 调试步骤、 调试所遇到的问题是如何解决的, 并对调试过程中的问题进行分析, 对结果进行分析。
(二) 画出硬件连线图、 程序框图。
(三) 写出源程序清单和执行结果。
(四) 回答思考题
(五) 实验过程中遇到的问题、 实验心得、 建议等
十、 实验成绩评定办法:
实验流程10%; 操作过程20%; 解决问题的能力40%、 资
展开阅读全文