Перейти к содержанию
    

И вновь SD карта...

Доброго времени суток ! Работаю с контроллером stm32f103 ret6 плата производства фирмы Терраэлектроника. Использую пример расположенный в папке примеров. Мне необходимо подключить sd карту через SDIO.

Инициализацию я провожу как в примере:

  SD_Init();
   //----------------------Init_SD--------------------// 

   if (Status == SD_OK)
   {
       Status = SD_GetCardInfo(&SDCardInfo);//
       printf("\r\n SD_GetCardInfo:");
   }

   if (Status == SD_OK)
   { 
       Status = SD_SelectDeselect((uint32_t) (SDCardInfo.RCA << 16));
       printf("\r\n\n SD_SelectDeselect");
   } 

   if (Status == SD_OK)
   {
       Status = SD_EnableWideBusOperation(SDIO_BusWide_4b);
       printf("\r\n EnableWideBusOperation");
   }

   if (Status == SD_OK)
   { 
       Status = SD_SetDeviceMode(SD_DMA_MODE);
       printf("\r\n Set Transfer Mode");
   } 

 

 

ОТладчик (использую ИАР) валиться на SD_SelectDeselect возвращает ошибку таймаута. Я установил что виновато в этом прерывание.

void SDIO_IRQHandler(void)
{
   SD_ProcessIRQSrc();
}

 

Оно объявленов в NVIC - прерывание у меня одно в файле it оно объявлено. И оно не вызывается вообще не проходит.

Я попробовал все варианты - менял карточки, предполагал что какие то выводы таймеров "гадят"- нет.

Помогите пожалуйста, я понимаю что вопрос избитый но почему именно это прерывание не вызывается....

С уважением.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

этот пример работать не будет-могу сразу сказать.

там последовательность команд неправильная.

возможно она подходит для микрокарт,

но для больших карт нет.

попробуйте сделать последовательность команд как сделано у Chan

у меня по рукой нету примера=попробую кинуть к обеду.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

это для работы по spi, но разницы принцыпиальной нет

в примерах идент неправильная последовательность,

возможно из-за этого у вас не работает.

SPI_MSD.rar

Part_1_Physical_Layer_Simplified_Specification_Ver_3.01_Final_100518.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо я посмотрю. Только вот плата у меня отладочная и она жестко прикручена к SDIO... а тут SPI... Инит я может неправильно делаю.

С уважением.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо я посмотрю. Только вот плата у меня отладочная и она жестко прикручена к SDIO... а тут SPI... Инит я может неправильно делаю.

С уважением.

это без разницы

в пдф - фе должна идти сторго последовательность команд.

я не помню точно-в неработающих примера вроде как идет команда 0x80 которой не должно быть.

на вскидку не могу сказать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...