2.7 连接剩余的控制引脚
CPU、内存、I/O中不但有地址总线引脚、数据总线引脚,还有其他引脚,通常把这些引脚统称为“控制引脚”。之所以这样命名是因为这些引脚上输入输出的电信号具有控制IC的功能。现在Z80 CPU上只剩下9个控制引脚没有连接了,那么就再加把劲,继续用红笔把它们也连接到电路中吧
首先把Z80 CPU的(即Machine Cycle 1,机器周期1)和引脚(即Interrupt,中断)与Z80 PIO上标有相同代号的引脚连接起来。是用于同步的引脚,引脚是用于从Z80 PIO向Z80 CPU发出中断请求的引脚。所谓中断就是让CPU根据外部输入的数据执行特定的程序。有关中断的详细内容将在第4章介绍,这里只需要先记住I/O可以中断CPU对程序的处理流程就可以了。
一旦把Z80 CPU的引脚(即Reset,重置)上的值先设置为0再还原成1,CPU就会被重置,重新从内存0号地址上的指令开始顺序向下执行。重置CPU可通过按键开关完成。按键开关需要经过电阻接在+5V和0V之间。请仔细观察这部分的电路图,可以看出引脚上平时是+5V(即1),当按下按键开关时,引脚就变成了0V(即0),而放开按键开关后又会回到+5V(即1)。电阻是为了防止短路而加入的,否则一旦按下按键开关,+5V和0V就会直接接到一起发生短路。像这样通过加入电阻把+5V和0V连接起来的方法在电路图中随处可见(如图2.8所示)
图2.8 如何用开关输入1、0
连接在引脚上的电容,用于在电路接通电源时自动重置CPU。电容就像一个充电电池,具有储存电荷的功能。在通电后一刹那,由于电容正在充电,所以引脚上的电压并不会立即上升到+5V,而充电完成后,引脚的电压会变成+5V,这样就相当于引脚上的值从0变成了1,重置了一次CPU
总线是连接到CPU中数据引脚、地址引脚、控制引脚上的电路的统称,使用快动开关可以使Z80 CPU的引脚(即Bus Request,总线请求)上的值在0和1之间切换。若将引脚的值设为0,则Z80 CPU从电路中隔离。当处于这种隔离状态时,就可以不通过CPU,手动地向内存写入程序了。像这样不经过CPU而直接从外部设备读写内存的行为叫DMA(Direct Memory Access,直接存储器访问)。在诸位所使用的个人计算机中,硬盘等设备要读写内存时使用的就是DMA
当Z80 CPU从电路中隔离后, 引脚(即Bus Acknowledge,响应总线请求)上的值就会变成0。也就是说,把引脚上的值设成0以后,还要确认引脚上的值已经变成了0,然后才能进行DMA。请把引脚分别连接到4个74367的G1和G2引脚上。有关74367的作用将在后面说明
Z80 CPU的其他控制引脚并未使用,所以把和引脚上的值设为1,即连接到+5V上,之所以在连接时加入电阻,是为了便于今后加入开关等元件。请诸位先记住一个词 – 上拉(Pull-up),指的就是像这样通过加入电阻把元件的引脚和+5V连接起来,剩下的和引脚什么也不连接
Z80 PIO的PA0-PA7(PA表示Port A)以及PB0-PB7(PB表示Port B)用于与外部设备进行输入输出,所以稍后要把它们分别连接到指拨开关和LED上。对于剩下的几个引脚可以这样处理:将IEI引脚上拉,IEO引脚、、ARDY引脚、引脚和BRDY引脚则什么都不连接
到此为止,Z80 CPU、TC5517、Z80 PIO以及时钟发生器上要用到的引脚就都接入电路了。这意味着计算机主机系统的功能完成了。作为总结,表2.3汇总了这几块IC上引脚的作用以及电信号的输入输出方向(从各个IC的角度看)
表2.3 Z80 CPU、TC5517、Z80 PIO的引脚作用以及输入输出方向
Z80 CPU
引脚代号/方向/作用
A0-A15/输出/指定地址
D0-D7/输入输出/输入输出数据
/输出/把输入输出对象设定为内存
/输出/把输入输出对象设定为I/O
/输出/输出数据
/输出/输入数据
/输入/接收DMA请求
/输出/响应DMA请求
/输出/用于同步
/输入/接收中断请求
CLK/输入/接收时钟信号
/输入/重置
/输入/(这里未使用)
/输入/(这里未使用)
/输出/(这里未使用)
/输出/(这里未使用)
TC5517
引脚代号/方向/作用
A0-A10/输入/指定地址
D0-D7/输入输出/输入输出数据
/输入/在电路中激活IC
/输入/读出数据
/输入/写入数据
Z80 PIO
引脚代号/方向/作用
/输入/选择端口B或端口A
/输入/选择控制模式或数据模式
D0-D7/输入输出/从CPU读取数据或向CPU写入数据
/输入/在电路中激活IC
/输入/在电路中激活IC
/输入/用于同步
/输出/接收中断请求
/输入/选择是读取数据还是写入数据
CLK/输入/接收时钟信号
PA0-PA7/输入输出/从外部设备读取数据或向外部设备写入数据
PB0-PB7/输入输出/从外部设备读取数据或向外部设备写入数据
/输入/(这里未使用)
ARDY/输出/(这里未使用)
/输入/(这里未使用)
BRDY/输出/(这里未使用)
IEI/输入/(这里未使用)
IEO/输出/(这里未使用)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论