找回密码
 立即注册
楼主: wuzhengmin

跟着何宾老师学习STC32位8051单片机原理及应用-STC32G12K128

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 12:24:29 | 显示全部楼层
STC15系列单片机4K 是怎么算出来的?
STC15系列单片机为例,在单片机内部集成了4K字节的RAM,4K是基本存储容量256字节+内部扩展SRAM3480=4096=4*1024K=4K,
截图202512021223225776.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 12:42:40 | 显示全部楼层
对INTEL来说,片内256字节是非常重要的:

虽然CISC是复杂指令集架构,但是物理实现上很精简,反而是RICS 号称精简指令集架构,

但在物理实现上,很不精简,不惜成本的干.....

高128个字节,地址要和特殊功能寄存器SFRs共用!



截图202512021242371747.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 12:54:45 | 显示全部楼层
这共用地址的128个字节,物理电路的实现是完全不同

寄存器那里是触发器和寄存器的逻辑电路,RAM就用存储器结构

CUP寻址模式不同,对应的就不同,直接寻址就是房屋SFRs

间接寻址就是访问RAM
截图202512021250191474.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 12:57:09 | 显示全部楼层
片内基本RAM

低128字节00----7F 称为低128字节,80---FF称为高128字节

低128字节RAM(兼容传统MCS-51单片机):

截图202512021256207893.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 12:59:04 | 显示全部楼层
该存储区域包括工作寄存器组区域:

这部分寄存器(共32个寄存器)的编码都是R0---R7 ,通过程序状态寄存器R0和R1来隐射其他的寄存器,4*8=32 。
这样指令编码的长度就没问题了。其实intel也很聪明的。20H到2FH是128位,不但可以用字节访问,也可以按位来访问,可以位操作。
这16个字节128位(Byte)很好用,很特殊。30H 到7FH,y用户可以自由发挥。
截图202512021306199138.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 13:08:43 | 显示全部楼层
总结以上,看懂2张图:
截图202512021311565141.jpg
截图202512021312057452.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 13:10:04 | 显示全部楼层
接下来看看STC的创新:

截图202512021310022975.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 13:19:00 | 显示全部楼层
寄存器 EXTRAM= 0
的时候:

0x0000----0x0EFF 看成是片内扩展区域

0x0F00---0xFFFF 看成是外部RAM  60.25KB



当EXTRAM=1 :
0x0000H -----0xFFFFH  外部 RAM 64KB
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 13:29:56 | 显示全部楼层
看下图,才知道外部RAM60.25KB
截图202512021329534219.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:158
  • 最近打卡:2026-04-08 10:46:34
已绑定手机

22

主题

2458

回帖

3488

积分

论坛元老

积分
3488
发表于 2025-12-2 13:31:00 | 显示全部楼层
那3.75KB对应哪里?

看下图:

虽然物理上不同,但Keil uVision 的角度,这256+(3.75K是片内还是片外是没区别的)


截图202512021330571101.jpg
回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-4-10 04:04 , Processed in 0.113920 second(s), 75 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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