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

 
 
> STM32F4 + FatFS + uSD, проблема со скоростью.
Allregia
сообщение Sep 3 2012, 13:03
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Нужна помощь клуба.

Процессор STM32F407VG, 168МГц.
Использую SDIO 4 бита на 24Мгц. DMA. Запись/чтение через SD_ReadMultiBlocks/SD_WriteMultiBlocks.
На всех сигналах SDIO пуллапы 10к.

проверочный код:
Код
  SDInitResult=SD_Init();
  if(SDInitResult==SD_OK) LEDOn(LED1); else LEDOn(LED2);

  if(SDInitResult==SD_OK){
     if ( f_mount( 1, &MSD_fatfs ) != FR_OK ){
        LEDOn(LED2);  // fatfs initialisation fails
     }else{
        res = f_open(&myfile, "1:test_sd.dat", FA_CREATE_ALWAYS | FA_WRITE);

        for(i=0; i<3000;i++){
         res=f_write(&myfile, buffer,4096, &bw);
        }

        f_close(&myfile);
        f_mount(1, NULL);
        if(res==0)
          LEDOn(LED2);
        else
          LEDOn(LED1);
     }
  }


Итого, записывается 3тыс блоков по 4096 байт, засекаю секундомером.

На флешке PQI 1Gb (FAT) - 36 секунд, получается 340кБайт/сек или 2.7мбит/с
На Кингстон 4Gb (FAT32) - 60с, т.е. 200 кБайт/сек, или 1.6мбит/с.

Дополнение - при изменении блока с 4к на 16к, на 4гб фат32 флешке те-эе 60 сек., а на 1гб фат16 уменшилось до 12 сек, т.е. 1МБайт/с или 8 МБит/с.

