1、目 录 概述 1 一 设计内容与要求 1 二 设计思想 1 三 设计所用芯片及工作原理 1 四 系统连线图 3 五 连线图说明 六 程序流程图 5 七 程序源代码 7 八 设计过程中遇到的问题及解决方法 九 设计心得 9 1 电子秒表 概述 汇编语言程序设计是计算机各专业一门重要的基础课 ,是必修的核心课程之一 ,是 操作系统 和 微机原理和接口技术 等其它核心课程必要的先修课,而且对于训练学生掌握程序设计技术 ,熟悉上机操作和程序调试技术都有重要作用。因此该课程在整个教学计划中占有重要地位。 本课程的目的和要求是 : 1、 应使学生掌握 8086/8088 宏汇编语言程序设计的基本方法和技巧
2、 ,能够运用 8086/8088宏汇编语言编写应用程序。提高学生分析问题、解决问题的能力以及实际动手能力。 2、应使学生基本掌握汇编语言程序设计的基本理论 ,方法和技巧 ,正确地使用结构化、模块程序设计技术。注意培养学生良好的程序设计风格。 3、应使学生比较熟练地使用调试工具 DEBUG 调试 8086/8088 汇编语言程序。注意提高学生的调试能力。 4、注意与前后相关课程的关系。使学生对前导课程有进一步的理解,同时为学习后继课程打好基础。 一、 设计内容与要求 设计一个简单的电子秒表(按一下钮启动,再按一个停止,再按一下清零,周而复始。)最 小计时单位 0.01S,即可显示 XX.XX(秒
3、、百分之一秒)。设计要求如下: ( 1)由键盘和 8255 作为输入部分 ( 2)用七段数码管或液晶显示屏来显示时间 ( 3)由 8253 和 8259 构成计时信号,通过中断完成启动计时、停止计时和动态刷新显示。 二、 设计思想 电子秒表要实现的功能:用键盘中断来控制整个程序,按一下回车键启动电子秒表,再按一下暂停,按一下 ESC 键清零,用七段数码管显示时间。整个程序涉及到 8255、 8253 与8259 三个芯片。 8253 的 OUT2, CLK2 分别连接 8259 的 IRQ7 与 PCLK, 8253 的 GATE2 连接正 5 伏电压,采用计数器 2 每隔 0.01 秒产生一
4、次中断并且计数,写入以偏移地址 4000H开始的 4 个内存单元,然后利用 8255 将内存单元的数据输出到七段数码管。由于键盘中断优先于 8259 的 7 号中断,所以程序只有在按一下回车键才启动电子秒表,再按一下暂停,按一下 ESC 键清零,如果超出了 60 秒,整个程序自动重新开始。 三、 所用芯片工作原理 8255:接口电路在 CPU 和 I/O 设备之间起着信号的变换和传输的作用。 任何接口电路与 CPU 之间的信息传输方式都是并行的,即 CPU 与接口电路之间以数据字节 /字为单位传送信息 。接口电路与 I/O 设备之间的信息传送方式,有并行和串行两种,相应的接口电路称为并行接口和
5、串行接口。 并行接口是在多根数据线上,以数据字节 /字与 I/O 设备交换信息。在输入过程中,输入设备把数据送给接口,并且使状态线“输入准备好”有效。接口把数据存放在“输入缓冲寄存器”中,同时使“输入回答”线有效,作为对外设的响应。外设在收到这个回答信号后,就撤消数据和“输入准备好”信号。数据到达接口中后,接口会在“状态寄存器”中设置输入准备好标志,或者向 CPU 发一个中断请求。 CPU 可用查询方式或中断方式从接口中读取数据。接 口中的数据被读取后,接口会自动清除状态寄存器中的标志,且撤消对 CPU 的中断请求。 在输出过程中,每当输出寄存器可以接收数据,接口就会将状态寄存器中“输出准备好”状态置 1 或向 CPU 发一个中断请求, CPU 可用查询或中断方式向接口输出数据。当 CPU