[其它应用] 中颖 Flash & EEPROM编程注意事项

[复制链接]
2298|18
 楼主| jf101 发表于 2023-10-9 18:57 | 显示全部楼层 |阅读模式
为确保顺利完成EEPROM 的SSP编程,用户软件必须按以下步骤设置:
(1) 用于代码/数据编程:
1. 关闭中断;
2. 根据地址设置 XPAGE,IB_OFFSET;
3. 按编程需要,设置 IB_DATA;
4. 按照顺序设置 IB_CON1 - 5;
5. 添加 4 个 NOP 指令;
6. 开始编程,CPU 将进入 IDLE 模式;烧写完成后自动退出 IDLE 模式;
7. 如需继续写入数据,跳转至第 2 步;
8. XPAGE 寄存器清 0,恢复中断设置。
(2) 用于扇区擦除:
1. 关闭中断;
2. 按相应的扇区设置 XPAGE;
3. 按照顺序设置 IB_CON1 - 5;
4. 添加 4 个 NOP 指令;
5. 开始擦除,CPU 将进入 IDLE 模式;擦除完成后自动退出 IDLE 模式;
6. 如需要继续擦除数据,跳转至第 2 步;
7. XPAGE 寄存器清 0,恢复中断设置。
(3) 读取:
使用“MOVC A,@A+DPTR”或者“MOVC A,@A+PC”指令。
(4) 对于类 EEPROM 区域
对于类 EEPROM 的操作类似于 Flash 的操作,即类似上述(1)/(2)/(3)部分的描述。区别在于:
1. 在对类 EEPROM 进行擦除、写或读之前,应首先将 FLASHCON 寄存器的最低位 FAC 位置 1。
2. 类 EEPROM 的扇区为 256 字节,而不是 1024 字节,类 EEPROM 大小为 2048 字节
注意:
1. 系统时钟不得低于 200kHz 以确保 FLASH 的正常编程
2. 当不需对类 EEPROM 操作时,必须将 FAC 位清 0

OKAKAKO 发表于 2023-10-9 18:58 | 显示全部楼层
楼主有相关的EEPROM程序擦写案例嘛?
LOVEEVER 发表于 2023-10-9 19:26 | 显示全部楼层
系统时钟不得低于 200kHz 以确保 FLASH 的正常编程,这个太低的话会有什么问题呢
中国龙芯CDX 发表于 2023-10-9 19:36 | 显示全部楼层
LOVEEVER 发表于 2023-10-9 19:26
系统时钟不得低于 200kHz 以确保 FLASH 的正常编程,这个太低的话会有什么问题呢 ...

会出现擦写失败的问题,频率太低擦写时会发生问题
小小蚂蚁举千斤 发表于 2023-10-9 21:50 | 显示全部楼层
MOVC指令应该是汇编的基本指令吧
szt1993 发表于 2023-10-10 10:00 | 显示全部楼层
当不需对类 EEPROM 操作时,必须将 FAC 位清 0,这个很关键
小夏天的大西瓜 发表于 2023-10-10 12:00 | 显示全部楼层
添加 4 个 NOP 指令与延时有太大区别嘛
星辰大海不退缩 发表于 2023-10-10 14:00 | 显示全部楼层
中颖 Flash & EEPROM编程讲解的很详细
AdaMaYun 发表于 2023-10-10 19:00 | 显示全部楼层
应首先将 FLASHCON 寄存器的最低位 FAC 位置 1以及清0一定要注意时序
LOVEEVER 发表于 2023-10-21 13:48 | 显示全部楼层
楼主这个我又看了一下,确实中颖的MCU擦写很方便
小小蚂蚁举千斤 发表于 2023-10-24 09:20 | 显示全部楼层
AdaMaYun 发表于 2023-10-10 19:00
应首先将 FLASHCON 寄存器的最低位 FAC 位置 1以及清0一定要注意时序
...

这个过程确实很重要
tpgf 发表于 2023-11-2 10:08 | 显示全部楼层
都可以通过哪些方式对EEPROM进行编程呢
aoyi 发表于 2023-11-2 10:40 | 显示全部楼层
在这个时序中空闲的时间是严格要求的吗
tfqi 发表于 2023-11-2 11:10 | 显示全部楼层
在操作相关存储器的时候  使用哪种代码的速度会快一点呢
gwsan 发表于 2023-11-2 20:49 | 显示全部楼层
flash和eeprom的最小擦除单元是一样大小的吗
zljiu 发表于 2023-11-2 21:13 | 显示全部楼层
使用c语言进行操作的话 还需要遵循这个流程吗
nawu 发表于 2023-11-2 21:48 | 显示全部楼层
一定要严格的遵守这样的时序吗
玫瑰凋零日记 发表于 2025-8-30 15:20 | 显示全部楼层
中颖 Flash&EEPROM 编程注意:确保供电稳定防写坏;擦写前解锁保护位;按页 / 扇区操作,避免跨区;擦除后需等待就绪;控制擦写次数防寿命耗尽;编程时禁用中断;使用官方库函数,参考手册时序;备份重要数据防意外丢失。
小岛西岸来信 发表于 2025-9-25 14:23 | 显示全部楼层
中颖 Flash&EEPROM 编程需注意:1. 确保供电稳定,避免断电致数据损坏;2. 先擦除对应扇区 / 页再写入,不可直接覆盖;3. 遵循时序要求,勿超芯片规定的读写速度;4. 写前检查地址合法性,防越界操作;5. EEPROM 需注意擦写次数,避免频繁操作同一单元。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

262

主题

1929

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部