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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Проблема с записью на sdcard, зависание карты при мультиблочной записи
scout
сообщение Jan 20 2017, 17:00
Сообщение #16


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

Группа: Свой
Сообщений: 120
Регистрация: 4-01-06
Из: Москва
Пользователь №: 12 837



Благодарю за ответы, думаю на этом тема исчерпана.

Кстати, заметил один нюанс: data response перестает приходить, если
CS поднимается при сброшенном Busy. Т.е, заканчивается передача данных,
приходит response token, я вижу, что Busy падает в "0", а пока я готовлюсь
поднять CS, Busy уже успевает перейти в "1" и, спустя некоторое время,
CS поднимается в "1". И именно после этого пропадают data response.

Насколько критично поднимать CS при сброшенном Busy?


--------------------
То, что неясно, следует выяснить. То, что трудно творить, следует делать с великой настойчивостью.
Конфуций
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jan 20 2017, 19:18
Сообщение #17


Гуру
******

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



Цитата(scout @ Jan 20 2017, 20:00) *
Насколько критично поднимать CS при сброшенном Busy?

Резонный вопрос! Карта в этот момент уже ждет токена данных. Возможно, тут есть какой-то глюк с её стороны.
Попробуйте сделать так: передача блока - прием Data Response Token - работа с другим CS - выборка карты с ожиданием Busy.
Go to the top of the page
 
+Quote Post
scout
сообщение Jan 21 2017, 09:29
Сообщение #18


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

Группа: Свой
Сообщений: 120
Регистрация: 4-01-06
Из: Москва
Пользователь №: 12 837



Цитата
Попробуйте сделать так: передача блока - прием Data Response Token - работа с другим CS - выборка карты с ожиданием Busy.


Я так и делаю! Проблема в том, что начиная с третьего блока карта после передачи Response Token держит Busy очень короткое время,
поэтому я не успеваю поднять CS. И именно после этого начинаются проблемы. Похоже эта особенность поведения данной карты является непреодолимой и придется всю запись переделать с использованием одиночных блоков.



--------------------
То, что неясно, следует выяснить. То, что трудно творить, следует делать с великой настойчивостью.
Конфуций
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jan 21 2017, 13:29
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(scout @ Jan 21 2017, 12:29) *
Проблема в том, что начиная с третьего блока карта после передачи Response Token держит Busy очень короткое время,
поэтому я не успеваю поднять CS.

Как это возможно??? Неуспевание.
Все процессы на шине SPI тактируются мастером (Вашим контроллером). Соответственно - Вы можете в любой момент "остановить время" на шине SPI просто остановив SCLK.
Go to the top of the page
 
+Quote Post
scout
сообщение Jan 21 2017, 21:05
Сообщение #20


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

Группа: Свой
Сообщений: 120
Регистрация: 4-01-06
Из: Москва
Пользователь №: 12 837



Цитата
Как это возможно??? Неуспевание.
Все процессы на шине SPI тактируются мастером (Вашим контроллером). Соответственно - Вы можете в любой момент "остановить время" на шине SPI просто остановив SCLK.


После получения Response Token я посылаю dummy байт и, насколько я помню, сразу после этого
карта отпускает Busy. После посылки холостого байта я опускаю CS и посылаю еще один dummy байт.


--------------------
То, что неясно, следует выяснить. То, что трудно творить, следует делать с великой настойчивостью.
Конфуций
Go to the top of the page
 
+Quote Post

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

 


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


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