1、 微机原理与接口技术微机原理与接口技术 综合综合课程设计课程设计 成成 员:员: 专专 业:业: 指导教师:指导教师: 试试验箱号:验箱号: 完成时间:完成时间: 2 一、实验目的一、实验目的 1. 了解简单 LED 灯规律工作基本原理。 2. 熟悉 8255A 并行接口的各种工作方式和应用。 3. 熟悉 8253 计数器/定时器的工作方式及应用编程,掌握利用软硬件相结合定时 的方法。 二、实验内容二、实验内容 本次课程设计的内容为简单规律 LED 灯控制管理:通过 8253 编程控制工作方式, 实现精确延时。通过 8255 并行接口来控制 LED 发光二极管的亮灭,实现试验箱上面的 LED1
2、-LED8 灯的间歇闪烁。 三三、实验、实验原理原理 (一)(一)82538253 芯片的内部结构及引脚功能芯片的内部结构及引脚功能 8253 控制字 intel8253 是 NMOS 工艺制成的可编程计数器/定时器, 工作的 最高计数速率 8253(2.6MHz)。 8253 内部有三个计数器,分别称 为计数器 0、 计数器 1 和计数器 2, 他们的 机构完全相同。每个计数器的输入和输出 都决定于设置在控制寄存器中的控制字, 互相之间工作完全独立。每个计数器通过 三个引脚和外部联系,一个为时钟输入端 CLK,一个为门控信号输入端 GATE,另一 个为输出端 OUT。每个计数器内部有一个 8
3、 位的控制寄存器,还有一个 16 位的计数初值寄存 器 CR、一个计数执行部件 CE 和一个输出锁存器 OL。 执行部件实际上是一个 16 位的减法计数器,它的起始值就是初值寄存器的值,而初始值 寄存器的值是通过程序设置的。输出锁存器的值是通过程序设置的。输出锁存器 OL 用来锁存 计数执行部件 CE 的内容,从而使 CPU 可以对此进行读操作。顺便提一下,CR、CE 和 OL 都是 16 位寄存器,但是也可以作 8 位寄存器来用。 8253 具有 3 个独立的计数通道,采用减 1 计数方式。在门控信号有效时,每输入 1 个计 数脉冲,通道作 1 次计数操作。当计数脉冲是已知周期的时钟信号时,
4、计数就成为定时。 3 8253 芯片有 24 条引脚,封装在双列直插式陶瓷管壳内。 1.数据总线缓冲器 数据总线缓冲器与系统总线连接,8 位双向, 与 CPU 交换信息的通道。这是 8253 与 CPU 之间的 数据接口,它由 8 位双向三态缓冲存储器构成,是 CPU 与 8253 之间交换信息的必经之路。 2.读/写控制 读/写控制分别连接系统的 IOR#和 IOW#, 由 CPU 控制着访问 8253 的内部通道。 接收 CPU 送入的 读/写控制信号, 并完成对芯片内部各功能部件的 控制功能, 因此, 它实际上是 8253 芯片内部的 控制器。A1A0:端口选择信号,由 CPU 输入。8
5、253 内部有 3 个独立的通道,加上控制字寄存器,构成 8253 芯片的 4 个端口,CPU 可对 3 个通道 进行读/写操作 3 对控制字寄存器进行写操作。 这 4 个端口地址由最低 2 位地址码 A1 和 A0 来选择。 3.计数通道 02 每个计数通道内含 1 个 16 位的初值寄存器、减 1 计数器和 1 个 16 位的(输出)锁存器。 8253 内部包含 3 个功能完全相同的通道,每个通道内部设有一个 16 位计数器,可进行二进 制或十进制(BCD 码)计数。采用二进制计数时, 写入的初值范围为 0000H0FFFFH,最大计 数值是 0000H,代表 65536。 采用 BCD
6、码计数时,写入的初值范围为 00009999,最大计数 值是 0000,代表 10000。与此计数器相对应,每个通道内设有一个 16 位计数值锁存器。必要 时可用来锁存计数值。(特别说明:8253 计数器的值先减 1 再判断是否为 0,为 0 就中断了, 所以最大初始值为 0,这样减 1 以后,不为 0,所以为最大的,取决于 CF 标志位) 定时系数=需要定时的时间/时钟脉冲周期 设置通道:向方式控制字寄存器端口写入方式选择控制字,用于确定要设置的通道及 工作方式; 计数/定时:向通道写入计数值,启动计数操作; 读取当前的计数值:向指定通道读取当前计数器值时,8253 将计数器值存入锁存器, 从锁存器向外提供当前的计数器值,计数器则继续作计数操作。 计数到:当计数器减 1 为 0 时,通过引脚 OUT 向外输出“到”的脉冲信号。 计数初值输入存放在初值寄存器中,计数开始或重装入时被复制到计数器中。 4 锁存器在非锁存状态,其值随计数器 的变化而变化;一旦锁存了计数器的当前 值,直到锁存器值被