Arduino的:轻量级COM pression算法存储在EEPROM中的数据 [英] Arduino: Lightweight compression algorithm to store data in EEPROM

查看:180
本文介绍了Arduino的:轻量级COM pression算法存储在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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