shan (25.06.2015 15:48, просмотров: 92) ответил Nikolay801_ на грабли, типовые. 90% стека мало.
На стек не похоже, т.к. ошибка фиксируется в файловой системе и вместе с файлом удаляется. Похоже, что при записи блока происходит ошибка в файле или каталоге.
Мои рассуждения: При очередной записи блок файла считывается, модифицируется в ОЗУ (append) и записывается на то же место. Если первая запись была со сбоем, то при втором fwrite() чтение будет со сбоем (напр сбой КС). Не понятно почему именно вторая команда fwrite() приводит к HARD_FAULT? и если этого не произошло, дальше будет всё ОК.