реклама на сайте
подробности

 
 
> Выбор памяти на 2Gbit, реализация FIFO
Electronics Engi...
сообщение Feb 2 2013, 15:21
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 89
Регистрация: 28-04-11
Пользователь №: 64 664



Добрый день!

В данный момент разрабатываю Data Logger (далее устройство) для периодической записи данных.
Память устройства должна быть энергонезависимой, т.е. записанные в память данные
не должны пропадать при выключении питания. На текущий момент в качестве
памяти использую FRAM на 2Mbit с SPI интерфейсом. Программа микроконтроллера
написана таким образом, что эта память представлена в виде FIFO.
Данные периодически записываются в память, пакет данных состоит из 8 байтов.
Проблема в том, что нужен больший объем памяти для следующей версии. Желательно до 2Gbit.

Подскажите, пожалуйста, на чем лучше остановиться?

Я рассматриваю Serial Flash и micro SDcard. Главное условие, чтобы можно было записывать в память
по несколько байтов, а не целыми блоками, например, 512 байт. Исходя из опыта использования
внутренней Flash памяти микроконтроллеров серии MSP430, для данного применения также
не допустимо стирание блока данных для того, чтобы записать новые.
Вроде для Standard Capacity SDcard (SDSC) можно записывать и считывать по 1-512 байтов.
Переписывать данные можно без стирания всего сектора? И вообще нужно ли стирать старые
данные перед записью новых.

Еще вопрос по расположению пинов у micro SDcard. В двух источниках некоторые ножки попутаны.
Как есть на самом деле?

Дмитрий
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Feb 2 2013, 17:16
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Первый вариант правилен. Только "NC" не бросайте в воздухе, они должны быть подтянуты к питанию.
Go to the top of the page
 
+Quote Post
Electronics Engi...
сообщение Feb 2 2013, 17:58
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 89
Регистрация: 28-04-11
Пользователь №: 64 664



Цитата(aaarrr @ Feb 2 2013, 20:16) *
Первый вариант правилен. Только "NC" не бросайте в воздухе, они должны быть подтянуты к питанию.

Спасибо! Про подтягивающие резисторы я знаю. Планировал использовать внутренние pull-up резисторы
микроконтроллера. Посмотрю в каталогах конкретную micro SDcard.

Для инициализации карты нужно точно 400kHz?
Могу установить такие самые близкие частоты для SPI clock: 460.8kHz и 230.4kHz.
Если инициализировать карту с частотой 230.4kHz, то будет нормально?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 2 2013, 18:11
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Electronics Engineer @ Feb 2 2013, 21:58) *
Если инициализировать карту с частотой 230.4kHz, то будет нормально?

Нормально: в спецификации 100-400кГц.
Go to the top of the page
 
+Quote Post
Electronics Engi...
сообщение Feb 6 2013, 08:07
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 89
Регистрация: 28-04-11
Пользователь №: 64 664



Возник такой вопрос, где хранить переменную, указывающую на следующий сектор,
в который буду записываться последующие данные? Это на случай пропадания питания.
Сейчас память сделана на FRAM и небольшая часть памяти выделена для хранения
переменных. С FRAM проблем не возникает, т.к. можно записывать данные практически
бесконечное количество раз. В SD карту можно записывать не более 100 000 раз.

512 байтов данных для записи следующего сектора SD карты будут появляться каждые 64 секунды.
Следовательно адрес для следующего сектора тоже нужно обновлять каждые 64 секунды.
Такими темпами можно записывать 64 секунды * 100 000 = 6 400 000 секунд = 75 суток,
что не достаточно.
Как быть в этом случае? Проще всего использовать резервное питание и хранить все
переменные в RAM микроконтроллера. И записывать переменные в энергонезависимую память
(SD карта или EEPROM микроконтроллера) только при уменьшении напряжения батареи до
минимального допустимого значения.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 00:15
Рейтинг@Mail.ru


Страница сгенерированна за 0.01394 секунд с 7
ELECTRONIX ©2004-2016