在降级 ROM 之前,您可以将 Marlin 固件重新刷新到 RAMPS 1.4 板上多少次?

3D打印 马林鱼
2021-04-27 03:50:48

首先,我正在使用 Folger Tech Prusa i3 套件,如果这有区别的话。我也相信 Arduino 是 Mega 2560。

我知道在我脑后的某个地方,每次写入时,电可编程 ROM 就像必须在 Arduino 板上存储固件的东西一样会降低一点。现在我正在尝试校准另一个打印问题,我想我需要再次修改固件,我已经做过几次了。所以我开始担心我能做到多少次。

好吧,一旦我想起了首字母缩略词“EEPROM”,经过一番谷歌搜索,我发现了这个,Arduino - EEPROM,它说它可以处理 100k 个周期,所以我想我正在回答,但问题是我' 不确定一个周期是否是整个文件被上传?它不会是一个单一的数据吗?如果是这样,平均 Marlin 文件会消耗多少个周期?

我还发现了这个:

但如果我上传了超过 2000 次我会很惊讶

Mega2560砖?未检测到,DFU失败,说明答案可能低至2000。

还有这个:

故障模式

存储信息有两个限制;耐用性和数据保留。

在重写过程中,浮栅晶体管中的栅极氧化物逐渐积累被捕获的电子。被捕获电子的电场增加了浮栅中的电子,降低了零阈值电压与一阈值电压之间的窗口。在足够次数的重写周期后,差异变得太小而无法识别,单元卡在编程状态,并且发生耐久性故障。制造商通常指定最大重写次数为 100 万次或更多。 [5]

在存储期间,注入浮栅的电子可能会漂移穿过绝缘体,尤其是在升高的温度下,并导致电荷损失,使单元恢复到擦除状态。制造商通常保证数据保留 10 年或更长时间。 [6]

来自维基百科:EEPROM - Failure Modes,表明答案可能是数百万。

在这一点上,我只是想知道专家是否会看到这一点并减轻我的焦虑......

2个回答

EEPROM不是存储程序本身的地方,与您的问题相关的是闪存。ATmega2560 中的闪存额定为 10,000 次循环(即您至少可以对其重新编程10,000 次)。

AVR 具有用于变量的 SRAM(通常称为 RAM),具有用于非易失性变量的 EEPROM,以及用于可执行代码的闪存。(哈佛建筑!)

对于重新刷新固件,SRAM 和 EEPROM 写入速率都不重要,但闪存速率很重要。闪存写入速率在 10 万到一百万之间,所以这应该不是问题。

您链接的文章还指出,他的重写次数不超过 2000 次,因此应该没问题。我只能同意。几千次重新闪烁是没有问题的。一旦接近 10 万,您就可以开始担心了。

Flash 位只能从 1 写入 0。擦除 Flash 会将所有位写入 1。擦除只能在 Flash 页上完成(大小取决于设备,但通常是 512 的倍数)。