Easyelectronics.ru

Электроника для всех
Текущее время: 19 янв 2018, 00:48

Часовой пояс: UTC + 5 часов



    • JLCPCB - Платы прототипов всего за 2$ c бесплатной доставкой (при первом заказе)
    • 10 PCBs за $2 для 2 слоев, $15 для 4 слойной, $74 для 6 слойной платы.
    • Крупнейший китайский производитель прототипных плат. 290000+ клиентов & 8000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин радиодеталей.

Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: SAM D21 USART
СообщениеДобавлено: 04 авг 2017, 12:48 
Здравствуйте!

Зарегистрирован: 04 авг 2017, 12:25
Сообщения: 2
Доброго времени суток. Недавно начал работать с бордой SAM D21 Xpro, до этого с Atmel не работал. Не получается сконфигурировать UART для передачи данных с АЦП, может кто подскажет, в частности про мультиплексирование портов, и как вообще организуется UART на данных платах? ASF не пользуюсь, в проекте подключил FreeRTOS. Если вдруг найдутся заинтересованные люди, готовые подсказать, проект приложу.
P.S. Предыдущие темы читал, мало чем помогло с точки зрения понимания.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SAM D21 USART
СообщениеДобавлено: 17 авг 2017, 19:35 
Только пришел

Зарегистрирован: 21 фев 2017, 01:23
Сообщения: 12
jarsag, добрый день. Если, конечно, ещё актуально, то:
1. Вы прям с первого проекта начали с FreeRTOS? Зря. Начните с простых проектов. Буквально в соседней ветке есть несколько примеров работы с UART для SAMD21 XPro.
http://forum.easyelectronics.ru/viewtopic.php?f=36&t=30706
2. Про мультиплексирование портов... Вы говорите про альтернативные функции портов, переключение каналов АЦП или что-то другое?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SAM D21 USART
СообщениеДобавлено: 24 авг 2017, 10:15 
Здравствуйте!

Зарегистрирован: 04 авг 2017, 12:25
Сообщения: 2
dmitry.stk писал(а):
jarsag, добрый день. Если, конечно, ещё актуально, то:
1. Вы прям с первого проекта начали с FreeRTOS? Зря. Начните с простых проектов. Буквально в соседней ветке есть несколько примеров работы с UART для SAMD21 XPro.
http://forum.easyelectronics.ru/viewtopic.php?f=36&t=30706
2. Про мультиплексирование портов... Вы говорите про альтернативные функции портов, переключение каналов АЦП или что-то другое?

Да, актуально, спасибо. С FreeRTOS работал на STM32, поэтому она трудностей не вызывает, а вот с настройкой портов разобрался не до конца.
Например, хочу настроить на трансмит порт PB08(PAD0 для SERCOM4), правильно ли:
Код:
        PORT->Group[1].DIRSET.reg = PORT_PB08;
   PORT->Group[1].OUTSET.reg = PORT_PB08;
        PORT->Group[1].PINCFG[8].reg |= PORT_PINCFG_PMUXEN;
   PORT->Group[0].PMUX[1].reg |= PORT_PMUX_PMUXE_D;

        SERCOM4->USART.CTRLA.bit.TXPO = 0;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SAM D21 USART
СообщениеДобавлено: 24 авг 2017, 19:42 
Только пришел

Зарегистрирован: 21 фев 2017, 01:23
Сообщения: 12
jarsag, добрый день.
1.
Код:
PORT->Group[1].DIRSET.reg = PORT_PB08;
PORT->Group[1].OUTSET.reg = PORT_PB08;
Эти действия не обязательны. Дело в том, что периферия сама будет следить за направлением и логическим уровнем на пине.
2.
Код:
PORT->Group[0].PMUX[1].reg |= PORT_PMUX_PMUXE_D;
Тут Вы очень сильно промахнулись. Во-первых, PORT->Group[0] - это обращение к PORTA. Во-вторых, PB08 настраивается регистром PMUX[4]. Т.е. для включения на PB08 альтернативной функции D (SERCOM4/PAD[0]) нужно делать так
Код:
PORT->Group[1].PMUX[4].reg |= PORT_PMUX_PMUXE_D;

3.
Код:
SERCOM4->USART.CTRLA.bit.TXPO = 0;
Всё верно, но надо понимать, что это лишь часть настроек UART и только этих действий будет недостаточно.

Итак, для того, чтобы PB08 работал как TX, нужно
Код:
PORT->Group[1].PMUX[4].reg |= PORT_PMUX_PMUXE_D;
PORT->Group[1].PINCFG[8].reg |= PORT_PINCFG_PMUXEN;
/*
...
Настройка SERCOM4
...
*/
SERCOM4->USART.CTRLA.bit.TXPO = 0;
/*
...
Настройка SERCOM4 и активация UART
...
*/


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB