找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1499|回复: 4
打印 上一主题 下一主题
收起左侧

有256BYTE内部RAM的51单片机堆栈可以设到80H后吗?

[复制链接]
跳转到指定楼层
楼主
ID:685652 发表于 2020-1-13 14:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
51单片机压栈是用间接寻址还是直接寻址的呢?对于有256BYTE内部RAM的单片机,我把堆栈指针设到大于80H后可以的吗?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:275826 发表于 2020-1-13 17:42 | 只看该作者
可以设置
回复

使用道具 举报

板凳
ID:401564 发表于 2020-1-13 19:16 | 只看该作者
51的堆栈是程序自己去处理的,你不用去动也没有关系的,一般保险的做法就是把SP的值设定成大于07FH的
8051在物理上,080H以上地址的有两种空间:一种是内部的RAM,一种是特殊寄存器,区分两种的办法就是间接寻址和直接寻址
080H以上的RAM是要间接寻址才能操作的,所以,一般不怎么会有指令影响到这一块的地址,所以,堆栈放在080H以上基本上是没有干扰的,直接寻址的MOV指令是影响不到080H以上的空间的
回复

使用道具 举报

地板
ID:475247 发表于 2020-1-13 19:41 | 只看该作者
值得一试,先摸索看看再说
回复

使用道具 举报

5#
ID:351097 发表于 2020-1-15 11:42 | 只看该作者
STC的官方手册里面有建议SP设置为0x80。内部ram中,低128字节采用直接寻址;高128字节采用间接寻址。另外,有一些特殊功能寄存器的地址看起来和高128字节ram有重叠,实际上物理地址是分开的,高128字节采用直接寻址方式就能访问到特殊功能寄存器。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表