Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AT91SAMD21G SERCOM USART - не получается настроить
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
RabidRabbit
Всем доброго времени суток!

Есть AT91SAMD21G, тактируется от внутреннего OSC8M без делителя. Настраиваю SERCOM1 в режиме USART (функции asf не использую). Генератор SERCOM1 настраиваю на асинхронный "арифметический" режим, 16х оверсэмплинг, 115200 бит в сек. Вывожу в этот порт отладочную информацию. В терминале (PuTTY) вижу мусор. Пробовал перебор значений регистра BAUD - прямой вывод увидеть так и не удалось.
TX/RX подключены к ttyUSB1 (на ttyUSB0 висит SWD интерфейс), всё это 2 части ft2232d. Для проверки подключал к другой плате (LPC2478) - честно валится отладочный вывод.

Если кто имел дело уже с этими камнями, может что подскажете?
RabidRabbit
Как обычно, сам дурак. По-умолчанию бит SERCOM_USART_CTRLA_DORD сброшен, что означает передачу MSB first. Выставил в 1 и всё заработало sm.gif
Xenia
Цитата(RabidRabbit @ Nov 29 2014, 21:07) *
Есть AT91SAMD21G...


Респект! Давно ждала, чтобы кто-нибудь про SAM D21 написал. Даже сама хотела про него тему завести, но не решилась - самой-то мне рассказать нечего. Но даташит меня впечатлил! Создалось впечатление, что готовили его в качестве "могильщика" XMega, но потом притормозили. Ибо XMega похоронить не трудно, а переход на Cortex M0+ может привести к уходу потребителей на ARM-контролеры других производителей, т.к. конкуреция в том секторе очень велика.

Просьба к вам - продолжайте делиться своими впечатлениями об этом МК, т.к. пока круг его пользователей крайне ограничен (похоже, что на этом форуме вы один такой sm.gif). Хотя не исключено, что кто-то из до сих пор помалкивающих присоединится к обсуждению. А я попрошу кого-нибудь из модераторов/админов изъять из названия темы "SERCOM USART", чтобы она годилась для дальнейших обсуждений этого контроллера.
RabidRabbit
Теперь пробую запустить SERCOM2 в режиме I2C MASTER (для связи с SMB380). Но пока безуспешно, оно похоже не начинает работать после записи адреса в регистр SERCOM_I2CM_ADDR.
В даташите модуль PTC (тач контроллер) совершенно не описан, юзайте, мол, QTouch Library...
Xenia
Цитата(RabidRabbit @ Jan 18 2015, 15:23) *
В даташите модуль PTC (тач контроллер) совершенно не описан, юзайте, мол, QTouch Library...


Так может быть, вам так и поступить?
Вот тут еще написано, что в той библиотеке для D21 уже готовый год есть:
Introduction to QTouch Design Parameters using SAM D21 Xplained Pro (AN-7846)

touch_api_SAMD.h - QTouch Library API header file, contains API and Data structure used to interface with the library
touch.h - QTouch library configuration header file generated by QTouch Project Builder
touch.c - A helper file generated by QTouch Project Builder to demonstrate QTouch library initialization and sensors’ configuration
libsamd21_qtouch_iar.a - QTouch library compiled for IAR compiler that supports both Self cap and Mutual cap sensors
libsamd21_qtouch_gcc.a - QTouch library compiled for GCC compiler that supports both Self cap and Mutual cap sensors

RabidRabbit
Спасибо, в текущем устройстве PTC я использовать не буду. А в следующем - может быть попробую.
SERCOM в режиме I2C заработал, я на ноги не то значение маппинга повесил. С кривым значением оно прочно стояло в IDLE и ни гу-гу.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.