计算机科学与技术学院 2006 级硬件课程设计报告
此设计由计算机系统、键盘、LED 显示、FD88 实验箱、交通灯演示系统组成。设
计包括基本的交通灯的功能。系统除基本交通灯功能外,还具有倒计时、时间设置、
紧急情况处理、根据汽车的流量调整信号灯的点亮时间以及根据具体情况手动控制
等功能。这些功能的实现主要通过几个芯片,如 8255A,和软件部分来实现的。
我们通过采用一些芯片接口:并行接口 8255,定时/计时器 8253,中断控制器
8259A 与计算机相连,通过 8253 产生 1Hz 的方波,并编程得到计时器,然后利用
8259 的中断功能和 8255 的并口输出数据功能做了一实时操作系统,来模拟十字路
口交通灯的模拟,具体如下:1、红绿灯的基本的显示功能;2、计数,显示灯的剩
余时间的 LED 的读取;3、夜间模式的实现;4、紧急事件的实现;如消防车、急救
车,路障的设立;5、对流量的测定,实现对下一路口的红绿灯时间的重新赋值
(一)8259 的工作原理:
1、数据总线缓冲器:8259A 与系统数据总线的接口,是 8 位双向三态缓冲器。CPU
与 8259A 之间的控制命令信息、状态信息以及中断类型信息,都是通过缓冲器传送
的。2、读/写控制逻辑:CPU 通过它实现对 8259A 的读/写操作。3、级连缓冲器:用
以实现 8259A 芯片之间的级连,使得中断源可以由 8 级扩展至 64 级。4、控制逻辑
电路:对整个芯片内部各部件的工作进行协调和控制。5、中断请求寄存器 IRR:8 位,
用以分别保存 8 个中断请求信号,当响应的中断请求输入脚有中断请求时,该寄存
器的相应位置 1。6、中断屏蔽寄存器 INR:8 位,相应位用以对 8 个中断源的中断请
求信号进行屏蔽控制。当其中某位置“0“时,则相应的中断请求可以向 CPU 提出;
否则,相应的中断请求被屏蔽,即不允许向 CPU 提出中断请求。该寄存器的内容为
8259A 的操作命令字 OCW1,可以由程序设置或改变。7、中断服务寄存器 ISR:8 位,
当 CPU 正在处理某个中断源的中断请求时,ISR 寄存器中的相应位置 1。8、用以比
较正在处理的中断和刚刚进入的中断请求之间的优先级别,以决定是否产生多重中
断或中断嵌套。
2、(二)8255A 的工作原理:
1、8255A 的内部结构:
1) 数据总线缓冲器:这是一个双向三态的 8 位数据缓冲器,它是 8255A 与微机
系统数据总线的接口。输入输出的数据、CPU 输出的控制字以及 CPU 输入的
状态信息都是通过这个缓冲器传送的。
2) 三个端口 A,B 和 C:A 端口包含一个 8 位数据输出锁存器和缓冲器,一个 8
位数据输入锁存器。B 端口包含一个 8 位数据输入/输出锁存器和缓冲器,
一个 8 位数据输入缓冲器。C 端口包含一个 8 位数据输出锁存器和缓冲器,
一个 8 位数据输入缓冲器(输入没有锁存器)。
3) A 组和 B 组控制电路:这是两组根据 CPU 输出的控制字控制 8255 工作方式
的电路,它们对于 CPU 而言,共用一个端口地址相同的控制字寄存器,接
收 CPU 输出的一字节方式控制字或对 C 口按位复位字命令。方式控制字的
高 5 位决定 A 组的工作方式,低 3 位决定 B 组的工作方式。对 C 口按位复
位命令字可对 C 口的每一位实现置位或复位。A 组控制电路控制 A 口和 C 口
上半部,B 组控制电路控制 B 口和 C 口下半部。
4) 读写控制逻辑:用来控制把 CPU 输出的控制字或数据送至相应端口,也由它
来控制把状态信息或输入数据通过相应的端口送到 CPU。
评论1