Ruslan1 17 25 марта, 2006 Опубликовано 25 марта, 2006 · Жалоба Здравствуйте! Я новичок в 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. Как думаете, работоспособны оба варианта? Или есть какие-то подводные камни, которые я по неопытности не заметил? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rybo 0 20 ноября, 2007 Опубликовано 20 ноября, 2007 · Жалоба Наверняка ответа до сих пор не было поскольку: - обычно вполне хватает 4 SPI устройств; - для тех кому не хватает, после многих часов проведенных в поиске ответа сдаются и используют ноги ввода/вывода для контроля CS, что влечет за собой "лечение" драйверов. Атмел хороший производитель, но вот SPI на их ARM'ах имеют некоторые нюансы, если мягко выразится. Не буду углублятся конкретно, просто дам ссылку с решением конкретно этой ситуации: http://www.fh-augsburg.de/~hhoegl/proj/com...MATIC_V1_02.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ruslan1 17 23 ноября, 2007 Опубликовано 23 ноября, 2007 · Жалоба Наверняка ответа до сих пор не было поскольку: - обычно вполне хватает 4 SPI устройств; - для тех кому не хватает, после многих часов проведенных в поиске ответа сдаются и используют ноги ввода/вывода для контроля CS, что влечет за собой "лечение" драйверов. Атмел хороший производитель, но вот SPI на их ARM'ах имеют некоторые нюансы, если мягко выразится. Не буду углублятся конкретно, просто дам ссылку с решением конкретно этой ситуации: http://www.fh-augsburg.de/~hhoegl/proj/com...MATIC_V1_02.pdf Прям как привет из прошлой жизни получил....... Много воды с тех пор выпито было...... :) Ну, не надо катить бочку на незапятнанные места Атмеловского АРМа. С SPI проблем нет. Все давно работает, причем именно так, как я и расчитывал. Никаких подводных камней. Висит два дешифратора (то есть в сумме 4->16). И грузится с этого датафлеша, и работает с ним дальше тоже. PS. Работает у меня именно вариант1. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rybo 0 7 июля, 2009 Опубликовано 7 июля, 2009 · Жалоба Висит два дешифратора (то есть в сумме 4->16). И грузится с этого датафлеша, и работает с ним дальше тоже. PS. Работает у меня именно вариант1. Руслан, извините, много уже времени прошло, но все-же.. Да, разумеется, девайс 14 работать будет. А вот остальные без лечения драйверов у вас заработали? Без программного SPI? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dch 0 22 июля, 2009 Опубликовано 22 июля, 2009 · Жалоба а там разве не два SPI каждый со своими чип селектами Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться