找回密码
 立即注册
查看: 655|回复: 4

有个很奇怪的问题,关于 xdata 分区的

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2025-04-02 14:25:29

7

主题

17

回帖

163

积分

注册会员

积分
163
发表于 2023-11-23 20:31:09 | 显示全部楼层 |阅读模式
芯片:ST8H4K64TL
发现一个问题。在使用xdata变量的时候,如果全局变量的数组达到一定值的时候,再创建xdata变量。该变量的值就会固定住,而且无法被赋值成功。
例:
char xdata temp[1024*5];   //===>这是5K xdata, STC8H4K64TL 只有 4K xdata
char xdata par;

int main()
{
    par ++;
}

此时用串口取打印这个par变量。发现是固定的。并不会出现累加。
当temp数组变小后,par就正常。

我想请问一下这是为啥。
理论上xdata的大小不是64k吗

回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:217
  • 最近打卡:2024-11-15 09:12:27

29

主题

722

回帖

2790

积分

荣誉版主

积分
2790
发表于 2023-11-23 21:57:57 | 显示全部楼层
你猜,它为啥叫 STC8H4K64TL
回复 支持 2 反对 0

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:217
  • 最近打卡:2024-11-15 09:12:27

29

主题

722

回帖

2790

积分

荣誉版主

积分
2790
发表于 2023-11-23 21:59:44 | 显示全部楼层
截图202311232159174237.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2025-04-02 14:25:29

7

主题

17

回帖

163

积分

注册会员

积分
163
发表于 2023-11-24 09:26:17 | 显示全部楼层
本帖最后由 爱晴海玩偶 于 2023-11-24 09:28 编辑

离了个谱,没注意这个地方。
突然觉得这个帖子好low了

删了吧删了吧
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:390
  • 最近打卡:2025-05-01 11:13:39

45

主题

381

回帖

1571

积分

金牌会员

静坐常思己过,闲谈莫论人非

积分
1571
发表于 2023-12-10 11:56:45 | 显示全部楼层
能实现的和实际实现的是两码事,单片机可以实现64K,但是这款单片机硬件上只给设计了4K,这没啥毛病,不冲突。你要是去定制个64K的也不是不可以,到时候你这个程序就正常了。你的胃能装下8斤饭,也没见你给它装8斤,因为你两顿饭之间不需要8斤饭。
处事要代人所想,读书需切己用功
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 04:11 , Processed in 0.130802 second(s), 72 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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