1.CPU、内存连接电源、数据和地址总线
(1)电源的连接
每个引脚上的电压要么是5V,要么是0V,分别代表数字1和0,通过电压的变化进行消息的收发
Vcc引脚和GND引脚,分别连接5V和0V电源上
(2)数据总线和地址总线
z80和5517上的A0-7和D0-7引脚连起来,5517上有2048个存储单元(每个单元8bit),但是由于只有8个地址引脚和cpu相连,能标识的地址单元也就是2的8次方,256个
2. 连接io
将pio的D0-D7的与cpu的数据引脚连起来,用于和cpu输入输出数据
将B/A和C/D引脚和cpu的A0-1连起来,AB选择端口,CD控制和数据(这里cpu的A0~1引脚既连接了内存也连接了io,如何区分呢,看第四部分)
3. 连接时钟
cpu和io的clk引脚连接
4. 连接控制区分是读写内存还是io的控制引脚
(1)区分内存和io
MREO和IORQ 引脚
MREO连内存的ce引脚;IORQ连io的IORQ和ce引脚
(2)区分读写
RD和WR引脚
cpu和内存的RD和WR相连,io一个RD引脚区分读写
5. 连接其他的控制引脚
6. 连接外部设备,从而可以通过DMA直接读写数据到内存
cpu上的BUSRQ和BUSAK引脚
BUSRQ 接收DMA请求,连接到快动开关,按下后将CPU从电路中隔离,这种状态下就可以不通过CPU直接向内存中读写数据了(这种行为就成为DMA)
BUSAK 响应DMA请求,隔离后需要BUSAK设成0,才能进入DMA,这个引脚连接在三态总线缓冲器上,通过这个ic连接io设备
7. 连接io外部设备
(1)输入内存程序和设定内存地址
4个三态总线缓冲器分别连接两个指拨开关和一个按键开关,缓冲器的另一端,其中一个指拨开关连接到数据总线(第一个开关),一个连接到地址总线(第二个开关),按键开关连接到cpu的WR引脚
(2)输入数据和输出结果
分别将一个指拨开关(第三个开关)和LED连到PIO 的AB端口的引脚上
最终连接图如下:
(1)启动程序:输入测试程序,通过拨动输入设备指拨开关,控制LED亮灭
先按下cpu上的DMA按键(BUSRQ引脚连着的快动开关),然后一行一行的分别用第一二个指拨开关(分别连着地址总线和数据总线)输入数据,没输入一行,按一下按键开关,程序写入内存的指定位置,全部写完后,按下reset引脚的开关,cpu开始准备从内存的第0个位置执行指令,程序开始跑起来了,
(2)输入数据,获得输出
通过第三个开关,输入数据,这时查看LED灯的亮灭情况