Вот весь проект:
https://yadi.sk/d/w98_y4E7kJN6EgУточнение, перераспределение памяти для отладки в RAM - 44кб под
прошивку 20кб оставшаяся оперативная память память.
Сейчас появилась такая проблема, в fileWork.cpp в функции ff_test
есть строка:
res = f_open(&logFile, "log.txt", FA_OPEN_APPEND | FA_WRITE);
если выходить из функции до неё, то всо нормально, выполнение этой строки, в какой то момент(не пойму что я сделал), начало приводить к зависанию МК, до этого проблема была только с f_close (код ошибки 1), и ведь строки в log.txt успешно добавлялись!
Карта подключена к J10 (схема в проекте), к J2 подключен экран 20x4,
lines[NumLines][20] массив для хранения строк отладочного экрана строки
крутятся энкодером, пробовал подавать питание на J1 убирая перемычку J4, на проблему это не повлияло.
Добавлено after 8 hours 17 minutes 12 seconds:Нашёл ошибку, в функции чтения и записи секторов (spi_SD_Write_Block и spi_SD_Read_Block) они корректно работали
только при чтении одного сектора, иначе адрес котцался, так правильно:
но исправление на вышеописанную проблему никак не повлияло.
Кстати, я беру некоторый код отсюда:
https://eax.me/stm32-fatfs/ вам тут ничего не кажется подозрительным?
Добавлено after 5 hours 9 minutes 30 seconds:Новый вопрос, при каком минимальном количестве оперативной памяти в микроконтроллере у вас нормально работал FatFs не урезанный
(с поддержкой длинных имён и юникодом c русской кодовой страницей)?