找回密码
 立即注册
查看: 354|回复: 17

STC12C5A60S2 eeprom 到底有多大?

[复制链接]
已绑定手机

1

主题

6

回帖

39

积分

新手上路

积分
39
发表于 2026-9-28 10:28:41 | 显示全部楼层 |阅读模式
代码中这样写的:
#define SYS_PARAM_ADDR  0x0400
#define WORK_GROUP_COUNT 12
#define WORK_GROUP_SIZE  16
#define WORK_GROUP_MAGIC 0xA5
#define WORK_SECTOR_LO   0x0000  
#define WORK_SECTOR_HI   0x0200   
#define WORK_SECTOR_BYTES 96      
#define LAST_GROUP_ADDR  0x03FE
#define Q16_ONE         0x00010000UL
#define RESUME_MAX_DELTA 400

我看手册,只有2个扇区,每扇区512,为什么地址写成了0x0400?而且测试程序还能正常运行,断电后重启,读取0x0400的数据,全部正确。(代码长度大约40K).
这个0x0400,到底写到了哪里?
初学者菜鸟问题,请各位老师多多指教,先谢谢!
回复

使用道具 举报 送花

已绑定手机

7

主题

445

回帖

6692

积分

论坛元老

积分
6692
发表于 2026-9-28 10:36:09 | 显示全部楼层
那你顺便读一下0x0000的数据看是否一样
回复

使用道具 举报 送花

83

主题

8317

回帖

1万

积分

超级版主

积分
17932
发表于 2026-9-28 11:21:33 | 显示全部楼层
截图202609281121297939.jpg
回复

使用道具 举报 送花

已绑定手机

11

主题

484

回帖

1362

积分

金牌会员

积分
1362
发表于 2026-9-28 13:33:54 | 显示全部楼层
官方示例中EEPROM首地址确实是写的#define IAP_ADDRESS 0x0400
回复

使用道具 举报 送花

已绑定手机

1

主题

6

回帖

39

积分

新手上路

积分
39
 楼主| 发表于 2026-9-28 16:35:55 | 显示全部楼层
0x0000  
0x0200  
0x0400
这3个扇区,擦写读,正常,断电重启,数据不丢的
回复

使用道具 举报 送花

已绑定手机

2

主题

153

回帖

466

积分

中级会员

积分
466
发表于 2026-9-28 17:59:32 | 显示全部楼层
你试试从0x0000读出看看值是不是一样,是不是地址回绕了。沙发层大佬也提到了。
回复

使用道具 举报 送花

已绑定手机

20

主题

1456

回帖

4428

积分

论坛元老

积分
4428
发表于 2026-9-28 18:06:13 | 显示全部楼层
按理说STC12C5A60S2的EEPROM地址空间是0x0000-0x03fff,向0x0000写和0x0200中写都没问题。写到0x0400中,应该实际还是写入到了0x0000地址上去了,你可以验证一下。
回复

使用道具 举报 送花

已绑定手机

11

主题

484

回帖

1362

积分

金牌会员

积分
1362
发表于 2026-9-28 19:58:33 | 显示全部楼层
21cns*** 发表于 2026-9-28 18:06
按理说STC12C5A60S2的EEPROM地址空间是0x0000-0x03fff,向0x0000写和0x0200中写都没问题。写到0x0400中,应 ...

大佬说的有道理
回复

使用道具 举报 送花

已绑定手机

1

主题

6

回帖

39

积分

新手上路

积分
39
 楼主| 发表于 2026-9-28 21:04:29 | 显示全部楼层
21cns*** 发表于 2026-9-28 18:06
按理说STC12C5A60S2的EEPROM地址空间是0x0000-0x03fff,向0x0000写和0x0200中写都没问题。写到0x0400中,应 ...

谢谢指点,我也是这样想的。但实际情况不是这样的,您看我数据地址的定义,三个扇区存放的数据完全不同,现在的情况是三个扇区的读写操作完全独立,没有相互干扰污染。也是百思不得其解才来请教大佬
回复

使用道具 举报 送花

已绑定手机

20

主题

1456

回帖

4428

积分

论坛元老

积分
4428
发表于 2026-9-29 08:53:33 | 显示全部楼层
jjjl*** 发表于 2026-9-28 21:04
谢谢指点,我也是这样想的。但实际情况不是这样的,您看我数据地址的定义,三个扇区存放的数据完全不同, ...

三个扇区写满不同的数据,再读出来看看是否都正确?
如果都正确,从0x0000开始往后写更多不同的数据,如8kbye、16个扇区,再读出看看什么情况。
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-11-7 11:00 , Processed in 0.076382 second(s), 95 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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