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

 
 
> SD card on SPI, как организовать общение c SD картой по SPI ?
Zlo
сообщение Aug 6 2009, 17:46
Сообщение #1


Участник
*

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



Вопрос таков: все ли SPI у SD карт одинаковые ?
Столкнулся со следующей проблемой: пытался инициализировать SD карту (взял 2 разные, как оказалось ответы на команды инициализации CMD8, ACMD41 и CMD55 у них тоже разные).

одна (от NOKIA) говорит что много ошибок
а вот от Kingston на CMD55 (55+0x40) выдаёт 5 (Idle + Error Comand)
так же как и на ACMD41 и CMD1

(может я что не так делаю) ?

Алгоритм инициализации следующий:

1. отправляю 16 байт 0xFF
2. отправляю CMD0 получаю 1
3. отправляю CMD1 или CMD55 + ACMD41(0xC0+41) - получаю 5 на каждую команду

при отправке всех команд CS опускается и поднимается
после нескольких опытов карточка стала возвращать 0xe0 на все команды

Вопрос: может проще MMC использовать ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ohmjke
сообщение Jul 23 2014, 11:19
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 116
Регистрация: 27-01-10
Из: СПб
Пользователь №: 55 094



Пишу на SDHC блок и после этого читаю его.
После записи сначала жду токена Data response со значением Data accepted - все ОК, получаю его сразу после второго байта CRC16. Затем, как я понял, карта шлёт busy байты в виде нулей, типа происходит запись из буфера в саму flash. Но эти busy заканчиваются только через 6-10 мс! Неужели, так и должно быть? Если так ждать после записи каждого байта, то получится максимальная скорость не более 100кБ/сек - бред.

Сейчас ещё раз глянул анализатором сразу после подачи питания - так busy длится вообще 20мс...

Сообщение отредактировал ohmjke - Jul 23 2014, 11:25
Go to the top of the page
 
+Quote Post
adnega
сообщение Jul 23 2014, 19:46
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(ohmjke @ Jul 23 2014, 15:19) *
Пишу на SDHC блок и после этого читаю его.
После записи сначала жду токена Data response со значением Data accepted - все ОК, получаю его сразу после второго байта CRC16. Затем, как я понял, карта шлёт busy байты в виде нулей, типа происходит запись из буфера в саму flash. Но эти busy заканчиваются только через 6-10 мс! Неужели, так и должно быть? Если так ждать после записи каждого байта, то получится максимальная скорость не более 100кБ/сек - бред.

Сейчас ещё раз глянул анализатором сразу после подачи питания - так busy длится вообще 20мс...


Ага. И при чтении может быть весело:
Цитата
SP uSD 16GB
<0.5ms – 4562197;
<1.0ms - 52698;
<2.0ms - 4683;
<5.0ms - 2;
<10 ms - 1;
<20 ms - 18;
<50 ms - 1971;
>50 ms - 4;
max - 59.9 ms

Карта непрерывно читается. Измеряется время ожидания начала данных. После тире указано число случаев для данного диапазона.
Для этой карты было 4 случая, когда данные были не готовы дольше 50 мс. Максимальное время ожидания почти 60 мс.
Самая беда в том, что чтение начинает тормозить в среднем по 46 мс но на протяжении секунды:
Цитата
<51254590:43.9ms-12075>
<+40:44.3ms-12147>
<+50:44.1ms-12123>
<+40:44.2ms-12139>
<+50:44.1ms-12113>
<+50:44.1ms-12091>
<+40:44.1ms-12111>
<+50:43.9ms-12057>
<+50:47.4ms-13023>
<+50:43.8ms-12001>
<+40:45.8ms-12577>
<+50:45.8ms-12573>
<+70:45.5ms-12501>
<+50:45.7ms-12541>
<+40:45.7ms-12551>
<+50:45.4ms-12467>
<+70:46.0ms-12649>
<+40:45.8ms-12573>
<+50:46.3ms-12711>
<+30:26.5ms-7271>
<+40:27.5ms-7541>

