Arduino的:轻量级COM pression算法存储在EEPROM中的数据 [英] Arduino: Lightweight compression algorithm to store data in EEPROM
问题描述
我要存储大量数据,到我的Arduino与 ATmega168的 / ATmega328 的微控制器,但遗憾的是只有256  KB / 512  EEPROM存储KB。
I want to store a large amount of data onto my Arduino with a ATmega168/ATmega328 microcontroller, but unfortunately there's only 256 KB / 512 KB of EEPROM storage.
我的想法是利用一个COM pression算法来剥离下来的大小。但是好了,我的COM pression算法知识是相当低的,我的搜索准备好使用的库失败。
My idea is to make use of an compression algorithm to strip down the size. But well, my knowledge on compression algorithms is quite low and my search for ready-to-use libraries failed.
那么,有没有优化存储容量的好方法?
So, is there a good way to optimize the storage size?
推荐答案
您可能有一个看 LZO 算法,该算法被设计为轻量级。我不知道是否有实现的AVR系统,但它可能是一个你可以实现你自己。
You might have a look at the LZO algorithm, which is designed to be lightweight. I don't know whether there are any implementations for the AVR system, but it might be something you could implement yourself.
您可能是有关存储在EEPROM中的筹码,虽然可用的数量有所误导;根据数据表我有EEPROM大小:
You may be somewhat misinformed about the amount of storage available in EEPROM on your chip though; according to the datasheet I have the EEPROM sizes are:
ATmega48P:256
ATmega88P:512
ATmega168P:512
ATmega256P:1024
ATmega48P: 256
ATmega88P: 512
ATmega168P: 512
ATmega256P: 1024
请注意,这些值是的字节的,你提到你的问题不是KB。这不是由任何措施,一个shitload
Note that those values are in bytes, not KB as you mention in your question. This is not, by any measure, a "shitload".
这篇关于Arduino的:轻量级COM pression算法存储在EEPROM中的数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!