|
Библиотека файловой системы EFSL |
|
|
|
Oct 24 2006, 06:45
|
Группа: Новичок
Сообщений: 10
Регистрация: 6-12-05
Пользователь №: 11 887

|
Доброго времени суток! Вот скачав и написав соответствующий драйвер, для имеющегося процессора, удалось запустить EFSL. Но результаты чтения оставляют желать лучшего: ~300 КБ за 15 секунд, и это при максимальной скорости работы SPI на 20МГЦ контроллере. Фрагмент кода чтения файла, взято из примера идущего с библиотекой. Код while ((e = file_read(&file_w, 16, buf))) { for (i = 0; i < e; i++) { /*TODO:*/ } } Кто может подсказать в чем может быть загвоздка? Заранее благодарен!
|
|
|
|
3 страниц
< 1 2 3
|
 |
Ответов
(30 - 37)
|
Feb 15 2007, 19:40
|

Местный
  
Группа: Свой
Сообщений: 226
Регистрация: 2-06-06
Пользователь №: 17 720

|
Цитата Интересно будет посмотреть как это у вас получится.В MMC/SD запись всегда выровнена по границе сектора, т.е. буфер сектора в 512 байт в RAM иметь надо всегда! всей функциональности ФАТ и не нужно. нужно только писать потоком в один файл в читабельном на компьютере виде, при включении устройства можно стирать всю карточку и формировать файловую систему с нуля, еще разбираюсь с ММС
|
|
|
|
|
Feb 16 2007, 10:35
|
Частый гость
 
Группа: Свой
Сообщений: 169
Регистрация: 10-11-05
Из: Воронеж
Пользователь №: 10 687

|
Цитата(umup @ Feb 15 2007, 19:40)  Цитата Интересно будет посмотреть как это у вас получится.В MMC/SD запись всегда выровнена по границе сектора, т.е. буфер сектора в 512 байт в RAM иметь надо всегда! всей функциональности ФАТ и не нужно. нужно только писать потоком в один файл в читабельном на компьютере виде, при включении устройства можно стирать всю карточку и формировать файловую систему с нуля, еще разбираюсь с ММС Была примерно такая же задачка (правда, только чтение) с карточками SmartMedia. Реализовывал на AT89C52. Всего 256 байт ОЗУ. Ессно, контроллер еще и обрабатывал считываемые данные. Так что все реально, вопрос лишь в скорости работы - как сами понимаете она была мягко говоря низкая. Но для моих задач хватило. Вычитывал 16-20кб/с "чистых" данных с FAT12 (или FAT16 - не помню уже).
|
|
|
|
|
Feb 19 2007, 14:01
|

Местный
  
Группа: Свой
Сообщений: 205
Регистрация: 19-12-05
Из: Kiev
Пользователь №: 12 394

|
Цитата(jorikdima @ Feb 13 2007, 09:19)  Цитата(AlexBoy @ Feb 13 2007, 02:35)  Можно поставить внешнюю SRAM с spi или i2c интерфейсом.
А вы не могли бы ткнуть пальцем в SRAM с последовательным итерфейсом, а то мне только параллельный встречался. ЗЫ Но мне (для иных применений) надо хотя бы 32 Мбита Ну в Мбитах послед. память не меряется, максимум 256кбит. Например fram FM25L16 ... FM25L256 колич. перезаписей - трилионы раз, держит без питания.
|
|
|
|
|
Feb 27 2007, 16:30
|
Частый гость
 
Группа: Участник
Сообщений: 141
Регистрация: 7-03-06
Из: Санкт-Петербург
Пользователь №: 15 038

|
Добрый день! А вот по http://elm-chan.org/fsw/ff/00index_e.html может кто-нить объяснить как её настроить под свой проектик? У меня английским не очень. Понял что надо написать свои функции disk_initialize, disk_read, get_fattime, disk_write, disk_status. вроде написал. Дальше пишу: f_mount(0, &fs); res = f_open(&fsrc, "config.txt", FA_OPEN_EXISTING | FA_READ); if (res) { send_char_uart0(res); //debug } возвращает 0x01, в чем может быть причина? "config.txt" - лежит в корне
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|