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

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> Промлема инициализации SD-card в SD mode, Промлема инициализации SD-card в SD mode
toretto
сообщение Apr 27 2011, 13:10
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



Спасибо, добрый человек. Все так, как Вы сказали. Сумму считает правильно sm.gif
Go to the top of the page
 
+Quote Post
toretto
сообщение Nov 4 2011, 11:29
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



возникло вот такое затруднение: при инициализации в SD-режиме посылаю CMD0 (0x40, 0, 0, 0, 0, 0x95), реакции карты никакой. После шлю еще 40 пустых клоков и после в цикле выдаю команду CMD55 (0x77, 0, 0, 0, 0, 0x65). После опять реакции ноль. При посылке CMD0 для сброса в SPI (при CS = 0) карта высылает 0x01 (что верно). Не понимаю, почему в SD-режиме тишина. Все командные ноги и клок подтянуты 10кОм к +3.3В. Работаю по заднему фронту клока (по переднему не работает даже в SPI). После включения питания шлю около 160 пустых тактов, частота 200 кГц. Поделитесь мыслями, у кого есть.

Сообщение отредактировал toretto - Nov 4 2011, 11:52
Go to the top of the page
 
+Quote Post
toretto
сообщение Jan 31 2012, 08:03
Сообщение #18


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



приведу осцилограмки

ниже команда cmd8:
Прикрепленное изображение


посылка cmd0 и после 10 байтной паузы cmd 8:
Прикрепленное изображение


Go to the top of the page
 
+Quote Post
toretto
сообщение Feb 9 2012, 12:32
Сообщение #19


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



карту проинициализировал, видимо была нестыковка по фронтам.
Можно ли отключить командой CMD59 CRC_ON_OFF проверку контрольной суммы? или команда только для режима SPI?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 9 2012, 12:43
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Нет, отключить можно только в режиме SPI.
Go to the top of the page
 
+Quote Post
toretto
сообщение Feb 16 2012, 08:05
Сообщение #21


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



в спецификации на странице 8 приведена диаграмма записи в карту. из нее видно, что после записи карта возвращает по линии cmd0 ответ: некую приставку и сигнал busy. что за приставка и сигнал, не подскажете? или где почитать можно?
Go to the top of the page
 
+Quote Post
toretto
сообщение Feb 29 2012, 05:40
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



Цитата(toretto @ Nov 4 2011, 14:29) *
возникло вот такое затруднение: при инициализации в SD-режиме посылаю CMD0 (0x40, 0, 0, 0, 0, 0x95), реакции карты никакой. После шлю еще 40 пустых клоков и после в цикле выдаю команду CMD55 (0x77, 0, 0, 0, 0, 0x65). После опять реакции ноль. При посылке CMD0 для сброса в SPI (при CS = 0) карта высылает 0x01 (что верно). Не понимаю, почему в SD-режиме тишина. Все командные ноги и клок подтянуты 10кОм к +3.3В. Работаю по заднему фронту клока (по переднему не работает даже в SPI). После включения питания шлю около 160 пустых тактов, частота 200 кГц. Поделитесь мыслями, у кого есть.

проблема оказалась в емкостях линий, добавив несколько десятков пФ об землю на линиях CLK, CMD проблема пропала. sm.gif вот такой интересный нюанс.
по непонятным причинам после посылки CMD7 SELECT/DESELECT_CARD карта отвечает (hex) 07 00 00 07 00 75 и после молча терпит все следующие команды (на cmd13, cmd55, cmd7 ответов нет). если я правильно расшифровал, 7 => карта перешла в program state (в DSh сказано, карта должна послать сигнал busy,повесив "0" на DAT0, у меня как висела "1", так и висит). в чем может быть трабл? повторный сброс CMD0 работает

Сообщение отредактировал toretto - Feb 29 2012, 06:25
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 29 2012, 09:54
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(toretto @ Feb 29 2012, 09:40) *
проблема оказалась в емкостях линий, добавив несколько десятков пФ об землю на линиях CLK, CMD проблема пропала. sm.gif вот такой интересный нюанс.

Скорее всего, у вас наводка идет с линии CLK.

Цитата(toretto @ Feb 29 2012, 09:40) *
по непонятным причинам после посылки CMD7 SELECT/DESELECT_CARD карта отвечает (hex) 07 00 00 07 00 75 и после молча терпит все следующие команды (на cmd13, cmd55, cmd7 ответов нет). если я правильно расшифровал, 7 => карта перешла в program state (в DSh сказано, карта должна послать сигнал busy,повесив "0" на DAT0, у меня как висела "1", так и висит). в чем может быть трабл? повторный сброс CMD0 работает

