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

 
 
> Чтение блока с SD карты, не поступает Data Token
Evgenius_Alex
сообщение Jan 23 2013, 12:41
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 373
Регистрация: 6-11-07
Пользователь №: 32 103



Добрый день!

При работе с SD картой столкнулся с проблемой чтения блока.

Карта инициализацию проходит нормально.

После команды чтения одного блока CMD17, приходит корректный ответ (0x00)
Но маркера начала данных(0xFE) не поступает.

Пробовал меня скорость SPI - не помогает

Сталкивался ли кто с таким и как бороться?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Genadi Zawidowsk...
сообщение Jan 29 2013, 14:28
Сообщение #2


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

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Насчёт описания тяжело... Вот проект.
Пока ничего не меняя смените на mode3 - но у меня выбирать можно было только из mode2 и mode3 - скорее всего, состояние MOSI вне посылки не важно, но полярность клока (по какому перепаду обновлять) важна. Как я понял, к моему работаеюему mode3 допустимая замена mode1.
Go to the top of the page
 
+Quote Post
Evgenius_Alex
сообщение Jan 29 2013, 20:47
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 373
Регистрация: 6-11-07
Пользователь №: 32 103



Цитата(Genadi Zawidowski @ Jan 29 2013, 17:28) *
Насчёт описания тяжело... Вот проект.
Пока ничего не меняя смените на mode3 - но у меня выбирать можно было только из mode2 и mode3 - скорее всего, состояние MOSI вне посылки не важно, но полярность клока (по какому перепаду обновлять) важна. Как я понял, к моему работаеюему mode3 допустимая замена mode1.


К сожалению, изменение режима SPI не помогло. Пробовал все четыре режима SPI.

Придётся адаптировать Ваш код под ATMega128.

Правда, я смотрю, у Вас в коде типы данных есть непонятные. Я с ARM-ами никогда не работал.
Например uint_fast8_t, uint_fast32_t, uint_fast64_t. Чем их можно заменить?

И ещё не могут быть такие траблы из-за электрически неправильно собранной цепи?

Правда, у меня всё стандартно.
Согласующие резисторы между картой и МК на всех линиях - 510 Ом.
Подтягивающие резисторы к плюс питания - 51 кОм.
На всех линиях, кроме MISO стоят защитные стабилитроны на 3.3В.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jan 30 2013, 16:15
Сообщение #4


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

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



непонятные типы - это из stdint.h - смысл типов надеюсь понятен.
А что, у Вас ешё и процессор не от 3.3 питается? Что за 510 Ом?
Антизвонные на 22..56 ом я ещё понимаю...
Go to the top of the page
 
+Quote Post
Evgenius_Alex
сообщение Jan 31 2013, 07:58
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 373
Регистрация: 6-11-07
Пользователь №: 32 103



Цитата(Genadi Zawidowski @ Jan 30 2013, 19:15) *
непонятные типы - это из stdint.h - смысл типов надеюсь понятен.
А что, у Вас ешё и процессор не от 3.3 питается? Что за 510 Ом?
Антизвонные на 22..56 ом я ещё понимаю...


Привожу Вам схему соединения ATMega128 и SD карт.
.
Atmega128 питается от 5 В, SD карта - от 3.3 В

R2-R6 - 51 кОм подтягивающие к +3.3В
R7-R10 - 510 Ом резисторы для согласования уровней 5В и 3.3В
VD1-VD3 - защитные стабилитроны на 3.3 Вольт
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jan 31 2013, 19:53
Сообщение #6


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

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(Evgenius_Alex @ Jan 31 2013, 11:58) *
Привожу Вам схему соединения ATMega128 и SD карт...



Так, для справки: нормированная ёмкость стабилитрона BZX84C3V3 на 3.3 вольта при нулевом обратном смещении - 450 пикофарад.
И процессор начинает эти 450 пикофарад через 510 ом заряжать... Ёмкость, разумеется, упадёт до сотни пикофарад при полутора вольтах (когда дойдём до порога переключения логики в карте)... Если ещё где-то нормированы скорости нарастания на клоке...
Я даже не хочу предсказывать, как всё это будет работать в "боевом" применении. И не поможет никакое снижение скорости чередования импульсов - уже завалены фронты сигнала.

Не говоря про то, что минимальный уровень логической "1" на входе ATMEGA128 должен быть 0.6 * VCC - что при 5.0 вольтах питания равно 3.0 вольта. Скажем так, запас никакой.

Сделайте нормально всё здесь. Самое простое - снизить питание процессора до 3.3 вольта и выкинуть весь этот "огород".
Если нужны 16 МГц - найти слегка другой процессор или применить трансляторы уровней вроде sn74lvc1t45 или что-ибудь специальное, для карточек.

Сообщение отредактировал IgorKossak - Feb 1 2013, 07:50
Причина редактирования: избыточное цитирование
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Evgenius_Alex   Чтение блока с SD карты   Jan 23 2013, 12:41
- - ukpyr   попробуйте увеличить время ожидания 0xFE   Jan 23 2013, 13:31
- - AndreyVN   Цитата(Evgenius_Alex @ Jan 23 2013, 15:41...   Jan 23 2013, 16:28
- - Genadi Zawidowski   В карту при этом должны вдвигаться все "1...   Jan 23 2013, 17:11
|- - Evgenius_Alex   Цитата(Genadi Zawidowski @ Jan 23 2013, 20...   Jan 23 2013, 20:28
- - ukpyr   ЦитатаSD_CS_ASSERT; // CS опускаем в ноль SD_CS_DE...   Jan 24 2013, 07:40
- - Genadi Zawidowski   Цитатане понял насчёт выдвигания "1" по ...   Jan 24 2013, 15:13
|- - Evgenius_Alex   Цитата(Genadi Zawidowski @ Jan 24 2013, 19...   Jan 28 2013, 07:34
|- - Evgenius_Alex   Цитата(Evgenius_Alex @ Jan 28 2013, 10:34...   Jan 28 2013, 10:27
- - Genadi Zawidowski   Неиспользуемые линии данных карты подтянуты через ...   Jan 28 2013, 12:46
|- - Evgenius_Alex   Спасибо, Геннадий! Неиспользуемые линии были ...   Jan 28 2013, 15:12
- - Genadi Zawidowski   Ну так если у Вас карта на SDHC, не v2 - вполне мо...   Jan 28 2013, 20:50
|- - Evgenius_Alex   Цитата(Genadi Zawidowski @ Jan 29 2013, 00...   Jan 29 2013, 08:25
|- - ut1wpr   Цитата(Genadi Zawidowski @ Jan 31 2013, 22...   Jan 31 2013, 22:45
|- - Evgenius_Alex   Цитата(Genadi Zawidowski @ Jan 31 2013, 23...   Feb 1 2013, 18:53
- - Genadi Zawidowski   У HC карточек адресация не смещением, а номером бл...   Feb 2 2013, 06:27
- - МП41   Так 2Гб карточка не должа быть HC.   Feb 11 2013, 08:49
- - Genadi Zawidowski   Я видел 2GB и HC и не HC.   Feb 11 2013, 10:23


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

 


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


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