社区
单片机/工控
帖子详情
在访问外部存储器时,P0口、P2口、ALE、外部锁存器是如何协调工作的?
p5621861
2011-10-29 03:42:23
单片机在访问外部存储器时,P0口、P2口、ALE、外部锁存器是如何协调工作的?
...全文
6966
8
打赏
收藏
在访问外部存储器时,P0口、P2口、ALE、外部锁存器是如何协调工作的?
单片机在访问外部存储器时,P0口、P2口、ALE、外部锁存器是如何协调工作的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
bjtea
2011-10-31
打赏
举报
回复
没有发现原则错误,文字错误如下:
PO口作力数据用的双向总线,--->PO口作为数据用的双向总线,
在指令输入以前,P2~PO只是程序存储器--->在指令输入以前,P2~PO指向程序存储器
PO口将读偶数据存储器的内容。--->PO口将读写数据存储器的内容。
Frog1228
2011-10-31
打赏
举报
回复
这问题很经典。。。
yshk999
2011-10-30
打赏
举报
回复
CPU的 RD/WR 的作用:
CPU的WR脚连到外部存储器的“输入允许脚IE”,
CPU的WR脚的下降脉冲 ,使外部存储器的“输入允许脚IE”有效,
CPU的RD脚连到外部存储器的“输出允许脚OE”,
CPU的RD脚的下降脉冲,使外部存储器的“输出允许脚OE”有效。
yshk999
2011-10-30
打赏
举报
回复
8051单片机在使用外部存储器的时候,要用74HC377, 74LS373...这些芯片,
把74HC377, 74LS373...这些芯片的8个 D 脚连到 CPU 的P0口的8个脚,
把74HC377, 74LS373...这些芯片的8个 Q 脚连到外部存储器的AD0--AD7 脚,(即8位低地址),
把74HC377, 74LS373...这些芯片的 G 脚连到 CPU 的ALE 脚,
把P2口连到的外部存储器的A8--A15脚,(即8位高地址),
把P0口直接连到外部存储器的数据口D0--D7.
ALE的频率是CPU的频率除以6,ALE是方波,一会高,一会低。
当ALE高的时候,74HC377, 74LS373 ..这些芯片的D-Q是通的,这时P0就给外部存储器作为低地址,
当ALE低的时候,74HC377, 74LS373 ..这些芯片的D-Q是断开的,这时P0就给外部存储器作为数据。
p5621861
2011-10-30
打赏
举报
回复
[Quote=引用 2 楼 bjtea 的回复:]
外部存储器分为程序存储器(例如2764)和数据存储器(例如6424).
前者的过程是:
P0,P2输出16位地址,用ALE信号将P0的低8位地址信号锁存到74373的输出端;然后,P0作为数据总线,用PSEN信号,读入程序存储器的指令;2764的片选通常由最高3位地址组合而成。
后者的过程是:
使用6424,过程与前者几乎相同,不同的地方仅仅是,用RD/WR信号取代PSEN信号……
[/Quote]恩,帮我看看我找的答案有错吗,谢谢~
1)应用系统中无片外RAM
在不执行MOXV指令时,PO口作力数据用的双向总线,用于输入指令或输出程序存储器的低8位地址。P2口专门用于输出程序存储器的高8位地址。P2口具有输出所存功能;而PO口除了输出地址外还要输入指令,故要用ALE来锁存PO口输出的地址。在每个机器周期中,允许地址锁存器两次有效,在ALE下降沿时,锁存出现在PO口上的8位地址。 2)应用系统中有片外RAM
RAM在执行访问片外RAM的MOVX指令时,16位地址应转向数据存储器。在指令输入以前,P2~PO只是程序存储器,在指令输入并判定是MOVX指令后,ALE在机器周期S5状态锁存的PO口地址不是程序存储器的低8位,而是数据存储器地址。若执行的是MOVX A,@DPTR,或MOVX@ DPTR,A指令,则此地址就是数据存储器地址。若执行MOVXA,@RI,或MOVX@RI,A则RI的内容为低8位地址,P2口线上将是P2口锁存器的内容。在同一机器周朔,不再出现有效取址信号,下一个机器周期中ALE的有效锁存信号也不再出现,当RD/WR有效时,PO口将读偶数据存储器的内容。
p5621861
2011-10-30
打赏
举报
回复
[Quote=引用 2 楼 bjtea 的回复:]
外部存储器分为程序存储器(例如2764)和数据存储器(例如6424).
前者的过程是:
P0,P2输出16位地址,用ALE信号将P0的低8位地址信号锁存到74373的输出端;然后,P0作为数据总线,用PSEN信号,读入程序存储器的指令;2764的片选通常由最高3位地址组合而成。
后者的过程是:
使用6424,过程与前者几乎相同,不同的地方仅仅是,用RD/WR信号取代PSEN信号……
[/Quote]恩,帮我看看我找的答案有错吗,谢谢~
1)应用系统中无片外RAM
在不执行MOXV指令时,PO口作力数据用的双向总线,用于输入指令或输出程序存储器的低8位地址。P2口专门用于输出程序存储器的高8位地址。P2口具有输出所存功能;而PO口除了输出地址外还要输入指令,故要用ALE来锁存PO口输出的地址。在每个机器周期中,允许地址锁存器两次有效,在ALE下降沿时,锁存出现在PO口上的8位地址。 2)应用系统中有片外RAM
RAM在执行访问片外RAM的MOVX指令时,16位地址应转向数据存储器。在指令输入以前,P2~PO只是程序存储器,在指令输入并判定是MOVX指令后,ALE在机器周期S5状态锁存的PO口地址不是程序存储器的低8位,而是数据存储器地址。若执行的是MOVX A,@DPTR,或MOVX@ DPTR,A指令,则此地址就是数据存储器地址。若执行MOVXA,@RI,或MOVX@RI,A则RI的内容为低8位地址,P2口线上将是P2口锁存器的内容。在同一机器周朔,不再出现有效取址信号,下一个机器周期中ALE的有效锁存信号也不再出现,当RD/WR有效时,PO口将读偶数据存储器的内容。
bjtea
2011-10-29
打赏
举报
回复
外部存储器分为程序存储器(例如2764)和数据存储器(例如6424).
前者的过程是:
P0,P2输出16位地址,用ALE信号将P0的低8位地址信号锁存到74373的输出端;然后,P0作为数据总线,用PSEN信号,读入程序存储器的指令;2764的片选通常由最高3位地址组合而成。
后者的过程是:
使用6424,过程与前者几乎相同,不同的地方仅仅是,用RD/WR信号取代PSEN信号,实现读、写。
TomiTwo
2011-10-29
打赏
举报
回复
在访问外部存储器时,P2为高8位地址,P0为低八位地址,组成16位外部访问地址,构成64k的地址空间。P0还作为数据的输入。ALE是地址所存信号,即在Movx指令执行时,ALE产生变化让外部寄存器锁存输入的地址,然后从P0读入数据。
单片机
外部
存储器
的扩展PPT学习教案.pptx
- **程序
存储器
扩展**:
P0
口
在地址
锁存器
的配合下,先输出低8位地址,然后锁存,接着
P2
口
输出高8位地址,共同构成16位地址总线。PSEN信号用于选中
外部
程序
存储器
,EA信号决定是否
访问
内部或
外部
存储器
。 - **数据...
51单片机
外部
存储器
的扩展.ppt
在MCS-51系统中,
P0
口
作为低8位地址及数据的复用总线,通过地址
锁存器
(如74HC573)将数据总线和地址总线分离。
P2
口
提供高8位地址,两者组合可达到16位地址总线,支持最大64KB的寻址空间。控制信号线如
ALE
用来锁存低...
单片机
外部
存储器
的扩展.ppt
MCS-51系统
外部
总线的扩展包括以
P0
口
作为低8位地址及8位数据的复用总线,以
P2
口
作为高8位地址总线等方式。地址
锁存器
是实现地址总线扩展的关键组件,用于锁存低8位地址。 单片机的
存储器
扩展包括程序
存储器
的扩展和...
单片机
外部
存储器
的扩展PPT课件.pptx
-
P0
口
在CPU周期的前半段输出低8位地址,被
锁存器
捕获后,
锁存器
在后半段代替
P0
继续输出地址,而
P0
则转换为数据总线。
P2
口
的高8位地址与
P0
口
的低8位地址组合,形成16位地址总线,最大支持64KB的寻址空间。 5. **...
51单片机
外部
存储器
的使用汇编.pdf
- **
外部
程序
存储器
扩展**:通常使用74LS273
锁存器
来保持低8位地址,
P2
口
提供高8位地址,PSEN信号作为读取ROM的选通信号。 - **
外部
数据
存储器
扩展**:使用WR和RD信号进行读写操作,同样需要考虑地址锁存问题。 ...
单片机/工控
27,508
社区成员
28,796
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章