Цитата
Но как только я начал писать во флешку это признак теряется.
Пишите так, что бы этот признак не терялся (там всего 1 байт в расширенной области за это отвечает). Можно расширить признак - например хранить в этой области ECC (она для этого и сделана), и если ECC не совпал и коррекция невозможна, то проверять этот байт, если он не FF - то блок изначально битый
Цитата
А по поводу алгоритма неиспользования битых секторов можно по-подробнее - этот как?
Очень просто. Ваш алгоритм эаполнения FLASH должен быть готов к тому, что не все сектора можно будет использовать.
Например - используем файловую систему, которая при записи файла использует цепочку секторов. При этом в последнее слово в секторе пишется номер следующего сектора. Если при выделении нового сектора в него не получится записать, то используется
другой сектор, и именно его номер пишется в хвост предыдущего.
В принципе обычный FAT подойдет (если сделать ему возможность перемещать сам FAT). Хотя FAT не самый лучший вариант для FLASH по другим причинам