У кого какие результаты получались? Я честно говоря, ожидал скорости побольше (хотя для конкретной задачи мне ее хватит.

И попутно другой вопрос - я первый раз с FatFs работаю, функия f_write начинается и ждет пока не закончиться запись блока. Т.е оно блокирует на время записи всю программу и не очень понятно зачем тогда DMA?
Это можно как-то обойти без OS ?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Allregia   STM32F4 + FatFS + uSD   Sep 3 2012, 13:03
- - _Артём_   Цитата(Allregia @ Sep 3 2012, 16:03) И по...   Sep 3 2012, 13:12
|- - Allregia   Цитата(_Артём_ @ Sep 3 2012, 15:12) Обойт...   Sep 3 2012, 13:31
- - Lotor   На счет скорости тут на форуме много тем вердикт к...   Sep 3 2012, 14:01
|- - Allregia   Цитата(Lotor @ Sep 3 2012, 16:01) На счет...   Sep 3 2012, 14:15
- - Lotor   Самое лучшее - найти на электрониксе тему, где это...   Sep 3 2012, 17:37
|- - Allregia   Цитата(Lotor @ Sep 3 2012, 19:37) Самое л...   Sep 3 2012, 20:23
|- - aaarrr   Цитата(Allregia @ Sep 4 2012, 00:23) Пото...   Sep 3 2012, 20:42
- - Lotor   Не так, так не так. Я попытался Вас направить в ну...   Sep 3 2012, 20:29
|- - Allregia   Цитата(Lotor @ Sep 3 2012, 22:29) Не так,...   Sep 4 2012, 04:48
- - Lotor   Тема, на которую я дал Вам ссылку должна ответить ...   Sep 4 2012, 06:38
|- - Allregia   Цитата(Lotor @ Sep 4 2012, 08:38) Тема, н...   Sep 4 2012, 07:38
|- - Lotor   Цитата(Allregia @ Sep 4 2012, 11:38) Нали...   Sep 4 2012, 08:40
|- - Allregia   Цитата(Lotor @ Sep 4 2012, 10:40) Абсолют...   Sep 4 2012, 10:44
- - Serg_D   скорее всего оно форматирует с выравниваением (так...   Sep 4 2012, 14:36
|- - Allregia   Цитата(Serg_D @ Sep 4 2012, 16:36) скорее...   Sep 4 2012, 15:26
- - Serg_D   А частоту клока карты в 48мгц не пробовали ставить...   Sep 4 2012, 16:29
|- - Allregia   Цитата(Serg_D @ Sep 4 2012, 18:29) А част...   Sep 4 2012, 17:03
- - Allregia   Еще интересный факт: при переводе SDIO в 1-битный ...   Sep 5 2012, 10:19
- - aaarrr   Факты есть, а системы нет. Вам нужно проверить ра...   Sep 5 2012, 10:37
- - Allregia   Да, конечно. Я просто рассказываю интересные момен...   Sep 5 2012, 19:25
- - Allregia   Возникла проблема - пока писал на малой скорости в...   Nov 6 2012, 18:40
- - Allregia   Посмотрел более внимательно флешка входит в паузу...   Nov 7 2012, 15:42
- - Allregia   Отформатировал карточку в компе при помощи SDForma...   Nov 8 2012, 09:17
|- - Lotor   Цитата(Allregia @ Nov 8 2012, 13:17) 2) Ф...   Nov 8 2012, 10:06
|- - _Pasha   Цитата(Lotor @ Nov 8 2012, 13:06) А что и...   Nov 8 2012, 11:22
|- - Allregia   Цитата(Lotor @ Nov 8 2012, 12:06) А что и...   Nov 8 2012, 15:01
|- - Lotor   Цитата(Allregia @ Nov 8 2012, 19:01) Проб...   Nov 9 2012, 06:47
|- - Allregia   Цитата(Lotor @ Nov 9 2012, 08:47) Я прост...   Nov 9 2012, 07:47
- - RabidRabbit   Может после форматирования SDFormatter'ом карт...   Nov 9 2012, 08:02
|- - Allregia   Цитата(RabidRabbit @ Nov 9 2012, 10:02) М...   Nov 9 2012, 08:40
- - Allregia   Народ подкажите еще такую штуку: Посмотрел я что э...   Nov 21 2012, 20:54
|- - aaarrr   Цитата(Allregia @ Nov 22 2012, 00:54) Что...   Nov 21 2012, 21:20
|- - Allregia   Цитата(aaarrr @ Nov 21 2012, 23:20) А сам...   Nov 21 2012, 22:45
|- - aaarrr   Цитата(Allregia @ Nov 22 2012, 02:45) А у...   Nov 21 2012, 23:31
- - Allregia   Нашел 3.0, и еще в примераз в IAR. Попробую завтра...   Nov 22 2012, 19:20
- - Allregia   aaarrr, видимо нужна Ваша помощь. Я попробовал та...   Nov 24 2012, 17:07
|- - aaarrr   Цитата(Allregia @ Nov 24 2012, 21:07) Пок...   Nov 27 2012, 20:53
|- - Allregia   Цитата(aaarrr @ Nov 27 2012, 22:53) Прове...   Nov 27 2012, 21:25
|- - aaarrr   Цитата(Allregia @ Nov 28 2012, 01:25) Я в...   Nov 27 2012, 21:35
- - Allregia   У меня стоят по 10к на всех линиях, кроме CLK (ему...   Nov 28 2012, 08:31
- - Allregia   А не может это быть тем случаем, описанным в эррат...   Nov 29 2012, 06:16
- - Allregia   Вот есть еще интересный вопрос - в F4 используется...   Nov 29 2012, 15:03
- - Stepanov.I.L   Здравствуйте товарищи форумчане. Чтобы не плодить ...   Oct 31 2013, 03:14
- - esaulenka   Была похожая проблема с использованием ST-шного пр...   Oct 31 2013, 16:14
|- - mantech   Цитата(esaulenka @ Oct 31 2013, 19:14) US...   Oct 31 2013, 19:26
- - Stepanov.I.L   Всем спасибо, все свободны. Проблему решил, причин...   Nov 6 2013, 04:00


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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 20:46
Рейтинг@Mail.ru


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