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

Интересная глючка с SPI

с SD карты считываю программу в SDRAM начиная с адреса 0x4

затем делаю вызов туда

 

далее запускается приложение работающее также с SD картой (по SPI естественно)

 

если в приложении не сделать повторно инициализации SPI (не путать с инитом SD карты!!!) - зависнет при первом чтении SD карты

 

если инит SPI сделать второй раз (настроить режим, скорость, флаги) - то успешно

 

что может быть?

описан ли сей глюк фина в силиконовой аномалии?

 

камень bf532 равизия 0.5

кеши данных - память с атрибутами WB, DIRTY, LOCK

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


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

Ну дык ёпт, конечно надо инициализировать, мало ли какую конфигурацию Аналог использует во время загрузки.

05000229 - SPI Slave Boot Mode Modifies Registers from Reset Value:

DESCRIPTION:

In this Boot Mode, the DMA5_CONFIG and SPI_CTL registers are not restored to their default (reset) states before executing the user's

application code. The DMA5 channel remains enabled in stop mode and the SPI remains enabled in RX DMA mode.

WORKAROUND:

The user's application must reset these registers before either the SPI or DMA channel 5 can be used.

APPLIES TO REVISION(S):

0.3, 0.4, 0.5

Может и не ваше, но я бы предостерегся.

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


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

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

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

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

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

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

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

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

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

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