STC32G12K128 写EEPROM, 不能保留其他扇区的参数
本帖最后由 citron 于 2024-4-16 11:16 编辑EEPROM设置了64K,我的参数存在第10扇区之后, 我更新程序, STC-ISP 界面, 只编辑了第一扇区开头的几个数据(以后得都是空白没有显示内容),(前次写入也是去掉勾选下次擦除的)
下载程序后,原来的参数都丢失了
是我程序有问题,还是说只要写eeprom, 就会整个擦除eeprom全部扇区
既然是eeprom区,不改动就不应该擦除,(要擦除也是也要有选项)stc在这个上的思维一直是错的
//////////////////////////////////
我测试下载新程序时,编辑第64k的eeprom扇区, 前面全部显示ff,居然可以保留原来的参数,神奇的stc
这里所谓的EEPROM只是一中说法 就是FLASH ISP 本帖最后由 citron 于 2024-4-16 10:47 编辑
咫尺天涯 发表于 2024-4-16 10:06
这里所谓的EEPROM只是一中说法 就是FLASH ISP
既然是flash ISP,没有设置为EEPROM的程序区,还能否iap 存写数据? citron 发表于 2024-4-16 10:26
既然是flash ISP,没有设置为EEPROM的程序区,还能否iap 存写数据?
STC32G12K128芯片,固件版本 7.4.4 及之后的芯片可以通过取消勾选“下次下载用户程序时擦除EEPROM区”选项,让下次下载时不擦除EEPROM区。另外一个前提条件是EEPROM大小不能变化,例如这次烧录设置EEPROM大小2K,下次烧录时EEPROM大小也要设置2K。
这次下载是否擦除EEPROM区域取决于上次烧录时是否勾选这个选项。
默认烧录擦除EEPROM区域其实也是想保护用户数据安全,避免他人烧录一个读取EEPROM内容并输出的程序,将芯片里面的EEPROM内容读取出来,导致数据泄露。
另外,IAP读写方法只能操作EEPROM区域,没有设置为EEPROM区域的程序空间是不能通过IAP方式操作的,避免用户程序被误擦写。 乘风飞扬 发表于 2024-4-16 14:04
STC32G12K128芯片,固件版本 7.4.4 及之后的芯片可以通过取消勾选“下次下载用户程序时擦除EEPROM区”选 ...
stcai-isp软件,取消勾选了,其他设置也都不变,在eeprom文件,编辑eerom数据, 从前面扇区修改,后边不填充,结果后边的数据丢失; 从后边扇区修改,前面填充ff,那么原来的数据就还在,这个能否验证或者解释下
页:
[1]