Расширить хранилище Arduino без SD-карты
Я бы хотел, чтобы мой Arduino записывал несколько файлов и где-нибудь их сохранял. Это не будут большие файлы, но 1 МБ, доступного на устройстве, будет недостаточно. Я знаю, что SD-карта — популярное решение, но самая маленькая SD-карта здесь немного дороже, и ее более чем достаточно, я имею в виду, я мог бы обойтись примерно 10 МБ (или даже меньше), поэтому было бы расточительно добавьте SD-карту на 1 ГБ (или на 512 МБ, 256 или 128), и это тоже будет дорого. Есть ли промежуточное решение? Как-то дешевле добавить еще немного?
Спасибо
@Pablo Grabarnik, 👍0
Обсуждение2 ответа
Это может быть актуально, если вам удастся раздобыть старую 30-контактную SIMM-оперативную память.
Это библиотека, которую какой-то умный парень написал для взаимодействия с 30-контактной SIM-картой с помощью atmega328p на Arduino
https://github.com/zrafa/30pin-simm-ram-arduino
Также его видео здесь: здесь https://youtu.be/Yah3ViEggxA
Очевидно, это довольно расточительно, поскольку вы можете использовать только 256 КБ ОЗУ!
Автор также заявляет, что «использование этого типа ОЗУ заставит ваш процессор Arduino часть времени обновлять данные ОЗУ SIMM. Это означает, что ваши скетчи (программы) могут работать немного медленнее, чем раньше. Кроме того, нам нужно использовать большую часть контактов Arduino для пайки с контактами SIMM RAM, чтобы для вашего проекта было лишь несколько дополнительных контактов."
Извините, я только что заметил, что вы хотите добавить немного памяти, так что, вероятно, это не тот ответ, который вам нужен. Тем не менее, я полагаю, что это может быть полезно для тех, кто хочет работать с переработанными вещами., @John
FRAM — энергонезависимый, как EEPROM, но с высокой скоростью чтения/записи, как SRAM.
2 мегабита (256 килобайт) тоже стоят дорого: 6 долларов в Digikey. Но все равно меньше, чем стоимость двух 1-мегабитных (128 килобайт) по $4,70 каждый.
2-мегабитная (256 килобайт) EEPROM стоит намного меньше, ~ 2,30 доллара США, но намного медленнее — после передачи данных время ожидания записи составляет 5 или 10 миллисекунд.
1 мегабитные (128 килобайт) SPI SRAM тоже дорогие — 3,95 доллара США за штуку.
Недавно я купил SD-карты по цене около 5 долларов за 32 ГБ. Требуются только 2, 4 было бы достаточно (для хранения до 256 файлов общим размером, возможно, 1 Мбайт), но такого маленького размера уже не найти.
Карта SD + разъем звучит все более разумно.
У Sparkfun, например, есть microSD с преобразователями уровня 5 В/3,3 В (используется TXB0104) по цене менее 5 долларов (цена со скидкой на неделю). https://www.sparkfun.com/products/13743
- Как узнать максимальное используемое пространство стека?
- Каким был бы лучший способ динамического "изменения" экземпляров относительно динамической памяти?
- Чип памяти для ардуино
- Портирование «дальнего» доступа к флэш-памяти с Arduino Mega на Due
- Проблема с переменной char* malloc/free. Пустое содержимое в переменной получателя после использования free
- Как разделить входящую строку?
- Как использовать SPI на Arduino?
- Как сбросить или отформатировать Arduino?
флэш-память SPI, @Juraj
Или отправьте их в Интернет с помощью интерфейса Wi-Fi., @Majenko
Мне нравится вариант SPI, мне придется изучить его подробнее., @Pablo Grabarnik
Я не могу полагаться на Wi-Fi, там, где я хочу использовать свой проект, не может быть сигнала., @Pablo Grabarnik
SD-карта обычно является самым дешевым вариантом., @Majenko
Не здесь, где я живу :(, @Pablo Grabarnik
Если SD-карты такие дорогие, то другие варианты, вероятно, будут еще дороже., @Majenko
ESP32 и 8266 имеют встроенную память 4 МБ, можно ли заменить мега на одну?, @dandavis
Как говорит @Majko, SD-карта обычно дешевая. Вы можете купить micro SD онлайн всего за несколько долларов. SPI SR AM очень дорог по своей емкости (около 1 доллара за Мбит?), и ему требуется постоянное питание, иначе данные будут потеряны., @MichaelT
Еще одно соображение — «усреднение нагрузки». EEPROM вышли из строя (сюрприз!). Если вы много пишете и не загружаете средний код в свой код, вы можете убедиться в этом на собственном горьком опыте. В SD-карты обычно встроено усреднение нагрузки. Еще одна причина выбрать SDCard. Кроме того, бесплатный интерфейс SDCard представляет собой шину SPI., @st2000
@st2000, EEPROM здесь не упоминался, @Juraj
Судя по тому, что я вижу здесь, флэш-модуль SPI емкостью 32 МБ стоит здесь примерно 2,5 доллара, тогда как SD-карта, самая дешевая, стоит около 6 долларов, не считая модуля, необходимого для их чтения. Это кажется странным, но я думаю, что это связано с тем, что SD-карта является обычным предметом, пользующимся большим спросом, и каждый может ее использовать, поэтому они повышают ее ценность. Модуль же предназначен для тех, кто работает с электроникой. ESP32 или 8266 также могут подойти в качестве решения, но если я смогу сделать все небольшим, это будет плюсом. Спасибо всем!, @Pablo Grabarnik
@Юрай, EEPROM и флэш-память могут быть технически разными. Но я считаю, что маркетинговые подразделения нескольких компаний «замутили воду». Я считаю, что любой из них в конечном итоге выйдет из строя, и я предполагаю, что любой чип энергонезависимой памяти сам по себе не имеет встроенного усреднения нагрузки. Даже SDCard обычно состоит из двух чипов. 1 память. Другой — «очень секретный/проприетарный» чип управления памятью, который, вероятно, усредняет нагрузку., @st2000
Ваши требования не очень ясны. Сколько символов вы хотели бы хранить, сколько раз вы бы их перезаписали, каков ваш бюджет на такое хранение? Пожалуйста, добавьте их в вопрос, чтобы мы могли найти подходящее решение., @Paul