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

AT91RM9200: загрузка с SPI и дешифратор для CS

Здравствуйте!

Я новичок в ARM, но документацию прочитал. :)

Задачка следующая:

Дано: хочу загружаться из DataFlash типа AT45Dxxx, при этом во время работы на шине SPI будет висеть еще 6 устройств. То есть мне нужно итого 7 сигналов SPICS.

Вопрос: как это сделать?

 

Вроде бы можно включить режим работы с внешним дешифратором (PCSDEC = 1). Но после сброса этот режим выключен. Одновременно сказано, что для загрузки мое SPI должно висеть на nPCS0.

Я вот думаю, как это совместить?

 

Вариант 1.

Если у меня дешифратор "4->16 то я просто цепляю бутовое SPI на выход 14, так как при поиске бутового SPI на шинах nPCS3:nPCS0 выставляется 1110, верно?

 

Вариант 2.

так как у меня только 6 устройств, то достаточно повесить дешифратор "3->8"на шины nPCS3:nPCS1 (причем использую все выходы дешифратора, кроме комбинации 111) а бутовое SPI я вешаю на nPCS0.

Тогда в момент загрузки выбран nPCS0, остальные в "1", а после начала работы моей программы я перехожу в режим работы без встроенного дешифратора и с точки зрения программы для выбора моих устройств SPI следует указывать только нечетные номера (чтобы nPCS0 был равен 0). Ну, для надежности могу аппаратно переводить дешифратор в неактивное состояние при nPCS0==0.

 

 

Как думаете, работоспособны оба варианта? Или есть какие-то подводные камни, которые я по неопытности не заметил?

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


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

Наверняка ответа до сих пор не было поскольку:

- обычно вполне хватает 4 SPI устройств;

- для тех кому не хватает, после многих часов проведенных в поиске ответа сдаются и используют ноги ввода/вывода для контроля CS, что влечет за собой "лечение" драйверов.

 

Атмел хороший производитель, но вот SPI на их ARM'ах имеют некоторые нюансы, если мягко выразится.

 

Не буду углублятся конкретно, просто дам ссылку с решением конкретно этой ситуации:

http://www.fh-augsburg.de/~hhoegl/proj/com...MATIC_V1_02.pdf

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


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

Наверняка ответа до сих пор не было поскольку:

- обычно вполне хватает 4 SPI устройств;

- для тех кому не хватает, после многих часов проведенных в поиске ответа сдаются и используют ноги ввода/вывода для контроля CS, что влечет за собой "лечение" драйверов.

 

Атмел хороший производитель, но вот SPI на их ARM'ах имеют некоторые нюансы, если мягко выразится.

 

Не буду углублятся конкретно, просто дам ссылку с решением конкретно этой ситуации:

http://www.fh-augsburg.de/~hhoegl/proj/com...MATIC_V1_02.pdf

Прям как привет из прошлой жизни получил....... Много воды с тех пор выпито было...... :)

 

Ну, не надо катить бочку на незапятнанные места Атмеловского АРМа. С SPI проблем нет. Все давно работает, причем именно так, как я и расчитывал. Никаких подводных камней. Висит два дешифратора (то есть в сумме 4->16). И грузится с этого датафлеша, и работает с ним дальше тоже.

PS. Работает у меня именно вариант1.

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


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

Висит два дешифратора (то есть в сумме 4->16). И грузится с этого датафлеша, и работает с ним дальше тоже.

PS. Работает у меня именно вариант1.

 

Руслан, извините, много уже времени прошло, но все-же..

Да, разумеется, девайс 14 работать будет. А вот остальные без лечения драйверов у вас заработали? Без программного SPI?

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


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

а там разве не два SPI каждый со своими чип селектами

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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