1

我正在考虑为我的微控制器购买一个外部EEPROM存储模块。但是,它只有 32 KB 的存储容量。

我用它来存储记录,其中每条记录基本上是 4 个独立的数字,范围在 0 到 180 之间。

您认为 32 KB 可以处理多少条记录?

4

2 回答 2

1

单个记录是一系列181^4可能元素中的一个元素,其信息熵为log(181^4)/log(2) = 29.999 bits. 因此,您可以通过一些努力将一个元素编码为 30 位。

这意味着您有floor(32 * 1024 * 8 / 30) = 8738可以存储的元素。如果您选择使用 32 位(4 个字节)进行编码以显着简化编码逻辑,那么它就是32 * 1024 * 8 / 32 = 8192元素。

此分析不计算元数据的任何额外开销,例如有效性位或指示哪个元素是最新的标志等。

于 2011-07-16T19:36:39.800 回答
0

除了您可以为 EEPROM 中的每条记录使用 4 个字节存储 8k 个元素之外,您是否考虑过使用SD卡而不是 EEPROM?Arduino有相当便宜的 SD 卡扩展,此外,SD 卡非常便宜,不会有任何空间问题。您可以通过SPI访问 SD 卡。

于 2011-07-16T19:47:39.103 回答