background image

  

  

TMS320C32 分配给双口 RAM 的地址空间为 0x800000h~0x8007FFh。通过三八译码器

74HC138 对 A20~A23 和 STRB 进行译码,给出双口 RAM 的片选信号 CER。89C52 分配给
双口

RAM 的地址空间为 0x1000h~0x1FFFh。通过二四译码器 74HC139 对 A13~A15 进行

译码产生双口

RAM 的片选信号 CEL。双口 RAM 每边都有两个读/写控制信号,分别控制高

位字节和低位字节的读

/写,在使用时可以根据需要分别对数据的高位和低位进行写入操作。

在图

2 所示接口电路中,两边的两个读/写控制信号分别被连接在一起,也就是说此时双口

RAM 的读写都是同时读写 16 位数据。

  图

2 中双口 RAMCY7C133 的读写信号以及锁存器 74HC373 的使能信号的产生如图 3

所示。其中,

WR 是 89C52 的写控制信号,RD 是 89C52 的读控制信号,A0 是 89C52 的地址

最低位,

A15 是地址最高位,R/W 是 TMS320C32 的读写控制信号,BUSYL 接 89C52 的 P1

口 的 一 个 引 脚 ( 具 体 可 根 据 系 统 实 际 情 形 自 行 选 择 , 图 中 未 画 出 ) ,

BUSYR 接

TMS320C32 的 READY 信号。

  

  下面讨论一下
89C52 对 双 口
RAM 的读写过程。

89C52 对 双 口

RAM 进 行 读 数 据
时,由图

3 可知此时 A0 应为低电平,不妨假设地址为 0x1000h,则存储在双口 RAM 中该

地址处的

16 位数据同时被读出,由于高 8 位数据线与 89C52 的 8 位数据线直接相连,所以

8 位数据被立即读入 89C52 中。同时,根据图 3 中各信号的相互逻辑关系不难判断,U3

的使能信号

LE 有效(高电平),OE 无效(低电平),因而低 8 位数据被送入 U3 中锁存

起来。接着

89C52 再进行一次读操作,这时地址变为 0x1001h,由于 A0 变成高电平,双口

RAM 的读使能信号变成无效电平,所以此次读操作对双口 RAM 不产生影响。再来看 U3 的
使能信号

LE 和 OE 的变化情况,显然 LE 变成了无效电平,而 OE 变成了有效电平,上次

被锁存的数据(即双口

RAM 的低 8 位数据)被送入 89C52。当 89C52 对双口 RAM 进行写

入操作时,注意此时

A0 应为高电平,不妨假设地址为 0x100Ch,同样可根据图 3 判断 U2