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

    

Альтернативные функции пинов AVR32

Речь идёт о программировании SPI. В даташите на AVR32 пины SPI имеют по две альтернативные функции (например, вывод MISO для SPI1 указан дважды: как порт GPIO PA17 (пин 60) и порт GPIO PX34 (пин 120). Я работаю с корпусом на 144 пина. При инициализации SPI я указываю ТОЛЬКО порт GPIO PA17, однако после этого в процессе работы полностью разрушается работа совершенно другого устройства, которое управляется портом GPIO PX34. Никакие дополнительные ухищрения, касающиеся этого пина, делу не помогают. Я работаю в среде IAR 3.30 для AVR32. Каким образом инициализация одного пина отражается на другом, альтернативном и можно ли избежать этой двойственности? Кстати, вышеупомянутые пины имеют одинаковую альтернативную функцию. Заранее благодарен за любую информацию, могущую помочь в этом.

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


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

используем AVR32 много лет, никогда такого не было. родная атмеловская студия.

скорее всего криво инициализируете.

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


Ссылка на сообщение
Поделиться на другие сайты
используем AVR32 много лет, никогда такого не было. родная атмеловская студия.

скорее всего криво инициализируете.

Понимаете ли, я и сам об этом догадываюсь, потому что вся это свистопляска с индикатором как раз и начинается после того, как проинициализирован SPI. Поэтому в вашем посте полезной информации, собственно, нет. Я полагал, что мне что-либо посоветуют - например, как нужно инициализировать SPI, чтобы таких проблем не возникало.

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


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

примеров как инициализировать SPI полно в самой студии.

и между вашим "догадываюсь" и "точно знаю" лежит пропасть.

скоро подтянутся экстрасенсы и найдут ошибку в вашем коде.

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


Ссылка на сообщение
Поделиться на другие сайты
примеров как инициализировать SPI полно в самой студии.

и между вашим "догадываюсь" и "точно знаю" лежит пропасть.

скоро подтянутся экстрасенсы и найдут ошибку в вашем коде.

Тщательная проработка даташита в конце концов дала результаты - SPI заработал. Но примеров для этого даже в "родной атмеловской студии" я так и не нашёл, потому так долго и мурыжился. Впрочем, спасибо за AVRstudio - благодаря ей была ликвидирована другая проблема - прошивки программы в чип.

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


Ссылка на сообщение
Поделиться на другие сайты
Но примеров для этого даже в "родной атмеловской студии" я так и не нашёл, потому так долго и мурыжился.
Может не там искали? Меню File - New - Example project from ASF - выбираете AVR32 - ищите примеры с SPI.

 

 

 

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


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

и при уже открытом проекте project-asf wizard можно добавить готовые драйверы/сервисы.

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


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

spi у avr32 может использовать только свой чипселект-вроде на каждый spi по 4 штуки

который так же можно объеденить через декодер 4x16

1)может такое быть, что пин, который портица при инициализации SPI

предназначен для програмного формирования чипселекта?

2) вы используете отладочную плату, где уже стоят какие то устройства - типа

микросхем SRAM или чего то подобного

 

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация