rom的读取问题,为什么输入输出用了bidir端后输出就错了?

kanewalk 2008-05-19 02:01:47
如图所示,这是个完整的rom,我把地址输入端和输出端都连到总线上,端口用bidir端口,但是出来的结果不对,比如地址00H的数据本来是138,01H的数据是15,但是模拟后bus上的数据都是bus[6]是高电平,其余都是XXXXX,也就是高阻状态,但是我把地址输入端和输出端分开就正常了。


...全文
199 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuiyan 2008-05-20
  • 打赏
  • 举报
回复
读/写信号呢?不同的信号,BUS上的端口特性不一样。

地址线(address)只是CPU输出,ROM输入,所以是单向。

而数据线(Data)对于CPU和ROM都是双向,所以必须由读写信号来控制输入、输出状态。

对于ROM,只有在被读(nRW=0, or nOE=0)时,Bus才会是输出态,可以有0/1的变化。只有在被写(nRW=1, or, nWE=0)时是输入态。

其余任何时间,都必须是高阻态(或输入态,如果芯片管脚不支持高阻态的设置)。

6,127

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 硬件设计
社区管理员
  • 硬件设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