cooltommy 发表于 2023-2-14 16:32:15

STC8K3K64S2的EEPROM会随机丢数据恢复FF,有解吗?

如题目所示,写入的参数会随机丢失到初始的FF内容,已经交付了几千套了,这下要跳楼了。官方的技术支持能联系我下吗?

国学芯用 发表于 2023-2-14 16:41:16

19952583534加我微信

jymt 发表于 2023-2-14 20:47:47

本帖最后由 国学芯用 于 2023-2-15 08:40 编辑

不会这么可怕吧,什么原因呢?

刚刚买了几片STC8H3K64S2选型,TSSOP20的,想测测ADC怎么样呢

rz007 发表于 2023-2-14 22:38:24

关注中,我也用了内部存储,还没开始出货。

kv2004 发表于 2023-2-14 22:51:17

关注一下,
我用的STC8G2K32S2 的EEPROM怎样。

lb0857 发表于 2023-2-15 00:44:33

硬件系统也要考虑,
上电之后读取,随机掉电之后上电读取等等。
内部flash嗯不等于eeprom。

Aper-2020 发表于 2023-2-15 01:45:11

我用的STC15W也偶出现过这种问题, 用的是官方例程。

ycheng2004 发表于 2023-2-15 06:38:11

内部flash不等于eeprom。
写之前要擦除一页,再写,

国学芯用 发表于 2023-2-15 08:48:28

官方已经安排了技术跟进

foxpro2005 发表于 2023-2-15 10:02:35

自己要先检查程序操作是否正确,这种FLASH模拟的EEPROM,一个页面数据,有多个部分存储时,要以"整读-修改-回写"模式哦

modbus 发表于 2023-2-15 12:08:17

和程序有关,编程序时没做好足够的保护

dellric 发表于 2023-2-16 11:57:27

1. 设备上电后等待1秒,等待电源稳定,在电压没有上升到额定电压时读写EEPROM会偶尔掉信息
2. 用一个ADC 采集一个二极管的正向导通电压0.7V,如果采集的数值异常,就不进行EEPROM操作
3. 银子多的话,用片外的真EEPROM芯片来做

czzhouyun 发表于 2023-2-16 20:28:45

关注这个问题,要解决了希望LZ贴出解决方法

vtte 发表于 2023-2-16 20:31:23

flash模拟的eeprom就是麻烦

国学芯用 发表于 2023-2-17 16:31:07

czzhouyun 发表于 2023-2-16 20:28
关注这个问题,要解决了希望LZ贴出解决方法
(引用自13楼)

我们一直在跟进,楼主是不规范使用EEPROM 导致的故障
如您也有问题 可以继续提问或者去我们官方提问https://www.stcaimcu.com/forum.php

国学芯用 发表于 2023-2-17 16:33:10

vtte 发表于 2023-2-16 20:31
flash模拟的eeprom就是麻烦
(引用自14楼)

这个不是模拟吧    会用了 熟悉了就不会觉得难

cooltommy 发表于 2023-2-17 23:04:52

看来和我一样遇到疑问的人很多,我现在把官方给我的建议和效果都写出来,方便大家参考,先说结论,这个故障我错怪STC了,是其他原因导致的。
我的这个产品,在机柜内AC220V进来后变换到DC48V,再变换到24V给我的PCBA,24V在DCDC变换到6.5V,经过1117线性稳压到5V给STC单片机。这些电源都是名牌产品采购渠道也是过硬,当初认为可以排除会引发故障,结果恰恰出现在这里。整个供电链条,在48V输出端没有做过流保护,这样一旦后面的电路有短路点,这个48V电源就会触发短路保护,也就是打嗝一样的反复启动、过流、断开、再启动,这样的话,使用示波器观察,STC单片机上的供电会出现1.X赫兹的反复上电断电。
针对这种情况,在STC销售和技术的帮助下,我采用了两个措施,1、低压复位门限电压提高到3.0V2,在程序一开始,设置了6秒左右的nop软件延时,这样一旦电源发生抖动,可以躲开这段危险区域。采用了这样的手段后,至少在实验室的模拟测试中反复折腾短路,都没有发生丢EEPROM数据的情况,而没有采用这些手段的老版本硬件,大概率会出现丢失EEPROM数据的情况。
最后针对这个事情给大家的建议:1、手册要好好看,这些内容都写在手册上,比如什么时候应该提高低压复位门限,什么时候不应该操作EEPRM,只是我们平时忽略了。2、示波器是个好东西,如果不是我坚持带示波器到现场,只带万用表,根本抓不到这个故障。3、遇到事情不要慌,原厂的销售和技术见得多了,咨询他们会有帮助的。
最后,感谢STC销售和技术的支持,目前我重新做了产品固件升级投放现场部署,如果再发生什么情况我会再来给大家说,也谢谢大家的吃瓜支持。

kv2004 发表于 2023-2-17 23:36:58

之前的程序,在上电--断电--上电过程中,进行过“写”eeprom的操作吗?我估计,这个时间段,会“读”flash,但“写”吗?

Aper-2020 发表于 2023-2-17 23:39:02

cooltommy 发表于 2023-2-17 23:04
看来和我一样遇到疑问的人很多,我现在把官方给我的建议和效果都写出来,方便大家参考,先说结论,这个故障 ...
(引用自17楼)

你好,说了这么多,原因是eep操作时,电压不够,对吧?

cooltommy 发表于 2023-2-18 01:30:57

kv2004 发表于 2023-2-17 23:36
之前的程序,在上电--断电--上电过程中,进行过“写”eeprom的操作吗?我估计,这个时间段,会“读”flash ...
(引用自18楼)

有读有写的

cooltommy 发表于 2023-2-18 01:31:19

Aper-2020 发表于 2023-2-17 23:39
你好,说了这么多,原因是eep操作时,电压不够,对吧?
(引用自19楼)

是的,电压不够

小李非刀 发表于 2023-2-19 21:16:31

jymt 发表于 2023-2-14 20:47
不会这么可怕吧,什么原因呢?

刚刚买了几片STC8H3K64S2选型,TSSOP20的,想测测ADC怎么样呢...
(引用自3楼)

STC8H3K64S2的12位ADC性能非常好的,线性度很高。

小李非刀 发表于 2023-2-19 21:28:35

STC的EEPROM是FLASH类型,擦除可以将0变为1,写入可以将1写成0,而不能将0写成1.
楼主的EEPROM变成FF,则执行了擦除操作才会如此,或者MCU受到超过6.5V的电压冲击,导致FLASH数据损坏(一般也会导致程序损坏甚至MCU烧坏)。检查程序,检测电源不要有过冲,能抑制外来的干扰脉冲,外接的IO要哟合适的保护(比如串联一个合适的300R以上电阻)。电源VCC与GND并联5.6V 1W或以上的稳压管嵌位电压避免升高(稳压芯片一般不能抑制电压升高的)。

可能很多人不知道,其实外挂的AT24CXX系列的EEPROM,也是类似FLASH的,只不过芯片内部做了处理,启动写入后会自动擦除再写入新的数据,这就是为什么不管你写入一个字节还是写入1页,其写入时间都是固定的,比如AT25C512,写入一个字节还是写入128个字节(一页),写入时间都是5ms,一旦启动写入,接下来的5ms就不能访问它,这个跟STC的访问是类似的。

lb0857 发表于 2023-2-19 21:44:40

做项目,内部flash保持数据方案。
在本人有限的小圈子里大家不会常用。
和品牌没有关系,
外挂eeprom才是王道。
页: [1]
查看完整版本: STC8K3K64S2的EEPROM会随机丢数据恢复FF,有解吗?