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

Начинаю работать с AVR32. Есть глупые вопросы.

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

Начинаю работать с AVR32UC3B064 и возникли глупые вопросы.

Прежде всего организую параллельный интерфейс 16битным ЦАП.

Естественно хотелось бы как в обычной ATmega выставить данные в порт и дернуть строб.

Вроде первым делом хочется подключить 16 линий порта с PA0 по PA15 к ЦАПу и просто выставлять данные в порт. Но тогда невозможно будет использовать альтернативные функции без перестройки портов а как раз альтернативные функции (UART в частности) должен всегда слушать линию. Можно перестраивать при необходимости с альтернативной функции на простой вывод но скорость выдачи данных предполагается 2МГц и соответственно не получится (я так думаю) и слушать УАРТом и выдавать данные.

Можно УАРТовский пины не трогать, а использовать другие выводы, но тогда как выставлять данные в порт? Смещать нужные биты? Но тогда теряется скорость.

 

И вообще, в даташите написано что портов ввода вывода 43 штуки (для используемого контроллера) а регистры управления 32битные. Где остальные пины и биты?

 

Рою литературу и интернет и как то вообще не внятно написано про использование портов ввода вывода в отличие от например ATmega.

Прошу помочь и направить в нужное русло.

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


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

Во-первых, у микроконтроллера AVR32UC3B064 44 пина GPIO. Так написано в даташите. Помимо этого него 3 Интерфейса USART.

Во-вторых не совсем понятно что вы хотите сделать? Реализовать ЦАП и задействовать UART для вывода отладочной информации?

Если так, то согласно таблицы 11-10 даташита [doc32059] можете выбрать нужные вам порты ввода-вывода и UART0/1/2.

Порты в AVR32 32-х разрядные. У AVR32UC3B064 два порта PA и PB. Каждый из них конфигурируется своими регистрами.

 

PS может вы смотрели неполный даташит? Полный у меня 635 страниц

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


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

Даташит у меня именно полный 635 страниц. Про то что у него порты РА и РВ я тоже читал.

Вы правы, одни и те же UARTы можно назначать на разные выводы! Очень гибкая система!

Но возник еще вопрос:

Как я писал выше у меня внешний параллельный 16битный ЦАП с 16 битной шиной. Как я писал выше скорость обновления данных ЦАП 2МГц. По идее самое быстрое можно просто записать в порт слово и дернуть сигнал запись. Но вот порт РВ имеет разрядность 12 - отпадает для быстрого варианта. Порт РА вроде 32х пиновый, однако это не так! У него нет РА0, РА1 и РА2! Т.е. для записи в порт мне нужно сдвинуть слово! Так? Т.е. никак нельзя сделать быструю 16битную шину данных, а 8битная шина (без сдвига) можно сделать только на порту РВ. Так? Это же глупо со стороны разработчиков или я чего то не допонимаю?

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


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

Вы правы, одни и те же UARTы можно назначать на разные выводы!

НЕт, такого я не писал:) Это же вам не реконфигурируемая система на кристалле:) У контроллера несколько различных интерфейсов UASRT. Каждый из них выведен на свои пины.

Т.е. никак нельзя сделать быструю 16битную шину данных, а 8битная шина (без сдвига) можно сделать только на порту РВ. Так? Это же глупо со стороны разработчиков или я чего то не допонимаю?

На счёт быстрой шины нужно было задумываться до выбора конкретной модели контроллера. Вот у UC3A есть внешняя шина данных. "Быструю" шину можно попробовать сделатьт без сдвигов. Сделайте предположение, что биты порта PA0-2 всегда равны нулю (или другой константе). Тогда возможно в дальнейших расчётах их можно будет выбросить. Но при этом шина у Вас будет 16+3-битная.

Либо ещё как вариант начать запись с PA7. Тогда используя объединения union можно наверное тоже чего-то добиться. Так что ищите, вполне возможно решение и найдёте.

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


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

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

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

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

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

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

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

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

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

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