Карта была в состоянии stby, вы выполнили SELECT, после чего она должна перейти в tran.
Go to the top of the page
 
+Quote Post
toretto
сообщение Feb 29 2012, 12:57
Сообщение #24


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



поставил в цикле CMD3, в итоге на первую команду пришел ответ "stand by", на вторую "programe state"... и все.... cranky.gif
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 29 2012, 13:03
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Вы лучше опишите подробно, что передается, и что отвечает карта. С самого начала, т.е. с CMD0.
Go to the top of the page
 
+Quote Post
toretto
сообщение Mar 1 2012, 06:37
Сообщение #26


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



1. 100 клоков
2. CMD0 0x40, 0, 0, 0, 0 0x95 -> ответа нет
3. 80 клоков
4. CMD8 0x48, 0, 0, 1, 0xAA, 0x87 -> 0x08, 0, 0, 1, 0xAA, 0x13
5. CMD55 0x55, 0, 0, 0, 0, 0x65 -> 0x55, 0, 0, 1, 0x20, 0x83
6. CMD41 0x69, 0, 0xFF, 0x80, 0, 0x80, 0x85 -> 0x3F, 0, 0xAA, 0x80, 0, 0xFF
........... 5-6 в цикле до получения бита busy status "1" .................
7. CMD55 0x55, 0, 0, 0, 0, 0x65 -> 0x55, 0, 0, 1, 0x20, 0x83
8. CMD41 0x69, 0, 0xFF, 0x80, 0, 0x80, 0x85 -> 0x3F, 0x80, 0xAA, 0x80, 0, 0xFF
9. CMD2 0x42 0, 0, 0, 0, 0x4D -> длинный ответ, просто фиксирую факт, что он есть
10. CMD3 0x43 0, 0, 0, 0, 0x4D -> 0x03, 0x02, 0x60, 0x05, 0, 0x5D
11. CMD3 0x43 0, 0, 0, 0, 0x4D -> 0x03, 0x02, 0x61, 0x07, 0, 0x2F -- вот тут уже 7 в ответе - prg state
.... пауза 600 мкс......
12. CMD7 0x47 0x02, 0x61, 0, 0, 0x7B -> 0x7, 0x0, 0x0, 0x7, 0x0, 0x75
13. CMD55 0x55, 0, 0, 0, 0, 0x65 -> и тишина.....

Сообщение отредактировал toretto - Mar 1 2012, 08:05
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 1 2012, 12:01
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(toretto @ Mar 1 2012, 10:37) *
13. CMD55 0x55, 0, 0, 0, 0, 0x65 -> и тишина.....

Все правильно: вы же указали 0 в качестве RCA.
Go to the top of the page
 
+Quote Post
toretto
сообщение Mar 1 2012, 13:01
Сообщение #28


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



спасибо. глаз замылился, совсем забыл об RCA в этой команде. a14.gif
Go to the top of the page
 
+Quote Post
toretto
сообщение Mar 12 2012, 07:26
Сообщение #29


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 14-03-11
Пользователь №: 63 590



del

Сообщение отредактировал toretto - Mar 12 2012, 07:57
Go to the top of the page
 
+Quote Post
nikita1584
сообщение Mar 27 2012, 16:05
Сообщение #30





Группа: Новичок
Сообщений: 5
Регистрация: 27-03-12
Пользователь №: 71 035



Здравствуйте! Дабы не плодить новую ветку по работе с SD картой, напишу здесь. Помогите, пожалуйста, с записью на SD-карту в режиме SD. Инициализация проходит успешно, чтение так же корректно (совпадает с тем что я вижу на осциллографе). Последовательность команд, которую я отправляю:

CMD0, CMD8, CMD55, ACMD41,CMD2,CMD3,CMD9,CMD7,CMD55,ACMD6, далее пишу CMD24 и читаю CMD17

Считаю CRC для данных правильно, подтвержением тому - совпадение вычисленной моей CRC и полученной от карты при чении. Частота тактирования 257 КГц, слот SD карты общается с FPGA. При записи на карту, на середину данных приходится фронт клока (данные изменяю от спада до спада).

Большое спасибо!
Go to the top of the page
 
+Quote Post

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

 


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


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