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

Помогите разобратся.Сделал всё как посоветовали старшие товарищи плюс Datasheet прочитал- нету результата,не могу инициализировать AT91SAM7 SPI и CHIPSELECT не выбирает устройство.

 

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

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


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

Запаивай чипселект на землю, если на spi висит только одно устройство. Если кода, что я прислал не достаточно (что не понятно), тяни с атмеля экзамплы по spi и пробуй.

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


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

Запаивай чипселект на землю, если на spi висит только одно устройство. Если кода, что я прислал не достаточно (что не понятно), тяни с атмеля экзамплы по spi и пробуй.

В том то и дело, что надо выбирать из двух :) устройств.И код вставил,не происходит SPI INIT и CS хоть тресни :( .

 

Обязательно поищу на ATMEL. А где примеры хранятся? Поиск ничего не дал.

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


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

Запаивай чипселект на землю, если на spi висит только одно устройство. Если кода, что я прислал не достаточно (что не понятно), тяни с атмеля экзамплы по spi и пробуй.

В том то и дело, что надо выбирать из двух :) устройств.И код вставил,не происходит SPI INIT и CS хоть тресни :( .

 

Обязательно поищу на ATMEL. А где примеры хранятся? Поиск ничего не дал.

 

Наверное, не до конца разобрался со строкой

 

value_for_cs = (~(1 << psdcmd->cs_number))& 0xF;

Если не трудно просветите отсталого. :(

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


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

1. psdcmd - указатель на структуру, элементом которой является cs_number

2. 1 сдвигаем на cs_number влево (устанавливаем cs_number-ный бит в 1)

3. делаем инверсию этого дела

4. сбрасываем в 0 все биты, кроме 4-х младших.

В результате из 4-х младших бит 0 будет в "позиции" cs_number, остальные будут 1.

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


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

1. psdcmd - указатель на структуру, элементом которой является cs_number

2. 1 сдвигаем на cs_number влево (устанавливаем cs_number-ный бит в 1)

3. делаем инверсию этого дела

4. сбрасываем в 0 все биты, кроме 4-х младших.

В результате из 4-х младших бит 0 будет в "позиции" cs_number, остальные будут 1.

 

спасибо :)

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


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

Отключил строки где конфигурируется pins на вход и выход и вроде как заработало. Странно.Если не секркет почему это может случатся.

 

Вопрос к Holms какой средой пользуетесь и каким устройством для отладки.

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


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

Извини, xoms.

IAR у меня, чего отключил поподробнее.

 

строки:

AT91F_PIO_CfgOutput(AT91C_BASE_PIOA, AT91C_PA11_NPCS0 | AT91C_PA31_NPCS1 | AT91C_PA13_MOSI | AT91C_PA14_SPCK);

AT91F_PIO_CfgInput(AT91C_BASE_PIOA, AT91C_PA12_MISO);

 

Пока работает. :) . Хотя странно.Будем искать :biggrin:

 

Мне дают пользоватся ARM Metrowerks Code Warrior c ARM ICE debugger.

Штука неплохая но без dongle не работает.Надо искать решение.

 

А что ты делаешь с неиспользуемыми в SPI режиме ногами SD карты (pin 8, pin 9)?

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


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

Правильно ,что закоментарил. У меня после эти ноги на SPI переключаются и эти установки убиваются.

 

pSpi->SPI_CR = AT91C_SPI_SPIEN...

 

У меня не SD карта , а MMC. Оставь 8 и 9 свободными, так вроде в стандарте описано.

ARM Metrowerks Code Warrior лежит на нашем фтп вылеченный.

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


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

У меня не SD карта , а MMC. Оставь 8 и 9 свободными, так вроде в стандарте описано.

ARM Metrowerks Code Warrior лежит на нашем фтп вылеченный.

 

А если их через 10Kom подсоединить к плюсу?

 

Лежит, он то лежит, да ккак мне его взять :), молод ещё, не заслужил.

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


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

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

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

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

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

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

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

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

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

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