реклама на сайте
подробности

 
 
> KEIL Flash-FS в применении к SPI/I2C памяти., Частично работает, но выдает чушь.
KnightIgor
сообщение Nov 9 2011, 11:41
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 643
Регистрация: 29-05-09
Из: Германия
Пользователь №: 49 725



Привет, мужики, а также милые дамы.

Имеем:
- KEIL Flash-FS (как часть RL 4.20);
- STM32F103RC;
- SD-Card на SPI;
- I2C EEPROM 16Kbyte.

На новом перспективном (для нас) устройстве, сердцем и пламенным мотором которого является упомянутый процессор, есть слот для SD карточки. Файловая система работает с SD карточкой через SPI успешно и без нареканий. Наличествующий I2C EEPROM на плате был предусмотрен для хранения различных настроек с хранением вне файловой системы, но возникла, однако, идея "натравить" Flash-FS на EEPROM, чтобы концептуально унифицировать использование данных с SD карты и EEPROM.

Как известно, Flash-FS может поддерживать (одновременно) различные типы памяти, в том числе всякие флэши, как параллельные, так и последовательные. Взяв за основу прилагаемый "драйвер" к 25F640S33 - это 1MB SPI Flash, - я переписал его, "перенаправив" запросы к I2C EEPROM. Создал, конечно, соответствующий FlashDev.h, который описывает сектора: получилось 256 секторов по 64 байта каждый (страница моего EEPROM - 64 байта).

Вроде все путем. Проформатировал (fformat("S0:")) - система прописала память 0xFF. Помощь утверждает, что будет не FAT, а EFS. Каталог пуст.
Попытался создать файл a.txt с тестовым содержимым "Content of the file". Система записала что-то в EEPROM; сказала, успешно.
Попытался открыть файл - ошибка.
Отобразил каталог (ffind(), последовательность действий отражена в распечатке моей консоли ниже):

\a.txtяяContent of the filяяяяяя 0, 01-01-1980 12:00:00

Total: 0
Free: 0.

То есть, в памяти подряд записано имя файла (a.txt), затем 2 раза 0xFF (я), затем подряд идет содержимое файла, лишь 18 символов из 19-ти (без последней буквы "e"), потом опять несколько 0xFF (я).

В общем, вопросы:
- кто-нибудь уже натравливал Flash-FS на embedded flash?
- что за формат файловой системы там поддерживался?
- как можно интерпретировать чушь, которую я вижу как результат работы ffind()?

Тыкание носом и полезные советы приветствуются.
Заранее спасибо.

P.S. dump EEPROM:


0000: 5C 61 2E 74 78 74 FF FF 43 6F 6E 74 65 6E 74 20
0010: 6F 66 20 74 68 65 20 66 69 6C FF FF FF FF FF FF
0020: FF FF FF FF FF FF FF FF FF FF FF FF 1B 00 00 00
0030: 01 00 FF FF 08 00 00 00 01 80 FF FF F0 FF FF FF




AREA CONTROLLER V1.0, STM32F at 72MHz
Compiled on Nov 9 2011 at 12:23:43
Configuration:
- RL-USB in use.
- VCOM implemented.
- HID implemented.

Flash: 256KB
EEPROM: 16KB
Battery: 3.01V
Temperature: +25
Actual time: 12:23:46

Media directory:

No files...

Free: 0.


ARC>write

EEPROM file created.
EEPROM written.
EEPROM file open error
ARC>dir

AREA CONTROLLER V1.0, STM32F at 72MHz
Compiled on Nov 9 2011 at 12:23:43
Configuration:
- RL-USB in use.
- VCOM implemented.
- HID implemented.

Flash: 256KB
EEPROM: 16KB
Battery: 3.01V
Temperature: +25
Actual time: 12:24:09

Media directory:

\a.txtяяContent of the filяяяяяя 0, 01-01-1980 12:00:00

Total: 0
Free: 0.


ARC>


Сообщение отредактировал KnightIgor - Nov 9 2011, 12:06
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 2)
Ivan Kuznetzov
сообщение Nov 10 2011, 04:22
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 307
Регистрация: 6-02-08
Из: Россия, Екатеринбург
Пользователь №: 34 798



я натравливал fat_fs от elm chan, только на M25P64 - воспроизводит аудио с флешки


--------------------
Разработчик
Go to the top of the page
 
+Quote Post
KnightIgor
сообщение Nov 13 2011, 10:20
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 643
Регистрация: 29-05-09
Из: Германия
Пользователь №: 49 725



ПРОБЛЕМА РЕШЕНА: была-таки ошибка в моем коде, писалось на 2 байта меньше, чем надо. Теперь все работает.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 16:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01377 секунд с 7
ELECTRONIX ©2004-2016