Тут формат такое <реальное время или смещение в мс от последнего события : время ожидания данных - число байт переданных в карту до момента ответа>
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Zlo   SD card on SPI   Aug 6 2009, 17:46
- - sergeeff   Зайдите на сайт Atmel'а. Там в разделе 32-разр...   Aug 6 2009, 18:47
|- - Zlo   Цитата(sergeeff @ Aug 6 2009, 22:47) Зайд...   Aug 7 2009, 06:47
- - aaarrr   Цитата(Zlo @ Aug 6 2009, 21:46) 1. отправ...   Aug 6 2009, 20:01
- - petrovichs   Я как раз тоже занялся изучением SD и мини-SD карт...   Aug 24 2009, 15:17
|- - zltigo   Цитата(petrovichs @ Aug 24 2009, 17:17) Ш...   Aug 24 2009, 15:41
- - head_sk   Держи, парень.   Aug 24 2009, 20:52
- - petrovichs   Огромное вам спасибо. Просто опытному разработчик...   Aug 24 2009, 21:09
|- - AlexandrY   microSD Kingston-ы на 2 Гб поддерживают SPI. Прове...   Aug 25 2009, 05:59
- - petrovichs   Все-таки задам маленький последний вопросик. Если ...   Aug 25 2009, 19:25
|- - aaarrr   Цитата(petrovichs @ Aug 25 2009, 23:25) В...   Aug 25 2009, 19:28
- - petrovichs   Я понял, значит если нет аппаратного SD-интерфейса...   Aug 25 2009, 22:06
- - Ndf   Есть вопрос относительно скорости записи/чтения MM...   Sep 8 2009, 11:59
|- - zltigo   Цитата(Ndf @ Sep 8 2009, 13:59) Подскажит...   Sep 8 2009, 14:54
|- - Ndf   Цитата(zltigo @ Sep 8 2009, 18:54) ...чит...   Sep 9 2009, 11:15
|- - zltigo   Цитата(Ndf @ Sep 9 2009, 13:15) Может как...   Sep 9 2009, 11:23
|- - Ndf   Хм...в SPI-mode эта команда имеет параметры Argume...   Sep 9 2009, 12:36
|- - zltigo   Цитата(Ndf @ Sep 9 2009, 14:36) Хм...в SP...   Sep 9 2009, 12:41
- - Ndf   Прочитал еще раз spec... да, действительно, после ...   Sep 10 2009, 12:36
|- - MiklPolikov   Цитата(Ndf @ Sep 10 2009, 16:36) Прочитал...   Jan 19 2013, 12:09
- - Ndf   Отвечу сам себе... причину нашел , и она кроется ...   Sep 11 2009, 13:04
- - polyname   может поможет - вот рабочий код: Кодenum sd_type {...   Jan 20 2013, 11:58
|- - Ndf   Цитата(ohmjke @ Jul 23 2014, 15:19) Пишу ...   Jul 25 2014, 06:41
- - ohmjke   Пришлось городить кольцевой буфер в RAM. Пока всё ...   Jul 24 2014, 15:33
- - Ruslan-maniak   Помогите, товарищи. Третий день не могу запустить ...   Feb 19 2016, 09:21
|- - doom13   Цитата(Ruslan-maniak @ Feb 19 2016, 12...   Feb 19 2016, 10:24
- - Ruslan-maniak   Так в том то и дело, что это именно ответ. До него...   Feb 19 2016, 10:42
- - doom13   У меня так работало: CODE void SDCard::SendCmd(SDC...   Feb 19 2016, 11:00
- - Ruslan-maniak   Команды отправляются правильно. Так как инициализа...   Feb 19 2016, 11:03
- - Ruslan-maniak   Взял библиотеку от Техасов (на их отладке с разъём...   Feb 20 2016, 06:17
|- - adnega   Цитата(Ruslan-maniak @ Feb 20 2016, 09...   Feb 20 2016, 08:17
- - Ruslan-maniak   Почему-то все остальные источники, например Чэн та...   Feb 24 2016, 03:26
- - p_kav   Здравствуйте. Чтобы не плодить темы, напишу сюда....   Jul 28 2016, 17:17


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

 


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


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