Какой формат файла люди используют при регистрации данных в файловой системе FAT32 с использованием 8-битного микроконтроллера? - PullRequest
1 голос
/ 19 августа 2011

Обновлен вопрос, чтобы быть менее расплывчатым.

Я планирую регистрировать данные датчиков по времени, чтобы что-то вроде sqlite было бы идеальным, но для него требовалось слишком много ресурсов, например, atmega328p.Большая часть поиска будет выполняться за пределами Калифорнии.

Что используют другие люди?Плоские текстовые файлы?XML?Более сложная структура данных?


Спасибо за отзыв.Хорошо знать, что используют другие люди.Я решил сериализовать свои структуры данных и сохранить их в двоичном файле, чтобы на данный момент исключить обработку строк в uC.

Ответы [ 2 ]

2 голосов
/ 19 августа 2011

Я использовал плоские текстовые файлы для подобных проектов, еще несколько лет назад, но я считаю, что это все еще хороший подход для этой среды.Поскольку вам не нужно обрабатывать данные в микросхеме, вы хотите, чтобы они были максимально эффективными (как можно меньше накладных расходов).

Однако, если вы хотите большей гибкости и не были так заинтересованыЧто касается пространства, возможно, было бы лучше сохранить объекты JSON, если каждое поле четко определено.Небольшое количество накладных расходов на создание объектов, но позволяет добавлять и удалять поля без сложной логики на стороне интерпретатора.Я бы выбрал JSON вместо XML только потому, что у вас есть примерно половина накладных расходов (в пространстве и, вероятно, при обработке).

1 голос
/ 20 августа 2011

С таким небольшим микроконтроллером, как 328, очень важно определить требования к пространству.

Насколько велика каждая запись? Сколько записей вы хотите сохранить? Как вы получите записи с микроконтроллера?

Как и Даг, я обычно использую плоский текст для хранения данных. Поэтому каждая запись может содержать год, день года и значение, если я сохраняю значение один раз в день.

Файл будет выглядеть так:

11,314,100<cr>
11,315,99<cr>
11,316,98<cr>
11,317,220<cr>

Вы можете хранить приблизительно 90-100 записей, требуя сбрасывать данные каждые три месяца

Если вам нужно больше, чем 1kEEprom (200 записей 5 байтов, 100 записей 10 байтов или симлиар), вам потребуется дополнительная память, используя IC, SD или Flash.

Если вы хотите отключить память и подключить ее к ПК, лучше всего подойдет SD или Flash.

Вы можете использовать чип Vinculum от FTDIChip.com, чтобы упростить запись толстых файлов на флэш-диск.

...