【微型计算机基于8086CPU数字时钟课程设计任务书】
本次课程设计的主要目标是设计一个基于8086微处理器的数字时钟系统。该系统利用8253定时器产生定时信号,8255并行接口芯片进行数据传输,并通过LED数码管进行时间的显示。设计过程中,学生需要考虑如何精确地实现秒、分、小时的计时以及进位处理,并确保系统的稳定性和可靠性。
1. **8253定时器的应用**
8253是一个可编程定时/计数器,它能够产生不同频率的脉冲信号。在这个设计中,它被用来生成周期为2秒的方波,通过读取电平变化来判断时间的流逝。通过编程设定8253的工作模式,可以实现定时功能,例如设置为模式2,使其在每个计数值溢出时产生中断请求,用于更新时间显示。
2. **时钟处理逻辑**
- 方案一:独立处理时、分、秒。为每个时间单位分配单独的数据空间,每秒结束后检查是否需要进位。此方案的缺点是需要较多的逻辑判断。
- 方案二:将时间表示为六位数字,存储在一个缓冲区中。每次秒数增加后,检查是否需要向高位进位,如秒到分,分到小时。秒和分采用60进制,小时为24进制,需要特殊处理。
3. **8255并行接口芯片**
8255是常用的接口芯片,提供了灵活的数据输入输出功能。在设计中,A、B、C口可能分别用于位码和段码的输出。A口可能作为数据输出口,B口用于接收输入,C口的某个位用于检测电平状态。
4. **8279八段数码管显示**
为了显示时间,8279八段数码管控制器被使用,它需要输入位码和段码。74LS373作为位码锁存器,8255的A、B、C口作为段码输出口。CPU通过输出数据选择位码,同时将显示数据存入缓存区,转换为相应的段码,然后送至数码管进行显示。
5. **系统硬件设计**
系统的核心是8086微处理器,它运行在最小模式下,通过5MHz的时钟频率工作。8086拥有16位内部总线和8位外部总线,20根地址线使得它可以寻址1MB的内存空间。此外,8086具有丰富的指令集和多种寻址方式,支持中断处理,具有良好的兼容性,可以适应单处理器或多处理器系统。
6. **8086CPU的寄存器结构**
8086包含14个16位寄存器,包括4个通用寄存器(AX, BX, CX, DX)、2个指针寄存器(BP, SP)、2个变址寄存器(SI, DI)、1个指令指针(IP)和1个标志寄存器(FLAGS)。这些寄存器在计算、数据传输和控制流程中起着关键作用。
在完成这个课程设计的过程中,学生将深入理解8086微处理器的工作原理,掌握8253定时器和8255并行接口的使用,以及如何利用这些硬件资源实现数字时钟的显示和控制。同时,通过编写控制程序,学生将实践汇编语言编程,增强对硬件和软件交互的理解。