找回密码
 立即注册
查看: 467|回复: 8

eeprom只能读,不能擦除和写

[复制链接]

1

主题

2

回帖

11

积分

新手上路

积分
11
发表于 2024-10-23 16:11:43 | 显示全部楼层 |阅读模式
我有一个问题,我使用stc8g2k64s芯片的官方例程IAP操作eeprom,出现第一个扇区只能读,不能擦除和写,只要对第一个扇区做出写或者擦除的动作,整个系统就卡死了,操作后面的扇区又不会出现这种问题,有没有人和我遇到相同的问题啊

回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:469
  • 最近打卡:2025-05-02 11:38:17

44

主题

230

回帖

2845

积分

金牌会员

积分
2845
发表于 2024-10-23 17:18:56 | 显示全部楼层
围观,我用试验箱测试掉电保护是没问题的。
不争是争
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:424
  • 最近打卡:2025-05-02 14:37:11
已绑定手机

77

主题

4850

回帖

8384

积分

超级版主

DebugLab

积分
8384
发表于 2024-10-23 19:58:07 | 显示全部楼层

这里的设置是不是和程序中不同
截图202410231957483382.jpg
DebugLab
回复 支持 反对

使用道具 举报 送花

1

主题

2

回帖

11

积分

新手上路

积分
11
发表于 2024-10-24 16:34:01 | 显示全部楼层
我修改了代码存储位置,用户eeprom设置为最大64k
截图202410241630032167.jpg
截图202410241632577655.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:294
  • 最近打卡:2025-03-06 09:25:41

8

主题

318

回帖

1835

积分

金牌会员

积分
1835
发表于 2024-10-24 16:57:31 | 显示全部楼层
IAP系列单片机的程序区和EEProm区是共享空间的
你把EEProm设为64k,代表程序区也包含在EEProm空间里了
你擦写EEProm就等于把程序擦写掉,当然会死机
回复 支持 反对

使用道具 举报 送花

1

主题

2

回帖

11

积分

新手上路

积分
11
发表于 2024-10-24 17:35:11 | 显示全部楼层
Lkck*** 发表于 2024-10-24 16:57
IAP系列单片机的程序区和EEProm区是共享空间的
你把EEProm设为64k,代表程序区也包含在EEProm空间里了
你擦 ...

可是我不是从0xD800地址开始存放程序的吗,擦写前面的怎么会冲突,还是说我的理解有问题
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:521
  • 最近打卡:2025-05-02 09:38:13

109

主题

1900

回帖

5214

积分

论坛元老

积分
5214
发表于 2024-10-24 18:36:19 | 显示全部楼层
把EEProm设为64k,太大了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:294
  • 最近打卡:2025-03-06 09:25:41

8

主题

318

回帖

1835

积分

金牌会员

积分
1835
发表于 2024-10-25 09:35:35 | 显示全部楼层
lot*** 发表于 2024-10-24 17:35
可是我不是从0xD800地址开始存放程序的吗,擦写前面的怎么会冲突,还是说我的理解有问题 ...

那是外接程序存储器用的

2. Off-chip Code memory
表示你在片外接的Rom的开始地址和大小,如果你没有外接程序存储器,那么不要填任何数据.我们在这里假设使用一个片外的Rom,地址从0x8000开始(不要填成8000,如果是
8000,是10进制的数,一般填16进制的数),Size为外接Rom的大小.假设接了一块0x1000字节的rom.最多可以外接3块Rom,如果你还用了别的地址,那么就添上.

来源:Keil C51详细设置
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:415
  • 最近打卡:2025-04-30 09:58:34
已绑定手机

39

主题

2006

回帖

6843

积分

论坛元老

积分
6843
发表于 2024-10-25 09:54:34 | 显示全部楼层
建议参考官方最新的IAP在线升级例子,例程包可在官网下载:
https://www.stcai.com/zxsj
截图202410250951384237.jpg

STC8G2K64S4系列由于 xdata 只有2K,需要修改代码里面的 DfuFlag 变量地址在2K空间末尾:
  1. DWORD xdata DfuFlag _at_ 0x07fc;
复制代码

然后就可以按照例程里面的说明书接收,烧录例子到芯片里面进行验证,通过验证通过后再进行修改或者移植。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 22:10 , Processed in 0.149809 second(s), 101 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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