Самый простой способ:
---------------------------
Перед использованием прописываешь флэш нулями.
Контроллер пишет события последоватеьлно от начала к концу.
Формат:
Первый сектор - шапка (например, "START OF LOG", дата, время, параметры...)
Дальше поток данных. (например, "DATA_SECTOR", 0101000001111...)
Следующий сектор - опять шапка, итд....
В компьютере флэшку открывают как физический диск.
(\\\\.\\PHYSICALDRIVE0)
Программа ищет шапки и показывает список логов.
Или под один лог отводиться фиксированное количество места.
Например, 10КБт.
Сложный способ:
---------------------
Цитата
(У АТMega16 - 1к.б. НА ВСЁ). В связи с этим очень трудно сделать поддержку FAT - на запись.
(Флеш карты могут записывать информацию только БЛОКАМИ по 512байт (1024байт для >1Gb.))
Не нужно хранить всю таблицу FAT.
Достаточно хранить 1 сектор = 512 байт.
Если у тебя этого объёма нет, значит ты не можешь работать с картами памяти в режиме модификации.
Ещё способ
-------------
Постулировать, что сектор может хранить только 50 байт информации, остальное место забито нулями.
Тогда ты сможешь делать чтение / модификацию / запись !
Но совместимую с Windows FAT всё равно сделать не получиться.
Только нечто аналогичное.
На комрьютере понадобиться программа нализатор.